![]() | |||||||||||
Messages in this thread |
I converted the efi memory map to use the e820 table. While converting i discovered why the kernel would allways fail to boot through efi on Intel Macs without a proper fix. From kernel 2.6.16 to kernel 2.6.17 a new check is made. File arch/i386/pci/mmconfig.c -> funktion pci_mmcfg_init -> check e820_all_mapped The courios thing is that this check will always fail on the Intel Macs booted through efi. Parsing of the ACPI_MCFG table returns e0000000 for the start. But this location is not in the memory map which the efi firmware have : BIOS-EFI: 00000000e00f8000 - 00000000e00f9000 (reserved) So the e820_all_mapped would allways fail. Anny suggestions how to fix this problem ? Maybe some kind of whitelisting, using dmi_check_system ? cu Edgar Hucek Eric W. Biederman schrieb: > Edgar Hucek <hostmaster@ed-soft.at> writes: > >> I agre with you to make efi use the e820 map as a long term solution. >> But at the moment the efi part is completley broken without my patch. > > But your patch isn't a fix. It is a hack to make the system boot. > > A patch that performed the same check on the efi memory map, > or it converted the efi memory map to use an e820 map it would be a fix. > >> At least on Intel Macs. >> Without the patch also my Imacfb driver makes no sense, since it is >> for efi booted Intel Macs. > > My point is that the kernel efi support is broken. You have just found > the location where the bone is poking through the skin. > > I am tempted to write a patch to delete the x86 efi support at this > point. So that it is very clear that it needs to be completely redone. > > Eric > - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ | ||||||||||
| Last update: 2006-07-13 23:49 [from the cache] ©2003-2008 | |||||||||||