public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files
@ 2018-03-11  1:48 Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 01/45] ArmVirtPkg/PlatformBootManagerLib: list "PlatformBm.h" in INF file Laszlo Ersek
                   ` (46 more replies)
  0 siblings, 47 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:48 UTC (permalink / raw)
  To: edk2-devel-01
  Cc: Anthony Perard, Ard Biesheuvel, Brijesh Singh, Jordan Justen,
	Julien Grall, Phil Dennis-Jordan

Repo:   https://github.com/lersek/edk2.git
Branch: hdr_inf_cleanup

In
<http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com>,
Mike explained why it's a good idea to list module-internal *.h files in
the [Sources*] sections of the INF files:

On 11/23/15 21:28, Kinney, Michael D wrote:
> There are 2 reasons to list all source files used in a module build in
> the [Sources] section.
>
> 1) Support incremental builds.  If a change to the .h file is made,
>    then the module may  not be rebuilt if the .h file is not listed in
>    [Sources]
> 2) Support of UEFI Distribution Package distribution format.  The UPT
>    tools that creates UDP packages uses the [Sources] section for the
>    inventory of files.  If a file is missing, then it will not be
>    included in the UDP file.

In only two years and three-four months, I've finally come around
addressing (1) under ArmVirtPkg and OvmfPkg. The affected *.inf and *.h
files were located with the following crude script:

> #!/bin/bash
>
> export LC_ALL=C
>
> find ArmVirtPkg/ OvmfPkg/ -type f -name '*.inf' \
> | sort \
> | while read INF; do
>     INF_D=$(dirname -- "$INF")
>     INF_F=$(basename -- "$INF")
>     (
>       cd "$INF_D"
>       find -type f -name '*.h' \
>       | cut -c 3- \
>       | sort \
>       | while read REL_H; do
>           if ! grep -q -F -e "  $REL_H" -- "$INF_F"; then
>             printf '%s: %s\n' "$INF" "$REL_H"
>           fi
>         done
>     )
>   done

This patch set brings the output down to nil, from the following 45
lines (note that the patch count equaling 45 is a coincidence):

> ArmVirtPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf: PlatformBm.h
> ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf: PrePi.h
> OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf: AcpiPlatform.h
> OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf: QemuLoader.h
> OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf: AcpiPlatform.h
> OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf: QemuLoader.h
> OvmfPkg/BlockMmioToBlockIoDxe/BlockIo.inf: BlockIo.h
> OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf: CsmSupportLib.h
> OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf: LegacyInterrupt.h
> OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf: LegacyPlatform.h
> OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf: LegacyRegion.h
> OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf: Fvb.h
> OvmfPkg/IoMmuDxe/IoMmuDxe.inf: AmdSevIoMmu.h
> OvmfPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf: AcpiTimerLib.h
> OvmfPkg/Library/AcpiTimerLib/BaseRomAcpiTimerLib.inf: AcpiTimerLib.h
> OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf: AcpiTimerLib.h
> OvmfPkg/Library/BaseMemEncryptSevLib/BaseMemEncryptSevLib.inf: X64/VirtualMemory.h
> OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf: LoadLinuxLib.h
> OvmfPkg/Library/LockBoxLib/LockBoxBaseLib.inf: LockBoxLib.h
> OvmfPkg/Library/LockBoxLib/LockBoxDxeLib.inf: LockBoxLib.h
> OvmfPkg/Library/NvVarsFileLib/NvVarsFileLib.inf: NvVarsFileLib.h
> OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf: DebugLibDetect.h
> OvmfPkg/Library/PlatformDebugLibIoPort/PlatformRomDebugLibIoPort.inf: DebugLibDetect.h
> OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf: ExtraRootBusMap.h
> OvmfPkg/Library/SerializeVariablesLib/SerializeVariablesLib.inf: SerializeVariablesLib.h
> OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDeviceLib.inf: VirtioMmioDevice.h
> OvmfPkg/PlatformDxe/Platform.inf: Platform.h
> OvmfPkg/PlatformDxe/Platform.inf: PlatformConfig.h
> OvmfPkg/PlatformPei/PlatformPei.inf: Cmos.h
> OvmfPkg/PlatformPei/PlatformPei.inf: Platform.h
> OvmfPkg/PlatformPei/PlatformPei.inf: Xen.h
> OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf: FwBlockService.h
> OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf: QemuFlash.h
> OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf: FwBlockService.h
> OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf: QemuFlash.h
> OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf: Qemu.h
> OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf: UnalignedIoInternal.h
> OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf: VbeShim.h
> OvmfPkg/Virtio10Dxe/Virtio10.inf: Virtio10.h
> OvmfPkg/VirtioBlkDxe/VirtioBlk.inf: VirtioBlk.h
> OvmfPkg/VirtioNetDxe/VirtioNet.inf: VirtioNet.h
> OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf: VirtioPciDevice.h
> OvmfPkg/VirtioRngDxe/VirtioRng.inf: VirtioRng.h
> OvmfPkg/VirtioScsiDxe/VirtioScsi.inf: VirtioScsi.h
> OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf: DriverBinding.h

In the future, we shall ask for patches to be respun unless they (a)
keep the [Sources*] sections sorted and (b) list any new module-internal
header files there.

Cc: Anthony Perard <anthony.perard@citrix.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Brijesh Singh <brijesh.singh@amd.com>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Julien Grall <julien.grall@linaro.org>
Cc: Phil Dennis-Jordan <phil@philjordan.eu>

Thanks,
Laszlo

Laszlo Ersek (45):
  ArmVirtPkg/PlatformBootManagerLib: list "PlatformBm.h" in INF file
  ArmVirtPkg/ArmVirtPrePiUniCoreRelocatable: sort [Sources*] sections in
    INF
  ArmVirtPkg/ArmVirtPrePiUniCoreRelocatable: list "PrePi.h" in INF file
  OvmfPkg/AcpiPlatformDxe: sort [Sources*] sections in the INF files
  OvmfPkg/AcpiPlatformDxe: list "AcpiPlatform.h" in the INF files
  OvmfPkg/AcpiPlatformDxe: don't #include "QemuLoader.h" in "Qemu.c"
  OvmfPkg/AcpiPlatformDxe: list "QemuLoader.h" in the INF files
  OvmfPkg/BlockMmioToBlockIoDxe: list "BlockIo.h" in the INF file
  OvmfPkg/CsmSupportLib: sort [Sources*] sections in the INF file
  OvmfPkg/CsmSupportLib: list "CsmSupportLib.h" in the INF file
  OvmfPkg/CsmSupportLib: list "LegacyInterrupt.h" in the INF file
  OvmfPkg/CsmSupportLib: list "LegacyPlatform.h" in the INF file
  OvmfPkg/CsmSupportLib: list "LegacyRegion.h" in the INF file
  OvmfPkg/EmuVariableFvbRuntimeDxe: list "Fvb.h" in the INF file
  OvmfPkg/IoMmuDxe: list "AmdSevIoMmu.h" in the INF file
  OvmfPkg/AcpiTimerLib: list "AcpiTimerLib.h" in the INF files
  OvmfPkg/BaseMemEncryptSevLib: list "X64/VirtualMemory.h" in the INF
    file
  OvmfPkg/LoadLinuxLib: list "LoadLinuxLib.h" in the INF file
  OvmfPkg/LockBoxLib: list "LockBoxLib.h" in the INF files
  OvmfPkg/NvVarsFileLib: list "NvVarsFileLib.h" in the INF file
  OvmfPkg/PlatformDebugLibIoPort: list "DebugLibDetect.h" in the INF
    files
  OvmfPkg/QemuBootOrderLib: sort [Sources*] sections in the INF file
  OvmfPkg/QemuBootOrderLib: list "ExtraRootBusMap.h" in the INF file
  OvmfPkg/SerializeVariablesLib: list "SerializeVariablesLib.h" in INF
    file
  OvmfPkg/VirtioMmioDeviceLib: list "VirtioMmioDevice.h" in the INF file
  OvmfPkg/VirtioMmioDeviceLib: improve style of
    mMmioDeviceProtocolTemplate
  OvmfPkg/PlatformDxe: list "Platform.h" in the INF file
  OvmfPkg/PlatformDxe: list "PlatformConfig.h" in the INF file
  OvmfPkg/PlatformPei: list "Cmos.h" in the INF file
  OvmfPkg/PlatformPei: list "Platform.h" in the INF file
  OvmfPkg/PlatformPei: list "Xen.h" in the INF file
  OvmfPkg/QemuFlashFvbServicesRuntimeDxe: list "FwBlockService.h" in
    INFs
  OvmfPkg/QemuFlashFvbServicesRuntimeDxe: list "QemuFlash.h" in INF
    files
  OvmfPkg/QemuVideoDxe: sort [Sources*] sections in the INF file
  OvmfPkg/QemuVideoDxe: list "Qemu.h" in the INF file
  OvmfPkg/QemuVideoDxe: list "UnalignedIoInternal.h" in the INF file
  OvmfPkg/QemuVideoDxe: list "VbeShim.h" in the INF file
  OvmfPkg/Virtio10Dxe: list "Virtio10.h" in the INF file
  OvmfPkg/VirtioBlkDxe: list "VirtioBlk.h" in the INF file
  OvmfPkg/VirtioNetDxe: list "VirtioNet.h" in the INF file
  OvmfPkg/VirtioPciDeviceDxe: list "VirtioPciDevice.h" in the INF file
  OvmfPkg/VirtioRngDxe: list "VirtioRng.h" in the INF file
  OvmfPkg/VirtioScsiDxe: list "VirtioScsi.h" in the INF file
  OvmfPkg/XenPvBlkDxe: sort [Sources*] sections in the INF file
  OvmfPkg/XenPvBlkDxe: list "DriverBinding.h" in the INF file

 ArmVirtPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf | 1 +
 ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf                  | 3 ++-
 OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf                          | 8 +++++---
 OvmfPkg/AcpiPlatformDxe/Qemu.c                                       | 1 -
 OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf                 | 8 +++++---
 OvmfPkg/BlockMmioToBlockIoDxe/BlockIo.inf                            | 1 +
 OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf                          | 6 +++++-
 OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf                             | 1 +
 OvmfPkg/IoMmuDxe/IoMmuDxe.inf                                        | 1 +
 OvmfPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf                    | 1 +
 OvmfPkg/Library/AcpiTimerLib/BaseRomAcpiTimerLib.inf                 | 1 +
 OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf                     | 1 +
 OvmfPkg/Library/BaseMemEncryptSevLib/BaseMemEncryptSevLib.inf        | 1 +
 OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf                        | 1 +
 OvmfPkg/Library/LockBoxLib/LockBoxBaseLib.inf                        | 1 +
 OvmfPkg/Library/LockBoxLib/LockBoxDxeLib.inf                         | 1 +
 OvmfPkg/Library/NvVarsFileLib/NvVarsFileLib.inf                      | 1 +
 OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf    | 1 +
 OvmfPkg/Library/PlatformDebugLibIoPort/PlatformRomDebugLibIoPort.inf | 1 +
 OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf                | 3 ++-
 OvmfPkg/Library/SerializeVariablesLib/SerializeVariablesLib.inf      | 1 +
 OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDevice.c               | 2 +-
 OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDeviceLib.inf          | 1 +
 OvmfPkg/PlatformDxe/Platform.inf                                     | 2 ++
 OvmfPkg/PlatformPei/PlatformPei.inf                                  | 3 +++
 OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf     | 2 ++
 OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf            | 2 ++
 OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf                                | 7 +++++--
 OvmfPkg/Virtio10Dxe/Virtio10.inf                                     | 1 +
 OvmfPkg/VirtioBlkDxe/VirtioBlk.inf                                   | 1 +
 OvmfPkg/VirtioNetDxe/VirtioNet.inf                                   | 1 +
 OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf                    | 1 +
 OvmfPkg/VirtioRngDxe/VirtioRng.inf                                   | 1 +
 OvmfPkg/VirtioScsiDxe/VirtioScsi.inf                                 | 1 +
 OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf                                  | 9 +++++----
 35 files changed, 61 insertions(+), 17 deletions(-)

-- 
2.14.1.3.gb7cf6e02401b



^ permalink raw reply	[flat|nested] 58+ messages in thread

* [PATCH 01/45] ArmVirtPkg/PlatformBootManagerLib: list "PlatformBm.h" in INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
@ 2018-03-11  1:48 ` Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 02/45] ArmVirtPkg/ArmVirtPrePiUniCoreRelocatable: sort [Sources*] sections in INF Laszlo Ersek
                   ` (45 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:48 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel

The header file declares TryRunningQemuKernel(), defined in "QemuKernel.c"
and called from "PlatformBm.c".

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 ArmVirtPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/ArmVirtPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf b/ArmVirtPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
index bac6c781b3c8..1e22f8bb38ef 100644
--- a/ArmVirtPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
+++ b/ArmVirtPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
@@ -32,6 +32,7 @@ [Defines]
 
 [Sources]
   PlatformBm.c
+  PlatformBm.h
   QemuKernel.c
 
 [Packages]
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 02/45] ArmVirtPkg/ArmVirtPrePiUniCoreRelocatable: sort [Sources*] sections in INF
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 01/45] ArmVirtPkg/PlatformBootManagerLib: list "PlatformBm.h" in INF file Laszlo Ersek
@ 2018-03-11  1:48 ` Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 03/45] ArmVirtPkg/ArmVirtPrePiUniCoreRelocatable: list "PrePi.h" in INF file Laszlo Ersek
                   ` (44 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:48 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Julien Grall

This makes it easier to insert future source files. No functional changes.

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Julien Grall <julien.grall@linaro.org>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf b/ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf
index b3a3f5da065e..75d060f80be5 100755
--- a/ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf
+++ b/ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf
@@ -22,8 +22,8 @@ [Defines]
   VERSION_STRING                 = 1.0
 
 [Sources]
-  PrePi.c
   FdtParser.c
+  PrePi.c
 
 [Sources.AArch64]
   AArch64/ArchPrePi.c
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 03/45] ArmVirtPkg/ArmVirtPrePiUniCoreRelocatable: list "PrePi.h" in INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 01/45] ArmVirtPkg/PlatformBootManagerLib: list "PlatformBm.h" in INF file Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 02/45] ArmVirtPkg/ArmVirtPrePiUniCoreRelocatable: sort [Sources*] sections in INF Laszlo Ersek
@ 2018-03-11  1:48 ` Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 04/45] OvmfPkg/AcpiPlatformDxe: sort [Sources*] sections in the INF files Laszlo Ersek
                   ` (43 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:48 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Julien Grall

Among other things, the header file declares the ArchInitialize()
function, which is called from "PrePi.c", and implemented (dependent on
architecture) in "AArch64/ArchPrePi.c" and "Arm/ArchPrePi.c".

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Julien Grall <julien.grall@linaro.org>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf b/ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf
index 75d060f80be5..1587bd92f206 100755
--- a/ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf
+++ b/ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf
@@ -24,6 +24,7 @@ [Defines]
 [Sources]
   FdtParser.c
   PrePi.c
+  PrePi.h
 
 [Sources.AArch64]
   AArch64/ArchPrePi.c
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 04/45] OvmfPkg/AcpiPlatformDxe: sort [Sources*] sections in the INF files
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (2 preceding siblings ...)
  2018-03-11  1:48 ` [PATCH 03/45] ArmVirtPkg/ArmVirtPrePiUniCoreRelocatable: list "PrePi.h" in INF file Laszlo Ersek
@ 2018-03-11  1:48 ` Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 05/45] OvmfPkg/AcpiPlatformDxe: list "AcpiPlatform.h" " Laszlo Ersek
                   ` (42 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:48 UTC (permalink / raw)
  To: edk2-devel-01
  Cc: Anthony Perard, Ard Biesheuvel, Jordan Justen, Julien Grall,
	Phil Dennis-Jordan

This makes it easier to insert future source files, and to see the source
files that are unique to either INF file. No functional changes.

Cc: Anthony Perard <anthony.perard@citrix.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Julien Grall <julien.grall@linaro.org>
Cc: Phil Dennis-Jordan <phil@philjordan.eu>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf          | 6 +++---
 OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf | 6 +++---
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf b/OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
index 9a9b2e6bb2e5..f1ab80db9760 100644
--- a/OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
+++ b/OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
@@ -28,12 +28,12 @@ [Defines]
 
 [Sources]
   AcpiPlatform.c
+  BootScript.c
+  EntryPoint.c
+  PciDecoding.c
   Qemu.c
   QemuFwCfgAcpi.c
   Xen.c
-  EntryPoint.c
-  PciDecoding.c
-  BootScript.c
 
 [Packages]
   MdePkg/MdePkg.dec
diff --git a/OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf b/OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf
index adc50cfd9f76..6b6e7879be13 100644
--- a/OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf
+++ b/OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf
@@ -27,11 +27,11 @@ [Defines]
 #
 
 [Sources]
-  QemuFwCfgAcpiPlatform.c
-  QemuFwCfgAcpi.c
+  BootScript.c
   EntryPoint.c
   PciDecoding.c
-  BootScript.c
+  QemuFwCfgAcpi.c
+  QemuFwCfgAcpiPlatform.c
 
 [Packages]
   MdePkg/MdePkg.dec
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 05/45] OvmfPkg/AcpiPlatformDxe: list "AcpiPlatform.h" in the INF files
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (3 preceding siblings ...)
  2018-03-11  1:48 ` [PATCH 04/45] OvmfPkg/AcpiPlatformDxe: sort [Sources*] sections in the INF files Laszlo Ersek
@ 2018-03-11  1:48 ` Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 06/45] OvmfPkg/AcpiPlatformDxe: don't #include "QemuLoader.h" in "Qemu.c" Laszlo Ersek
                   ` (41 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:48 UTC (permalink / raw)
  To: edk2-devel-01
  Cc: Anthony Perard, Ard Biesheuvel, Jordan Justen, Julien Grall,
	Phil Dennis-Jordan

Among other things, the header file declares InstallAcpiTables(). This
function is called from AcpiPlatformEntryPoint() -- the entry point of
both INF files, defined in the common "EntryPoint.c" file --, and it is
defined (dependent on INF file) in "AcpiPlatform.c" or
"QemuFwCfgAcpiPlatform.c".

Cc: Anthony Perard <anthony.perard@citrix.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Julien Grall <julien.grall@linaro.org>
Cc: Phil Dennis-Jordan <phil@philjordan.eu>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf          | 1 +
 OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf | 1 +
 2 files changed, 2 insertions(+)

diff --git a/OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf b/OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
index f1ab80db9760..8ceb64e4bd7c 100644
--- a/OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
+++ b/OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
@@ -28,6 +28,7 @@ [Defines]
 
 [Sources]
   AcpiPlatform.c
+  AcpiPlatform.h
   BootScript.c
   EntryPoint.c
   PciDecoding.c
diff --git a/OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf b/OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf
index 6b6e7879be13..8f13c840eff8 100644
--- a/OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf
+++ b/OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf
@@ -27,6 +27,7 @@ [Defines]
 #
 
 [Sources]
+  AcpiPlatform.h
   BootScript.c
   EntryPoint.c
   PciDecoding.c
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 06/45] OvmfPkg/AcpiPlatformDxe: don't #include "QemuLoader.h" in "Qemu.c"
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (4 preceding siblings ...)
  2018-03-11  1:48 ` [PATCH 05/45] OvmfPkg/AcpiPlatformDxe: list "AcpiPlatform.h" " Laszlo Ersek
@ 2018-03-11  1:48 ` Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 07/45] OvmfPkg/AcpiPlatformDxe: list "QemuLoader.h" in the INF files Laszlo Ersek
                   ` (40 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:48 UTC (permalink / raw)
  To: edk2-devel-01
  Cc: Anthony Perard, Ard Biesheuvel, Jordan Justen, Julien Grall,
	Phil Dennis-Jordan

We added initial support for QEMU's ACPI linker/loader in commit
a618eaa1f45d ("OvmfPkg: AcpiPlatformDxe: don't rely on unstable QEMU
interface", 2014-06-19). This commit defined the command structures in the
new file "QemuLoader.h", and #included the header in the preexistent
"Qemu.c" file, where the initial command script processing loop was being
implemented.

In commit 14b0faadfc87 ("OvmfPkg/AcpiPlatformDxe: Split QEMU fw-cfg into a
new file", 2015-02-02), we extracted the -- by then, more advanced --
linker/loader script processing from "Qemu.c" to "QemuFwCfgAcpi.c".
"Qemu.c" was going to need "QemuLoader.h" no longer, but we forgot to make
the #include directive unique to the new "QemuFwCfgAcpi.c" file. Do it
now.

Cc: Anthony Perard <anthony.perard@citrix.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Julien Grall <julien.grall@linaro.org>
Cc: Phil Dennis-Jordan <phil@philjordan.eu>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/AcpiPlatformDxe/Qemu.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/OvmfPkg/AcpiPlatformDxe/Qemu.c b/OvmfPkg/AcpiPlatformDxe/Qemu.c
index 90f06bba6399..808c1bf58bdd 100644
--- a/OvmfPkg/AcpiPlatformDxe/Qemu.c
+++ b/OvmfPkg/AcpiPlatformDxe/Qemu.c
@@ -16,7 +16,6 @@
 **/
 
 #include "AcpiPlatform.h"
-#include "QemuLoader.h"
 #include <Library/BaseMemoryLib.h>
 #include <Library/MemoryAllocationLib.h>
 #include <Library/QemuFwCfgLib.h>
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 07/45] OvmfPkg/AcpiPlatformDxe: list "QemuLoader.h" in the INF files
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (5 preceding siblings ...)
  2018-03-11  1:48 ` [PATCH 06/45] OvmfPkg/AcpiPlatformDxe: don't #include "QemuLoader.h" in "Qemu.c" Laszlo Ersek
@ 2018-03-11  1:48 ` Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 08/45] OvmfPkg/BlockMmioToBlockIoDxe: list "BlockIo.h" in the INF file Laszlo Ersek
                   ` (39 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:48 UTC (permalink / raw)
  To: edk2-devel-01
  Cc: Anthony Perard, Ard Biesheuvel, Jordan Justen, Julien Grall,
	Phil Dennis-Jordan

"QemuLoader.h" defines the command structures of QEMU's ACPI
linker/loader. The client code is in "QemuFwCfgAcpi.c", which is part of
both builds of this driver.

Cc: Anthony Perard <anthony.perard@citrix.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Julien Grall <julien.grall@linaro.org>
Cc: Phil Dennis-Jordan <phil@philjordan.eu>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf          | 1 +
 OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf | 1 +
 2 files changed, 2 insertions(+)

diff --git a/OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf b/OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
index 8ceb64e4bd7c..17099ce8bb1f 100644
--- a/OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
+++ b/OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
@@ -34,6 +34,7 @@ [Sources]
   PciDecoding.c
   Qemu.c
   QemuFwCfgAcpi.c
+  QemuLoader.h
   Xen.c
 
 [Packages]
diff --git a/OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf b/OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf
index 8f13c840eff8..96fc17224133 100644
--- a/OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf
+++ b/OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf
@@ -33,6 +33,7 @@ [Sources]
   PciDecoding.c
   QemuFwCfgAcpi.c
   QemuFwCfgAcpiPlatform.c
+  QemuLoader.h
 
 [Packages]
   MdePkg/MdePkg.dec
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 08/45] OvmfPkg/BlockMmioToBlockIoDxe: list "BlockIo.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (6 preceding siblings ...)
  2018-03-11  1:48 ` [PATCH 07/45] OvmfPkg/AcpiPlatformDxe: list "QemuLoader.h" in the INF files Laszlo Ersek
@ 2018-03-11  1:48 ` Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 09/45] OvmfPkg/CsmSupportLib: sort [Sources*] sections " Laszlo Ersek
                   ` (38 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:48 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

Among other things, the header file declares the
"gBlockMmioToBlockIoComponentName" and "gBlockMmioToBlockIoComponentName2"
protocol instance structures. They are defined and initialized in
"ComponentName.c" and installed in "BlockIo.c".

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/BlockMmioToBlockIoDxe/BlockIo.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/BlockMmioToBlockIoDxe/BlockIo.inf b/OvmfPkg/BlockMmioToBlockIoDxe/BlockIo.inf
index d4e8a0ab2d79..e2f5bb8a6888 100644
--- a/OvmfPkg/BlockMmioToBlockIoDxe/BlockIo.inf
+++ b/OvmfPkg/BlockMmioToBlockIoDxe/BlockIo.inf
@@ -31,6 +31,7 @@ [Defines]
 
 [Sources]
   BlockIo.c
+  BlockIo.h
   ComponentName.c
 
 [Packages]
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 09/45] OvmfPkg/CsmSupportLib: sort [Sources*] sections in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (7 preceding siblings ...)
  2018-03-11  1:48 ` [PATCH 08/45] OvmfPkg/BlockMmioToBlockIoDxe: list "BlockIo.h" in the INF file Laszlo Ersek
@ 2018-03-11  1:48 ` Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 10/45] OvmfPkg/CsmSupportLib: list "CsmSupportLib.h" " Laszlo Ersek
                   ` (37 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:48 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

This makes it easier to insert future source files. No functional changes.

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf b/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf
index fb2ec2039fad..25056febf3e5 100644
--- a/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf
+++ b/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf
@@ -31,8 +31,8 @@ [Defines]
 [Sources]
   CsmSupportLib.c
   LegacyInterrupt.c
-  LegacyRegion.c
   LegacyPlatform.c
+  LegacyRegion.c
 
 [Packages]
   MdePkg/MdePkg.dec
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 10/45] OvmfPkg/CsmSupportLib: list "CsmSupportLib.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (8 preceding siblings ...)
  2018-03-11  1:48 ` [PATCH 09/45] OvmfPkg/CsmSupportLib: sort [Sources*] sections " Laszlo Ersek
@ 2018-03-11  1:48 ` Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 11/45] OvmfPkg/CsmSupportLib: list "LegacyInterrupt.h" " Laszlo Ersek
                   ` (36 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:48 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

The header file declares the functions LegacyRegionInit(),
LegacyInterruptInstall() and LegacyBiosPlatformInstall(). They are defined
in "LegacyRegion.c", "LegacyInterrupt.c", and "LegacyPlatform.c",
respectively, and are all called from CsmSupportLibConstructor() in
"CsmSupportLib.c".

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf b/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf
index 25056febf3e5..ba050cbb4f02 100644
--- a/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf
+++ b/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf
@@ -30,6 +30,7 @@ [Defines]
 
 [Sources]
   CsmSupportLib.c
+  CsmSupportLib.h
   LegacyInterrupt.c
   LegacyPlatform.c
   LegacyRegion.c
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 11/45] OvmfPkg/CsmSupportLib: list "LegacyInterrupt.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (9 preceding siblings ...)
  2018-03-11  1:48 ` [PATCH 10/45] OvmfPkg/CsmSupportLib: list "CsmSupportLib.h" " Laszlo Ersek
@ 2018-03-11  1:48 ` Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 12/45] OvmfPkg/CsmSupportLib: list "LegacyPlatform.h" " Laszlo Ersek
                   ` (35 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:48 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

Among other things, the header file provides (extern) declarations for the
EFI_LEGACY_INTERRUPT_PROTOCOL member functions that are defined in
"LegacyInterrupt.c". This way "mLegacyInterrupt" can be initialized near
the top of "LegacyInterrupt.c", ahead of the member function definitions.

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf b/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf
index ba050cbb4f02..f61a22f8ffe4 100644
--- a/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf
+++ b/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf
@@ -32,6 +32,7 @@ [Sources]
   CsmSupportLib.c
   CsmSupportLib.h
   LegacyInterrupt.c
+  LegacyInterrupt.h
   LegacyPlatform.c
   LegacyRegion.c
 
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 12/45] OvmfPkg/CsmSupportLib: list "LegacyPlatform.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (10 preceding siblings ...)
  2018-03-11  1:48 ` [PATCH 11/45] OvmfPkg/CsmSupportLib: list "LegacyInterrupt.h" " Laszlo Ersek
@ 2018-03-11  1:48 ` Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 13/45] OvmfPkg/CsmSupportLib: list "LegacyRegion.h" " Laszlo Ersek
                   ` (34 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:48 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

The header file defines types and macros for "LegacyPlatform.c".

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf b/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf
index f61a22f8ffe4..938a48a642c5 100644
--- a/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf
+++ b/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf
@@ -34,6 +34,7 @@ [Sources]
   LegacyInterrupt.c
   LegacyInterrupt.h
   LegacyPlatform.c
+  LegacyPlatform.h
   LegacyRegion.c
 
 [Packages]
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 13/45] OvmfPkg/CsmSupportLib: list "LegacyRegion.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (11 preceding siblings ...)
  2018-03-11  1:48 ` [PATCH 12/45] OvmfPkg/CsmSupportLib: list "LegacyPlatform.h" " Laszlo Ersek
@ 2018-03-11  1:48 ` Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 14/45] OvmfPkg/EmuVariableFvbRuntimeDxe: list "Fvb.h" " Laszlo Ersek
                   ` (33 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:48 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

Among other things, the header file provides (extern) declarations for the
EFI_LEGACY_REGION2_PROTOCOL member functions that are defined in
"LegacyRegion.c". This way "mLegacyRegion2" can be initialized near the
top of "LegacyRegion.c", ahead of the member function definitions.

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf b/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf
index 938a48a642c5..2f576bf09046 100644
--- a/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf
+++ b/OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf
@@ -36,6 +36,7 @@ [Sources]
   LegacyPlatform.c
   LegacyPlatform.h
   LegacyRegion.c
+  LegacyRegion.h
 
 [Packages]
   MdePkg/MdePkg.dec
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 14/45] OvmfPkg/EmuVariableFvbRuntimeDxe: list "Fvb.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (12 preceding siblings ...)
  2018-03-11  1:48 ` [PATCH 13/45] OvmfPkg/CsmSupportLib: list "LegacyRegion.h" " Laszlo Ersek
@ 2018-03-11  1:48 ` Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 15/45] OvmfPkg/IoMmuDxe: list "AmdSevIoMmu.h" " Laszlo Ersek
                   ` (32 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:48 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Anthony Perard, Ard Biesheuvel, Jordan Justen, Julien Grall

Among other things, the header file provides (extern) declarations for the
EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL member functions that are defined in
"Fvb.c". This way "mEmuVarsFvb.FwVolBlockInstance" can be initialized near
the top of "Fvb.c", ahead of the member function definitions.

Cc: Anthony Perard <anthony.perard@citrix.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Julien Grall <julien.grall@linaro.org>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf b/OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf
index 69b3c9972a76..9f37938408a4 100644
--- a/OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf
+++ b/OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf
@@ -29,6 +29,7 @@ [Defines]
 
 [Sources]
   Fvb.c
+  Fvb.h
 
 [Packages]
   MdePkg/MdePkg.dec
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 15/45] OvmfPkg/IoMmuDxe: list "AmdSevIoMmu.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (13 preceding siblings ...)
  2018-03-11  1:48 ` [PATCH 14/45] OvmfPkg/EmuVariableFvbRuntimeDxe: list "Fvb.h" " Laszlo Ersek
@ 2018-03-11  1:48 ` Laszlo Ersek
  2018-03-11 15:08   ` Brijesh Singh
  2018-03-11  1:48 ` [PATCH 16/45] OvmfPkg/AcpiTimerLib: list "AcpiTimerLib.h" in the INF files Laszlo Ersek
                   ` (31 subsequent siblings)
  46 siblings, 1 reply; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:48 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Brijesh Singh, Jordan Justen

The header file declares the AmdSevInstallIoMmuProtocol() function, which
is implemented in "AmdSevIoMmu.c" and called from "IoMmuDxe.c".

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Brijesh Singh <brijesh.singh@amd.com>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/IoMmuDxe/IoMmuDxe.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/IoMmuDxe/IoMmuDxe.inf b/OvmfPkg/IoMmuDxe/IoMmuDxe.inf
index 307849706800..547b51352618 100644
--- a/OvmfPkg/IoMmuDxe/IoMmuDxe.inf
+++ b/OvmfPkg/IoMmuDxe/IoMmuDxe.inf
@@ -26,6 +26,7 @@ [Defines]
 
 [Sources]
   AmdSevIoMmu.c
+  AmdSevIoMmu.h
   IoMmuDxe.c
 
 [Packages]
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 16/45] OvmfPkg/AcpiTimerLib: list "AcpiTimerLib.h" in the INF files
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (14 preceding siblings ...)
  2018-03-11  1:48 ` [PATCH 15/45] OvmfPkg/IoMmuDxe: list "AmdSevIoMmu.h" " Laszlo Ersek
@ 2018-03-11  1:48 ` Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 17/45] OvmfPkg/BaseMemEncryptSevLib: list "X64/VirtualMemory.h" in the INF file Laszlo Ersek
                   ` (30 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:48 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

The header file declares the InternalAcpiGetTimerTick() function. The
function is called from "AcpiTimerLib.c", which is built into all three
library instances. The function is defined individually per library
instance, in "BaseRomAcpiTimerLib.c", "BaseAcpiTimerLib.c", and
"DxeAcpiTimerLib.c" (enumerated in increasing firmware phase order).

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf    | 1 +
 OvmfPkg/Library/AcpiTimerLib/BaseRomAcpiTimerLib.inf | 1 +
 OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf     | 1 +
 3 files changed, 3 insertions(+)

diff --git a/OvmfPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf b/OvmfPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf
index 04df609220e1..764edcfabebb 100644
--- a/OvmfPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf
+++ b/OvmfPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf
@@ -25,6 +25,7 @@ [Defines]
 
 [Sources]
   AcpiTimerLib.c
+  AcpiTimerLib.h
   BaseAcpiTimerLib.c
 
 [Packages]
diff --git a/OvmfPkg/Library/AcpiTimerLib/BaseRomAcpiTimerLib.inf b/OvmfPkg/Library/AcpiTimerLib/BaseRomAcpiTimerLib.inf
index 946292c181e4..113d180162a5 100644
--- a/OvmfPkg/Library/AcpiTimerLib/BaseRomAcpiTimerLib.inf
+++ b/OvmfPkg/Library/AcpiTimerLib/BaseRomAcpiTimerLib.inf
@@ -24,6 +24,7 @@ [Defines]
 
 [Sources]
   AcpiTimerLib.c
+  AcpiTimerLib.h
   BaseRomAcpiTimerLib.c
 
 [Packages]
diff --git a/OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf b/OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
index 25a9823d2582..4116d5ef99ad 100644
--- a/OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
+++ b/OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
@@ -25,6 +25,7 @@ [Defines]
 
 [Sources]
   AcpiTimerLib.c
+  AcpiTimerLib.h
   DxeAcpiTimerLib.c
 
 [Packages]
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 17/45] OvmfPkg/BaseMemEncryptSevLib: list "X64/VirtualMemory.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (15 preceding siblings ...)
  2018-03-11  1:48 ` [PATCH 16/45] OvmfPkg/AcpiTimerLib: list "AcpiTimerLib.h" in the INF files Laszlo Ersek
@ 2018-03-11  1:48 ` Laszlo Ersek
  2018-03-11  1:48 ` [PATCH 18/45] OvmfPkg/LoadLinuxLib: list "LoadLinuxLib.h" " Laszlo Ersek
                   ` (29 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:48 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Brijesh Singh, Jordan Justen

Among other things, the header file declares the
InternalMemEncryptSevSetMemoryDecrypted() and
InternalMemEncryptSevSetMemoryEncrypted() functions. The functions are
called from "X64/MemEncryptSevLib.c", and defined in
"X64/VirtualMemory.c".

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Brijesh Singh <brijesh.singh@amd.com>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/Library/BaseMemEncryptSevLib/BaseMemEncryptSevLib.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/Library/BaseMemEncryptSevLib/BaseMemEncryptSevLib.inf b/OvmfPkg/Library/BaseMemEncryptSevLib/BaseMemEncryptSevLib.inf
index 464fe1f33e66..78ffc24d99b1 100644
--- a/OvmfPkg/Library/BaseMemEncryptSevLib/BaseMemEncryptSevLib.inf
+++ b/OvmfPkg/Library/BaseMemEncryptSevLib/BaseMemEncryptSevLib.inf
@@ -40,6 +40,7 @@ [Sources.X64]
   MemEncryptSevLibInternal.c
   X64/MemEncryptSevLib.c
   X64/VirtualMemory.c
+  X64/VirtualMemory.h
 
 [Sources.IA32]
   Ia32/MemEncryptSevLib.c
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 18/45] OvmfPkg/LoadLinuxLib: list "LoadLinuxLib.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (16 preceding siblings ...)
  2018-03-11  1:48 ` [PATCH 17/45] OvmfPkg/BaseMemEncryptSevLib: list "X64/VirtualMemory.h" in the INF file Laszlo Ersek
@ 2018-03-11  1:48 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 19/45] OvmfPkg/LockBoxLib: list "LockBoxLib.h" in the INF files Laszlo Ersek
                   ` (28 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:48 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

The header file declares the InitLinuxDescriptorTables() and
SetLinuxDescriptorTables() functions, which are called from "Linux.c" and
implemented in "LinuxGdt.c".

The header file also declares the JumpToKernel() and JumpToUefiKernel()
functions, which are similarly called from "Linux.c". They are implemented
(dependent on architecture) in "Ia32/JumpToKernel.nasm" and
"X64/JumpToKernel.nasm".

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf b/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf
index 12d2f4f08445..d10484e5c1be 100644
--- a/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf
+++ b/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf
@@ -29,6 +29,7 @@ [Defines]
 [Sources.common]
   Linux.c
   LinuxGdt.c
+  LoadLinuxLib.h
 
 [Sources.IA32]
   Ia32/JumpToKernel.nasm
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 19/45] OvmfPkg/LockBoxLib: list "LockBoxLib.h" in the INF files
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (17 preceding siblings ...)
  2018-03-11  1:48 ` [PATCH 18/45] OvmfPkg/LoadLinuxLib: list "LoadLinuxLib.h" " Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 20/45] OvmfPkg/NvVarsFileLib: list "NvVarsFileLib.h" in the INF file Laszlo Ersek
                   ` (27 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

Among other things, the header file declares the AllocateAcpiNvsPool()
function. This function is called from the "LockBoxLib.c" source file (in
the implementation of the SaveLockBox() library API), which is built into
both library instances. AllocateAcpiNvsPool() is implemented separately
per library instance, in "LockBoxBase.c" and "LockBoxDxe.c", respectively.

(In the LockBoxBaseLib instance, the AllocateAcpiNvsPool() function is
never expected to be called -- the public SaveLockBox() API should never
be called before the DXE phase --, we just have to provide a stub for
linking purposes.)

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/Library/LockBoxLib/LockBoxBaseLib.inf | 1 +
 OvmfPkg/Library/LockBoxLib/LockBoxDxeLib.inf  | 1 +
 2 files changed, 2 insertions(+)

diff --git a/OvmfPkg/Library/LockBoxLib/LockBoxBaseLib.inf b/OvmfPkg/Library/LockBoxLib/LockBoxBaseLib.inf
index 81c893e4cb4d..0645c02c1766 100644
--- a/OvmfPkg/Library/LockBoxLib/LockBoxBaseLib.inf
+++ b/OvmfPkg/Library/LockBoxLib/LockBoxBaseLib.inf
@@ -29,6 +29,7 @@ [Defines]
 [Sources]
   LockBoxBase.c
   LockBoxLib.c
+  LockBoxLib.h
 
 [Packages]
   MdePkg/MdePkg.dec
diff --git a/OvmfPkg/Library/LockBoxLib/LockBoxDxeLib.inf b/OvmfPkg/Library/LockBoxLib/LockBoxDxeLib.inf
index eb03f4f546bc..ce6b49aea49d 100644
--- a/OvmfPkg/Library/LockBoxLib/LockBoxDxeLib.inf
+++ b/OvmfPkg/Library/LockBoxLib/LockBoxDxeLib.inf
@@ -29,6 +29,7 @@ [Defines]
 [Sources]
   LockBoxDxe.c
   LockBoxLib.c
+  LockBoxLib.h
 
 [Packages]
   MdePkg/MdePkg.dec
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 20/45] OvmfPkg/NvVarsFileLib: list "NvVarsFileLib.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (18 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 19/45] OvmfPkg/LockBoxLib: list "LockBoxLib.h" in the INF files Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 21/45] OvmfPkg/PlatformDebugLibIoPort: list "DebugLibDetect.h" in the INF files Laszlo Ersek
                   ` (26 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Anthony Perard, Ard Biesheuvel, Jordan Justen, Julien Grall

The header file declares LoadNvVarsFromFs() and SaveNvVarsToFs(), which
are defined in "FsAccess.c" and called from "NvVarsFileLib.c".

Cc: Anthony Perard <anthony.perard@citrix.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Julien Grall <julien.grall@linaro.org>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/Library/NvVarsFileLib/NvVarsFileLib.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/Library/NvVarsFileLib/NvVarsFileLib.inf b/OvmfPkg/Library/NvVarsFileLib/NvVarsFileLib.inf
index 76fbae0870dd..38dfc795f7b9 100644
--- a/OvmfPkg/Library/NvVarsFileLib/NvVarsFileLib.inf
+++ b/OvmfPkg/Library/NvVarsFileLib/NvVarsFileLib.inf
@@ -33,6 +33,7 @@ [Defines]
 [Sources]
   FsAccess.c
   NvVarsFileLib.c
+  NvVarsFileLib.h
 
 [Packages]
   MdePkg/MdePkg.dec
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 21/45] OvmfPkg/PlatformDebugLibIoPort: list "DebugLibDetect.h" in the INF files
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (19 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 20/45] OvmfPkg/NvVarsFileLib: list "NvVarsFileLib.h" in the INF file Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 22/45] OvmfPkg/QemuBootOrderLib: sort [Sources*] sections in the INF file Laszlo Ersek
                   ` (25 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

Among other things, "DebugLibDetect.h" declares the
PlatformDebugLibIoPortFound() function. The function is called from
"DebugLib.c", which is included in both library instances. The function is
defined separately per library instance, in "DebugLibDetectRom.c" and
"DebugLibDetect.c", respectively.

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf    | 1 +
 OvmfPkg/Library/PlatformDebugLibIoPort/PlatformRomDebugLibIoPort.inf | 1 +
 2 files changed, 2 insertions(+)

diff --git a/OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf b/OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
index de3c2f542bfe..baa90a3d4327 100644
--- a/OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
+++ b/OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
@@ -31,6 +31,7 @@ [Defines]
 [Sources]
   DebugLib.c
   DebugLibDetect.c
+  DebugLibDetect.h
 
 [Packages]
   MdePkg/MdePkg.dec
diff --git a/OvmfPkg/Library/PlatformDebugLibIoPort/PlatformRomDebugLibIoPort.inf b/OvmfPkg/Library/PlatformDebugLibIoPort/PlatformRomDebugLibIoPort.inf
index 491c0318de56..f95a105864ea 100644
--- a/OvmfPkg/Library/PlatformDebugLibIoPort/PlatformRomDebugLibIoPort.inf
+++ b/OvmfPkg/Library/PlatformDebugLibIoPort/PlatformRomDebugLibIoPort.inf
@@ -30,6 +30,7 @@ [Defines]
 
 [Sources]
   DebugLib.c
+  DebugLibDetect.h
   DebugLibDetectRom.c
 
 [Packages]
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 22/45] OvmfPkg/QemuBootOrderLib: sort [Sources*] sections in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (20 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 21/45] OvmfPkg/PlatformDebugLibIoPort: list "DebugLibDetect.h" in the INF files Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 23/45] OvmfPkg/QemuBootOrderLib: list "ExtraRootBusMap.h" " Laszlo Ersek
                   ` (24 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

This makes it easier to insert future source files. No functional changes.

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf b/OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf
index eec938f19843..deb123a601d2 100644
--- a/OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf
+++ b/OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf
@@ -31,8 +31,8 @@ [Defines]
 #
 
 [Sources]
-  QemuBootOrderLib.c
   ExtraRootBusMap.c
+  QemuBootOrderLib.c
 
 [Packages]
   MdePkg/MdePkg.dec
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 23/45] OvmfPkg/QemuBootOrderLib: list "ExtraRootBusMap.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (21 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 22/45] OvmfPkg/QemuBootOrderLib: sort [Sources*] sections in the INF file Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 24/45] OvmfPkg/SerializeVariablesLib: list "SerializeVariablesLib.h" in " Laszlo Ersek
                   ` (23 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

The header file declares the CreateExtraRootBusMap(),
DestroyExtraRootBusMap(), and MapRootBusPosToBusNr() functions. They are
defined in "ExtraRootBusMap.c", and called from "QemuBootOrderLib.c".

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf b/OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf
index deb123a601d2..8fffee932a5e 100644
--- a/OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf
+++ b/OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf
@@ -32,6 +32,7 @@ [Defines]
 
 [Sources]
   ExtraRootBusMap.c
+  ExtraRootBusMap.h
   QemuBootOrderLib.c
 
 [Packages]
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 24/45] OvmfPkg/SerializeVariablesLib: list "SerializeVariablesLib.h" in INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (22 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 23/45] OvmfPkg/QemuBootOrderLib: list "ExtraRootBusMap.h" " Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 25/45] OvmfPkg/VirtioMmioDeviceLib: list "VirtioMmioDevice.h" in the " Laszlo Ersek
                   ` (22 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Anthony Perard, Ard Biesheuvel, Jordan Justen, Julien Grall

The header file defines macros and types for "SerializeVariablesLib.c".

Cc: Anthony Perard <anthony.perard@citrix.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Julien Grall <julien.grall@linaro.org>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/Library/SerializeVariablesLib/SerializeVariablesLib.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/Library/SerializeVariablesLib/SerializeVariablesLib.inf b/OvmfPkg/Library/SerializeVariablesLib/SerializeVariablesLib.inf
index b0c12b0ef6d6..8fe36b226b3a 100644
--- a/OvmfPkg/Library/SerializeVariablesLib/SerializeVariablesLib.inf
+++ b/OvmfPkg/Library/SerializeVariablesLib/SerializeVariablesLib.inf
@@ -24,6 +24,7 @@ [Defines]
 
 [Sources]
   SerializeVariablesLib.c
+  SerializeVariablesLib.h
 
 [Packages]
   MdePkg/MdePkg.dec
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 25/45] OvmfPkg/VirtioMmioDeviceLib: list "VirtioMmioDevice.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (23 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 24/45] OvmfPkg/SerializeVariablesLib: list "SerializeVariablesLib.h" in " Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 26/45] OvmfPkg/VirtioMmioDeviceLib: improve style of mMmioDeviceProtocolTemplate Laszlo Ersek
                   ` (21 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

Among other things, the header file declares the functions that implement
the VIRTIO_DEVICE_PROTOCOL members over virtio-mmio. The functions are
defined in "VirtioMmioDeviceFunctions.c", and referenced in the
initialization of "mMmioDeviceProtocolTemplate", in "VirtioMmioDevice.c".

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDeviceLib.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDeviceLib.inf b/OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDeviceLib.inf
index 2e266a9d455e..5cd9e86558bd 100644
--- a/OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDeviceLib.inf
+++ b/OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDeviceLib.inf
@@ -24,6 +24,7 @@ [Defines]
 
 [Sources]
   VirtioMmioDevice.c
+  VirtioMmioDevice.h
   VirtioMmioDeviceFunctions.c
 
 [Packages]
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 26/45] OvmfPkg/VirtioMmioDeviceLib: improve style of mMmioDeviceProtocolTemplate
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (24 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 25/45] OvmfPkg/VirtioMmioDeviceLib: list "VirtioMmioDevice.h" in the " Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 27/45] OvmfPkg/PlatformDxe: list "Platform.h" in the INF file Laszlo Ersek
                   ` (20 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

In edk2, we spell "static" "STATIC", plus objects with static storage
duration (esp. protocol templates) should be const-qualified (spelled
"CONST") whenever possible.

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDevice.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDevice.c b/OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDevice.c
index fce934e1e953..03aa7bcb6244 100644
--- a/OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDevice.c
+++ b/OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDevice.c
@@ -20,7 +20,7 @@
 
 #include "VirtioMmioDevice.h"
 
-static VIRTIO_DEVICE_PROTOCOL mMmioDeviceProtocolTemplate = {
+STATIC CONST VIRTIO_DEVICE_PROTOCOL mMmioDeviceProtocolTemplate = {
     0,                                     // Revision
     0,                                     // SubSystemDeviceId
     VirtioMmioGetDeviceFeatures,           // GetDeviceFeatures
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 27/45] OvmfPkg/PlatformDxe: list "Platform.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (25 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 26/45] OvmfPkg/VirtioMmioDeviceLib: improve style of mMmioDeviceProtocolTemplate Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 28/45] OvmfPkg/PlatformDxe: list "PlatformConfig.h" " Laszlo Ersek
                   ` (19 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

The header file defines HII-related macros and types that are shared
between the form description in "PlatformForms.vfr" and the HII driver
logic "Platform.c".

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/PlatformDxe/Platform.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/PlatformDxe/Platform.inf b/OvmfPkg/PlatformDxe/Platform.inf
index 16cd9ab753a8..4276d363e300 100644
--- a/OvmfPkg/PlatformDxe/Platform.inf
+++ b/OvmfPkg/PlatformDxe/Platform.inf
@@ -26,6 +26,7 @@ [Defines]
 
 [Sources]
   Platform.c
+  Platform.h
   Platform.uni
   PlatformConfig.c
   PlatformForms.vfr
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 28/45] OvmfPkg/PlatformDxe: list "PlatformConfig.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (26 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 27/45] OvmfPkg/PlatformDxe: list "Platform.h" in the INF file Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 29/45] OvmfPkg/PlatformPei: list "Cmos.h" " Laszlo Ersek
                   ` (18 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

The header file declares the PlatformConfigSave() and PlatformConfigLoad()
functions (and defines related types and macros). The functions are
defined in "PlatformConfig.c" and called from "Platform.c".

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/PlatformDxe/Platform.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/PlatformDxe/Platform.inf b/OvmfPkg/PlatformDxe/Platform.inf
index 4276d363e300..41a110f77474 100644
--- a/OvmfPkg/PlatformDxe/Platform.inf
+++ b/OvmfPkg/PlatformDxe/Platform.inf
@@ -29,6 +29,7 @@ [Sources]
   Platform.h
   Platform.uni
   PlatformConfig.c
+  PlatformConfig.h
   PlatformForms.vfr
 
 [Packages]
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 29/45] OvmfPkg/PlatformPei: list "Cmos.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (27 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 28/45] OvmfPkg/PlatformDxe: list "PlatformConfig.h" " Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 30/45] OvmfPkg/PlatformPei: list "Platform.h" " Laszlo Ersek
                   ` (17 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Anthony Perard, Ard Biesheuvel, Jordan Justen, Julien Grall

The header file declares the CmosRead8() and CmosWrite8() functions, which
are implemented in "Cmos.c" and called from "MemDetect.c" and
"Platform.c".

Cc: Anthony Perard <anthony.perard@citrix.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Julien Grall <julien.grall@linaro.org>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/PlatformPei/PlatformPei.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/PlatformPei/PlatformPei.inf b/OvmfPkg/PlatformPei/PlatformPei.inf
index de7434d93dc0..34d93643fe9e 100644
--- a/OvmfPkg/PlatformPei/PlatformPei.inf
+++ b/OvmfPkg/PlatformPei/PlatformPei.inf
@@ -31,6 +31,7 @@ [Defines]
 [Sources]
   AmdSev.c
   Cmos.c
+  Cmos.h
   FeatureControl.c
   Fv.c
   MemDetect.c
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 30/45] OvmfPkg/PlatformPei: list "Platform.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (28 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 29/45] OvmfPkg/PlatformPei: list "Cmos.h" " Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 31/45] OvmfPkg/PlatformPei: list "Xen.h" " Laszlo Ersek
                   ` (16 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Anthony Perard, Ard Biesheuvel, Jordan Justen, Julien Grall

The header file declares several functions and global variables that are
shared between various translation units in this module.

Cc: Anthony Perard <anthony.perard@citrix.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Julien Grall <julien.grall@linaro.org>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/PlatformPei/PlatformPei.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/PlatformPei/PlatformPei.inf b/OvmfPkg/PlatformPei/PlatformPei.inf
index 34d93643fe9e..c10936af326a 100644
--- a/OvmfPkg/PlatformPei/PlatformPei.inf
+++ b/OvmfPkg/PlatformPei/PlatformPei.inf
@@ -36,6 +36,7 @@ [Sources]
   Fv.c
   MemDetect.c
   Platform.c
+  Platform.h
   Xen.c
 
 [Packages]
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 31/45] OvmfPkg/PlatformPei: list "Xen.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (29 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 30/45] OvmfPkg/PlatformPei: list "Platform.h" " Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 32/45] OvmfPkg/QemuFlashFvbServicesRuntimeDxe: list "FwBlockService.h" in INFs Laszlo Ersek
                   ` (15 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Anthony Perard, Ard Biesheuvel, Jordan Justen, Julien Grall

The header defines the OVMF_INFO_PHYSICAL_ADDRESS macro and the
EFI_XEN_OVMF_INFO structure, which are used in "Xen.c".

Cc: Anthony Perard <anthony.perard@citrix.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Julien Grall <julien.grall@linaro.org>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/PlatformPei/PlatformPei.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/PlatformPei/PlatformPei.inf b/OvmfPkg/PlatformPei/PlatformPei.inf
index c10936af326a..30ceb4bbb17c 100644
--- a/OvmfPkg/PlatformPei/PlatformPei.inf
+++ b/OvmfPkg/PlatformPei/PlatformPei.inf
@@ -38,6 +38,7 @@ [Sources]
   Platform.c
   Platform.h
   Xen.c
+  Xen.h
 
 [Packages]
   IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 32/45] OvmfPkg/QemuFlashFvbServicesRuntimeDxe: list "FwBlockService.h" in INFs
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (30 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 31/45] OvmfPkg/PlatformPei: list "Xen.h" " Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 33/45] OvmfPkg/QemuFlashFvbServicesRuntimeDxe: list "QemuFlash.h" in INF files Laszlo Ersek
                   ` (14 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

Among other things, the header file provides (extern) declarations for the
EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL member functions that are defined in
"FwBlockService.c". This way "mFvbDeviceTemplate.FwVolBlockInstance" can
be initialized near the top of "FwBlockService.c", ahead of the member
function definitions.

"FwBlockService.c" is linked into both the DXE_SMM_DRIVER and the
DXE_RUNTIME_DRIVER builds of this module, thus list the header file in
both INF files.

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf | 1 +
 OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf        | 1 +
 2 files changed, 2 insertions(+)

diff --git a/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf b/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
index c0dda75bf75f..98e0f766856b 100644
--- a/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
+++ b/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
@@ -36,6 +36,7 @@ [Defines]
 [Sources]
   FvbInfo.c
   FwBlockService.c
+  FwBlockService.h
   FwBlockServiceDxe.c
   QemuFlash.c
   QemuFlashDxe.c
diff --git a/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf b/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf
index b5c79762c23f..2ae228e5fbc0 100644
--- a/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf
+++ b/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf
@@ -38,6 +38,7 @@ [Defines]
 [Sources]
   FvbInfo.c
   FwBlockService.c
+  FwBlockService.h
   FwBlockServiceSmm.c
   QemuFlash.c
   QemuFlashSmm.c
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 33/45] OvmfPkg/QemuFlashFvbServicesRuntimeDxe: list "QemuFlash.h" in INF files
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (31 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 32/45] OvmfPkg/QemuFlashFvbServicesRuntimeDxe: list "FwBlockService.h" in INFs Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 34/45] OvmfPkg/QemuVideoDxe: sort [Sources*] sections in the INF file Laszlo Ersek
                   ` (13 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

Among other things, the header file declares functions that are called
from the FVB protocol member functions in "FwBlockService.c", and defined
in "QemuFlash.c".

Both C files are listed in both "FvbServicesSmm.inf" and
"FvbServicesRuntimeDxe.inf", thus add the header file to both INF files as
well.

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf | 1 +
 OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf        | 1 +
 2 files changed, 2 insertions(+)

diff --git a/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf b/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
index 98e0f766856b..d7b4ec06c4e6 100644
--- a/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
+++ b/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
@@ -39,6 +39,7 @@ [Sources]
   FwBlockService.h
   FwBlockServiceDxe.c
   QemuFlash.c
+  QemuFlash.h
   QemuFlashDxe.c
 
 [Packages]
diff --git a/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf b/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf
index 2ae228e5fbc0..622dff74f3ff 100644
--- a/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf
+++ b/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf
@@ -41,6 +41,7 @@ [Sources]
   FwBlockService.h
   FwBlockServiceSmm.c
   QemuFlash.c
+  QemuFlash.h
   QemuFlashSmm.c
 
 [Packages]
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 34/45] OvmfPkg/QemuVideoDxe: sort [Sources*] sections in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (32 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 33/45] OvmfPkg/QemuFlashFvbServicesRuntimeDxe: list "QemuFlash.h" in INF files Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 35/45] OvmfPkg/QemuVideoDxe: list "Qemu.h" " Laszlo Ersek
                   ` (12 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen, Phil Dennis-Jordan

This makes it easier to insert future source files. No functional changes.

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Phil Dennis-Jordan <phil@philjordan.eu>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf b/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
index ff68c99e96a9..b6775fd09723 100644
--- a/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
+++ b/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
@@ -40,10 +40,10 @@ [Sources.common]
   Initialize.c
 
 [Sources.Ia32, Sources.X64]
-  VbeShim.c
   UnalignedIoGcc.c    | GCC
-  UnalignedIoMsc.c    | MSFT
   UnalignedIoIcc.c    | INTEL
+  UnalignedIoMsc.c    | MSFT
+  VbeShim.c
 
 [Sources.IPF, Sources.EBC]
   UnalignedIoUnsupported.c
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 35/45] OvmfPkg/QemuVideoDxe: list "Qemu.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (33 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 34/45] OvmfPkg/QemuVideoDxe: sort [Sources*] sections in the INF file Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 36/45] OvmfPkg/QemuVideoDxe: list "UnalignedIoInternal.h" " Laszlo Ersek
                   ` (11 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen, Phil Dennis-Jordan

Among many other things, "Qemu.h" declares the
QemuVideoGraphicsOutputConstructor() and
QemuVideoGraphicsOutputDestructor() functions, which are defined in
"Gop.c", and called from "Driver.c".

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Phil Dennis-Jordan <phil@philjordan.eu>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf b/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
index b6775fd09723..017a04910489 100644
--- a/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
+++ b/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
@@ -38,6 +38,7 @@ [Sources.common]
   DriverSupportedEfiVersion.c
   Gop.c
   Initialize.c
+  Qemu.h
 
 [Sources.Ia32, Sources.X64]
   UnalignedIoGcc.c    | GCC
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 36/45] OvmfPkg/QemuVideoDxe: list "UnalignedIoInternal.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (34 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 35/45] OvmfPkg/QemuVideoDxe: list "Qemu.h" " Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 37/45] OvmfPkg/QemuVideoDxe: list "VbeShim.h" " Laszlo Ersek
                   ` (10 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen, Phil Dennis-Jordan

The header file declares the UnalignedIoWrite32() and UnalignedIoRead32()
functions. The functions are called from VmwareSvgaWrite() and
VmwareSvgaRead() in the common "Driver.c" source file. The
UnalignedIo*32() functions are defined with inline assembly, C-language
compiler intrinsics, or as ASSERT(FALSE), in distinct C files, dependent
on architecture and toolchain.

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Phil Dennis-Jordan <phil@philjordan.eu>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf b/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
index 017a04910489..fc4c07723e55 100644
--- a/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
+++ b/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
@@ -39,6 +39,7 @@ [Sources.common]
   Gop.c
   Initialize.c
   Qemu.h
+  UnalignedIoInternal.h
 
 [Sources.Ia32, Sources.X64]
   UnalignedIoGcc.c    | GCC
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 37/45] OvmfPkg/QemuVideoDxe: list "VbeShim.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (35 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 36/45] OvmfPkg/QemuVideoDxe: list "UnalignedIoInternal.h" " Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 38/45] OvmfPkg/Virtio10Dxe: list "Virtio10.h" " Laszlo Ersek
                   ` (9 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen, Phil Dennis-Jordan

The header file is manually generated with "VbeShim.sh" (from the IA32
assembly code in "VbeShim.asm"), to be included by "VbeShim.c".

"VbeShim.c" is linked into the driver only for the IA32 and X64
architectures: while the InstallVbeShim() function that "VbeShim.c"
defines is declared commonly in "Qemu.h", the call in the also common
"Driver.c" source file depends on the MDE_CPU_IA32 / MDE_CPU_X64
preprocessor macros.

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Phil Dennis-Jordan <phil@philjordan.eu>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf b/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
index fc4c07723e55..bec37975bafc 100644
--- a/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
+++ b/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
@@ -46,6 +46,7 @@ [Sources.Ia32, Sources.X64]
   UnalignedIoIcc.c    | INTEL
   UnalignedIoMsc.c    | MSFT
   VbeShim.c
+  VbeShim.h
 
 [Sources.IPF, Sources.EBC]
   UnalignedIoUnsupported.c
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 38/45] OvmfPkg/Virtio10Dxe: list "Virtio10.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (36 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 37/45] OvmfPkg/QemuVideoDxe: list "VbeShim.h" " Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 39/45] OvmfPkg/VirtioBlkDxe: list "VirtioBlk.h" " Laszlo Ersek
                   ` (8 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

The header file defines macros and types that are private to the driver
and are used by the sole C file of the driver.

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/Virtio10Dxe/Virtio10.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/Virtio10Dxe/Virtio10.inf b/OvmfPkg/Virtio10Dxe/Virtio10.inf
index f868d1cfc449..c4ef15d94bfc 100644
--- a/OvmfPkg/Virtio10Dxe/Virtio10.inf
+++ b/OvmfPkg/Virtio10Dxe/Virtio10.inf
@@ -22,6 +22,7 @@ [Defines]
 
 [Sources]
   Virtio10.c
+  Virtio10.h
 
 [Packages]
   MdePkg/MdePkg.dec
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 39/45] OvmfPkg/VirtioBlkDxe: list "VirtioBlk.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (37 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 38/45] OvmfPkg/Virtio10Dxe: list "Virtio10.h" " Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 40/45] OvmfPkg/VirtioNetDxe: list "VirtioNet.h" " Laszlo Ersek
                   ` (7 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

Among other things, the header file defines macros and types that are
private to the driver and are used by the sole C file of the driver.

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/VirtioBlkDxe/VirtioBlk.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/VirtioBlkDxe/VirtioBlk.inf b/OvmfPkg/VirtioBlkDxe/VirtioBlk.inf
index d5975b74eb05..29d498a442dc 100644
--- a/OvmfPkg/VirtioBlkDxe/VirtioBlk.inf
+++ b/OvmfPkg/VirtioBlkDxe/VirtioBlk.inf
@@ -23,6 +23,7 @@ [Defines]
 
 [Sources]
   VirtioBlk.c
+  VirtioBlk.h
 
 [Packages]
   MdePkg/MdePkg.dec
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 40/45] OvmfPkg/VirtioNetDxe: list "VirtioNet.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (38 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 39/45] OvmfPkg/VirtioBlkDxe: list "VirtioBlk.h" " Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 41/45] OvmfPkg/VirtioPciDeviceDxe: list "VirtioPciDevice.h" " Laszlo Ersek
                   ` (6 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

The header file declares several functions and global variables that are
shared between various translation units in this module. The header file
also defines macros and types that are private to the driver.

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/VirtioNetDxe/VirtioNet.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/VirtioNetDxe/VirtioNet.inf b/OvmfPkg/VirtioNetDxe/VirtioNet.inf
index 9ff6d87e6190..d63dbe5cb6a2 100644
--- a/OvmfPkg/VirtioNetDxe/VirtioNet.inf
+++ b/OvmfPkg/VirtioNetDxe/VirtioNet.inf
@@ -39,6 +39,7 @@ [Sources]
   SnpStop.c
   SnpTransmit.c
   SnpUnsupported.c
+  VirtioNet.h
 
 [Packages]
   MdePkg/MdePkg.dec
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 41/45] OvmfPkg/VirtioPciDeviceDxe: list "VirtioPciDevice.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (39 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 40/45] OvmfPkg/VirtioNetDxe: list "VirtioNet.h" " Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 42/45] OvmfPkg/VirtioRngDxe: list "VirtioRng.h" " Laszlo Ersek
                   ` (5 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

Among other things, the header file declares the functions that implement
the VIRTIO_DEVICE_PROTOCOL members over virtio-pci (v0.9.5). The functions
are defined in "VirtioPciFunctions.c", and referenced in the
initialization of "mDeviceProtocolTemplate", in "VirtioPciDevice.c".

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf b/OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf
index 4b5d1a493ed2..9de00fd69f94 100644
--- a/OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf
+++ b/OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf
@@ -24,6 +24,7 @@ [Defines]
 
 [Sources]
   VirtioPciDevice.c
+  VirtioPciDevice.h
   VirtioPciFunctions.c
 
 [Packages]
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 42/45] OvmfPkg/VirtioRngDxe: list "VirtioRng.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (40 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 41/45] OvmfPkg/VirtioPciDeviceDxe: list "VirtioPciDevice.h" " Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 43/45] OvmfPkg/VirtioScsiDxe: list "VirtioScsi.h" " Laszlo Ersek
                   ` (4 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

The header file defines macros and types that are private to the driver
and are used by the sole C file of the driver.

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/VirtioRngDxe/VirtioRng.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/VirtioRngDxe/VirtioRng.inf b/OvmfPkg/VirtioRngDxe/VirtioRng.inf
index 471beb37bc7f..882a2552f5ec 100644
--- a/OvmfPkg/VirtioRngDxe/VirtioRng.inf
+++ b/OvmfPkg/VirtioRngDxe/VirtioRng.inf
@@ -23,6 +23,7 @@ [Defines]
 
 [Sources]
   VirtioRng.c
+  VirtioRng.h
 
 [Packages]
   MdePkg/MdePkg.dec
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 43/45] OvmfPkg/VirtioScsiDxe: list "VirtioScsi.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (41 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 42/45] OvmfPkg/VirtioRngDxe: list "VirtioRng.h" " Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 44/45] OvmfPkg/XenPvBlkDxe: sort [Sources*] sections " Laszlo Ersek
                   ` (3 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Ard Biesheuvel, Jordan Justen

Among other things, the header file defines macros and types that are
private to the driver and are used by the sole C file of the driver.

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/VirtioScsiDxe/VirtioScsi.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/VirtioScsiDxe/VirtioScsi.inf b/OvmfPkg/VirtioScsiDxe/VirtioScsi.inf
index 75581123930b..3bd5c427a0a7 100644
--- a/OvmfPkg/VirtioScsiDxe/VirtioScsi.inf
+++ b/OvmfPkg/VirtioScsiDxe/VirtioScsi.inf
@@ -24,6 +24,7 @@ [Defines]
 
 [Sources]
   VirtioScsi.c
+  VirtioScsi.h
 
 [Packages]
   MdePkg/MdePkg.dec
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 44/45] OvmfPkg/XenPvBlkDxe: sort [Sources*] sections in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (42 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 43/45] OvmfPkg/VirtioScsiDxe: list "VirtioScsi.h" " Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  1:49 ` [PATCH 45/45] OvmfPkg/XenPvBlkDxe: list "DriverBinding.h" " Laszlo Ersek
                   ` (2 subsequent siblings)
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Anthony Perard, Ard Biesheuvel, Jordan Justen, Julien Grall

This makes it easier to insert future source files. No functional changes.

Cc: Anthony Perard <anthony.perard@citrix.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Julien Grall <julien.grall@linaro.org>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf b/OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf
index c9ac15586112..c202e71246ef 100644
--- a/OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf
+++ b/OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf
@@ -29,14 +29,14 @@ [Packages]
   OvmfPkg/OvmfPkg.dec
 
 [Sources]
-  XenPvBlkDxe.h
-  XenPvBlkDxe.c
-  ComponentName.c
-  ComponentName.h
   BlockFront.c
   BlockFront.h
   BlockIo.c
   BlockIo.h
+  ComponentName.c
+  ComponentName.h
+  XenPvBlkDxe.c
+  XenPvBlkDxe.h
 
 
 [LibraryClasses]
-- 
2.14.1.3.gb7cf6e02401b




^ permalink raw reply related	[flat|nested] 58+ messages in thread

* [PATCH 45/45] OvmfPkg/XenPvBlkDxe: list "DriverBinding.h" in the INF file
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (43 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 44/45] OvmfPkg/XenPvBlkDxe: sort [Sources*] sections " Laszlo Ersek
@ 2018-03-11  1:49 ` Laszlo Ersek
  2018-03-11  8:15 ` [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Ard Biesheuvel
  2018-03-13 13:34 ` Laszlo Ersek
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11  1:49 UTC (permalink / raw)
  To: edk2-devel-01; +Cc: Anthony Perard, Ard Biesheuvel, Jordan Justen, Julien Grall

The header file provides (extern) declarations for the
EFI_DRIVER_BINDING_PROTOCOL member functions that are defined in
"XenPvBlkDxe.c". This way "gXenPvBlkDxeDriverBinding" can be initialized
near the top of "XenPvBlkDxe.c", ahead of the member function definitions.

Cc: Anthony Perard <anthony.perard@citrix.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Julien Grall <julien.grall@linaro.org>
Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf b/OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf
index c202e71246ef..b3dd7c70294a 100644
--- a/OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf
+++ b/OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf
@@ -35,6 +35,7 @@ [Sources]
   BlockIo.h
   ComponentName.c
   ComponentName.h
+  DriverBinding.h
   XenPvBlkDxe.c
   XenPvBlkDxe.h
 
-- 
2.14.1.3.gb7cf6e02401b



^ permalink raw reply related	[flat|nested] 58+ messages in thread

* Re: [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (44 preceding siblings ...)
  2018-03-11  1:49 ` [PATCH 45/45] OvmfPkg/XenPvBlkDxe: list "DriverBinding.h" " Laszlo Ersek
@ 2018-03-11  8:15 ` Ard Biesheuvel
  2018-03-11 11:48   ` Laszlo Ersek
  2018-03-13 13:34 ` Laszlo Ersek
  46 siblings, 1 reply; 58+ messages in thread
From: Ard Biesheuvel @ 2018-03-11  8:15 UTC (permalink / raw)
  To: Laszlo Ersek
  Cc: edk2-devel-01, Anthony Perard, Brijesh Singh, Jordan Justen,
	Julien Grall, Phil Dennis-Jordan

Hi Laszlo,

On 11 March 2018 at 01:48, Laszlo Ersek <lersek@redhat.com> wrote:
> Repo:   https://github.com/lersek/edk2.git
> Branch: hdr_inf_cleanup
>
> In
> <http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com>,
> Mike explained why it's a good idea to list module-internal *.h files in
> the [Sources*] sections of the INF files:
>
> On 11/23/15 21:28, Kinney, Michael D wrote:
>> There are 2 reasons to list all source files used in a module build in
>> the [Sources] section.
>>
>> 1) Support incremental builds.  If a change to the .h file is made,
>>    then the module may  not be rebuilt if the .h file is not listed in
>>    [Sources]
>> 2) Support of UEFI Distribution Package distribution format.  The UPT
>>    tools that creates UDP packages uses the [Sources] section for the
>>    inventory of files.  If a file is missing, then it will not be
>>    included in the UDP file.
>
> In only two years and three-four months, I've finally come around
> addressing (1) under ArmVirtPkg and OvmfPkg.

Thanks for doing this.

However, while I highly appreciate your thoroughness and verbosity in
most cases, I do think you've crossed a line this time :-)

Do we *really* need 4 different patches for CsmSupportLib, each adding
a single .h file to [Sources], with an elaborate description how it is
being used? If it is used, it needs to be listed, and if it is not, it
needs to be removed, that's all there is to it IMO.

Apart from that, the series looks correct to me.

Thanks,
Ard.


> The affected *.inf and *.h
> files were located with the following crude script:
>
>> #!/bin/bash
>>
>> export LC_ALL=C
>>
>> find ArmVirtPkg/ OvmfPkg/ -type f -name '*.inf' \
>> | sort \
>> | while read INF; do
>>     INF_D=$(dirname -- "$INF")
>>     INF_F=$(basename -- "$INF")
>>     (
>>       cd "$INF_D"
>>       find -type f -name '*.h' \
>>       | cut -c 3- \
>>       | sort \
>>       | while read REL_H; do
>>           if ! grep -q -F -e "  $REL_H" -- "$INF_F"; then
>>             printf '%s: %s\n' "$INF" "$REL_H"
>>           fi
>>         done
>>     )
>>   done
>
> This patch set brings the output down to nil, from the following 45
> lines (note that the patch count equaling 45 is a coincidence):
>
>> ArmVirtPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf: PlatformBm.h
>> ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf: PrePi.h
>> OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf: AcpiPlatform.h
>> OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf: QemuLoader.h
>> OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf: AcpiPlatform.h
>> OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf: QemuLoader.h
>> OvmfPkg/BlockMmioToBlockIoDxe/BlockIo.inf: BlockIo.h
>> OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf: CsmSupportLib.h
>> OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf: LegacyInterrupt.h
>> OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf: LegacyPlatform.h
>> OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf: LegacyRegion.h
>> OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf: Fvb.h
>> OvmfPkg/IoMmuDxe/IoMmuDxe.inf: AmdSevIoMmu.h
>> OvmfPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf: AcpiTimerLib.h
>> OvmfPkg/Library/AcpiTimerLib/BaseRomAcpiTimerLib.inf: AcpiTimerLib.h
>> OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf: AcpiTimerLib.h
>> OvmfPkg/Library/BaseMemEncryptSevLib/BaseMemEncryptSevLib.inf: X64/VirtualMemory.h
>> OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf: LoadLinuxLib.h
>> OvmfPkg/Library/LockBoxLib/LockBoxBaseLib.inf: LockBoxLib.h
>> OvmfPkg/Library/LockBoxLib/LockBoxDxeLib.inf: LockBoxLib.h
>> OvmfPkg/Library/NvVarsFileLib/NvVarsFileLib.inf: NvVarsFileLib.h
>> OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf: DebugLibDetect.h
>> OvmfPkg/Library/PlatformDebugLibIoPort/PlatformRomDebugLibIoPort.inf: DebugLibDetect.h
>> OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf: ExtraRootBusMap.h
>> OvmfPkg/Library/SerializeVariablesLib/SerializeVariablesLib.inf: SerializeVariablesLib.h
>> OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDeviceLib.inf: VirtioMmioDevice.h
>> OvmfPkg/PlatformDxe/Platform.inf: Platform.h
>> OvmfPkg/PlatformDxe/Platform.inf: PlatformConfig.h
>> OvmfPkg/PlatformPei/PlatformPei.inf: Cmos.h
>> OvmfPkg/PlatformPei/PlatformPei.inf: Platform.h
>> OvmfPkg/PlatformPei/PlatformPei.inf: Xen.h
>> OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf: FwBlockService.h
>> OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf: QemuFlash.h
>> OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf: FwBlockService.h
>> OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf: QemuFlash.h
>> OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf: Qemu.h
>> OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf: UnalignedIoInternal.h
>> OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf: VbeShim.h
>> OvmfPkg/Virtio10Dxe/Virtio10.inf: Virtio10.h
>> OvmfPkg/VirtioBlkDxe/VirtioBlk.inf: VirtioBlk.h
>> OvmfPkg/VirtioNetDxe/VirtioNet.inf: VirtioNet.h
>> OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf: VirtioPciDevice.h
>> OvmfPkg/VirtioRngDxe/VirtioRng.inf: VirtioRng.h
>> OvmfPkg/VirtioScsiDxe/VirtioScsi.inf: VirtioScsi.h
>> OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf: DriverBinding.h
>
> In the future, we shall ask for patches to be respun unless they (a)
> keep the [Sources*] sections sorted and (b) list any new module-internal
> header files there.
>
> Cc: Anthony Perard <anthony.perard@citrix.com>
> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> Cc: Brijesh Singh <brijesh.singh@amd.com>
> Cc: Jordan Justen <jordan.l.justen@intel.com>
> Cc: Julien Grall <julien.grall@linaro.org>
> Cc: Phil Dennis-Jordan <phil@philjordan.eu>
>
> Thanks,
> Laszlo
>
> Laszlo Ersek (45):
>   ArmVirtPkg/PlatformBootManagerLib: list "PlatformBm.h" in INF file
>   ArmVirtPkg/ArmVirtPrePiUniCoreRelocatable: sort [Sources*] sections in
>     INF
>   ArmVirtPkg/ArmVirtPrePiUniCoreRelocatable: list "PrePi.h" in INF file
>   OvmfPkg/AcpiPlatformDxe: sort [Sources*] sections in the INF files
>   OvmfPkg/AcpiPlatformDxe: list "AcpiPlatform.h" in the INF files
>   OvmfPkg/AcpiPlatformDxe: don't #include "QemuLoader.h" in "Qemu.c"
>   OvmfPkg/AcpiPlatformDxe: list "QemuLoader.h" in the INF files
>   OvmfPkg/BlockMmioToBlockIoDxe: list "BlockIo.h" in the INF file
>   OvmfPkg/CsmSupportLib: sort [Sources*] sections in the INF file
>   OvmfPkg/CsmSupportLib: list "CsmSupportLib.h" in the INF file
>   OvmfPkg/CsmSupportLib: list "LegacyInterrupt.h" in the INF file
>   OvmfPkg/CsmSupportLib: list "LegacyPlatform.h" in the INF file
>   OvmfPkg/CsmSupportLib: list "LegacyRegion.h" in the INF file
>   OvmfPkg/EmuVariableFvbRuntimeDxe: list "Fvb.h" in the INF file
>   OvmfPkg/IoMmuDxe: list "AmdSevIoMmu.h" in the INF file
>   OvmfPkg/AcpiTimerLib: list "AcpiTimerLib.h" in the INF files
>   OvmfPkg/BaseMemEncryptSevLib: list "X64/VirtualMemory.h" in the INF
>     file
>   OvmfPkg/LoadLinuxLib: list "LoadLinuxLib.h" in the INF file
>   OvmfPkg/LockBoxLib: list "LockBoxLib.h" in the INF files
>   OvmfPkg/NvVarsFileLib: list "NvVarsFileLib.h" in the INF file
>   OvmfPkg/PlatformDebugLibIoPort: list "DebugLibDetect.h" in the INF
>     files
>   OvmfPkg/QemuBootOrderLib: sort [Sources*] sections in the INF file
>   OvmfPkg/QemuBootOrderLib: list "ExtraRootBusMap.h" in the INF file
>   OvmfPkg/SerializeVariablesLib: list "SerializeVariablesLib.h" in INF
>     file
>   OvmfPkg/VirtioMmioDeviceLib: list "VirtioMmioDevice.h" in the INF file
>   OvmfPkg/VirtioMmioDeviceLib: improve style of
>     mMmioDeviceProtocolTemplate
>   OvmfPkg/PlatformDxe: list "Platform.h" in the INF file
>   OvmfPkg/PlatformDxe: list "PlatformConfig.h" in the INF file
>   OvmfPkg/PlatformPei: list "Cmos.h" in the INF file
>   OvmfPkg/PlatformPei: list "Platform.h" in the INF file
>   OvmfPkg/PlatformPei: list "Xen.h" in the INF file
>   OvmfPkg/QemuFlashFvbServicesRuntimeDxe: list "FwBlockService.h" in
>     INFs
>   OvmfPkg/QemuFlashFvbServicesRuntimeDxe: list "QemuFlash.h" in INF
>     files
>   OvmfPkg/QemuVideoDxe: sort [Sources*] sections in the INF file
>   OvmfPkg/QemuVideoDxe: list "Qemu.h" in the INF file
>   OvmfPkg/QemuVideoDxe: list "UnalignedIoInternal.h" in the INF file
>   OvmfPkg/QemuVideoDxe: list "VbeShim.h" in the INF file
>   OvmfPkg/Virtio10Dxe: list "Virtio10.h" in the INF file
>   OvmfPkg/VirtioBlkDxe: list "VirtioBlk.h" in the INF file
>   OvmfPkg/VirtioNetDxe: list "VirtioNet.h" in the INF file
>   OvmfPkg/VirtioPciDeviceDxe: list "VirtioPciDevice.h" in the INF file
>   OvmfPkg/VirtioRngDxe: list "VirtioRng.h" in the INF file
>   OvmfPkg/VirtioScsiDxe: list "VirtioScsi.h" in the INF file
>   OvmfPkg/XenPvBlkDxe: sort [Sources*] sections in the INF file
>   OvmfPkg/XenPvBlkDxe: list "DriverBinding.h" in the INF file
>
>  ArmVirtPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf | 1 +
>  ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf                  | 3 ++-
>  OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf                          | 8 +++++---
>  OvmfPkg/AcpiPlatformDxe/Qemu.c                                       | 1 -
>  OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf                 | 8 +++++---
>  OvmfPkg/BlockMmioToBlockIoDxe/BlockIo.inf                            | 1 +
>  OvmfPkg/Csm/CsmSupportLib/CsmSupportLib.inf                          | 6 +++++-
>  OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf                             | 1 +
>  OvmfPkg/IoMmuDxe/IoMmuDxe.inf                                        | 1 +
>  OvmfPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf                    | 1 +
>  OvmfPkg/Library/AcpiTimerLib/BaseRomAcpiTimerLib.inf                 | 1 +
>  OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf                     | 1 +
>  OvmfPkg/Library/BaseMemEncryptSevLib/BaseMemEncryptSevLib.inf        | 1 +
>  OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf                        | 1 +
>  OvmfPkg/Library/LockBoxLib/LockBoxBaseLib.inf                        | 1 +
>  OvmfPkg/Library/LockBoxLib/LockBoxDxeLib.inf                         | 1 +
>  OvmfPkg/Library/NvVarsFileLib/NvVarsFileLib.inf                      | 1 +
>  OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf    | 1 +
>  OvmfPkg/Library/PlatformDebugLibIoPort/PlatformRomDebugLibIoPort.inf | 1 +
>  OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf                | 3 ++-
>  OvmfPkg/Library/SerializeVariablesLib/SerializeVariablesLib.inf      | 1 +
>  OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDevice.c               | 2 +-
>  OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDeviceLib.inf          | 1 +
>  OvmfPkg/PlatformDxe/Platform.inf                                     | 2 ++
>  OvmfPkg/PlatformPei/PlatformPei.inf                                  | 3 +++
>  OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf     | 2 ++
>  OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesSmm.inf            | 2 ++
>  OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf                                | 7 +++++--
>  OvmfPkg/Virtio10Dxe/Virtio10.inf                                     | 1 +
>  OvmfPkg/VirtioBlkDxe/VirtioBlk.inf                                   | 1 +
>  OvmfPkg/VirtioNetDxe/VirtioNet.inf                                   | 1 +
>  OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf                    | 1 +
>  OvmfPkg/VirtioRngDxe/VirtioRng.inf                                   | 1 +
>  OvmfPkg/VirtioScsiDxe/VirtioScsi.inf                                 | 1 +
>  OvmfPkg/XenPvBlkDxe/XenPvBlkDxe.inf                                  | 9 +++++----
>  35 files changed, 61 insertions(+), 17 deletions(-)
>
> --
> 2.14.1.3.gb7cf6e02401b
>


^ permalink raw reply	[flat|nested] 58+ messages in thread

* Re: [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files
  2018-03-11  8:15 ` [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Ard Biesheuvel
@ 2018-03-11 11:48   ` Laszlo Ersek
  2018-03-11 11:54     ` Ard Biesheuvel
  0 siblings, 1 reply; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-11 11:48 UTC (permalink / raw)
  To: Ard Biesheuvel
  Cc: edk2-devel-01, Anthony Perard, Brijesh Singh, Jordan Justen,
	Julien Grall, Phil Dennis-Jordan

On 03/11/18 09:15, Ard Biesheuvel wrote:
> Hi Laszlo,
> 
> On 11 March 2018 at 01:48, Laszlo Ersek <lersek@redhat.com> wrote:
>> Repo:   https://github.com/lersek/edk2.git
>> Branch: hdr_inf_cleanup
>>
>> In
>> <http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com>,
>> Mike explained why it's a good idea to list module-internal *.h files in
>> the [Sources*] sections of the INF files:
>>
>> On 11/23/15 21:28, Kinney, Michael D wrote:
>>> There are 2 reasons to list all source files used in a module build in
>>> the [Sources] section.
>>>
>>> 1) Support incremental builds.  If a change to the .h file is made,
>>>    then the module may  not be rebuilt if the .h file is not listed in
>>>    [Sources]
>>> 2) Support of UEFI Distribution Package distribution format.  The UPT
>>>    tools that creates UDP packages uses the [Sources] section for the
>>>    inventory of files.  If a file is missing, then it will not be
>>>    included in the UDP file.
>>
>> In only two years and three-four months, I've finally come around
>> addressing (1) under ArmVirtPkg and OvmfPkg.
> 
> Thanks for doing this.
> 
> However, while I highly appreciate your thoroughness and verbosity in
> most cases, I do think you've crossed a line this time :-)
> 
> Do we *really* need 4 different patches for CsmSupportLib, each adding
> a single .h file to [Sources], with an elaborate description how it is
> being used? If it is used, it needs to be listed, and if it is not, it
> needs to be removed, that's all there is to it IMO.

The structuring of the patch series reflects my thinking process and the
work I did precisely. I didn't (couldn't) investigate multiple header
files at once / in parallel; I investigated them one by one. It's easy
to squash patches, and it's hard to split them, so I maintain that
writing up and posting these patches one by one, in v1, was the right
thing to do. Personally I find it much easier to read many trivial
patches than half as many complex / divergent ones. If you prefer that I
squash patches into one per module, I can do that (I'd wait for more
feedback first though).

Second, I disagree that it's as simple as "list it if it's used". I
didn't just want to dump the .h filenames into the INF files; I wanted
to see each time whether the use of the header file was justified in the
first place -- this is not a given if there are multiple INF files in
the same directory, or an INF file has architecture-specific Sources
sections.

For example, in patch 06/45, I removed "QemuLoader.h" from "Qemu.c", and
"Qemu.c" is only built into one of the INF files under
"OvmfPkg/AcpiPlatformDxe". (Ultimately I had to list "QemuLoader.h" in
both INF files, in patch 07/45, due to "QemuFwCfgAcpi.c", which is built
into both INFs.)

For another example, in patch 37/45, I added "VbeShim.h" to
[Sources.Ia32, Sources.X64], and not to another of the [Sources*]
sections. The same applies to patch 17/45, where "X64/VirtualMemory.h"
belongs under [Sources.X64] only.

I find this is not as easy as it looks, and I meant to be thorough. If
you don't have time to wade through the patches, I'll thank you if you
ACK just the first three (ArmVirtPkg) patches.

> Apart from that, the series looks correct to me.

Thanks!
Laszlo


^ permalink raw reply	[flat|nested] 58+ messages in thread

* Re: [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files
  2018-03-11 11:48   ` Laszlo Ersek
@ 2018-03-11 11:54     ` Ard Biesheuvel
  2018-03-12  8:43       ` Jordan Justen
  2018-03-12 12:06       ` Laszlo Ersek
  0 siblings, 2 replies; 58+ messages in thread
From: Ard Biesheuvel @ 2018-03-11 11:54 UTC (permalink / raw)
  To: Laszlo Ersek
  Cc: edk2-devel-01, Anthony Perard, Brijesh Singh, Jordan Justen,
	Julien Grall, Phil Dennis-Jordan

On 11 March 2018 at 11:48, Laszlo Ersek <lersek@redhat.com> wrote:
> On 03/11/18 09:15, Ard Biesheuvel wrote:
>> Hi Laszlo,
>>
>> On 11 March 2018 at 01:48, Laszlo Ersek <lersek@redhat.com> wrote:
>>> Repo:   https://github.com/lersek/edk2.git
>>> Branch: hdr_inf_cleanup
>>>
>>> In
>>> <http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com>,
>>> Mike explained why it's a good idea to list module-internal *.h files in
>>> the [Sources*] sections of the INF files:
>>>
>>> On 11/23/15 21:28, Kinney, Michael D wrote:
>>>> There are 2 reasons to list all source files used in a module build in
>>>> the [Sources] section.
>>>>
>>>> 1) Support incremental builds.  If a change to the .h file is made,
>>>>    then the module may  not be rebuilt if the .h file is not listed in
>>>>    [Sources]
>>>> 2) Support of UEFI Distribution Package distribution format.  The UPT
>>>>    tools that creates UDP packages uses the [Sources] section for the
>>>>    inventory of files.  If a file is missing, then it will not be
>>>>    included in the UDP file.
>>>
>>> In only two years and three-four months, I've finally come around
>>> addressing (1) under ArmVirtPkg and OvmfPkg.
>>
>> Thanks for doing this.
>>
>> However, while I highly appreciate your thoroughness and verbosity in
>> most cases, I do think you've crossed a line this time :-)
>>
>> Do we *really* need 4 different patches for CsmSupportLib, each adding
>> a single .h file to [Sources], with an elaborate description how it is
>> being used? If it is used, it needs to be listed, and if it is not, it
>> needs to be removed, that's all there is to it IMO.
>
> The structuring of the patch series reflects my thinking process and the
> work I did precisely. I didn't (couldn't) investigate multiple header
> files at once / in parallel; I investigated them one by one. It's easy
> to squash patches, and it's hard to split them, so I maintain that
> writing up and posting these patches one by one, in v1, was the right
> thing to do. Personally I find it much easier to read many trivial
> patches than half as many complex / divergent ones. If you prefer that I
> squash patches into one per module, I can do that (I'd wait for more
> feedback first though).
>
> Second, I disagree that it's as simple as "list it if it's used". I
> didn't just want to dump the .h filenames into the INF files; I wanted
> to see each time whether the use of the header file was justified in the
> first place -- this is not a given if there are multiple INF files in
> the same directory, or an INF file has architecture-specific Sources
> sections.
>
> For example, in patch 06/45, I removed "QemuLoader.h" from "Qemu.c", and
> "Qemu.c" is only built into one of the INF files under
> "OvmfPkg/AcpiPlatformDxe". (Ultimately I had to list "QemuLoader.h" in
> both INF files, in patch 07/45, due to "QemuFwCfgAcpi.c", which is built
> into both INFs.)
>
> For another example, in patch 37/45, I added "VbeShim.h" to
> [Sources.Ia32, Sources.X64], and not to another of the [Sources*]
> sections. The same applies to patch 17/45, where "X64/VirtualMemory.h"
> belongs under [Sources.X64] only.
>
> I find this is not as easy as it looks, and I meant to be thorough. If
> you don't have time to wade through the patches, I'll thank you if you
> ACK just the first three (ArmVirtPkg) patches.
>

Please understand that this is not criticism on your thinking process,
and I highly value the quality of your work in general, and for this
series in particular.

I am merely saying that it is not always necessary to share your
personal journey resulting in the patches at this level of detail,
simply because it doesn't scale.

In any case, I am happy with this to go in as is, if you prefer.

Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>


^ permalink raw reply	[flat|nested] 58+ messages in thread

* Re: [PATCH 15/45] OvmfPkg/IoMmuDxe: list "AmdSevIoMmu.h" in the INF file
  2018-03-11  1:48 ` [PATCH 15/45] OvmfPkg/IoMmuDxe: list "AmdSevIoMmu.h" " Laszlo Ersek
@ 2018-03-11 15:08   ` Brijesh Singh
  0 siblings, 0 replies; 58+ messages in thread
From: Brijesh Singh @ 2018-03-11 15:08 UTC (permalink / raw)
  To: Laszlo Ersek, edk2-devel-01; +Cc: brijesh.singh, Ard Biesheuvel, Jordan Justen



On 3/10/18 7:48 PM, Laszlo Ersek wrote:
> The header file declares the AmdSevInstallIoMmuProtocol() function, which
> is implemented in "AmdSevIoMmu.c" and called from "IoMmuDxe.c".
>
> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> Cc: Brijesh Singh <brijesh.singh@amd.com>
> Cc: Jordan Justen <jordan.l.justen@intel.com>
> Suggested-by: Michael Kinney <michael.d.kinney@intel.com>
> Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Laszlo Ersek <lersek@redhat.com>

Reviewed-by: Brijesh Singh <brijesh.singh@amd.com>

thanks

> ---
>  OvmfPkg/IoMmuDxe/IoMmuDxe.inf | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/OvmfPkg/IoMmuDxe/IoMmuDxe.inf b/OvmfPkg/IoMmuDxe/IoMmuDxe.inf
> index 307849706800..547b51352618 100644
> --- a/OvmfPkg/IoMmuDxe/IoMmuDxe.inf
> +++ b/OvmfPkg/IoMmuDxe/IoMmuDxe.inf
> @@ -26,6 +26,7 @@ [Defines]
>  
>  [Sources]
>    AmdSevIoMmu.c
> +  AmdSevIoMmu.h
>    IoMmuDxe.c
>  
>  [Packages]



^ permalink raw reply	[flat|nested] 58+ messages in thread

* Re: [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files
  2018-03-11 11:54     ` Ard Biesheuvel
@ 2018-03-12  8:43       ` Jordan Justen
  2018-03-12 12:10         ` Laszlo Ersek
  2018-03-12 12:06       ` Laszlo Ersek
  1 sibling, 1 reply; 58+ messages in thread
From: Jordan Justen @ 2018-03-12  8:43 UTC (permalink / raw)
  To: Ard Biesheuvel, Laszlo Ersek
  Cc: edk2-devel-01, Anthony Perard, Brijesh Singh, Julien Grall,
	Phil Dennis-Jordan

On 2018-03-11 04:54:51, Ard Biesheuvel wrote:
> On 11 March 2018 at 11:48, Laszlo Ersek <lersek@redhat.com> wrote:
> > On 03/11/18 09:15, Ard Biesheuvel wrote:
> >> Hi Laszlo,
> >>
> >> On 11 March 2018 at 01:48, Laszlo Ersek <lersek@redhat.com> wrote:
> >>> Repo:   https://github.com/lersek/edk2.git
> >>> Branch: hdr_inf_cleanup
> >>>
> >>> In
> >>> <http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com>,
> >>> Mike explained why it's a good idea to list module-internal *.h files in
> >>> the [Sources*] sections of the INF files:
> >>>
> >>> On 11/23/15 21:28, Kinney, Michael D wrote:
> >>>> There are 2 reasons to list all source files used in a module build in
> >>>> the [Sources] section.
> >>>>
> >>>> 1) Support incremental builds.  If a change to the .h file is made,
> >>>>    then the module may  not be rebuilt if the .h file is not listed in
> >>>>    [Sources]
> >>>> 2) Support of UEFI Distribution Package distribution format.  The UPT
> >>>>    tools that creates UDP packages uses the [Sources] section for the
> >>>>    inventory of files.  If a file is missing, then it will not be
> >>>>    included in the UDP file.
> >>>
> >>> In only two years and three-four months, I've finally come around
> >>> addressing (1) under ArmVirtPkg and OvmfPkg.
> >>
> >> Thanks for doing this.
> >>
> >> However, while I highly appreciate your thoroughness and verbosity in
> >> most cases, I do think you've crossed a line this time :-)
> >>
> >> Do we *really* need 4 different patches for CsmSupportLib, each adding
> >> a single .h file to [Sources], with an elaborate description how it is
> >> being used? If it is used, it needs to be listed, and if it is not, it
> >> needs to be removed, that's all there is to it IMO.
> >
> > The structuring of the patch series reflects my thinking process and the
> > work I did precisely. I didn't (couldn't) investigate multiple header
> > files at once / in parallel; I investigated them one by one. It's easy
> > to squash patches, and it's hard to split them, so I maintain that
> > writing up and posting these patches one by one, in v1, was the right
> > thing to do. Personally I find it much easier to read many trivial
> > patches than half as many complex / divergent ones. If you prefer that I
> > squash patches into one per module, I can do that (I'd wait for more
> > feedback first though).
> >
> > Second, I disagree that it's as simple as "list it if it's used". I
> > didn't just want to dump the .h filenames into the INF files; I wanted
> > to see each time whether the use of the header file was justified in the
> > first place -- this is not a given if there are multiple INF files in
> > the same directory, or an INF file has architecture-specific Sources
> > sections.
> >
> > For example, in patch 06/45, I removed "QemuLoader.h" from "Qemu.c", and
> > "Qemu.c" is only built into one of the INF files under
> > "OvmfPkg/AcpiPlatformDxe". (Ultimately I had to list "QemuLoader.h" in
> > both INF files, in patch 07/45, due to "QemuFwCfgAcpi.c", which is built
> > into both INFs.)
> >
> > For another example, in patch 37/45, I added "VbeShim.h" to
> > [Sources.Ia32, Sources.X64], and not to another of the [Sources*]
> > sections. The same applies to patch 17/45, where "X64/VirtualMemory.h"
> > belongs under [Sources.X64] only.
> >
> > I find this is not as easy as it looks, and I meant to be thorough. If
> > you don't have time to wade through the patches, I'll thank you if you
> > ACK just the first three (ArmVirtPkg) patches.
> >
> 
> Please understand that this is not criticism on your thinking process,
> and I highly value the quality of your work in general, and for this
> series in particular.
> 
> I am merely saying that it is not always necessary to share your
> personal journey resulting in the patches at this level of detail,
> simply because it doesn't scale.

True. Originally I was going to suggest that it might be worth making
1 patch per package, but after looking over the changes, it seems that
scope is maybe a bit to large for that.

> In any case, I am happy with this to go in as is, if you prefer.

Also after looking it over, it appears that Laszlo put quite a bit of
information into each commit message. I agree that it might be sliced
a little too finely, but I guess after seeing the effort he put into
it, I prefer Laszlo go ahead and keep the separate commits.

Series Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>


^ permalink raw reply	[flat|nested] 58+ messages in thread

* Re: [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files
  2018-03-11 11:54     ` Ard Biesheuvel
  2018-03-12  8:43       ` Jordan Justen
@ 2018-03-12 12:06       ` Laszlo Ersek
  2018-03-12 12:23         ` Ard Biesheuvel
  1 sibling, 1 reply; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-12 12:06 UTC (permalink / raw)
  To: Ard Biesheuvel
  Cc: edk2-devel-01, Anthony Perard, Brijesh Singh, Jordan Justen,
	Julien Grall, Phil Dennis-Jordan

On 03/11/18 12:54, Ard Biesheuvel wrote:

> I am merely saying that it is not always necessary to share your
> personal journey resulting in the patches at this level of detail,
> simply because it doesn't scale.

Doesn't scale for me, or doesn't scale for reviewers?

If the latter, do you suggest that I keep such detailed notes out of the
v1 posting as well? (Because, I imagine, if I edit them down for v2
only, then I may have wasted reviewer time already.)

The recurrent bottleneck for me is trying to figure out what this or
that part of the patch was meant to solve, and why that way. I've also
encouraged contributors to capture their exact scenario / use case in
commit messages; the more specific the better. (IIRC, one example is
commit f5404a3eba1d, "OvmfPkg: Increase the maximum size for
Authenticated variables", 2016-03-25.) IOW, I tend to find the focus too
wide, and the information lacking.

However, if I end up wasting your time instead of saving it, then I'm
doing it wrong. I wrote up the commit messages the way I did because I
thought it would save time for me, if I had to review the patches (I
tend to verify patches maybe a bit too pedantically too, and I
appreciate when the commit messages give me crutches for that). If it
has the opposite effect on you, then I'm doing it wrong.

> In any case, I am happy with this to go in as is, if you prefer.
> 
> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

Thank you -- peeking ahead at Jordan's review as well, I think I'll save
you guys another round of this.

I'm honestly confused now about how I should word my future commit
messages. Therefore I can't simply promise "I'll keep them short"; I
might not know *how* (i.e. what to leave out). I'll need to actively
work on that.

Thanks
Laszlo


^ permalink raw reply	[flat|nested] 58+ messages in thread

* Re: [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files
  2018-03-12  8:43       ` Jordan Justen
@ 2018-03-12 12:10         ` Laszlo Ersek
  2018-03-12 16:57           ` Jordan Justen
  0 siblings, 1 reply; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-12 12:10 UTC (permalink / raw)
  To: Jordan Justen, Ard Biesheuvel
  Cc: edk2-devel-01, Anthony Perard, Brijesh Singh, Julien Grall,
	Phil Dennis-Jordan

On 03/12/18 09:43, Jordan Justen wrote:
> On 2018-03-11 04:54:51, Ard Biesheuvel wrote:

>> I am merely saying that it is not always necessary to share your
>> personal journey resulting in the patches at this level of detail,
>> simply because it doesn't scale.
> 
> True.

Message received, loud and clear. :)

> Originally I was going to suggest that it might be worth making
> 1 patch per package, but after looking over the changes, it seems that
> scope is maybe a bit to large for that.
> 
>> In any case, I am happy with this to go in as is, if you prefer.
> 
> Also after looking it over, it appears that Laszlo put quite a bit of
> information into each commit message. I agree that it might be sliced
> a little too finely, but I guess after seeing the effort he put into
> it, I prefer Laszlo go ahead and keep the separate commits.
> 
> Series Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>

Thank you both for putting up with the excessive detail. I'll attempt to
do better next time.

Laszlo


^ permalink raw reply	[flat|nested] 58+ messages in thread

* Re: [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files
  2018-03-12 12:06       ` Laszlo Ersek
@ 2018-03-12 12:23         ` Ard Biesheuvel
  2018-03-12 12:41           ` Laszlo Ersek
  0 siblings, 1 reply; 58+ messages in thread
From: Ard Biesheuvel @ 2018-03-12 12:23 UTC (permalink / raw)
  To: Laszlo Ersek
  Cc: edk2-devel-01, Anthony Perard, Brijesh Singh, Jordan Justen,
	Julien Grall, Phil Dennis-Jordan

On 12 March 2018 at 12:06, Laszlo Ersek <lersek@redhat.com> wrote:
> On 03/11/18 12:54, Ard Biesheuvel wrote:
>
>> I am merely saying that it is not always necessary to share your
>> personal journey resulting in the patches at this level of detail,
>> simply because it doesn't scale.
>
> Doesn't scale for me, or doesn't scale for reviewers?
>
> If the latter, do you suggest that I keep such detailed notes out of the
> v1 posting as well? (Because, I imagine, if I edit them down for v2
> only, then I may have wasted reviewer time already.)
>
> The recurrent bottleneck for me is trying to figure out what this or
> that part of the patch was meant to solve, and why that way. I've also
> encouraged contributors to capture their exact scenario / use case in
> commit messages; the more specific the better. (IIRC, one example is
> commit f5404a3eba1d, "OvmfPkg: Increase the maximum size for
> Authenticated variables", 2016-03-25.) IOW, I tend to find the focus too
> wide, and the information lacking.
>
> However, if I end up wasting your time instead of saving it, then I'm
> doing it wrong. I wrote up the commit messages the way I did because I
> thought it would save time for me, if I had to review the patches (I
> tend to verify patches maybe a bit too pedantically too, and I
> appreciate when the commit messages give me crutches for that). If it
> has the opposite effect on you, then I'm doing it wrong.
>
>> In any case, I am happy with this to go in as is, if you prefer.
>>
>> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
>
> Thank you -- peeking ahead at Jordan's review as well, I think I'll save
> you guys another round of this.
>
> I'm honestly confused now about how I should word my future commit
> messages. Therefore I can't simply promise "I'll keep them short"; I
> might not know *how* (i.e. what to leave out). I'll need to actively
> work on that.
>

The issue you are addressing is the fact that changes to header files
will not trigger rebuilds if they are not listed in the module's .INF
file. So while I fully expect you to confirm that any .h files you add
to those .INF files are in fact depended upon, a reviewer or other
'consumer' of the patch is highly unlikely to be interested in reading
novels about how each individual .h file is used exactly, and simply
dropping the unused ones and adding the used ones should suffice.

As I see it, the commit log should explain the rationale of the
change, not a stream-of-consciousness account of how it came into
being (and I know I am exaggerating here, but only to clarify the
distinction)


^ permalink raw reply	[flat|nested] 58+ messages in thread

* Re: [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files
  2018-03-12 12:23         ` Ard Biesheuvel
@ 2018-03-12 12:41           ` Laszlo Ersek
  0 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-12 12:41 UTC (permalink / raw)
  To: Ard Biesheuvel
  Cc: edk2-devel-01, Anthony Perard, Brijesh Singh, Jordan Justen,
	Julien Grall, Phil Dennis-Jordan

On 03/12/18 13:23, Ard Biesheuvel wrote:

> the commit log should explain the rationale of the change, not a
> stream-of-consciousness account of how it came into being

I've turned this into a reminder where I keep my notes.

Thanks for your help!
Laszlo


^ permalink raw reply	[flat|nested] 58+ messages in thread

* Re: [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files
  2018-03-12 12:10         ` Laszlo Ersek
@ 2018-03-12 16:57           ` Jordan Justen
  2018-03-12 17:18             ` Laszlo Ersek
  0 siblings, 1 reply; 58+ messages in thread
From: Jordan Justen @ 2018-03-12 16:57 UTC (permalink / raw)
  To: Ard Biesheuvel, Laszlo Ersek
  Cc: Anthony Perard, edk2-devel-01, Brijesh Singh, Phil Dennis-Jordan

On 2018-03-12 05:10:34, Laszlo Ersek wrote:
> On 03/12/18 09:43, Jordan Justen wrote:
> > On 2018-03-11 04:54:51, Ard Biesheuvel wrote:
> 
> >> I am merely saying that it is not always necessary to share your
> >> personal journey resulting in the patches at this level of detail,
> >> simply because it doesn't scale.
> > 
> > True.
> 
> Message received, loud and clear. :)

Well, I didn't mean for it too be loud and clear. :) I meant to say,
at a first glance, it appeared to be overly partitioned. After looking
closer it seemed reasonable.

I don't think there's a simple answer to this question, but it is
probably better to err on the side of being a bit over partitioned.

Taking the task of adding a bunch of .h files to .inf files. If they
can be easily identified, then it seems reaonable to have a single
patch for a package. If it takes more careful analysis, then I guess
it's fine to capture that via separate commits.

Sorting .c files in package starts to get a little more dicey. What if
a mistake is made? It might be nice to be able to bisect commits to
find the issue. (Although the build error probably will lead straight
to it as well. :)

-Jordan

> > Originally I was going to suggest that it might be worth making
> > 1 patch per package, but after looking over the changes, it seems that
> > scope is maybe a bit to large for that.
> > 
> >> In any case, I am happy with this to go in as is, if you prefer.
> > 
> > Also after looking it over, it appears that Laszlo put quite a bit of
> > information into each commit message. I agree that it might be sliced
> > a little too finely, but I guess after seeing the effort he put into
> > it, I prefer Laszlo go ahead and keep the separate commits.
> > 
> > Series Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
> 
> Thank you both for putting up with the excessive detail. I'll attempt to
> do better next time.
> 
> Laszlo
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel


^ permalink raw reply	[flat|nested] 58+ messages in thread

* Re: [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files
  2018-03-12 16:57           ` Jordan Justen
@ 2018-03-12 17:18             ` Laszlo Ersek
  0 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-12 17:18 UTC (permalink / raw)
  To: Jordan Justen, Ard Biesheuvel
  Cc: Anthony Perard, edk2-devel-01, Brijesh Singh, Phil Dennis-Jordan

On 03/12/18 17:57, Jordan Justen wrote:
> On 2018-03-12 05:10:34, Laszlo Ersek wrote:
>> On 03/12/18 09:43, Jordan Justen wrote:
>>> On 2018-03-11 04:54:51, Ard Biesheuvel wrote:
>>
>>>> I am merely saying that it is not always necessary to share your
>>>> personal journey resulting in the patches at this level of detail,
>>>> simply because it doesn't scale.
>>>
>>> True.
>>
>> Message received, loud and clear. :)
> 
> Well, I didn't mean for it too be loud and clear. :) I meant to say,
> at a first glance, it appeared to be overly partitioned. After looking
> closer it seemed reasonable.

My apologies -- by "loud and clear" I meant that I intend to be serious
about saving reviewers time, with shorter commit messages, and (if I can
manage) with better structured patch sets.

Thank you!
Laszlo


^ permalink raw reply	[flat|nested] 58+ messages in thread

* Re: [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files
  2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
                   ` (45 preceding siblings ...)
  2018-03-11  8:15 ` [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Ard Biesheuvel
@ 2018-03-13 13:34 ` Laszlo Ersek
  46 siblings, 0 replies; 58+ messages in thread
From: Laszlo Ersek @ 2018-03-13 13:34 UTC (permalink / raw)
  To: edk2-devel-01
  Cc: Phil Dennis-Jordan, Brijesh Singh, Ard Biesheuvel, Jordan Justen,
	Anthony Perard

On 03/11/18 02:48, Laszlo Ersek wrote:
> Repo:   https://github.com/lersek/edk2.git
> Branch: hdr_inf_cleanup
> 
> In
> <http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com>,
> Mike explained why it's a good idea to list module-internal *.h files in
> the [Sources*] sections of the INF files:
> 
> On 11/23/15 21:28, Kinney, Michael D wrote:
>> There are 2 reasons to list all source files used in a module build in
>> the [Sources] section.
>>
>> 1) Support incremental builds.  If a change to the .h file is made,
>>    then the module may  not be rebuilt if the .h file is not listed in
>>    [Sources]
>> 2) Support of UEFI Distribution Package distribution format.  The UPT
>>    tools that creates UDP packages uses the [Sources] section for the
>>    inventory of files.  If a file is missing, then it will not be
>>    included in the UDP file.

Commit range d154a4dfaec4..ea30f8e81399.

Thanks
Laszlo


^ permalink raw reply	[flat|nested] 58+ messages in thread

end of thread, other threads:[~2018-03-13 13:27 UTC | newest]

Thread overview: 58+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-03-11  1:48 [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Laszlo Ersek
2018-03-11  1:48 ` [PATCH 01/45] ArmVirtPkg/PlatformBootManagerLib: list "PlatformBm.h" in INF file Laszlo Ersek
2018-03-11  1:48 ` [PATCH 02/45] ArmVirtPkg/ArmVirtPrePiUniCoreRelocatable: sort [Sources*] sections in INF Laszlo Ersek
2018-03-11  1:48 ` [PATCH 03/45] ArmVirtPkg/ArmVirtPrePiUniCoreRelocatable: list "PrePi.h" in INF file Laszlo Ersek
2018-03-11  1:48 ` [PATCH 04/45] OvmfPkg/AcpiPlatformDxe: sort [Sources*] sections in the INF files Laszlo Ersek
2018-03-11  1:48 ` [PATCH 05/45] OvmfPkg/AcpiPlatformDxe: list "AcpiPlatform.h" " Laszlo Ersek
2018-03-11  1:48 ` [PATCH 06/45] OvmfPkg/AcpiPlatformDxe: don't #include "QemuLoader.h" in "Qemu.c" Laszlo Ersek
2018-03-11  1:48 ` [PATCH 07/45] OvmfPkg/AcpiPlatformDxe: list "QemuLoader.h" in the INF files Laszlo Ersek
2018-03-11  1:48 ` [PATCH 08/45] OvmfPkg/BlockMmioToBlockIoDxe: list "BlockIo.h" in the INF file Laszlo Ersek
2018-03-11  1:48 ` [PATCH 09/45] OvmfPkg/CsmSupportLib: sort [Sources*] sections " Laszlo Ersek
2018-03-11  1:48 ` [PATCH 10/45] OvmfPkg/CsmSupportLib: list "CsmSupportLib.h" " Laszlo Ersek
2018-03-11  1:48 ` [PATCH 11/45] OvmfPkg/CsmSupportLib: list "LegacyInterrupt.h" " Laszlo Ersek
2018-03-11  1:48 ` [PATCH 12/45] OvmfPkg/CsmSupportLib: list "LegacyPlatform.h" " Laszlo Ersek
2018-03-11  1:48 ` [PATCH 13/45] OvmfPkg/CsmSupportLib: list "LegacyRegion.h" " Laszlo Ersek
2018-03-11  1:48 ` [PATCH 14/45] OvmfPkg/EmuVariableFvbRuntimeDxe: list "Fvb.h" " Laszlo Ersek
2018-03-11  1:48 ` [PATCH 15/45] OvmfPkg/IoMmuDxe: list "AmdSevIoMmu.h" " Laszlo Ersek
2018-03-11 15:08   ` Brijesh Singh
2018-03-11  1:48 ` [PATCH 16/45] OvmfPkg/AcpiTimerLib: list "AcpiTimerLib.h" in the INF files Laszlo Ersek
2018-03-11  1:48 ` [PATCH 17/45] OvmfPkg/BaseMemEncryptSevLib: list "X64/VirtualMemory.h" in the INF file Laszlo Ersek
2018-03-11  1:48 ` [PATCH 18/45] OvmfPkg/LoadLinuxLib: list "LoadLinuxLib.h" " Laszlo Ersek
2018-03-11  1:49 ` [PATCH 19/45] OvmfPkg/LockBoxLib: list "LockBoxLib.h" in the INF files Laszlo Ersek
2018-03-11  1:49 ` [PATCH 20/45] OvmfPkg/NvVarsFileLib: list "NvVarsFileLib.h" in the INF file Laszlo Ersek
2018-03-11  1:49 ` [PATCH 21/45] OvmfPkg/PlatformDebugLibIoPort: list "DebugLibDetect.h" in the INF files Laszlo Ersek
2018-03-11  1:49 ` [PATCH 22/45] OvmfPkg/QemuBootOrderLib: sort [Sources*] sections in the INF file Laszlo Ersek
2018-03-11  1:49 ` [PATCH 23/45] OvmfPkg/QemuBootOrderLib: list "ExtraRootBusMap.h" " Laszlo Ersek
2018-03-11  1:49 ` [PATCH 24/45] OvmfPkg/SerializeVariablesLib: list "SerializeVariablesLib.h" in " Laszlo Ersek
2018-03-11  1:49 ` [PATCH 25/45] OvmfPkg/VirtioMmioDeviceLib: list "VirtioMmioDevice.h" in the " Laszlo Ersek
2018-03-11  1:49 ` [PATCH 26/45] OvmfPkg/VirtioMmioDeviceLib: improve style of mMmioDeviceProtocolTemplate Laszlo Ersek
2018-03-11  1:49 ` [PATCH 27/45] OvmfPkg/PlatformDxe: list "Platform.h" in the INF file Laszlo Ersek
2018-03-11  1:49 ` [PATCH 28/45] OvmfPkg/PlatformDxe: list "PlatformConfig.h" " Laszlo Ersek
2018-03-11  1:49 ` [PATCH 29/45] OvmfPkg/PlatformPei: list "Cmos.h" " Laszlo Ersek
2018-03-11  1:49 ` [PATCH 30/45] OvmfPkg/PlatformPei: list "Platform.h" " Laszlo Ersek
2018-03-11  1:49 ` [PATCH 31/45] OvmfPkg/PlatformPei: list "Xen.h" " Laszlo Ersek
2018-03-11  1:49 ` [PATCH 32/45] OvmfPkg/QemuFlashFvbServicesRuntimeDxe: list "FwBlockService.h" in INFs Laszlo Ersek
2018-03-11  1:49 ` [PATCH 33/45] OvmfPkg/QemuFlashFvbServicesRuntimeDxe: list "QemuFlash.h" in INF files Laszlo Ersek
2018-03-11  1:49 ` [PATCH 34/45] OvmfPkg/QemuVideoDxe: sort [Sources*] sections in the INF file Laszlo Ersek
2018-03-11  1:49 ` [PATCH 35/45] OvmfPkg/QemuVideoDxe: list "Qemu.h" " Laszlo Ersek
2018-03-11  1:49 ` [PATCH 36/45] OvmfPkg/QemuVideoDxe: list "UnalignedIoInternal.h" " Laszlo Ersek
2018-03-11  1:49 ` [PATCH 37/45] OvmfPkg/QemuVideoDxe: list "VbeShim.h" " Laszlo Ersek
2018-03-11  1:49 ` [PATCH 38/45] OvmfPkg/Virtio10Dxe: list "Virtio10.h" " Laszlo Ersek
2018-03-11  1:49 ` [PATCH 39/45] OvmfPkg/VirtioBlkDxe: list "VirtioBlk.h" " Laszlo Ersek
2018-03-11  1:49 ` [PATCH 40/45] OvmfPkg/VirtioNetDxe: list "VirtioNet.h" " Laszlo Ersek
2018-03-11  1:49 ` [PATCH 41/45] OvmfPkg/VirtioPciDeviceDxe: list "VirtioPciDevice.h" " Laszlo Ersek
2018-03-11  1:49 ` [PATCH 42/45] OvmfPkg/VirtioRngDxe: list "VirtioRng.h" " Laszlo Ersek
2018-03-11  1:49 ` [PATCH 43/45] OvmfPkg/VirtioScsiDxe: list "VirtioScsi.h" " Laszlo Ersek
2018-03-11  1:49 ` [PATCH 44/45] OvmfPkg/XenPvBlkDxe: sort [Sources*] sections " Laszlo Ersek
2018-03-11  1:49 ` [PATCH 45/45] OvmfPkg/XenPvBlkDxe: list "DriverBinding.h" " Laszlo Ersek
2018-03-11  8:15 ` [PATCH 00/45] ArmVirtPkg, OvmfPkg: list module-internal headers in INF files Ard Biesheuvel
2018-03-11 11:48   ` Laszlo Ersek
2018-03-11 11:54     ` Ard Biesheuvel
2018-03-12  8:43       ` Jordan Justen
2018-03-12 12:10         ` Laszlo Ersek
2018-03-12 16:57           ` Jordan Justen
2018-03-12 17:18             ` Laszlo Ersek
2018-03-12 12:06       ` Laszlo Ersek
2018-03-12 12:23         ` Ard Biesheuvel
2018-03-12 12:41           ` Laszlo Ersek
2018-03-13 13:34 ` Laszlo Ersek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox