Hi all, has anyone ever attempted to build a complete database of PCI devices found on MacBook/Pro and Mac computers?
If not, would you be willing to help me with building one?
The intention is to improve Mac/MacBook hardware support by the non-Apple OSes (Linux, BSD, Haiku etc).
If you're willing to help, the best way would be to download the
Then please share the output, which can look like this:
If you don't want to download a third-party command line tool, another option is to run the built-in
On my M1 Pro laptop the output is the following:
I'll create a GitHub project containing the received data in the Wiki format. If there is a similar project already, I'd be happy to contribute to it.
If not, would you be willing to help me with building one?
The intention is to improve Mac/MacBook hardware support by the non-Apple OSes (Linux, BSD, Haiku etc).
If you're willing to help, the best way would be to download the
dscpi
binary from the DCPIManager project here: https://github.com/MuntashirAkon/DPCIManager/releases/tag/2.0, make it executable and run the following command:sysctl -n hw.model; ./dspci
Then please share the output, which can look like this:
Code:
MacBookPro18,3
Using PCI.IDs 2019.04.04
00:00.0 PCI bridge [0604]: Apple Inc. (null) [106b:100c] (rev 01)
00:00.0 PCI bridge [0604]: Apple Inc. (null) [106b:100f]
00:00.0 PCI bridge [0604]: Apple Inc. (null) [106b:100f]
00:00.0 PCI bridge [0604]: Apple Inc. (null) [106b:100f]
00:01.0 PCI bridge [0604]: Apple Inc. (null) [106b:100c] (rev 01)
01:00.0 SD Host controller [0805]: Genesys Logic, Inc (null) [17a0:9755] (rev 01) (subsys 17a0:9755)
02:00.0 Network controller [0280]: Broadcom Inc. and subsidiaries (null) [14e4:4433] (rev 07) (subsys 106b:4387)
02:00.1 Network controller [0280]: Broadcom Inc. and subsidiaries (null) [14e4:5f71] (rev 07) (subsys 106b:4387)
If you don't want to download a third-party command line tool, another option is to run the built-in
ioreg
command like the following:sysctl -n hw.model ; ioreg -lx |grep -E '"(.*vendor-id|device-id|subsystem-id|revision-id|IOName)" = (<....0000>|"pci.*")'
On my M1 Pro laptop the output is the following:
Code:
MacBookPro18,3
| | | | "vendor-id" = <ac050000>
| | | | | "vendor-id" = <6b100000>
| | | | | "IOName" = "pci-bridge"
| | | | | "device-id" = <0c100000>
| | | | | "revision-id" = <01000000>
| | | | | | "vendor-id" = <e4140000>
| | | | | | "subsystem-vendor-id" = <6b100000>
| | | | | | "IOName" = "pci14e4,4433"
| | | | | | "subsystem-id" = <87430000>
| | | | | | "device-id" = <33440000>
| | | | | | "revision-id" = <07000000>
| | | | | "vendor-id" = <e4140000>
| | | | | "subsystem-vendor-id" = <6b100000>
| | | | | "IOName" = "pci14e4,5f71"
| | | | | "subsystem-id" = <87430000>
| | | | | "device-id" = <715f0000>
| | | | | "revision-id" = <07000000>
| | | | "vendor-id" = <6b100000>
| | | | "IOName" = "pci-bridge"
| | | | "device-id" = <0c100000>
| | | | "revision-id" = <01000000>
| | | | "IOName" = "pci17a0,9755"
| | | | "revision-id" = <01000000>
| | | | "subsystem-vendor-id" = <a0170000>
| | | | "device-id" = <55970000>
| | | | "subsystem-id" = <55970000>
| | | | "vendor-id" = <a0170000>
| | | | "vendor-id" = <6b100000>
| | | | "IOName" = "pci-bridge"
| | | | "device-id" = <0f100000>
| | | | "revision-id" = <00000000>
| | | | "vendor-id" = <6b100000>
| | | | "IOName" = "pci-bridge"
| | | | "device-id" = <0f100000>
| | | | "revision-id" = <00000000>
| | | | "vendor-id" = <6b100000>
| | | | "IOName" = "pci-bridge"
| | | | "device-id" = <0f100000>
| | | | "revision-id" = <00000000>
| | | | "vendor-id" = <6b100000>
I'll create a GitHub project containing the received data in the Wiki format. If there is a similar project already, I'd be happy to contribute to it.