Connected Peripherals & Bus Topology (USB, Thunderbolt, PCIe) #20
Notifications
Due Date
No due date set.
Depends on
Reference: gronod/MacMonitor#20
Reference in New Issue
Block a user
Resolved in Milestone 3. Implemented
MMPeripheralsProvider.h/.menumerating USB (IOUSBHostDevice/IOUSBDevice), Thunderbolt (IOThunderboltDevice), and PCI (IOPCIDevice) devices. Verified with unit tests. Merged intodevelop.Technical Implementation Plan & Code Solution
1. Peripheral Bus Topology Architecture
IORegistry planes represent hardware tree hierarchies for external and internal buses:
IOUSBHostDevice: USB 2.0 / USB 3.x peripherals, bus speeds, power allocations.IOThunderboltDevice: Thunderbolt 3 chains and link negotiation.IOPCIDevice: PCIe cards and lane width (e.g. Mac Pro 2019 PCIe expansion slots).2. Objective-C Provider (
MMBusTopologyProvider.m)3. Swift UI Integration
4. Mac Pro 2019 PCIe Slot Telemetry
The
AAPL,slot-nameproperty maps physical PCIe card locations (Slots 1–8) on Mac Pro towers, providing professional audio and video editors with PCIe lane saturation insight.