> On 16 Dec 2014, at 02:34, Carl Hoefs <[email protected]> wrote: > > At last a ray of hope! Is there any documentation on USBDeviceReEnumerate() > beyond the few lines in IOUSBLib.h? > -Carl >
This was actually the workaround Fernando suggested all the way back in early November, the ray of hope has been shining for a while. I wrote a quick and dirty piece of code at the time and it worked perfectly once I found the device, opened it and called the reenumeration function .. at least for the one device I tested it with. > > 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]
