On Thu, Mar 5, 2009 at 12:14 PM, Harald Gutmann harald.gutmann@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: http://www.coreboot.org/pipermail/coreboot/2009-February/044809.html
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. http://www.coreboot.org/pipermail/coreboot/2009-February/045201.html
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.
Thanks, Myles