Got an Mac? I need your help. I want to find out a bit more about the hardware that’s in various Intel Macs – specifically about built-in PCI devices with onboard expansion ROMs. You can help me out by sending me the output of
lspci -vv on your Mac. The only catch is you need to install a kernel extension to do it. But don’t worry, it’s software written by the CoreBoot dudes! They’re trustworthy, I swear!
The mission is dangerous, but if you’re ready, willing and able, this is what you need to do:
$ git clone http://review.coreboot.org/p/directhw.git Cloning into 'directhw'... remote: Counting objects: 59, done remote: Finding sources: 100% (59/59) remote: Total 59 (delta 16), reused 59 (delta 16) Unpacking objects: 100% (59/59), done. $ cd directhw/macosx $ make pciutils <snip> created: /path/to/directhw/macosx/pciutils-3.1.7.dmg Disk image done $ make directhw <snip> created: /path/to/directhw/macosx/DirectHW/DirectHW.dmg Disk image done
You’ll now have those two disk images created at the paths displayed at the end of the make processes. Install the packages in each of the DMGs, and then load the kernel extension:
$ sudo kextload /System/Library/Extensions/DirectHW.kext
EDIT: Oh I forgot, please turn off the energy saver setting (on laptops) to automatically switch graphics or whatever, so the non-integrated graphics card is powered on. You might need to log out and back in before it is powered on.
And get me the sweet, sweet
$ sudo lspci -vv 00:00.0 Host bridge: Intel Corporation Device 0104 (rev 09) Subsystem: Apple Computer Inc. Device 00dc Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ >SERR- <PERR- INTx- Latency: 0 Capabilities: [e0] Vendor Specific Information: Len=0c <?> <snip>
Including the model and hardware specs of the machine would be great too:
$ system_profiler SPHardwareDataType|grep -v UUID|grep -v Serial Hardware: Hardware Overview: Model Name: iMac <snip>
Email me the results at snare [at] this domain, or pastebin/gist it and tweet it at me. I appreciate all the help I can get, thanks very much!
If you don’t want this stuff to hang around on your machine you can
rm the following stuff (gleaned from the Archive.boms):
PCIUtils: /usr/include/pci /usr/include/pci/config.h /usr/include/pci/header.h /usr/include/pci/pci.h /usr/include/pci/types.h /usr/lib/libpci.a /usr/lib/pkgconfig /usr/lib/pkgconfig/libpci.pc /usr/sbin/lspci /usr/sbin/setpci /usr/sbin/update-pciids /usr/share/man/man7/pcilib.7 /usr/share/man/man8/lspci.8 /usr/share/man/man8/setpci.8 /usr/share/man/man8/update-pciids.8 /usr/share/pci.ids.gz DirectHW: /System/Library/Extensions/DirectHW.kext /System/Library/Frameworks/DirectHW.framework