Получение пути IODeviceTree с помощью IOKit

Я пытаюсь получить путь 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, так что я почти уверен, что здесь я делаю что-то очевидное.

Спасибо


person indragie    schedule 03.11.2010    source источник


Ответы (1)


Разобрался, я просто использовал имя класса, которого не было в IODeviceTree.

person indragie    schedule 19.11.2010