At last a ray of hope!  Is there any documentation on USBDeviceReEnumerate() 
beyond the few lines in IOUSBLib.h?
-Carl


On Dec 15, 2014, at 11:15 AM, Fernando Urbina <[email protected]> wrote:

> Have you guys looked at the USBDeviceReEnumerate() API?  If the composite 
> driver has grabbed your device, you can cause it to re-enumerate and run the 
> driver matching process again.  The version of this call in the 10.10 SDK 
> also has some interesting parameters.
> 
> 
>> On Dec 15, 2014, at 10:46 AM, Carl Hoefs <[email protected]> 
>> wrote:
>> 
>> 
>> On Dec 15, 2014, at 1:56 AM, Roland King <[email protected]> wrote:
>> 
>>>> 
>>>> So the .. good news .. is that my device does exactly what your device 
>>>> does. I have a number of CDC devices, picked one at random (a Nordic 
>>>> dongle with embedded Segger which presents as a CDC device + extra 
>>>> interface). It properly identifies very similarly to yours when plugged 
>>>> in, on boot however it’s claimed by the composite driver, which seems 
>>>> pretty wrong as it has a bDeviceClass and bDeviceSubclass which are 
>>>> non-zero. 
>>>> 
>>>> I’ve found no way of forcing the USB subsystem to re-enumerate/re-probe 
>>>> it. 
>>>> 
>>>> So my handwaving guess here is that at-boot the CDC driver isn’t enabled, 
>>>> or not probed or not used and the device gets claimed by the composite. I 
>>>> don’t know if that’s because the CDC kext isn’t loaded early or because 
>>>> the composite driver has changed and is picking up things it shouldn’t 
>>>> which it didn’t used to, leaving them for later kext loads. 
>>>> 
>>>> I’ll file a bug. 
>>>> 
>>> 
>>> My bug (18845268) was just closed as a duplicate of 18731228. That bug is 
>>> currently marked as open. At least that means the issue has been determined 
>>> to be a bug which may be the first stage to having it fixed one day soon.
>> 
>> That’s good to know! Very soon this will become a huge issue for us. Out of 
>> necessity we're converting over our older 10.8 systems to newer Apple 
>> hardware that runs only 10.10+. There’s no way to “replug” a USB device 
>> within a sealed kiosk system, so we’ll be needing either an outright fix or 
>> a some kind of workaround that can be run after boot (such as a manual bus 
>> rescan).
>> -Carl
>> 
> 
> 
> Woof,
> 
> Nano Urbina
> Build Slave
> Razz Software
> http://www.razzsoftware.com


 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Usb mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/usb/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to