]>
Commit | Line | Data |
---|---|---|
69637f91 AC |
1 | /** @file\r |
2 | This file defines the EDKII_REDFISH_CONFIG_HANDLER_PROTOCOL interface.\r | |
3 | \r | |
4 | Copyright (c) 2019, Intel Corporation. All rights reserved.<BR>\r | |
5 | (C) Copyright 2021 Hewlett Packard Enterprise Development LP<BR>\r | |
6 | \r | |
7 | SPDX-License-Identifier: BSD-2-Clause-Patent\r | |
8 | \r | |
9 | **/\r | |
10 | \r | |
11 | #ifndef EDKII_REDFISH_CONFIG_HANDLER_H_\r | |
12 | #define EDKII_REDFISH_CONFIG_HANDLER_H_\r | |
13 | \r | |
14 | typedef struct _EDKII_REDFISH_CONFIG_HANDLER_PROTOCOL EDKII_REDFISH_CONFIG_HANDLER_PROTOCOL;\r | |
15 | \r | |
16 | #define EDKII_REDFISH_CONFIG_HANDLER_PROTOCOL_GUID \\r | |
17 | { \\r | |
18 | 0xbc0fe6bb, 0x2cc9, 0x463e, { 0x90, 0x82, 0xfa, 0x11, 0x76, 0xfc, 0x67, 0xde } \\r | |
19 | }\r | |
20 | \r | |
21 | typedef struct {\r | |
39de741e MK |
22 | EFI_HANDLE RedfishServiceRestExHandle; ///< REST EX EFI handle associated with this Redfish service.\r |
23 | UINTN RedfishServiceVersion; ///< Redfish service version.\r | |
24 | CHAR16 *RedfishServiceLocation; ///< Redfish service location.\r | |
25 | CHAR16 *RedfishServiceUuid; ///< Redfish service UUID.\r | |
26 | CHAR16 *RedfishServiceOs; ///< Redfish service OS.\r | |
27 | CHAR16 *RedfishServiceOsVersion; ///< Redfish service OS version.\r | |
28 | CHAR16 *RedfishServiceProduct; ///< Redfish service product name.\r | |
29 | CHAR16 *RedfishServiceProductVer; ///< Redfish service product version.\r | |
30 | BOOLEAN RedfishServiceUseHttps; ///< Redfish service uses HTTPS.\r | |
69637f91 AC |
31 | } REDFISH_CONFIG_SERVICE_INFORMATION;\r |
32 | \r | |
33 | /**\r | |
34 | Initialize a configure handler of EDKII Redfish feature driver.\r | |
35 | \r | |
36 | This function will be called by the EDKII Redfish config handler driver to\r | |
37 | initialize the configure handler of each EDKII Redfish feature driver.\r | |
38 | \r | |
39 | @param[in] This Pointer to EDKII_REDFISH_CONFIG_HANDLER_PROTOCOL instance.\r | |
40 | @param[in] RedfishServiceinfo Redfish service information.\r | |
41 | \r | |
42 | @retval EFI_SUCCESS The handler has been initialized successfully.\r | |
43 | @retval EFI_DEVICE_ERROR Failed to create or configure the REST EX protocol instance.\r | |
44 | @retval EFI_ALREADY_STARTED This handler has already been initialized.\r | |
45 | @retval Other Error happens during the initialization.\r | |
46 | \r | |
47 | **/\r | |
48 | typedef\r | |
49 | EFI_STATUS\r | |
39de741e | 50 | (EFIAPI *EDKII_REDFISH_CONFIG_HANDLER_PROTOCOL_INIT)(\r |
69637f91 AC |
51 | IN EDKII_REDFISH_CONFIG_HANDLER_PROTOCOL *This,\r |
52 | IN REDFISH_CONFIG_SERVICE_INFORMATION *RedfishServiceinfo\r | |
53 | );\r | |
54 | \r | |
55 | /**\r | |
56 | Stop a Redfish configure handler of EDKII Redfish feature driver.\r | |
57 | \r | |
58 | @param[in] This Pointer to EDKII_REDFISH_CONFIG_HANDLER_PROTOCOL instance.\r | |
59 | \r | |
60 | @retval EFI_SUCCESS This handler has been stoped successfully.\r | |
61 | @retval Others Some error happened.\r | |
62 | \r | |
63 | **/\r | |
64 | typedef\r | |
65 | EFI_STATUS\r | |
39de741e | 66 | (EFIAPI *EDKII_REDFISH_CONFIG_HANDLER_PROTOCOL_STOP)(\r |
69637f91 AC |
67 | IN EDKII_REDFISH_CONFIG_HANDLER_PROTOCOL *This\r |
68 | );\r | |
69 | \r | |
70 | struct _EDKII_REDFISH_CONFIG_HANDLER_PROTOCOL {\r | |
39de741e MK |
71 | EDKII_REDFISH_CONFIG_HANDLER_PROTOCOL_INIT Init;\r |
72 | EDKII_REDFISH_CONFIG_HANDLER_PROTOCOL_STOP Stop;\r | |
69637f91 AC |
73 | };\r |
74 | \r | |
39de741e | 75 | extern EFI_GUID gdkIIRedfishConfigHandlerProtocolGuid;\r |
69637f91 AC |
76 | \r |
77 | #endif\r |