none
USB Host Composite Driver loading issue in WinCE 6 RRS feed

  • Question

  • Hi,

    Our device supports 2 interfaces. one interface for HID keyboard and another one for vendor specific bulk interface. I wrote/cloned the client driver for these two interfaces separately and tested also. Both are working fine separately. The problem is,

    When i tried to load both the client driver for my device in the single image, vendor specific driver only loaded, another hid driver is not loaded.

    When i dig into the USBD layer, i found the below statements,

    "        Once the most general driver is found, the drivers attach process is called.
            If the driver accepts control of the device, then no more drivers are loaded
            automatically.  It is the responsibility of the client driver to
            load all other lower edge drivers, and all interface drivers."

    Please anyone help me, how client driver loads another client driver for 2nd interface.

     

    Regards,

    D.

    Friday, July 29, 2011 11:10 AM

All replies

  • There are a couple of threads that discuss a similar topic, see if they help:

    http://social.msdn.microsoft.com/Forums/en/winembplatdev/thread/ff4d2952-f79b-47a1-b272-0152372bcae1

    http://social.msdn.microsoft.com/Forums/en-US/winembplatdev/thread/cc7fa500-2a27-4f4e-ae2f-4e6b93a75bf8


    Luca Calligaris lucaDOTcalligarisATeurotechDOTcom www.eurotech.com Check my blog: http://lcalligaris.wordpress.com
    • Proposed as answer by Misbah Khan Monday, August 1, 2011 11:22 AM
    Monday, August 1, 2011 10:32 AM
  • Hi Luca,

    Thanks for your reply. the 2nd link is for usb function side. I am looking for Host side client driver. Hence,

    I am trying with 1st link.

    For my vendor specific device and hid devices, i gave the below registry settings,

     

    [HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\8194\Default\Default\FPS_Class]
    
    "Prefix"="AES"
    
    "Dll"="AESUSB.DLL"
    
    [HKEY_LOCAL_MACHINE\Drivers\USB\ClientDrivers\FPS_Class]
    
    "Prefix"="AES"
    
    "Dll"="AESUSB.DLL"
    
    [HKEY_LOCAL_MACHINE\Drivers\HID\LoadClients\8194\Default\13_4\Touch]
    
    "DLL"="TOUCH_HID.DLL"
    
    "RemoteWakeup"=dword:1 
    

     

    After your suggestions, i changed it as below,

     

    [HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\8194_256\Default\3\Hid_Class]
    
    "DLL"="USBHID.DLL"
    
    [HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\8194\Default\Default\FPS_Class]
    
    "Prefix"="AES"
    
    "Dll"="AESUSB.DLL"
    
    [HKEY_LOCAL_MACHINE\Drivers\USB\ClientDrivers\FPS_Class]
    
    "Prefix"="AES"
    
    "Dll"="AESUSB.DLL"
    

     

     

    But the behavior is same (i.e, the vendor specific driver (AESUSB.dll) is only loaded, hid drivers are not loaded).

    Please advice on the same.

    Regards, D.

    Monday, August 1, 2011 1:33 PM