[ipxe-devel] Load via EFI on Macs
Michael Brown
mbrown at fensystems.co.uk
Thu Feb 16 16:04:06 UTC 2012
On Thursday 16 Feb 2012 13:41:02 Stefan Dösinger wrote:
> > Also, read through some of the older stuff from the last couple months.
>
> Will do, thanks for the hint.
>
> Meanwhile, I found what broke my network card:
> e2b5a588691c6b0bdb99ca4b27cb8c5ea0ac712b, "[efi] Rename efi_pci.h to
> efi_pci_api.h" smuggled in a change that made pci_num_bus() return 0
> instead of 0x100. At Wine I'd be tarred and feathered if I tried such a
> thing :-)
My fault, but not as bad as it looks. Commit e2b5a58 should have been a
straight rename, but the change to pci_num_bus()==0 was intended to be part of
the very next commit (d7736fbb, "[efi] Allow EFI to control PCI bus
enumeration"). I suspect that I managed to screw up a git-rebase operation.
That (second) commit changed the intended behaviour of PCI enumeration under
EFI. Older versions of iPXE (and all versions of gPXE) perform a manual PCI
enumeration via direct manipulation of the PCI registers. This matches the
non-EFI behaviour, but causes multiple problems under EFI. Newer versions of
iPXE allow EFI to control the process of attaching drivers to PCI devices.
There's no chance of reverting this commit, since the old behaviour is
demonstrably broken in multiple scenarios.
What output do you get from DEBUG=efi_driver,efi_pci ?
Michael
More information about the ipxe-devel
mailing list