From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: redhat.com, ip: 209.132.183.28, mailfrom: lersek@redhat.com) Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by groups.io with SMTP; Thu, 16 May 2019 07:43:21 -0700 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 0687C30821AE; Thu, 16 May 2019 14:43:20 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-121-88.rdu2.redhat.com [10.10.121.88]) by smtp.corp.redhat.com (Postfix) with ESMTP id 4D3144D734; Thu, 16 May 2019 14:43:17 +0000 (UTC) Subject: Re: [edk2-devel] [PATCH v2 3/4] ArmVirtPkg: Update DSC/FDF to use NetworkPkg's include fragment file. To: devel@edk2.groups.io, shenglei.zhang@intel.com Cc: Fu Siyuan , Ard Biesheuvel , Julien Grall References: <20190516081810.27840-1-shenglei.zhang@intel.com> <20190516081810.27840-4-shenglei.zhang@intel.com> From: "Laszlo Ersek" Message-ID: Date: Thu, 16 May 2019 16:43:16 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 In-Reply-To: <20190516081810.27840-4-shenglei.zhang@intel.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.47]); Thu, 16 May 2019 14:43:20 +0000 (UTC) Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit On 05/16/19 10:18, Zhang, Shenglei wrote: > From: Fu Siyuan > > This patch updates the platform DSC/FDF files to use the include fragment > files provided by NetworkPkg. > The feature enabling flags in [Defines] section have been updated to use > the NetworkPkg's terms, and the value has been overridden with the original > default value on this platform. > > v2:Add check for NETWORK_SNP_ENABLE and NETWORK_TLS_ENABLE. > > Cc: Laszlo Ersek > Cc: Ard Biesheuvel > Cc: Julien Grall > Signed-off-by: Shenglei Zhang > --- > ArmVirtPkg/ArmVirt.dsc.inc | 10 +---- > ArmVirtPkg/ArmVirtQemu.dsc | 56 +++++++++++++--------------- > ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc | 25 +------------ > ArmVirtPkg/ArmVirtQemuKernel.dsc | 56 +++++++++++++--------------- > 4 files changed, 56 insertions(+), 91 deletions(-) > > diff --git a/ArmVirtPkg/ArmVirt.dsc.inc b/ArmVirtPkg/ArmVirt.dsc.inc > index 1848d20531ab..20bf011617a1 100644 > --- a/ArmVirtPkg/ArmVirt.dsc.inc > +++ b/ArmVirtPkg/ArmVirt.dsc.inc > @@ -70,14 +70,8 @@ [LibraryClasses.common] > BaseMemoryLib|MdePkg/Library/BaseMemoryLibOptDxe/BaseMemoryLibOptDxe.inf > > # Networking Requirements > - NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf > - DpcLib|MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf > - UdpIoLib|MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf > - IpIoLib|MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf > - TcpIoLib|MdeModulePkg/Library/DxeTcpIoLib/DxeTcpIoLib.inf > -!if $(HTTP_BOOT_ENABLE) == TRUE > - HttpLib|MdeModulePkg/Library/DxeHttpLib/DxeHttpLib.inf > -!endif > +!include NetworkPkg/NetworkLibs.dsc.inc > + > > # > # It is not possible to prevent the ARM compiler from inserting calls to intrinsic functions. > diff --git a/ArmVirtPkg/ArmVirtQemu.dsc b/ArmVirtPkg/ArmVirtQemu.dsc > index 28c8fd551344..114a924f8bcb 100644 > --- a/ArmVirtPkg/ArmVirtQemu.dsc > +++ b/ArmVirtPkg/ArmVirtQemu.dsc > @@ -27,10 +27,27 @@ [Defines] > # Defines for default states. These can be changed on the command line. > # -D FLAG=VALUE > # > - DEFINE TTY_TERMINAL = FALSE > - DEFINE SECURE_BOOT_ENABLE = FALSE > - DEFINE NETWORK_IP6_ENABLE = FALSE > - DEFINE HTTP_BOOT_ENABLE = FALSE > + DEFINE TTY_TERMINAL = FALSE > + DEFINE SECURE_BOOT_ENABLE = FALSE (1) This small issue remains from v1 (1), namely that the DEFINEs unrelated to NetworkPkg should not be re-indented. But, I will undo this unjustified whitespace change for you. > + > + # > + # Network definition > + # > + DEFINE NETWORK_IP6_ENABLE = FALSE > + DEFINE NETWORK_HTTP_BOOT_ENABLE = FALSE > + DEFINE NETWORK_SNP_ENABLE = FALSE > + DEFINE NETWORK_TLS_ENABLE = FALSE > + DEFINE NETWORK_ALLOW_HTTP_CONNECTIONS = TRUE > + > +!if $(NETWORK_SNP_ENABLE) == TRUE > + !error"NETWORK_SNP_ENABLE should be FALSE here." > +!endif > + > +!if $(NETWORK_TLS_ENABLE) == TRUE > + !error"NETWORK_TLS_ENABLE should be FALSE here." > +!endif (2) Also hinting back at v1 (3) and (4), the error messages should be better: SNP is IA32/X64/EBC only; and for TLS, I asked that we please reference TianoCore#1089. I'll fix these up for you, as well. With those changes: Reviewed-by: Laszlo Ersek (I'm going to build-test & push the series soon.) Thanks, Laszlo > + > +!include NetworkPkg/NetworkDefines.dsc.inc > > !include ArmVirtPkg/ArmVirt.dsc.inc > > @@ -122,9 +139,10 @@ [PcdsFixedAtBuild.common] > # > gArmTokenSpaceGuid.PcdArmArchTimerFreqInHz|0 > > -!if $(HTTP_BOOT_ENABLE) == TRUE > - gEfiNetworkPkgTokenSpaceGuid.PcdAllowHttpConnections|TRUE > -!endif > + # > + # Network Pcds > + # > +!include NetworkPkg/NetworkPcds.dsc.inc > > # System Memory Base -- fixed at 0x4000_0000 > gArmTokenSpaceGuid.PcdSystemMemoryBase|0x40000000 > @@ -353,29 +371,7 @@ [Components.common] > # > # Networking stack > # > - MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf > - MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf > - MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf > - MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf > - MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf > - MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf > - MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf > - MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf > - NetworkPkg/TcpDxe/TcpDxe.inf > - NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf > - NetworkPkg/IScsiDxe/IScsiDxe.inf > -!if $(NETWORK_IP6_ENABLE) == TRUE > - NetworkPkg/Ip6Dxe/Ip6Dxe.inf > - NetworkPkg/Udp6Dxe/Udp6Dxe.inf > - NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf > - NetworkPkg/Mtftp6Dxe/Mtftp6Dxe.inf > -!endif > -!if $(HTTP_BOOT_ENABLE) == TRUE > - NetworkPkg/DnsDxe/DnsDxe.inf > - NetworkPkg/HttpUtilitiesDxe/HttpUtilitiesDxe.inf > - NetworkPkg/HttpDxe/HttpDxe.inf > - NetworkPkg/HttpBootDxe/HttpBootDxe.inf > -!endif > +!include NetworkPkg/NetworkComponents.dsc.inc > > # > # SCSI Bus and Disk Driver > diff --git a/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc b/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc > index a9a980aefc3e..31f615a9d0f9 100644 > --- a/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc > +++ b/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc > @@ -117,29 +117,8 @@ [FV.FvMain] > # > # Networking stack > # > - INF MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf > - INF MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf > - INF MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf > - INF MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf > - INF MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf > - INF MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf > - INF MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf > - INF MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf > - INF NetworkPkg/TcpDxe/TcpDxe.inf > - INF NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf > - INF NetworkPkg/IScsiDxe/IScsiDxe.inf > -!if $(NETWORK_IP6_ENABLE) == TRUE > - INF NetworkPkg/Ip6Dxe/Ip6Dxe.inf > - INF NetworkPkg/Udp6Dxe/Udp6Dxe.inf > - INF NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf > - INF NetworkPkg/Mtftp6Dxe/Mtftp6Dxe.inf > -!endif > -!if $(HTTP_BOOT_ENABLE) == TRUE > - INF NetworkPkg/DnsDxe/DnsDxe.inf > - INF NetworkPkg/HttpUtilitiesDxe/HttpUtilitiesDxe.inf > - INF NetworkPkg/HttpDxe/HttpDxe.inf > - INF NetworkPkg/HttpBootDxe/HttpBootDxe.inf > -!endif > +!include NetworkPkg/Network.fdf.inc > + > > # > # SCSI Bus and Disk Driver > diff --git a/ArmVirtPkg/ArmVirtQemuKernel.dsc b/ArmVirtPkg/ArmVirtQemuKernel.dsc > index 2a83c7469424..74987cb855fb 100644 > --- a/ArmVirtPkg/ArmVirtQemuKernel.dsc > +++ b/ArmVirtPkg/ArmVirtQemuKernel.dsc > @@ -27,10 +27,27 @@ [Defines] > # Defines for default states. These can be changed on the command line. > # -D FLAG=VALUE > # > - DEFINE TTY_TERMINAL = FALSE > - DEFINE SECURE_BOOT_ENABLE = FALSE > - DEFINE NETWORK_IP6_ENABLE = FALSE > - DEFINE HTTP_BOOT_ENABLE = FALSE > + DEFINE TTY_TERMINAL = FALSE > + DEFINE SECURE_BOOT_ENABLE = FALSE > + > + # > + # Network definition > + # > + DEFINE NETWORK_IP6_ENABLE = FALSE > + DEFINE NETWORK_HTTP_BOOT_ENABLE = FALSE > + DEFINE NETWORK_SNP_ENABLE = FALSE > + DEFINE NETWORK_TLS_ENABLE = FALSE > + DEFINE NETWORK_ALLOW_HTTP_CONNECTIONS = TRUE > + > +!if $(NETWORK_SNP_ENABLE) == TRUE > + !error"NETWORK_SNP_ENABLE should be FALSE here." > +!endif > + > +!if $(NETWORK_TLS_ENABLE) == TRUE > + !error"NETWORK_TLS_ENABLE should be FALSE here." > +!endif > + > +!include NetworkPkg/NetworkDefines.dsc.inc > > !include ArmVirtPkg/ArmVirt.dsc.inc > > @@ -127,9 +144,10 @@ [PcdsFixedAtBuild.common] > # > gArmTokenSpaceGuid.PcdArmArchTimerFreqInHz|0 > > -!if $(HTTP_BOOT_ENABLE) == TRUE > - gEfiNetworkPkgTokenSpaceGuid.PcdAllowHttpConnections|TRUE > -!endif > + # > + # Network Pcds > + # > +!include NetworkPkg/NetworkPcds.dsc.inc > > gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|FALSE > gEfiMdeModulePkgTokenSpaceGuid.PcdBootManagerMenuFile|{ 0x21, 0xaa, 0x2c, 0x46, 0x14, 0x76, 0x03, 0x45, 0x83, 0x6e, 0x8a, 0xb6, 0xf4, 0x66, 0x23, 0x31 } > @@ -337,29 +355,7 @@ [Components.common] > # > # Networking stack > # > - MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf > - MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf > - MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf > - MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf > - MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf > - MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf > - MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf > - MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf > - NetworkPkg/TcpDxe/TcpDxe.inf > - NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf > - NetworkPkg/IScsiDxe/IScsiDxe.inf > -!if $(NETWORK_IP6_ENABLE) == TRUE > - NetworkPkg/Ip6Dxe/Ip6Dxe.inf > - NetworkPkg/Udp6Dxe/Udp6Dxe.inf > - NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf > - NetworkPkg/Mtftp6Dxe/Mtftp6Dxe.inf > -!endif > -!if $(HTTP_BOOT_ENABLE) == TRUE > - NetworkPkg/DnsDxe/DnsDxe.inf > - NetworkPkg/HttpUtilitiesDxe/HttpUtilitiesDxe.inf > - NetworkPkg/HttpDxe/HttpDxe.inf > - NetworkPkg/HttpBootDxe/HttpBootDxe.inf > -!endif > +!include NetworkPkg/NetworkComponents.dsc.inc > > # > # SCSI Bus and Disk Driver >