Re: [edk2-devel] [PATCH] ShellPkg/SmbiosView: Smbiosview tool is not show Extended Speed and Extended Configured Memory Speed in type 17.
Hi Zhichao, It's OK for me, thank you very much for this suggestion and merger code. Best Regards, Roy Phone/WeChat: 13584008328 -Original Message- From: Gao, Zhichao Sent: Monday, August 15, 2022 9:47 AM To: devel@edk2.groups.io; Gao, Zhichao ; Xue, Shengfeng ; Ni, Ray Cc: Gao, Liming ; Xue, ShengfengX Subject: RE: [edk2-devel] [PATCH] ShellPkg/SmbiosView: Smbiosview tool is not show Extended Speed and Extended Configured Memory Speed in type 17. The commit message should be limited within 72 characters. Suggest the new titile "ShellPkg/SmbiosView: Display extended memory info in smbiosview -t 17" Thanks, Zhichao > -Original Message- > From: devel@edk2.groups.io On Behalf Of Gao, > Zhichao > Sent: Tuesday, August 9, 2022 5:57 PM > To: Xue, Shengfeng ; > devel@edk2.groups.io; Ni, Ray > Cc: Gao, Liming ; Xue, ShengfengX > > Subject: Re: [edk2-devel] [PATCH] ShellPkg/SmbiosView: Smbiosview tool > is not show Extended Speed and Extended Configured Memory Speed in > type 17. > > Reviewed-by: Zhichao Gao > > Thanks, > Zhichao > > > -Original Message- > > From: xueshengfeng > > Sent: Saturday, August 6, 2022 10:02 AM > > To: devel@edk2.groups.io; Ni, Ray ; Gao, Zhichao > > > > Cc: Gao, Liming ; Xue, ShengfengX > > > > Subject: [PATCH] ShellPkg/SmbiosView: Smbiosview tool is not show > > Extended Speed and Extended Configured Memory Speed in type 17. > > > > From: Shengfengx Xue > > > > REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4014 > > > > if Configured Memory Speed is 65,535 MT/s or greater, and the actual > > speed is stored in the Extended Configured Memory Speed field. but > > current Smbiosview have no this logic. > > > > Signed-off-by: Shengfengx Xue > > --- > > .../UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c| 5 + > > 1 file changed, 5 insertions(+) > > > > diff --git > > a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c > > b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c > > index a0ee286c9a..0ab9f5063a 100644 > > --- > > a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c > > +++ > > b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c > > @@ -878,6 +878,11 @@ SmbiosPrintStructure ( > > } > >} > > > > + if (AE_SMBIOS_VERSION (0x3, 0x3) && (Struct->Hdr->Length > 0x54)) { > > +PRINT_STRUCT_VALUE_H (Struct, Type17, ExtendedSpeed); > > +PRINT_STRUCT_VALUE_H (Struct, Type17, > > ExtendedConfiguredMemorySpeed); > > + } > > + > >break; > > > > // > > -- > > 2.26.2.windows.1 > > > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#92409): https://edk2.groups.io/g/devel/message/92409 Mute This Topic: https://groups.io/mt/92898444/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] Recall: Enable BaseCryptLib in Smm
Xue, ShengfengX would like to recall the message, "Enable BaseCryptLib in Smm". -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#75881): https://edk2.groups.io/g/devel/message/75881 Mute This Topic: https://groups.io/mt/83222609/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] Enable BaseCryptLib in Smm
Hi EDKII Developer Platform BIOS need enabled BaseCryptLib in Smm, code as attachment, could you please review it? Thanks It cannot 'git send-email' in my side with reported error "Unable to initialize SMTP properly.". Best Regards, Roy -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#75880): https://edk2.groups.io/g/devel/message/75880 Mute This Topic: https://groups.io/mt/83222602/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=- 0001-CryptoPkg-BaseCryptLib-Enabled-CryptSha512-for-Smm-d.patch Description: 0001-CryptoPkg-BaseCryptLib-Enabled-CryptSha512-for-Smm-d.patch
[edk2-devel] [PATCH] NetworkPkg:ECC reports 4 errors in NetworkPkg
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=1741 UNI file that is associated by INF or DEC file need define the prompt and help information in NetworkPkg.uni Signed-off-by: Xue ShengfengX Cc: Siyuan Fu Cc: Jiaxin Wu --- NetworkPkg/NetworkPkg.uni | 14 +- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/NetworkPkg/NetworkPkg.uni b/NetworkPkg/NetworkPkg.uni index 6f8199df36..ab9b4d21d3 100644 --- a/NetworkPkg/NetworkPkg.uni +++ b/NetworkPkg/NetworkPkg.uni @@ -3,7 +3,7 @@ // // This package provides network modules that conform to UEFI 2.4 specification. // -// Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved. +// Copyright (c) 2009 - 2019, Intel Corporation. All rights reserved. // // SPDX-License-Identifier: BSD-2-Clause-Patent // @@ -80,3 +80,15 @@ "0x10 = Stop UEFI iSCSI if iSCSI HBA adapter supports multipath I/O for iSCSI boot.\n" "0x20 = Stop UEFI iSCSI if iSCSI HBA adapter is currently configured to boot from iSCSI IPv4 targets.\n" "0x40 = Stop UEFI iSCSI if iSCSI HBA adapter is currently configured to boot from iSCSI IPv6 targets." + +#string STR_gEfiNetworkPkgTokenSpaceGuid_PcdIPv4PXESupport_PROMPT #language en-US "Enable IPV4 PXE Function." + +#string STR_gEfiNetworkPkgTokenSpaceGuid_PcdIPv4PXESupport_HELP #language en-US "Indicates IPV4 PXE Function is enabled or not.\n" + "A value of 0 indicates the IPV4 PXE Function is disabled.\n" + "A value of 1 indicates the IPV4 PXE Function is enabled." + +#string STR_gEfiNetworkPkgTokenSpaceGuid_PcdIPv6PXESupport_PROMPT #language en-US "Enable IPV6 PXE Function." + +#string STR_gEfiNetworkPkgTokenSpaceGuid_PcdIPv6PXESupport_HELP #language en-US "Indicates IPV6 PXE Function is enabled or not.\n" + "A value of 0 indicates the IPV6 PXE Function is disabled.\n" + "A value of 1 indicates the IPV6 PXE Function is enabled." -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#39739): https://edk2.groups.io/g/devel/message/39739 Mute This Topic: https://groups.io/mt/31380400/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [PATCH v5] NetworkPkg/UefiPxeBcDxe:Add two PCD to control PXE.
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=1695 Setup need provide an item for user to control IPV46 PXE boot. Origin UefiPxeBcDxe driver doesn't have such interface. This change added two PCD to control IPV4/6 PXE in PxeBcSupported(). Platform code should override this two PCD according to Setup value. code change no side effect on current PXE function with default PCD. Signed-off-by: Xue ShengfengX Cc: Siyuan Fu Cc: Jiaxin Wu --- NetworkPkg/NetworkPkg.dec| 12 +++- NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c| 12 +++- NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h | 5 - NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf | 4 +++- 4 files changed, 29 insertions(+), 4 deletions(-) diff --git a/NetworkPkg/NetworkPkg.dec b/NetworkPkg/NetworkPkg.dec index 9b8ece4837..1aa7c1ed31 100644 --- a/NetworkPkg/NetworkPkg.dec +++ b/NetworkPkg/NetworkPkg.dec @@ -3,7 +3,7 @@ # # This package provides network modules that conform to UEFI 2.4 specification. # -# Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved. +# Copyright (c) 2009 - 2019, Intel Corporation. All rights reserved. # (C) Copyright 2015-2017 Hewlett Packard Enterprise Development LP # # SPDX-License-Identifier: BSD-2-Clause-Patent @@ -117,5 +117,15 @@ # @Prompt Type Value of network boot policy used in iSCSI. gEfiNetworkPkgTokenSpaceGuid.PcdIScsiAIPNetworkBootPolicy|0x08|UINT8|0x1007 + ## IPv4 PXE support + # 0x01 = PXE Enabled + # 0x00 = PXE Disabled + gEfiNetworkPkgTokenSpaceGuid.PcdIPv4PXESupport|0x01|UINT8|0x1009 + + ## IPv6 PXE support + # 0x01 = PXE Enabled + # 0x00 = PXE Disabled + gEfiNetworkPkgTokenSpaceGuid.PcdIPv6PXESupport|0x01|UINT8|0x100a + [UserExtensions.TianoCore."ExtraFiles"] NetworkPkgExtra.uni diff --git a/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c b/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c index 3c1d400d50..b35edb687d 100644 --- a/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c +++ b/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c @@ -2,7 +2,7 @@ Driver Binding functions implementationfor for UefiPxeBc Driver. (C) Copyright 2014 Hewlett-Packard Development Company, L.P. - Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved. + Copyright (c) 2007 - 2019, Intel Corporation. All rights reserved. SPDX-License-Identifier: BSD-2-Clause-Patent @@ -1242,6 +1242,10 @@ PxeBcDriverEntryPoint ( { EFI_STATUS Status; + if ((PcdGet8(PcdIPv4PXESupport) == PXE_DISABLED) && (PcdGet8(PcdIPv6PXESupport) == PXE_DISABLED)) { +return EFI_UNSUPPORTED; + } + Status = EfiLibInstallDriverBindingComponentName2 ( ImageHandle, SystemTable, @@ -1301,9 +1305,15 @@ PxeBcSupported ( EFI_GUID*MtftpServiceBindingGuid; if (IpVersion == IP_VERSION_4) { +if (PcdGet8(PcdIPv4PXESupport) == PXE_DISABLED) { + return EFI_UNSUPPORTED; +} DhcpServiceBindingGuid = &gEfiDhcp4ServiceBindingProtocolGuid; MtftpServiceBindingGuid = &gEfiMtftp4ServiceBindingProtocolGuid; } else { +if (PcdGet8(PcdIPv6PXESupport) == PXE_DISABLED) { + return EFI_UNSUPPORTED; +} DhcpServiceBindingGuid = &gEfiDhcp6ServiceBindingProtocolGuid; MtftpServiceBindingGuid = &gEfiMtftp6ServiceBindingProtocolGuid; } diff --git a/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h b/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h index f0db4a0c1a..fa4950c623 100644 --- a/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h +++ b/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h @@ -2,7 +2,7 @@ This EFI_PXE_BASE_CODE_PROTOCOL and EFI_LOAD_FILE_PROTOCOL. interfaces declaration. - Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved. + Copyright (c) 2007 - 2019, Intel Corporation. All rights reserved. SPDX-License-Identifier: BSD-2-Clause-Patent @@ -78,6 +78,9 @@ typedef struct _PXEBC_VIRTUAL_NIC PXEBC_VIRTUAL_NIC; #define PXEBC_PRIVATE_DATA_FROM_ID(a) CR (a, PXEBC_PRIVATE_DATA, Id, PXEBC_PRIVATE_DATA_SIGNATURE) #define PXEBC_VIRTUAL_NIC_FROM_LOADFILE(a)CR (a, PXEBC_VIRTUAL_NIC, LoadFile, PXEBC_VIRTUAL_NIC_SIGNATURE) +#define PXE_ENABLED 0x01 +#define PXE_DISABLED 0x00 + typedef union { PXEBC_DHCP4_PACKET_CACHEDhcp4; PXEBC_DHCP6_PACKET_CACHEDhcp6; diff --git a/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf b/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf index fc31250dea..0341f1052a 100644 --- a/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf +++ b/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf @@ -5,7 +5,7 @@ # PXE-compatible device for network access or booting. This driver supports # both IPv4 and IPv6 network stack. # -# Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved. +# Copyright (c) 2007 - 2019, Intel Corporation. All rights reserved. # # SPDX-License-Identifier: BSD-2-Clause-Patent # @@ -102,6 +102,8 @@ [Pcd] gEfiMdeModulePkgTokenSpaceGuid.PcdT
[edk2-devel] [PATCH] Edk2\NetworkPkg\UefiPxeBcDxe : Open a method to Enabled/Disabled IPV6/IPV6 PXE Support.
Please refer this link for defail. https://bugzilla.tianocore.org/show_bug.cgi?id=1695 Some Platform setup need provide a item for user to Enabled/Disabled IPV4/IPV6 PXE boot, but Origin UefiPxeBcDxe driver doesn't have such interface. So attached code review added two PCD to control IPV4/IPV6 PXE function in PxeBcSupported(). Platform Developer will override this two PCD to Enabled/Disabled IPV4/IPV6 PXE boot according to Setup value. attached code review have no side effect on current PXE function with default PCD value. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Xue, ShengfengX Reviewed-by: Reviewer Name --- NetworkPkg/NetworkPkg.dec| 12 +++- NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c| 12 +++- NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h | 5 - NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf | 4 +++- 4 files changed, 29 insertions(+), 4 deletions(-) diff --git a/NetworkPkg/NetworkPkg.dec b/NetworkPkg/NetworkPkg.dec index 9b8ece4837..1892a46ab0 100644 --- a/NetworkPkg/NetworkPkg.dec +++ b/NetworkPkg/NetworkPkg.dec @@ -3,7 +3,7 @@ # # This package provides network modules that conform to UEFI 2.4 specification. # -# Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved. +# Copyright (c) 2009 - 2019, Intel Corporation. All rights reserved. # (C) Copyright 2015-2017 Hewlett Packard Enterprise Development LP # # SPDX-License-Identifier: BSD-2-Clause-Patent @@ -117,5 +117,15 @@ # @Prompt Type Value of network boot policy used in iSCSI. gEfiNetworkPkgTokenSpaceGuid.PcdIScsiAIPNetworkBootPolicy|0x08|UINT8|0x1007 + ## IPv4 PXE support + # 0x00 = PXE Enabled + # 0x01 = PXE Disabled + gEfiNetworkPkgTokenSpaceGuid.PcdIPv4PXESupport|0x00|UINT8|0x1009 + + ## IPv6 PXE support + # 0x00 = PXE Enabled + # 0x01 = PXE Disabled + gEfiNetworkPkgTokenSpaceGuid.PcdIPv6PXESupport|0x00|UINT8|0x100a + [UserExtensions.TianoCore."ExtraFiles"] NetworkPkgExtra.uni diff --git a/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c b/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c index 3c1d400d50..cac19242aa 100644 --- a/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c +++ b/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c @@ -2,7 +2,7 @@ Driver Binding functions implementationfor for UefiPxeBc Driver. (C) Copyright 2014 Hewlett-Packard Development Company, L.P. - Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved. + Copyright (c) 2007 - 2019, Intel Corporation. All rights reserved. SPDX-License-Identifier: BSD-2-Clause-Patent @@ -1242,6 +1242,10 @@ PxeBcDriverEntryPoint ( { EFI_STATUS Status; + if ((PcdGet8(PcdIPv4PXESupport) == PXEDISABLED) && (PcdGet8(PcdIPv6PXESupport) == PXEDISABLED)) { +return EFI_UNSUPPORTED; + } + Status = EfiLibInstallDriverBindingComponentName2 ( ImageHandle, SystemTable, @@ -1301,9 +1305,15 @@ PxeBcSupported ( EFI_GUID*MtftpServiceBindingGuid; if (IpVersion == IP_VERSION_4) { +if (PcdGet8(PcdIPv4PXESupport) == PXEDISABLED) { + return EFI_UNSUPPORTED; +} DhcpServiceBindingGuid = &gEfiDhcp4ServiceBindingProtocolGuid; MtftpServiceBindingGuid = &gEfiMtftp4ServiceBindingProtocolGuid; } else { +if (PcdGet8(PcdIPv6PXESupport) == PXEDISABLED) { + return EFI_UNSUPPORTED; +} DhcpServiceBindingGuid = &gEfiDhcp6ServiceBindingProtocolGuid; MtftpServiceBindingGuid = &gEfiMtftp6ServiceBindingProtocolGuid; } diff --git a/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h b/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h index f0db4a0c1a..ba870ddf5a 100644 --- a/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h +++ b/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h @@ -2,7 +2,7 @@ This EFI_PXE_BASE_CODE_PROTOCOL and EFI_LOAD_FILE_PROTOCOL. interfaces declaration. - Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved. + Copyright (c) 2007 - 2019, Intel Corporation. All rights reserved. SPDX-License-Identifier: BSD-2-Clause-Patent @@ -78,6 +78,9 @@ typedef struct _PXEBC_VIRTUAL_NIC PXEBC_VIRTUAL_NIC; #define PXEBC_PRIVATE_DATA_FROM_ID(a) CR (a, PXEBC_PRIVATE_DATA, Id, PXEBC_PRIVATE_DATA_SIGNATURE) #define PXEBC_VIRTUAL_NIC_FROM_LOADFILE(a)CR (a, PXEBC_VIRTUAL_NIC, LoadFile, PXEBC_VIRTUAL_NIC_SIGNATURE) +#define PXEENABLED0x00 +#define PXEDISABLED 0x01 + typedef union { PXEBC_DHCP4_PACKET_CACHEDhcp4; PXEBC_DHCP6_PACKET_CACHEDhcp6; diff --git a/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf b/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf index fc31250dea..0341f1052a 100644 --- a/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf +++ b/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf @@ -5,7 +5,7 @@ # PXE-compatible device for network access or booting. This driver supports # both IPv4 and IPv6 network stack. # -# Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved. +# Copyright
[edk2-devel] [PATCH] Edk2\NetworkPkg\UefiPxeBcDxe : Open a method to Enabled/Disabled IPV6/IPV6 PXE Support.
Please refer this link for defail. https://bugzilla.tianocore.org/show_bug.cgi?id=1695 Some Platform setup need provide a item for user to Enabled/Disabled IPV4/IPV6 PXE boot, but Origin UefiPxeBcDxe driver doesn't have such interface. So attached code review added two PCD to control IPV4/IPV6 PXE function in PxeBcSupported(). Platform Developer will override this two PCD to Enabled/Disabled IPV4/IPV6 PXE boot according to Setup value. attached code review have no side effect on current PXE function with default PCD value. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Xue, ShengfengX Reviewed-by: Reviewer Name --- NetworkPkg/NetworkPkg.dec| 12 +++- NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c| 12 +++- NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h | 5 - NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf | 4 +++- 4 files changed, 29 insertions(+), 4 deletions(-) diff --git a/NetworkPkg/NetworkPkg.dec b/NetworkPkg/NetworkPkg.dec index 9b8ece4837..1a7b634631 100644 --- a/NetworkPkg/NetworkPkg.dec +++ b/NetworkPkg/NetworkPkg.dec @@ -3,7 +3,7 @@ # # This package provides network modules that conform to UEFI 2.4 specification. # -# Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved. +# Copyright (c) 2009 - 2019, Intel Corporation. All rights reserved. # (C) Copyright 2015-2017 Hewlett Packard Enterprise Development LP # # SPDX-License-Identifier: BSD-2-Clause-Patent @@ -117,5 +117,15 @@ # @Prompt Type Value of network boot policy used in iSCSI. gEfiNetworkPkgTokenSpaceGuid.PcdIScsiAIPNetworkBootPolicy|0x08|UINT8|0x1007 + ## IPv4 PXE support + # 0x00 = PXE Enabled + # 0x01 = PXE Disabled + gEfiNetworkPkgTokenSpaceGuid.PcdIPv4PXESupport|0x00|UINT8|0x1008 + + ## IPv6 PXE support + # 0x00 = PXE Enabled + # 0x01 = PXE Disabled + gEfiNetworkPkgTokenSpaceGuid.PcdIPv6PXESupport|0x00|UINT8|0x1009 + [UserExtensions.TianoCore."ExtraFiles"] NetworkPkgExtra.uni diff --git a/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c b/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c index 3c1d400d50..cac19242aa 100644 --- a/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c +++ b/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c @@ -2,7 +2,7 @@ Driver Binding functions implementationfor for UefiPxeBc Driver. (C) Copyright 2014 Hewlett-Packard Development Company, L.P. - Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved. + Copyright (c) 2007 - 2019, Intel Corporation. All rights reserved. SPDX-License-Identifier: BSD-2-Clause-Patent @@ -1242,6 +1242,10 @@ PxeBcDriverEntryPoint ( { EFI_STATUS Status; + if ((PcdGet8(PcdIPv4PXESupport) == PXEDISABLED) && (PcdGet8(PcdIPv6PXESupport) == PXEDISABLED)) { +return EFI_UNSUPPORTED; + } + Status = EfiLibInstallDriverBindingComponentName2 ( ImageHandle, SystemTable, @@ -1301,9 +1305,15 @@ PxeBcSupported ( EFI_GUID*MtftpServiceBindingGuid; if (IpVersion == IP_VERSION_4) { +if (PcdGet8(PcdIPv4PXESupport) == PXEDISABLED) { + return EFI_UNSUPPORTED; +} DhcpServiceBindingGuid = &gEfiDhcp4ServiceBindingProtocolGuid; MtftpServiceBindingGuid = &gEfiMtftp4ServiceBindingProtocolGuid; } else { +if (PcdGet8(PcdIPv6PXESupport) == PXEDISABLED) { + return EFI_UNSUPPORTED; +} DhcpServiceBindingGuid = &gEfiDhcp6ServiceBindingProtocolGuid; MtftpServiceBindingGuid = &gEfiMtftp6ServiceBindingProtocolGuid; } diff --git a/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h b/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h index f0db4a0c1a..ba870ddf5a 100644 --- a/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h +++ b/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h @@ -2,7 +2,7 @@ This EFI_PXE_BASE_CODE_PROTOCOL and EFI_LOAD_FILE_PROTOCOL. interfaces declaration. - Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved. + Copyright (c) 2007 - 2019, Intel Corporation. All rights reserved. SPDX-License-Identifier: BSD-2-Clause-Patent @@ -78,6 +78,9 @@ typedef struct _PXEBC_VIRTUAL_NIC PXEBC_VIRTUAL_NIC; #define PXEBC_PRIVATE_DATA_FROM_ID(a) CR (a, PXEBC_PRIVATE_DATA, Id, PXEBC_PRIVATE_DATA_SIGNATURE) #define PXEBC_VIRTUAL_NIC_FROM_LOADFILE(a)CR (a, PXEBC_VIRTUAL_NIC, LoadFile, PXEBC_VIRTUAL_NIC_SIGNATURE) +#define PXEENABLED0x00 +#define PXEDISABLED 0x01 + typedef union { PXEBC_DHCP4_PACKET_CACHEDhcp4; PXEBC_DHCP6_PACKET_CACHEDhcp6; diff --git a/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf b/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf index fc31250dea..0341f1052a 100644 --- a/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf +++ b/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf @@ -5,7 +5,7 @@ # PXE-compatible device for network access or booting. This driver supports # both IPv4 and IPv6 network stack. # -# Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved. +# Copyright
Re: [edk2-devel] [PATCH] Edk2\NetworkPkg\UefiPxeBcDxe : Open a method to Enabled/Disabled IPV6/IPV6 PXE Support.
Hi Siyuan, Please help to review this? Thanks -Original Message- From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of Xue, ShengfengX Sent: Monday, April 15, 2019 4:14 PM To: devel@edk2.groups.io Cc: Xue; Xue, ShengfengX Subject: [edk2-devel] [PATCH] Edk2\NetworkPkg\UefiPxeBcDxe : Open a method to Enabled/Disabled IPV6/IPV6 PXE Support. Please refer this link for defail. https://bugzilla.tianocore.org/show_bug.cgi?id=1695 Some Platform Developer want IPv4 and IPv6 PXE support separately. So it need open a method Enabled/Disabled IPV6/IPV6 PXE Support in PxeBcSupported(). Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Xue, ShengfengX Reviewed-by: Reviewer Name --- NetworkPkg/NetworkPkg.dec| 12 +++- NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c| 12 +++- NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h | 5 - NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf | 4 +++- 4 files changed, 29 insertions(+), 4 deletions(-) diff --git a/NetworkPkg/NetworkPkg.dec b/NetworkPkg/NetworkPkg.dec index 9b8ece4837..1a7b634631 100644 --- a/NetworkPkg/NetworkPkg.dec +++ b/NetworkPkg/NetworkPkg.dec @@ -3,7 +3,7 @@ # # This package provides network modules that conform to UEFI 2.4 specification. # -# Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved. +# Copyright (c) 2009 - 2019, Intel Corporation. All rights +reserved. # (C) Copyright 2015-2017 Hewlett Packard Enterprise Development LP # # SPDX-License-Identifier: BSD-2-Clause-Patent @@ -117,5 +117,15 @@ # @Prompt Type Value of network boot policy used in iSCSI. gEfiNetworkPkgTokenSpaceGuid.PcdIScsiAIPNetworkBootPolicy|0x08|UINT8|0x1007 + ## IPv4 PXE support + # 0x00 = PXE Enabled + # 0x01 = PXE Disabled + gEfiNetworkPkgTokenSpaceGuid.PcdIPv4PXESupport|0x00|UINT8|0x1008 + + ## IPv6 PXE support + # 0x00 = PXE Enabled + # 0x01 = PXE Disabled + gEfiNetworkPkgTokenSpaceGuid.PcdIPv6PXESupport|0x00|UINT8|0x1009 + [UserExtensions.TianoCore."ExtraFiles"] NetworkPkgExtra.uni diff --git a/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c b/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c index 3c1d400d50..cac19242aa 100644 --- a/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c +++ b/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c @@ -2,7 +2,7 @@ Driver Binding functions implementationfor for UefiPxeBc Driver. (C) Copyright 2014 Hewlett-Packard Development Company, L.P. - Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved. + Copyright (c) 2007 - 2019, Intel Corporation. All rights + reserved. SPDX-License-Identifier: BSD-2-Clause-Patent @@ -1242,6 +1242,10 @@ PxeBcDriverEntryPoint ( { EFI_STATUS Status; + if ((PcdGet8(PcdIPv4PXESupport) == PXEDISABLED) && (PcdGet8(PcdIPv6PXESupport) == PXEDISABLED)) { +return EFI_UNSUPPORTED; + } + Status = EfiLibInstallDriverBindingComponentName2 ( ImageHandle, SystemTable, @@ -1301,9 +1305,15 @@ PxeBcSupported ( EFI_GUID*MtftpServiceBindingGuid; if (IpVersion == IP_VERSION_4) { +if (PcdGet8(PcdIPv4PXESupport) == PXEDISABLED) { + return EFI_UNSUPPORTED; +} DhcpServiceBindingGuid = &gEfiDhcp4ServiceBindingProtocolGuid; MtftpServiceBindingGuid = &gEfiMtftp4ServiceBindingProtocolGuid; } else { +if (PcdGet8(PcdIPv6PXESupport) == PXEDISABLED) { + return EFI_UNSUPPORTED; +} DhcpServiceBindingGuid = &gEfiDhcp6ServiceBindingProtocolGuid; MtftpServiceBindingGuid = &gEfiMtftp6ServiceBindingProtocolGuid; } diff --git a/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h b/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h index f0db4a0c1a..ba870ddf5a 100644 --- a/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h +++ b/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h @@ -2,7 +2,7 @@ This EFI_PXE_BASE_CODE_PROTOCOL and EFI_LOAD_FILE_PROTOCOL. interfaces declaration. - Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved. + Copyright (c) 2007 - 2019, Intel Corporation. All rights + reserved. SPDX-License-Identifier: BSD-2-Clause-Patent @@ -78,6 +78,9 @@ typedef struct _PXEBC_VIRTUAL_NIC PXEBC_VIRTUAL_NIC; #define PXEBC_PRIVATE_DATA_FROM_ID(a) CR (a, PXEBC_PRIVATE_DATA, Id, PXEBC_PRIVATE_DATA_SIGNATURE) #define PXEBC_VIRTUAL_NIC_FROM_LOADFILE(a)CR (a, PXEBC_VIRTUAL_NIC, LoadFile, PXEBC_VIRTUAL_NIC_SIGNATURE) +#define PXEENABLED0x00 +#define PXEDISABLED 0x01 + typedef union { PXEBC_DHCP4_PACKET_CACHEDhcp4; PXEBC_DHCP6_PACKET_CACHEDhcp6; diff --git a/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf b/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf index fc31250dea..0341f1052a 100644 --- a/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf +++ b/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf @@ -5,7 +5,7 @@ # PXE-compatible device for network access or booting. This driver supports # both IPv4 and IPv6 network stack. # -#
[edk2-devel] [PATCH] Edk2\NetworkPkg\UefiPxeBcDxe : Open a method to Enabled/Disabled IPV6/IPV6 PXE Support.
Please refer this link for defail. https://bugzilla.tianocore.org/show_bug.cgi?id=1695 Some Platform Developer want IPv4 and IPv6 PXE support separately. So it need open a method Enabled/Disabled IPV6/IPV6 PXE Support in PxeBcSupported(). Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Xue, ShengfengX Reviewed-by: Reviewer Name --- NetworkPkg/NetworkPkg.dec| 12 +++- NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c| 12 +++- NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h | 5 - NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf | 4 +++- 4 files changed, 29 insertions(+), 4 deletions(-) diff --git a/NetworkPkg/NetworkPkg.dec b/NetworkPkg/NetworkPkg.dec index 9b8ece4837..1a7b634631 100644 --- a/NetworkPkg/NetworkPkg.dec +++ b/NetworkPkg/NetworkPkg.dec @@ -3,7 +3,7 @@ # # This package provides network modules that conform to UEFI 2.4 specification. # -# Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved. +# Copyright (c) 2009 - 2019, Intel Corporation. All rights reserved. # (C) Copyright 2015-2017 Hewlett Packard Enterprise Development LP # # SPDX-License-Identifier: BSD-2-Clause-Patent @@ -117,5 +117,15 @@ # @Prompt Type Value of network boot policy used in iSCSI. gEfiNetworkPkgTokenSpaceGuid.PcdIScsiAIPNetworkBootPolicy|0x08|UINT8|0x1007 + ## IPv4 PXE support + # 0x00 = PXE Enabled + # 0x01 = PXE Disabled + gEfiNetworkPkgTokenSpaceGuid.PcdIPv4PXESupport|0x00|UINT8|0x1008 + + ## IPv6 PXE support + # 0x00 = PXE Enabled + # 0x01 = PXE Disabled + gEfiNetworkPkgTokenSpaceGuid.PcdIPv6PXESupport|0x00|UINT8|0x1009 + [UserExtensions.TianoCore."ExtraFiles"] NetworkPkgExtra.uni diff --git a/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c b/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c index 3c1d400d50..cac19242aa 100644 --- a/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c +++ b/NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c @@ -2,7 +2,7 @@ Driver Binding functions implementationfor for UefiPxeBc Driver. (C) Copyright 2014 Hewlett-Packard Development Company, L.P. - Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved. + Copyright (c) 2007 - 2019, Intel Corporation. All rights reserved. SPDX-License-Identifier: BSD-2-Clause-Patent @@ -1242,6 +1242,10 @@ PxeBcDriverEntryPoint ( { EFI_STATUS Status; + if ((PcdGet8(PcdIPv4PXESupport) == PXEDISABLED) && (PcdGet8(PcdIPv6PXESupport) == PXEDISABLED)) { +return EFI_UNSUPPORTED; + } + Status = EfiLibInstallDriverBindingComponentName2 ( ImageHandle, SystemTable, @@ -1301,9 +1305,15 @@ PxeBcSupported ( EFI_GUID*MtftpServiceBindingGuid; if (IpVersion == IP_VERSION_4) { +if (PcdGet8(PcdIPv4PXESupport) == PXEDISABLED) { + return EFI_UNSUPPORTED; +} DhcpServiceBindingGuid = &gEfiDhcp4ServiceBindingProtocolGuid; MtftpServiceBindingGuid = &gEfiMtftp4ServiceBindingProtocolGuid; } else { +if (PcdGet8(PcdIPv6PXESupport) == PXEDISABLED) { + return EFI_UNSUPPORTED; +} DhcpServiceBindingGuid = &gEfiDhcp6ServiceBindingProtocolGuid; MtftpServiceBindingGuid = &gEfiMtftp6ServiceBindingProtocolGuid; } diff --git a/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h b/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h index f0db4a0c1a..ba870ddf5a 100644 --- a/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h +++ b/NetworkPkg/UefiPxeBcDxe/PxeBcImpl.h @@ -2,7 +2,7 @@ This EFI_PXE_BASE_CODE_PROTOCOL and EFI_LOAD_FILE_PROTOCOL. interfaces declaration. - Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved. + Copyright (c) 2007 - 2019, Intel Corporation. All rights reserved. SPDX-License-Identifier: BSD-2-Clause-Patent @@ -78,6 +78,9 @@ typedef struct _PXEBC_VIRTUAL_NIC PXEBC_VIRTUAL_NIC; #define PXEBC_PRIVATE_DATA_FROM_ID(a) CR (a, PXEBC_PRIVATE_DATA, Id, PXEBC_PRIVATE_DATA_SIGNATURE) #define PXEBC_VIRTUAL_NIC_FROM_LOADFILE(a)CR (a, PXEBC_VIRTUAL_NIC, LoadFile, PXEBC_VIRTUAL_NIC_SIGNATURE) +#define PXEENABLED0x00 +#define PXEDISABLED 0x01 + typedef union { PXEBC_DHCP4_PACKET_CACHEDhcp4; PXEBC_DHCP6_PACKET_CACHEDhcp6; diff --git a/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf b/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf index fc31250dea..0341f1052a 100644 --- a/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf +++ b/NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf @@ -5,7 +5,7 @@ # PXE-compatible device for network access or booting. This driver supports # both IPv4 and IPv6 network stack. # -# Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved. +# Copyright (c) 2007 - 2019, Intel Corporation. All rights reserved. # # SPDX-License-Identifier: BSD-2-Clause-Patent # @@ -102,6 +102,8 @@ [Pcd] gEfiMdeModulePkgTokenSpaceGuid.PcdTftpBlockSize ## SOMETIMES_CONSUMES gEfiNetworkPkgTokenSpaceGuid.PcdPxeTftpW
Re: [edk2-devel] Bug 1695 - Open a method to Enabled/Disabled IPV6/IPV6 PXE Support.
Re-send code review duo to blocked. Hi Owners Attached is code review for "Bug 1695 - Open a method to Enabled/Disabled IPV6/IPV6 PXE Support", Would you please help to review it? Thanks Please refer Bug description form Bugzilla. https://bugzilla.tianocore.org/show_bug.cgi?id=1695 best regards, Roy -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#38942): https://edk2.groups.io/g/devel/message/38942 Mute This Topic: https://groups.io/mt/31054701/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=- 2206240819IPV4Boot.7z Description: 2206240819IPV4Boot.7z
[edk2-devel] Bug 1695 - Open a method to Enabled/Disabled IPV6/IPV6 PXE Support.
Hi Owners Attached is code review for "Bug 1695 - Open a method to Enabled/Disabled IPV6/IPV6 PXE Support", Would you please help to review it? Thanks Please refer Bug description form Bugzilla. https://bugzilla.tianocore.org/show_bug.cgi?id=1695 best regards, Roy -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#38941): https://edk2.groups.io/g/devel/message/38941 Mute This Topic: https://groups.io/mt/31054701/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=- 2206240819IPV4Boot.7z Description: 2206240819IPV4Boot.7z