Mailing Lists: Apple Mailing Lists
Image of Mac OS face in stamp
IOKit driver User Clients development and dissociating an IOUSBInterface from its driver
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

IOKit driver User Clients development and dissociating an IOUSBInterface from its driver



Hi there,
I'm new to IOKit development and try my best to get on it.

I already had a test driver to work correctly. I've checked
"http://developer.apple.com/library/mac/#documentation/Darwin/Conceptual/KEXTConcept/KEXTConceptDebugger/debug_tutorial.html#//apple_ref/doc/uid/20002367-CHDIHFDI";
to create the sample driver and use it. Here rises my first problem,
although from the link above the IOProviderClass is IOResources, I
can't match it with IOServiceMatching dictionary with IOResources as
parameter. All I get is the IOResources object itself. If I cahnge the
parameter to the class name of my test driver, I get nothing. Is there
something wrong here ? If I understand well, only nubs can be matched,
correct me if I'm wrong. Therefore how to tell the system that my
driver will publish a nub ? If there is any documentation that I
couldn't find, I would be glad to get a link.

My second problem, is the finality of what I want to do. I have an USB
device that acts as a "special" Mass Storage device, it conforms to
the Bulk-Only USB Mass Storage specifications and the Mass Storage
interface is retained automatically by the IOUSBMassStorageClass
driver. Here I want to send some special block to that interface to
switch it to another mode but due to the fact that the
IOUSBMassStorageClass is retaining the interface, I can't send open
the interface from the user mode client. Is there any way to tell the
interface client to release the interface from the user land ? I have
a workaround to this, just unloading the class IOUSBMassStorageClass
from the command line does the trick, but I don't want to unload all
the USB Mass Storage devices, only the one I will be using. I have the
idea to subclass the IOUSBInterface class and create a new driver that
gives a new user interface that gives me the possibility to get down
the driver that holds the usb interface, but think it isn't a good
idea. And that's why I have the first problem.

Thank you for your time in advance.

--
"I need a woman who can say, 'honey, can you please take a look at
this stack trace while I
order the pizza?' and really mean it."
Anonymous Software Developer
 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-drivers mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2011 Apple Inc. All rights reserved.