[SeaBIOS] seabios fails to build with current IASL

Kevin O'Connor kevin at koconnor.net
Mon Jul 2 16:35:30 CEST 2018


On Mon, Jul 02, 2018 at 09:10:34AM +0200, Gerd Hoffmann wrote:
> On Sun, Jul 01, 2018 at 08:33:28AM +0300, Michael Tokarev wrote:
> > 01.07.2018 04:25, Kevin O'Connor wrote:
> > > On Sat, Jun 30, 2018 at 11:28:07AM +0300, Michael Tokarev wrote:
> > >> Here's the debian bugreport
> > >>  https://bugs.debian.org/901462
> > >> with the patch.
> > > 
> > > I'm a little confused - the SeaBIOS build doesn't call iasl by
> > > default.  It hasn't for quite some time (since commit 4373afae).
> > 
> > Yes, it doesn't call iasl when the pre-compiled acpi tables are
> > used. But it does that when the tables are missing or the source
> > is modified, and these tables can't be built using recent iasl.
> > 
> > My message is a bit confusing indeed, the default tarball is
> > buildable and it does not require iasl to build seabios. It is
> > only a problem when building the tables.
> 
> Hmm, the tables are needed for qemu 1.3 + older only.
> Maybe we should flip the default for ACPI_DSDT from y to n?
> 
> > (A side note - this issue has been found on Debian, which follows
> > DFSG - Debian Free Software Guidelines - which, in turn, requires
> > that every piece of software shipped in Debian must be modifieable
> > and compilable. One of the side effects of this is that we disallow
> > any pre-compiled stuff - executables, object files, and these .hex
> > files too - we ensure all this is built during package build time
> > from actual editable source files).
> 
> The prebuild tables are there exactly to sidestep any iasl version
> dependencies.  We had iasl trouble in the past (IIRC that was newer
> iasl generating aml opcodes not supported by older windows versions),
> and keeping up the tables which are legacy only and not expected to
> ever change didn't look like being worth it.  So we added tables build
> with a known-good iasl version to the repo.  I think you can find the
> full story in the commit log.
> 
> If you don't want use the prebuilt tables I think the sane options are
> (a) use a older iasl compiler, or (b) flip ACPI_DSDT to "n" and drop
> support for qemu 1.3 + older.

I agree with the above.  That said, the patch is trivial enough that I
don't think there's any harm in committing it.

-Kevin


diff --git a/src/fw/ssdt-misc.dsl b/src/fw/ssdt-misc.dsl
index acc850e..d1d2c9e 100644
--- a/src/fw/ssdt-misc.dsl
+++ b/src/fw/ssdt-misc.dsl
@@ -1,6 +1,6 @@
 ACPI_EXTRACT_ALL_CODE ssdp_misc_aml

-DefinitionBlock ("ssdt-misc.aml", "SSDT", 0x01, "BXPC", "BXSSDTSUSP", 0x1)
+DefinitionBlock ("ssdt-misc.aml", "SSDT", 0x01, "BXPC", "BXSSDTSU", 0x1)
 {

 /****************************************************************
diff --git a/src/fw/ssdt-pcihp.dsl b/src/fw/ssdt-pcihp.dsl
index cb24c11..518a5eb 100644
--- a/src/fw/ssdt-pcihp.dsl
+++ b/src/fw/ssdt-pcihp.dsl
@@ -1,6 +1,6 @@
 ACPI_EXTRACT_ALL_CODE ssdp_pcihp_aml

-DefinitionBlock ("ssdt-pcihp.aml", "SSDT", 0x01, "BXPC", "BXSSDTPCIHP", 0x1)
+DefinitionBlock ("ssdt-pcihp.aml", "SSDT", 0x01, "BXPC", "BXSSDTPC", 0x1)
 {

 /****************************************************************




More information about the SeaBIOS mailing list