In this patch, AcpiTableDxe, and the dependent (platform-matching) ACPI
table producing DXE drivers are built for 32-bit as well, and the ACPI
protocol / driver chain is enabled dynamically, when appropriate. This is
being done in one larger patch, because ArmVirt.dsc.inc, where
AcpiTableDxe is built, is used by all the platform DSCs.
No change in behavior should be observable after this patch on any
ArmVirtPkg platform.
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Leif Lindholm <leif.lindholm@linaro.org>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
ArmVirtPkg/ArmVirt.dsc.inc | 11 +++++++++--
ArmVirtPkg/ArmVirtQemu.dsc | 2 +-
ArmVirtPkg/ArmVirtQemuKernel.dsc | 2 +-
ArmVirtPkg/ArmVirtXen.dsc | 3 +--
ArmVirtPkg/ArmVirtXen.fdf | 3 ++-
ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc | 3 ++-
6 files changed, 16 insertions(+), 8 deletions(-)
diff --git a/ArmVirtPkg/ArmVirt.dsc.inc b/ArmVirtPkg/ArmVirt.dsc.inc
index f61fd0680612..180b72d1478a 100644
--- a/ArmVirtPkg/ArmVirt.dsc.inc
+++ b/ArmVirtPkg/ArmVirt.dsc.inc
@@ -439,9 +439,16 @@ [Components.common]
gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000
}
-[Components.AARCH64]
#
# ACPI Support
#
- MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
+ MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf {
+ <LibraryClasses>
+ NULL|ArmPkg/Library/PlatformHasAcpiLib/PlatformHasAcpiLib.inf
+ }
+
+[Components.AARCH64]
+ #
+ # EBC support
+ #
MdeModulePkg/Universal/EbcDxe/EbcDxe.inf
diff --git a/ArmVirtPkg/ArmVirtQemu.dsc b/ArmVirtPkg/ArmVirtQemu.dsc
index d6b3c0db5530..328c2b79994b 100644
--- a/ArmVirtPkg/ArmVirtQemu.dsc
+++ b/ArmVirtPkg/ArmVirtQemu.dsc
@@ -379,10 +379,10 @@ [Components.common]
MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
-[Components.AARCH64]
#
# ACPI Support
#
+ ArmVirtPkg/PlatformHasAcpiDtDxe/PlatformHasAcpiDtDxe.inf
MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf
OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf {
<LibraryClasses>
diff --git a/ArmVirtPkg/ArmVirtQemuKernel.dsc b/ArmVirtPkg/ArmVirtQemuKernel.dsc
index 71f16ed192de..bcd2711d4142 100644
--- a/ArmVirtPkg/ArmVirtQemuKernel.dsc
+++ b/ArmVirtPkg/ArmVirtQemuKernel.dsc
@@ -368,10 +368,10 @@ [Components.common]
MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
-[Components.AARCH64]
#
# ACPI Support
#
+ ArmVirtPkg/PlatformHasAcpiDtDxe/PlatformHasAcpiDtDxe.inf
MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf
OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf {
<LibraryClasses>
diff --git a/ArmVirtPkg/ArmVirtXen.dsc b/ArmVirtPkg/ArmVirtXen.dsc
index 3422d1e5d996..90c5ebc6cb96 100644
--- a/ArmVirtPkg/ArmVirtXen.dsc
+++ b/ArmVirtPkg/ArmVirtXen.dsc
@@ -221,6 +221,5 @@ [Components.common]
#
# ACPI support
#
-!if $(ARCH) == AARCH64
+ ArmVirtPkg/XenPlatformHasAcpiDtDxe/XenPlatformHasAcpiDtDxe.inf
ArmVirtPkg/XenAcpiPlatformDxe/XenAcpiPlatformDxe.inf
-!endif
diff --git a/ArmVirtPkg/ArmVirtXen.fdf b/ArmVirtPkg/ArmVirtXen.fdf
index c997251b12b8..8e41ba1fb448 100644
--- a/ArmVirtPkg/ArmVirtXen.fdf
+++ b/ArmVirtPkg/ArmVirtXen.fdf
@@ -183,10 +183,11 @@ [FV.FvMain]
#
# ACPI support
#
-!if $(ARCH) == AARCH64
+ INF ArmVirtPkg/XenPlatformHasAcpiDtDxe/XenPlatformHasAcpiDtDxe.inf
INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
INF ArmVirtPkg/XenAcpiPlatformDxe/XenAcpiPlatformDxe.inf
+!if $(ARCH) == AARCH64
#
# EBC support
#
diff --git a/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc b/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc
index cc5d12aaefea..440ff7e87a52 100644
--- a/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc
+++ b/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc
@@ -140,14 +140,15 @@ [FV.FvMain]
INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf
INF OvmfPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf
-!if $(ARCH) == AARCH64
#
# ACPI Support
#
+ INF ArmVirtPkg/PlatformHasAcpiDtDxe/PlatformHasAcpiDtDxe.inf
INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
INF MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf
INF OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf
+!if $(ARCH) == AARCH64
#
# EBC support
#
--
2.9.3
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
On 17 March 2017 at 20:47, Laszlo Ersek <lersek@redhat.com> wrote: > In this patch, AcpiTableDxe, and the dependent (platform-matching) ACPI > table producing DXE drivers are built for 32-bit as well, Why is this? > and the ACPI > protocol / driver chain is enabled dynamically, when appropriate. This is > being done in one larger patch, because ArmVirt.dsc.inc, where > AcpiTableDxe is built, is used by all the platform DSCs. > > No change in behavior should be observable after this patch on any > ArmVirtPkg platform. > > Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> > Cc: Leif Lindholm <leif.lindholm@linaro.org> > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Laszlo Ersek <lersek@redhat.com> > --- > ArmVirtPkg/ArmVirt.dsc.inc | 11 +++++++++-- > ArmVirtPkg/ArmVirtQemu.dsc | 2 +- > ArmVirtPkg/ArmVirtQemuKernel.dsc | 2 +- > ArmVirtPkg/ArmVirtXen.dsc | 3 +-- > ArmVirtPkg/ArmVirtXen.fdf | 3 ++- > ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc | 3 ++- > 6 files changed, 16 insertions(+), 8 deletions(-) > > diff --git a/ArmVirtPkg/ArmVirt.dsc.inc b/ArmVirtPkg/ArmVirt.dsc.inc > index f61fd0680612..180b72d1478a 100644 > --- a/ArmVirtPkg/ArmVirt.dsc.inc > +++ b/ArmVirtPkg/ArmVirt.dsc.inc > @@ -439,9 +439,16 @@ [Components.common] > gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000 > } > > -[Components.AARCH64] > # > # ACPI Support > # > - MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf > + MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf { > + <LibraryClasses> > + NULL|ArmPkg/Library/PlatformHasAcpiLib/PlatformHasAcpiLib.inf > + } > + > +[Components.AARCH64] > + # > + # EBC support > + # > MdeModulePkg/Universal/EbcDxe/EbcDxe.inf > diff --git a/ArmVirtPkg/ArmVirtQemu.dsc b/ArmVirtPkg/ArmVirtQemu.dsc > index d6b3c0db5530..328c2b79994b 100644 > --- a/ArmVirtPkg/ArmVirtQemu.dsc > +++ b/ArmVirtPkg/ArmVirtQemu.dsc > @@ -379,10 +379,10 @@ [Components.common] > MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf > MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf > > -[Components.AARCH64] > # > # ACPI Support > # > + ArmVirtPkg/PlatformHasAcpiDtDxe/PlatformHasAcpiDtDxe.inf > MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf > OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf { > <LibraryClasses> > diff --git a/ArmVirtPkg/ArmVirtQemuKernel.dsc b/ArmVirtPkg/ArmVirtQemuKernel.dsc > index 71f16ed192de..bcd2711d4142 100644 > --- a/ArmVirtPkg/ArmVirtQemuKernel.dsc > +++ b/ArmVirtPkg/ArmVirtQemuKernel.dsc > @@ -368,10 +368,10 @@ [Components.common] > MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf > MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf > > -[Components.AARCH64] > # > # ACPI Support > # > + ArmVirtPkg/PlatformHasAcpiDtDxe/PlatformHasAcpiDtDxe.inf > MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf > OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf { > <LibraryClasses> > diff --git a/ArmVirtPkg/ArmVirtXen.dsc b/ArmVirtPkg/ArmVirtXen.dsc > index 3422d1e5d996..90c5ebc6cb96 100644 > --- a/ArmVirtPkg/ArmVirtXen.dsc > +++ b/ArmVirtPkg/ArmVirtXen.dsc > @@ -221,6 +221,5 @@ [Components.common] > # > # ACPI support > # > -!if $(ARCH) == AARCH64 > + ArmVirtPkg/XenPlatformHasAcpiDtDxe/XenPlatformHasAcpiDtDxe.inf > ArmVirtPkg/XenAcpiPlatformDxe/XenAcpiPlatformDxe.inf > -!endif > diff --git a/ArmVirtPkg/ArmVirtXen.fdf b/ArmVirtPkg/ArmVirtXen.fdf > index c997251b12b8..8e41ba1fb448 100644 > --- a/ArmVirtPkg/ArmVirtXen.fdf > +++ b/ArmVirtPkg/ArmVirtXen.fdf > @@ -183,10 +183,11 @@ [FV.FvMain] > # > # ACPI support > # > -!if $(ARCH) == AARCH64 > + INF ArmVirtPkg/XenPlatformHasAcpiDtDxe/XenPlatformHasAcpiDtDxe.inf > INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf > INF ArmVirtPkg/XenAcpiPlatformDxe/XenAcpiPlatformDxe.inf > > +!if $(ARCH) == AARCH64 > # > # EBC support > # > diff --git a/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc b/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc > index cc5d12aaefea..440ff7e87a52 100644 > --- a/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc > +++ b/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc > @@ -140,14 +140,15 @@ [FV.FvMain] > INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf > INF OvmfPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf > > -!if $(ARCH) == AARCH64 > # > # ACPI Support > # > + INF ArmVirtPkg/PlatformHasAcpiDtDxe/PlatformHasAcpiDtDxe.inf > INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf > INF MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf > INF OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf > > +!if $(ARCH) == AARCH64 > # > # EBC support > # > -- > 2.9.3 > > _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
On 03/22/17 15:16, Ard Biesheuvel wrote: > On 17 March 2017 at 20:47, Laszlo Ersek <lersek@redhat.com> wrote: >> In this patch, AcpiTableDxe, and the dependent (platform-matching) ACPI >> table producing DXE drivers are built for 32-bit as well, > > Why is this? Purely for uniformity's sake. I wanted to avoid a situation where part of the restrictions is coded up in the DSC/FDF files, and another part in the dynamic decision code. I moved all of the thinking into the dynamic code, and that one will never enable ACPI for 32-bit (dynamically). If you disagree, I can rework it, but I maintain that it's going to be more confusing that way. Thanks, Laszlo > >> and the ACPI >> protocol / driver chain is enabled dynamically, when appropriate. This is >> being done in one larger patch, because ArmVirt.dsc.inc, where >> AcpiTableDxe is built, is used by all the platform DSCs. >> >> No change in behavior should be observable after this patch on any >> ArmVirtPkg platform. >> >> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> >> Cc: Leif Lindholm <leif.lindholm@linaro.org> >> Contributed-under: TianoCore Contribution Agreement 1.0 >> Signed-off-by: Laszlo Ersek <lersek@redhat.com> >> --- >> ArmVirtPkg/ArmVirt.dsc.inc | 11 +++++++++-- >> ArmVirtPkg/ArmVirtQemu.dsc | 2 +- >> ArmVirtPkg/ArmVirtQemuKernel.dsc | 2 +- >> ArmVirtPkg/ArmVirtXen.dsc | 3 +-- >> ArmVirtPkg/ArmVirtXen.fdf | 3 ++- >> ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc | 3 ++- >> 6 files changed, 16 insertions(+), 8 deletions(-) >> >> diff --git a/ArmVirtPkg/ArmVirt.dsc.inc b/ArmVirtPkg/ArmVirt.dsc.inc >> index f61fd0680612..180b72d1478a 100644 >> --- a/ArmVirtPkg/ArmVirt.dsc.inc >> +++ b/ArmVirtPkg/ArmVirt.dsc.inc >> @@ -439,9 +439,16 @@ [Components.common] >> gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000 >> } >> >> -[Components.AARCH64] >> # >> # ACPI Support >> # >> - MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf >> + MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf { >> + <LibraryClasses> >> + NULL|ArmPkg/Library/PlatformHasAcpiLib/PlatformHasAcpiLib.inf >> + } >> + >> +[Components.AARCH64] >> + # >> + # EBC support >> + # >> MdeModulePkg/Universal/EbcDxe/EbcDxe.inf >> diff --git a/ArmVirtPkg/ArmVirtQemu.dsc b/ArmVirtPkg/ArmVirtQemu.dsc >> index d6b3c0db5530..328c2b79994b 100644 >> --- a/ArmVirtPkg/ArmVirtQemu.dsc >> +++ b/ArmVirtPkg/ArmVirtQemu.dsc >> @@ -379,10 +379,10 @@ [Components.common] >> MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf >> MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf >> >> -[Components.AARCH64] >> # >> # ACPI Support >> # >> + ArmVirtPkg/PlatformHasAcpiDtDxe/PlatformHasAcpiDtDxe.inf >> MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf >> OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf { >> <LibraryClasses> >> diff --git a/ArmVirtPkg/ArmVirtQemuKernel.dsc b/ArmVirtPkg/ArmVirtQemuKernel.dsc >> index 71f16ed192de..bcd2711d4142 100644 >> --- a/ArmVirtPkg/ArmVirtQemuKernel.dsc >> +++ b/ArmVirtPkg/ArmVirtQemuKernel.dsc >> @@ -368,10 +368,10 @@ [Components.common] >> MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf >> MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf >> >> -[Components.AARCH64] >> # >> # ACPI Support >> # >> + ArmVirtPkg/PlatformHasAcpiDtDxe/PlatformHasAcpiDtDxe.inf >> MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf >> OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf { >> <LibraryClasses> >> diff --git a/ArmVirtPkg/ArmVirtXen.dsc b/ArmVirtPkg/ArmVirtXen.dsc >> index 3422d1e5d996..90c5ebc6cb96 100644 >> --- a/ArmVirtPkg/ArmVirtXen.dsc >> +++ b/ArmVirtPkg/ArmVirtXen.dsc >> @@ -221,6 +221,5 @@ [Components.common] >> # >> # ACPI support >> # >> -!if $(ARCH) == AARCH64 >> + ArmVirtPkg/XenPlatformHasAcpiDtDxe/XenPlatformHasAcpiDtDxe.inf >> ArmVirtPkg/XenAcpiPlatformDxe/XenAcpiPlatformDxe.inf >> -!endif >> diff --git a/ArmVirtPkg/ArmVirtXen.fdf b/ArmVirtPkg/ArmVirtXen.fdf >> index c997251b12b8..8e41ba1fb448 100644 >> --- a/ArmVirtPkg/ArmVirtXen.fdf >> +++ b/ArmVirtPkg/ArmVirtXen.fdf >> @@ -183,10 +183,11 @@ [FV.FvMain] >> # >> # ACPI support >> # >> -!if $(ARCH) == AARCH64 >> + INF ArmVirtPkg/XenPlatformHasAcpiDtDxe/XenPlatformHasAcpiDtDxe.inf >> INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf >> INF ArmVirtPkg/XenAcpiPlatformDxe/XenAcpiPlatformDxe.inf >> >> +!if $(ARCH) == AARCH64 >> # >> # EBC support >> # >> diff --git a/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc b/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc >> index cc5d12aaefea..440ff7e87a52 100644 >> --- a/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc >> +++ b/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc >> @@ -140,14 +140,15 @@ [FV.FvMain] >> INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf >> INF OvmfPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf >> >> -!if $(ARCH) == AARCH64 >> # >> # ACPI Support >> # >> + INF ArmVirtPkg/PlatformHasAcpiDtDxe/PlatformHasAcpiDtDxe.inf >> INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf >> INF MdeModulePkg/Universal/Acpi/BootGraphicsResourceTableDxe/BootGraphicsResourceTableDxe.inf >> INF OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf >> >> +!if $(ARCH) == AARCH64 >> # >> # EBC support >> # >> -- >> 2.9.3 >> >> _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
On 22 March 2017 at 14:54, Laszlo Ersek <lersek@redhat.com> wrote: > On 03/22/17 15:16, Ard Biesheuvel wrote: >> On 17 March 2017 at 20:47, Laszlo Ersek <lersek@redhat.com> wrote: >>> In this patch, AcpiTableDxe, and the dependent (platform-matching) ACPI >>> table producing DXE drivers are built for 32-bit as well, >> >> Why is this? > > Purely for uniformity's sake. I wanted to avoid a situation where part > of the restrictions is coded up in the DSC/FDF files, and another part > in the dynamic decision code. I moved all of the thinking into the > dynamic code, and that one will never enable ACPI for 32-bit (dynamically). > If it never enables ACPI for 32-bit, I really don't see the point of adding those drivers to the build. > If you disagree, I can rework it, but I maintain that it's going to be > more confusing that way. > _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
© 2016 - 2024 Red Hat, Inc.