[coreboot] ACPI breakage/questions and ramstage code question
Keith Hui
buurin at gmail.com
Wed Mar 2 05:30:26 CET 2011
---
First, Mysterious breakage on experimental i82371eb ACPI stuff
Rudolf, Idwer, and anyone that tried doing ACPI for the ASUS P2B
series of boards:
I'm seeing mysterious compiler breakge after updating my local copy to
r6424. I copied that from P2B to P2B-LS and both break. Make log says:
CC southbridge/intel/i82371eb/fadt.driver.o
src/southbridge/intel/i82371eb/fadt.c:35:35: error: expected ‘)’
before ‘*’ token
make: *** [build/southbridge/intel/i82371eb/fadt.driver.o] Error 1
Which points to this in the file:
/**
* Create the Fixed ACPI Description Tables (FADT) for any board with this SB.
* Reference: ACPIspec40a, 5.2.9, page 118
*/
void acpi_create_fadt(acpi_fadt_t * fadt, acpi_facs_t * facs, void * dsdt)
{
acpi_header_t *header = &(fadt->header);
device_t dev;
[ Rest of function goes here]
}
Are any of you guys having the same problem?
I ran abuild on a random target with ACPI and didn't have this
problem. I will try to find out why but hoping that someone will beat
me to an explanation.
---
In code that create ACPI tables like the above, have anyone tried
declaring the constant part of the tables statically, memcpy() it to a
working buffer at runtime, fill in the dynamic parts, then pass it on?
Currently all entries in these ACPI tables are written at runtime,
producing a lot of code that may not be needed.
---
I am finding these getting compiled into my ramstage:
...
CC devices/device_util.ramstage.o
CC devices/pci_device.ramstage.o
> CC devices/pcix_device.ramstage.o
> CC devices/pciexp_device.ramstage.o
CC devices/agp_device.ramstage.o
> CC devices/cardbus_device.ramstage.o
CC devices/pnp_device.ramstage.o
CC devices/pci_ops.ramstage.o
CC devices/smbus_ops.ramstage.o
CC devices/pci_rom.ramstage.o
...
Why is code for every bus types getting compiled in anyway? The
compile shown here is for ASUS P2B-LS, which has no PCIX, no PCI
express (board predates this), and no cardbus. Can I attempt to leave
these out and hopefully save some time and bytes?
More information about the coreboot
mailing list