Я пытаюсь получить путь IODeviceTree устройства с помощью инфраструктуры IOKit.Я могу получить путь IOService (IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/SATA@B/AppleMCP79AHCI
) устройства, используя этот код:
CFMutableDictionaryRef matchingDict = NULL;
matchingDict = IOServiceMatching("AppleMCP79AHCI");
io_service_t sataService;
io_string_t path;
sataService = IOServiceGetMatchingService(kIOMasterPortDefault, matchingDict);
IORegistryEntryGetPath(sataService, kIOServicePlane, path);
NSLog(@"%s", path);
Однако мне нужно получить путь для устройства в плоскости IODeviceTree
.В плоскости IODeviceTree
путь будет выглядеть примерно так: IODeviceTree:/PCI0@0/SATA@B
.Я попытался просто заменить kIOServicePlane
на kIODeviceTreePlane
, но ничего не вернулось.У меня нет опыта работы с IOKit
, поэтому я почти уверен, что здесь я делаю что-то очевидное.
Спасибо