public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: Laszlo Ersek <lersek@redhat.com>
To: Fu Siyuan <siyuan.fu@intel.com>
Cc: edk2-devel@lists.01.org, Ard Biesheuvel <ard.biesheuvel@linaro.org>
Subject: Re: [PATCH v2 3/6] ArmVirtPkg: Update DSC/FDF to use NetworkPkg's include fragment file.
Date: Fri, 23 Nov 2018 13:29:28 +0100	[thread overview]
Message-ID: <b4659161-26a1-7cbd-f7fa-c0dd246577fe@redhat.com> (raw)
In-Reply-To: <20181122052153.89464-4-siyuan.fu@intel.com>

On 11/22/18 06:21, Fu Siyuan wrote:
> 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.
> 
> Cc: Laszlo Ersek <lersek@redhat.com>
> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> Cc: Julien Grall <julien.grall@linaro.org>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
> ---
>  ArmVirtPkg/ArmVirt.dsc.inc           | 11 +----
>  ArmVirtPkg/ArmVirtQemu.dsc           | 46 ++++++--------------
>  ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc | 28 +-----------
>  ArmVirtPkg/ArmVirtQemuKernel.dsc     | 46 ++++++--------------
>  4 files changed, 28 insertions(+), 103 deletions(-)

(1) Please reference
<https://bugzilla.tianocore.org/show_bug.cgi?id=1293> in the commit message.

> diff --git a/ArmVirtPkg/ArmVirt.dsc.inc b/ArmVirtPkg/ArmVirt.dsc.inc
> index 70a0ac4d786c..d7de73a88eff 100644
> --- a/ArmVirtPkg/ArmVirt.dsc.inc
> +++ b/ArmVirtPkg/ArmVirt.dsc.inc
> @@ -76,16 +76,7 @@ [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
> -!if $(NETWORK_IP6_ENABLE) == TRUE
> -  TcpIoLib|MdeModulePkg/Library/DxeTcpIoLib/DxeTcpIoLib.inf
> -!endif
> -!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 885c6b14b844..1414b6a5ccf8 100644
> --- a/ArmVirtPkg/ArmVirtQemu.dsc
> +++ b/ArmVirtPkg/ArmVirtQemu.dsc
> @@ -33,9 +33,14 @@ [Defines]
>    # Defines for default states.  These can be changed on the command line.
>    # -D FLAG=VALUE
>    #
> -  DEFINE SECURE_BOOT_ENABLE      = FALSE
> -  DEFINE NETWORK_IP6_ENABLE      = FALSE
> -  DEFINE HTTP_BOOT_ENABLE        = FALSE
> +  DEFINE SECURE_BOOT_ENABLE              = FALSE
> +  DEFINE NETWORK_IP6_ENABLE              = FALSE
> +  DEFINE NETWORK_HTTP_BOOT_ENABLE        = FALSE
> +  DEFINE NETWORK_SNP_ENABLE              = FALSE
> +  DEFINE NETWORK_TLS_ENABLE              = FALSE
> +  DEFINE NETWORK_IPSEC_ENABLE            = FALSE
> +  DEFINE NETWORK_ALLOW_HTTP_CONNECTIONS  = TRUE
> +!include NetworkPkg/NetworkDefines.dsc.inc
>  
>  !include ArmVirtPkg/ArmVirt.dsc.inc
>  

This is correct.

> @@ -123,9 +128,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
> @@ -338,33 +344,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
> -!if $(NETWORK_IP6_ENABLE) == TRUE
> -  NetworkPkg/Ip6Dxe/Ip6Dxe.inf
> -  NetworkPkg/TcpDxe/TcpDxe.inf
> -  NetworkPkg/Udp6Dxe/Udp6Dxe.inf
> -  NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf
> -  NetworkPkg/Mtftp6Dxe/Mtftp6Dxe.inf
> -  NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf
> -  NetworkPkg/IScsiDxe/IScsiDxe.inf
> -!else
> -  MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf
> -  MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf
> -  MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.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

(2) This is good, and the end result that we want; however, it does two
things at once -- it eliminates the MdeModulePkg network drivers, and it
adopts the NetworkPkg includes.

In OvmfPkg, we handled the first step separately, in commit d2f1f6423bd1
("OvmfPkg: Replace obsoleted network drivers from platform DSC/FDF.",
2018-11-06).

I'm not proposing that we separate out the same change for ArmVirtPkg as
well. After all, we can consider the current patch as a *means* to
implementing the same -- just better. So, what I propose is, please add
the following to the commit message:

    This change automatically ports OvmfPkg commit d2f1f6423bd1
    ("OvmfPkg: Replace obsoleted network drivers from platform
    DSC/FDF.", 2018-11-06) to NetworkPkg.

> diff --git a/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc b/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc
> index a6390bd4b841..560651e49e0b 100644
> --- a/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc
> +++ b/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc
> @@ -118,33 +118,7 @@ [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
> -!if $(NETWORK_IP6_ENABLE) == TRUE
> -  INF NetworkPkg/Ip6Dxe/Ip6Dxe.inf
> -  INF NetworkPkg/TcpDxe/TcpDxe.inf
> -  INF NetworkPkg/Udp6Dxe/Udp6Dxe.inf
> -  INF NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf
> -  INF NetworkPkg/Mtftp6Dxe/Mtftp6Dxe.inf
> -  INF NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf
> -  INF NetworkPkg/IScsiDxe/IScsiDxe.inf
> -!else
> -  INF MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf
> -  INF MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf
> -  INF MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.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

Looks OK.

> diff --git a/ArmVirtPkg/ArmVirtQemuKernel.dsc b/ArmVirtPkg/ArmVirtQemuKernel.dsc
> index 434d6861a56f..e1f5dd3f0df2 100644
> --- a/ArmVirtPkg/ArmVirtQemuKernel.dsc
> +++ b/ArmVirtPkg/ArmVirtQemuKernel.dsc
> @@ -33,9 +33,14 @@ [Defines]
>    # Defines for default states.  These can be changed on the command line.
>    # -D FLAG=VALUE
>    #
> -  DEFINE SECURE_BOOT_ENABLE      = FALSE
> -  DEFINE NETWORK_IP6_ENABLE      = FALSE
> -  DEFINE HTTP_BOOT_ENABLE        = FALSE
> +  DEFINE SECURE_BOOT_ENABLE              = FALSE
> +  DEFINE NETWORK_IP6_ENABLE              = FALSE
> +  DEFINE NETWORK_HTTP_BOOT_ENABLE        = FALSE
> +  DEFINE NETWORK_SNP_ENABLE              = FALSE
> +  DEFINE NETWORK_TLS_ENABLE              = FALSE
> +  DEFINE NETWORK_IPSEC_ENABLE            = FALSE
> +  DEFINE NETWORK_ALLOW_HTTP_CONNECTIONS  = TRUE
> +!include NetworkPkg/NetworkDefines.dsc.inc
>  
>  !include ArmVirtPkg/ArmVirt.dsc.inc
>  
> @@ -126,9 +131,10 @@ [PcdsFixedAtBuild.common]
>    #
>    gArmTokenSpaceGuid.PcdArmArchTimerFreqInHz|0
>  
> -!if $(HTTP_BOOT_ENABLE) == TRUE
> -  gEfiNetworkPkgTokenSpaceGuid.PcdAllowHttpConnections|TRUE
> -!endif
> +  #
> +  # Network Pcds
> +  #
> +!include NetworkPkg/NetworkPcds.dsc.inc
>  
>  [PcdsPatchableInModule.common]
>    #
> @@ -327,33 +333,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
> -!if $(NETWORK_IP6_ENABLE) == TRUE
> -  NetworkPkg/Ip6Dxe/Ip6Dxe.inf
> -  NetworkPkg/TcpDxe/TcpDxe.inf
> -  NetworkPkg/Udp6Dxe/Udp6Dxe.inf
> -  NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf
> -  NetworkPkg/Mtftp6Dxe/Mtftp6Dxe.inf
> -  NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf
> -  NetworkPkg/IScsiDxe/IScsiDxe.inf
> -!else
> -  MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf
> -  MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf
> -  MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.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
> 

With the commit message updates as requested in (1) and (2):

Reviewed-by: Laszlo Ersek <lersek@redhat.com>

Thanks!
Laszlo


  reply	other threads:[~2018-11-23 12:29 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-22  5:21 [PATCH v2 0/6] Add DSC/FDF include segment files for network stack Fu Siyuan
2018-11-22  5:21 ` [PATCH v2 1/6] NetworkPkg: Add DSC/FDF include segment files to NetworkPkg Fu Siyuan
2018-11-22  9:56   ` Ni, Ruiyu
2018-11-22 10:52     ` Fu, Siyuan
2018-11-23 10:56   ` Laszlo Ersek
2018-12-10  8:36     ` Ard Biesheuvel
2018-12-10 14:40       ` Laszlo Ersek
2018-12-10 16:39         ` Ard Biesheuvel
2018-11-22  5:21 ` [PATCH v2 2/6] Nt32Pkg: Update DSC/FDF to use NetworkPkg's include fragment file Fu Siyuan
2018-11-22  5:21 ` [PATCH v2 3/6] ArmVirtPkg: " Fu Siyuan
2018-11-23 12:29   ` Laszlo Ersek [this message]
2018-11-23 12:30     ` Laszlo Ersek
2018-11-23 16:50   ` Laszlo Ersek
2018-11-22  5:21 ` [PATCH v2 4/6] EmulatorPkg: " Fu Siyuan
2018-11-22  5:21 ` [PATCH v2 5/6] OvmfPkg: " Fu Siyuan
2018-11-23 12:00   ` Laszlo Ersek
2018-11-23 12:10   ` Laszlo Ersek
2018-11-23 12:19   ` Laszlo Ersek
2018-11-22  5:21 ` [PATCH v2 6/6] Vlv2TbltDevicePkg: " Fu Siyuan
2018-11-22  6:14 ` [PATCH v2 0/6] Add DSC/FDF include segment files for network stack Gao, Liming
2018-11-22 15:48   ` Laszlo Ersek
2018-11-23 16:02     ` Gao, Liming
2018-11-23 18:35       ` Laszlo Ersek
2018-11-26  3:31         ` Gao, Liming
2018-11-26 11:34           ` Laszlo Ersek
2018-11-22 16:12 ` Laszlo Ersek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=b4659161-26a1-7cbd-f7fa-c0dd246577fe@redhat.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox