[coreboot] ACPI/APIC related questions in coreboot.

Myles Watson mylesgw at gmail.com
Thu Mar 5 21:38:24 CET 2009

On Thu, Mar 5, 2009 at 12:14 PM, Harald Gutmann <harald.gutmann at gmx.net> wrote:
> Hello,
> at the moment i try to get acpi support running with the gigabyte m57sli
> mainboard.
> a few things are allready done (fill fadt, dsdt.asl and a pretty "raw"
> acpi_tables.c).
> Now my problem is, that i can't figure out the right values to set up the madt
> and mcfg acpi tables.
This might help:

You actually don't need MCFG to boot Linux.

> On the coreboot wiki page according to acpi it's listed to check the source of
> asus/m2v-mx_se how to fill/create the madt tables.
> My problem for now is just, where do i find the right values to fill that table
> correctly? The values which are used in the example are alled #defined
> somewhere, but for mcp55 i couldn't find values which are defined somewhere and
> named the same style like those for via.
> Trying to set up the mcfg table i tried to "guess" the right value for finding
> the right "dev" to set it up at the correct address base.
> Here is my guessed suggest for the right values:
> dev = dev_find_device(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_MCP55_PCI, 0);
> //or is PCI_DEVICE_ID_NVIDIA_MCP55_LPC correct
>        if (!dev)
>                return current;
>        res = find_resource(dev, K8T890_MMCONFIG_MBAR); /*where to find the
> right value for mcp55 instead of k8t890? (guessing is not a really good idea,
> coreboot fails on bootup if that value doesn't exist.*/
>        if (res) {
>                current += acpi_create_mcfg_mmconfig((acpi_mcfg_mmconfig_t *)
>                                current, res->base, 0x0, 0x0, 0xff);
>        }
> What does work until now, nothing "great" but it seems that fadt is filled
> correctly and that the dsdt.asl file is also fine, but it's hard to verify when
> linux hangs after wring an error message that no lapic entries are present and
> that mmconfig has no entries.

> I'd be really glad to get some hints how/where i could find out the needed
> values.

You could take a look at the patches I sent for the Tyan s2895, s2891, & s2892.

I generated the dsdt from mptables.c, so it might be easier to see how
to do that.  I'm not booting Windows yet, but Linux is working
flawlessly so far.


More information about the coreboot mailing list