From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail.byosoft.com.cn (mail.byosoft.com.cn [58.240.74.242]) by mx.groups.io with SMTP id smtpd.web11.2407.1616637715236470679 for ; Wed, 24 Mar 2021 19:01:56 -0700 Authentication-Results: mx.groups.io; dkim=missing; spf=none, err=permanent DNS error (domain: byosoft.com.cn, ip: 58.240.74.242, mailfrom: gaoliming@byosoft.com.cn) Received: from DESKTOPS6D0PVI ([58.246.60.130]) (envelope-sender ) by 192.168.6.13 with ESMTP for ; Thu, 25 Mar 2021 10:01:52 +0800 X-WM-Sender: gaoliming@byosoft.com.cn X-Originating-IP: 58.246.60.130 X-WM-AuthFlag: YES X-WM-AuthUser: gaoliming@byosoft.com.cn From: "gaoliming" To: "'Abner Chang'" , Cc: "'Michael D Kinney'" , "'Zhiguang Liu'" , "'Nickle Wang'" , "'Peter O'Hanley'" References: <20210324053440.23237-1-abner.chang@hpe.com> <20210324053440.23237-2-abner.chang@hpe.com> In-Reply-To: <20210324053440.23237-2-abner.chang@hpe.com> Subject: =?UTF-8?B?5Zue5aSNOiBbUEFUQ0ggVjMgMS8yXSBNZGVQa2cvSW5jbHVkZTogRUZJIFJlZGZpc2ggRGlzY292ZXIgcHJvdG9jb2w=?= Date: Thu, 25 Mar 2021 10:01:52 +0800 Message-ID: <00af01d7211a$d3380850$79a818f0$@byosoft.com.cn> MIME-Version: 1.0 X-Mailer: Microsoft Outlook 16.0 Thread-Index: AQIaK4MEyvFAQPG7h1MYt7t68ZkqTQGAHeshqgHdpCA= Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: quoted-printable Content-Language: zh-cn Reviewed-by: Liming Gao > -----=D3=CA=BC=FE=D4=AD=BC=FE----- > =B7=A2=BC=FE=C8=CB: Abner Chang > =B7=A2=CB=CD=CA=B1=BC=E4: 2021=C4=EA3=D4=C224=C8=D5 13:35 > =CA=D5=BC=FE=C8=CB: devel@edk2.groups.io > =B3=AD=CB=CD: Michael D Kinney ; Liming = Gao > ; Zhiguang Liu ; = Nickle > Wang ; Peter O'Hanley > =D6=F7=CC=E2: [PATCH V3 1/2] MdePkg/Include: EFI Redfish Discover = protocol >=20 > Move GUID definition of EFI Redfish Discover protocol > to under MdePkg. With this we don't have dependency of > RedfishPkg in ShellPkg. >=20 > Signed-off-by: Abner Chang >=20 > Cc: Michael D Kinney > Cc: Liming Gao > Cc: Zhiguang Liu > Cc: Nickle Wang > Cc: Peter O'Hanley > --- > MdePkg/MdePkg.dec | 5 +- > RedfishPkg/RedfishPkg.dec | 3 - > .../Include/Protocol/RedfishDiscover.h | 72 = +++++++++---------- > 3 files changed, 37 insertions(+), 43 deletions(-) > rename {RedfishPkg =3D> MdePkg}/Include/Protocol/RedfishDiscover.h = (79%) >=20 > diff --git a/MdePkg/MdePkg.dec b/MdePkg/MdePkg.dec > index 1d2637acc2..e667d44db5 100644 > --- a/MdePkg/MdePkg.dec > +++ b/MdePkg/MdePkg.dec > @@ -6,7 +6,7 @@ > # > # Copyright (c) 2007 - 2020, Intel Corporation. All rights = reserved.
> # Portions copyright (c) 2008 - 2009, Apple Inc. All rights = reserved.
> -# (C) Copyright 2016 - 2020 Hewlett Packard Enterprise Development > LP
> +# (C) Copyright 2016 - 2021 Hewlett Packard Enterprise Development > LP
> # > # SPDX-License-Identifier: BSD-2-Clause-Patent > # > @@ -1863,6 +1863,9 @@ > ## Include/Protocol/RestJsonStructure.h > gEfiRestJsonStructureProtocolGuid =3D { 0xa9a048f6, 0x48a0, = 0x4714, > {0xb7, 0xda, 0xa9, 0xad,0x87, 0xd4, 0xda, 0xc9 }} >=20 > + ## Include/Protocol/RedfishDiscover.h > + gEfiRedfishDiscoverProtocolGuid =3D { 0x5db12509, 0x4550, = 0x4347, > { 0x96, 0xb3, 0x73, 0xc0, 0xff, 0x6e, 0x86, 0x9f }} > + > # > # Protocols defined in Shell2.0 > # > diff --git a/RedfishPkg/RedfishPkg.dec b/RedfishPkg/RedfishPkg.dec > index b3e25268a0..846c19fd5e 100644 > --- a/RedfishPkg/RedfishPkg.dec > +++ b/RedfishPkg/RedfishPkg.dec > @@ -67,9 +67,6 @@ > RedfishLib|PrivateInclude/Library/RedfishLib.h >=20 > [Protocols] > - ## Include/Protocol/RedfishDiscover.h > - gEfiRedfishDiscoverProtocolGuid =3D { 0x5db12509, 0x4550, = 0x4347, > { 0x96, 0xb3, 0x73, 0xc0, 0xff, 0x6e, 0x86, 0x9f }} > - > ## Include/Protocol/EdkIIRedfishCredential.h > gEdkIIRedfishCredentialProtocolGuid =3D { 0x8804377, 0xaf7a, = 0x4496, > { 0x8a, 0x7b, 0x17, 0x59, 0x0, 0xe9, 0xab, 0x46 } } >=20 > diff --git a/RedfishPkg/Include/Protocol/RedfishDiscover.h > b/MdePkg/Include/Protocol/RedfishDiscover.h > similarity index 79% > rename from RedfishPkg/Include/Protocol/RedfishDiscover.h > rename to MdePkg/Include/Protocol/RedfishDiscover.h > index 4c91605c4e..8dbb70b082 100644 > --- a/RedfishPkg/Include/Protocol/RedfishDiscover.h > +++ b/MdePkg/Include/Protocol/RedfishDiscover.h > @@ -1,20 +1,19 @@ > /** @file > This file defines the EFI Redfish Discover Protocol interface. >=20 > - (C) Copyright 2020 Hewlett Packard Enterprise Development LP
> + (C) Copyright 2021 Hewlett Packard Enterprise Development LP
>=20 > SPDX-License-Identifier: BSD-2-Clause-Patent >=20 > + @par Revision Reference: > + - Some corrections and revises are added to UEFI Specification 2.9. > + - This Protocol is introduced in UEFI Specification 2.8. > + > **/ >=20 > #ifndef EFI_REDFISH_DISCOVER_PROTOCOL_H_ > #define EFI_REDFISH_DISCOVER_PROTOCOL_H_ >=20 > -#include > -#include > -#include > -#include > - > // > // GUID definitions > // > @@ -40,24 +39,21 @@ typedef UINT32 EFI_REDFISH_DISCOVER_FLAG; > ///< 3 > to 15. The corresponding duration is 8 to 2^15 seconds. > ///< > Duration is only valid when EFI_REDFISH_DISCOVER_KEEP_ALIVE > ///< is > set to 1. > -#define EFI_REDFISH_DISCOVER_DURATION_BIT_POS 8 > - > typedef struct _EFI_REDFISH_DISCOVER_PROTOCOL > EFI_REDFISH_DISCOVER_PROTOCOL; > -typedef struct _EFI_REDFISH_DISCOVERED_INFORMATION > EFI_REDFISH_DISCOVERED_INFORMATION; > - > -typedef struct _EFI_REDFISH_DISCOVERED_INFORMATION { > - EFI_HANDLE RedfishRestExHandle; ///< REST EX EFI handle > associated with this Redfish service. > - BOOLEAN IsUdp6; ///< Indicates it's IP > versino 6. > - EFI_IP_ADDRESS RedfishHostIpAddress; ///< IP address of = Redfish > service. > - UINTN RedfishVersion; ///< Redfish service > version. > - CHAR16 *Location; ///< Redfish service > location. > - CHAR16 *Uuid; ///< Redfish service > UUID. > - CHAR16 *Os; ///< Redfish service > OS. > - CHAR16 *OSVersion; ///< Redfish service OS > version. > - CHAR16 *Product; ///< Redfish service > product name. > - CHAR16 *ProductVer; ///< Redfish service > product version. > - BOOLEAN UseHttps; ///< Using HTTPS. > -}; > + > +typedef struct { > + EFI_HANDLE RedfishRestExHandle; ///< REST EX EFI handle > associated with this Redfish service. > + BOOLEAN IsUdp6; ///< Indicates it's IP > versino 6. > + EFI_IP_ADDRESS RedfishHostIpAddress; ///< IP address of = Redfish > service. > + UINTN RedfishVersion; ///< Redfish service > version. > + CHAR16 *Location; ///< Redfish service > location. > + CHAR16 *Uuid; ///< Redfish service > UUID. > + CHAR16 *Os; ///< Redfish service > OS. > + CHAR16 *OsVersion; ///< Redfish service > OS version. > + CHAR16 *Product; ///< Redfish service > product name. > + CHAR16 *ProductVer; ///< Redfish service > product version. > + BOOLEAN UseHttps; ///< Using HTTPS. > +} EFI_REDFISH_DISCOVERED_INFORMATION; >=20 > typedef struct { > EFI_STATUS Status; ///< Status of > Redfish service discovery. > @@ -75,7 +71,7 @@ typedef struct { > EFI_IP_ADDRESS SubnetId; ///< Subnet ID. > UINT8 SubnetPrefixLength; ///< Subnet > prefix-length for IPv4 and IPv6. > UINT16 VlanId; ///< VLAN ID. > -} EFI_REDFISH_DISCOVER_NETWORK_INSTANCE; > +} EFI_REDFISH_DISCOVER_NETWORK_INTERFACE; >=20 > typedef struct { > UINT32 Signature; ///< Token signature. > @@ -112,10 +108,10 @@ typedef struct { > typedef > EFI_STATUS > (EFIAPI *EFI_REDFISH_DISCOVER_NETWORK_LIST)( > - IN EFI_REDFISH_DISCOVER_PROTOCOL *This, > - IN EFI_HANDLE ImageHandle, > - OUT UINTN > *NumberOfNetworkInterfaces, > - OUT EFI_REDFISH_DISCOVER_NETWORK_INSTANCE > **NetworkInterfaces > + IN EFI_REDFISH_DISCOVER_PROTOCOL *This, > + IN EFI_HANDLE ImageHandle, > + OUT UINTN > *NumberOfNetworkInterfaces, > + OUT EFI_REDFISH_DISCOVER_NETWORK_INTERFACE > **NetworkInterfaces > ); >=20 > /** > @@ -147,7 +143,7 @@ EFI_STATUS > (EFIAPI *EFI_REDFISH_DISCOVER_ACQUIRE_SERVICE)( > IN EFI_REDFISH_DISCOVER_PROTOCOL *This, > IN EFI_HANDLE ImageHandle, > - IN EFI_REDFISH_DISCOVER_NETWORK_INSTANCE > *TargetNetworkInterface, > + IN EFI_REDFISH_DISCOVER_NETWORK_INTERFACE > *TargetNetworkInterface OPTIONAL, > IN EFI_REDFISH_DISCOVER_FLAG Flags, > IN EFI_REDFISH_DISCOVERED_TOKEN *Token > ); > @@ -155,8 +151,8 @@ EFI_STATUS > /** > This function aborts Redfish service discovery on the given network > interface. >=20 > - @param[in] This EFI_REDFISH_DISCOVER_PROTOCOL > instance. > - @param[in] TargetNetworkInterface Target NIC to do the > discovery. > + @param[in] This > EFI_REDFISH_DISCOVER_PROTOCOL instance. > + @param[in] TargetNetworkInterface Target NIC to do the > discovery. >=20 > @retval EFI_SUCCESS REST EX instance of discovered > Redfish services are returned. > @retval Others Fail to abort Redfish service > discovery. > @@ -165,15 +161,15 @@ EFI_STATUS > typedef > EFI_STATUS > (EFIAPI *EFI_REDFISH_DISCOVER_ABORT_ACQUIRE)( > - IN EFI_REDFISH_DISCOVER_PROTOCOL *This, > - IN EFI_REDFISH_DISCOVER_NETWORK_INSTANCE > *TargetNetworkInterface OPTIONAL > + IN EFI_REDFISH_DISCOVER_PROTOCOL *This, > + IN EFI_REDFISH_DISCOVER_NETWORK_INTERFACE > *TargetNetworkInterface OPTIONAL > ); >=20 > /** > This function releases Redfish services found by RedfishServiceAcquire(). >=20 > @param[in] This EFI_REDFISH_DISCOVER_PROTOCOL > instance. > - @param[in] InstanceList The Redfish service to release. > + @param[in] List The Redfish service to release. >=20 > @retval EFI_SUCCESS REST EX instances of discovered Redfish > are released. > @retval Others Fail to remove the entry > @@ -183,17 +179,15 @@ typedef > EFI_STATUS > (EFIAPI *EFI_REDFISH_DISCOVER_RELEASE_SERVICE)( > IN EFI_REDFISH_DISCOVER_PROTOCOL *This, > - IN EFI_REDFISH_DISCOVERED_LIST *InstanceList > + IN EFI_REDFISH_DISCOVERED_LIST *List > ); >=20 > -typedef struct _EFI_REDFISH_DISCOVER_PROTOCOL { > +struct _EFI_REDFISH_DISCOVER_PROTOCOL { > EFI_REDFISH_DISCOVER_NETWORK_LIST GetNetworkInterfaceList; > EFI_REDFISH_DISCOVER_ACQUIRE_SERVICE AcquireRedfishService; > EFI_REDFISH_DISCOVER_ABORT_ACQUIRE > AbortAcquireRedfishService; > EFI_REDFISH_DISCOVER_RELEASE_SERVICE ReleaseRedfishService; > -} EFI_REDFISH_DISCOVER_PROTOCOL; > +}; >=20 > -extern EFI_GUID gEfiRestExProtocolGuid; > -extern EFI_GUID gEfiRestExServiceBindingProtocolGuid; > extern EFI_GUID gEfiRedfishDiscoverProtocolGuid; > #endif > -- > 2.17.1