Search code examples
driverosx-yosemiteiokitkernel-extension

Yosemite driver, can't load Force Feedback driver


I am working on updating the Mac OS X driver for the Xbox 360 controller. With the introduction of Yosemite, non-Apple kernel extensions need to be stored in /Library/Extensions as opposed to /System/Library/Extensions and must be signed. The IOKit driver has a plug-in inside of it that has the force feedback driver. However, when the driver is in any other position other than /System/Library/Extensions, it doesn't load the force feedback plug-in.

I think I'll need to edit the IOCFPlugInTypes, which currently points to 360Controller.kext/Contents/PlugIns/Feedback360.plugin, to something else. I can't find anything about it on Apple's developer pages.


Solution

  • It seems that the Apple-approved method to work around this issue is to add a symbolic link in /System/Library/Extensions that references your own kext in /Library/Extensions. Kext look-up will ignore the symbolic link, but (in this example) Force Feedback will go through the symlink to get the plug-in.