Проблема загрузки кода без кода - PullRequest
1 голос
/ 01 сентября 2011

Я создал код без кода, чтобы одно из моих USB-устройств не было похищено драйвером AppleUSBUHCI.Когда я подключаю один, он должен загружать другой драйвер.Это происходит как с FTDI, так и с устройством CSR.

Я собрал свой kext, и список info.plist очень похож на приведенный здесь пример: http://www.projectosx.com/forum/index.php?showtopic=798 только с разными VID / PID.Я запустил kextutil с -entZ, и единственным предупреждением было то, что у меня был другой CFBundleId для моей личности.Я следовал приведенным здесь инструкциям: Чтение и запись на конечные точки прерывания USB (HID) на Mac , чтобы загрузить его.

Когда я загрузил kext, он сказал, что он загружен успешно, но яя не могу увидеть его с помощью kextstat, и когда я подключаю свое устройство, оно все равно будет взломано.Когда я пытаюсь сделать kextunload, он говорит, что kext не был загружен.

Любая помощь будет оценена.

1 Ответ

4 голосов
/ 06 сентября 2011

Из списков Apple я узнал, что kexts без кода не будут отображаться с kextstat, если они не ссылаются на существующий драйвер.Моя личность, которая связывалась с комплектом IOKit, показала бы только после загрузки, если бы у него был код заглушки.

Для моего устройства я нашел существующий драйвер для аналогичных устройств и сначала ввел в него драйвер.Я смог проверить его загрузку, когда я подключил свое устройство, и я мог открыть свое устройство.Я восстановил этот драйвер в исходное состояние.Затем я создал без кода код с личностью, которую я ввел в существующий драйвер.Затем этот драйвер загрузился, когда я подключил свое устройство, и я смог установить связь с ним.

Решением моей первоначальной проблемы был CFBundleIdentifier для моего исходного кода без кода и bcdDevice.С http://lists.apple.com/archives/usb/2009/Aug/msg00050.html, я получил подсказки о различных типах кеков без кода и понял, что мне нужно использовать CFBundleIdentifier для существующего драйвера.

...