none
Windows CE USB function driver develpment - Serial USB client driver not loading RRS feed

  • Question

  • I am developing a USB function driver for TI platform.I developed the PDD and the dll loads
    successfully.The UFN_Init and UfnPdd_Init functions are getting loaded.
    But the serial cilent driver is not loading.I have made it the default client driver
    I have made serial_class as the client driver.
    I have selected the following catalog components
    Device Drivers/USB Function/serial.
    Core OS Services/USB Function Driver
    The registry settings I am using is
        [HKEY_LOCAL_MACHINE\Drivers\BuiltIn\UFN]
            "InterfaceType"=dword:0     ; Internal
            "Prefix"="UFN"
            "Dll"="DM355_usbfn.dll"
            "Order"=dword:30
           
            ; Priority of the Interrupt Service Thread
            "Priority256"=dword:64
           
            ;Memory Ranges Used by the Driver. The First Range
            ; Points to the Physical base of USB Core Registers
            ; and the Second Points to the Mentor Graphics Core
            ; Registers
            "MemBase"=multi_sz:"01C64000","01C64400"   
           
            ; Memory Range Sizes to be mapped by the Driver. This Key
            ; corresponds to the total size of memory to be Memory
            ; Mapped by the Driver for the above Memory Bases
            "MemLen"=multi_sz:"300","300"       
           
            ; Physical Base Address of the DMA Buffers used by the Driver.
            "TxDmaBuffer"=dword:86700000
           
            ; Physical DMA Buffer Area Size
            "TxDmaBuffSize"=dword:4000
           
            ; Physical IRQ Number of USB on the ARM Core
            "Irq"=dword:0C
           
            ; Bus IOCTL to be invoked at Startup
            "BusIoctl"=dword:2a0048
            "IClass"= multi_sz:"{E2BDC372-598F-4619-BC50-54B3F7848D35}=%b","{6F40791D-300E-44E4-BC38-E0E63CA8375C}=%b"
    
        ;-------------------------------------------------------------------
        ; USB Mass Storage Client Registry Settings
        ;-------------------------------------------------------------------   
        [HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers\Mass_Storage_Class]
           "Dll"="usbmsfn.dll"
           
           ; As per the USB Mass Storage Spec, the Interface Sub Class
           ; points to 06 and InterfaceProtocol to 50
           "InterfaceSubClass"=dword:06
           "InterfaceProtocol"=dword:50
           
           ; Short Name of the Block Device Driver that is
           ; presented by the USB Mass Storage Class Driver to the
           ; Host.
           "DeviceName"="DSK1:"
           ; Friendly Name of the Class Driver
           "FriendlyName"="Mass Storage"
           
           ; Vendor Code of the Driver. Set to Texas Instruments
           "idVendor"=dword:0451
           "Manufacturer"="Texas Instruments"
           "idProduct"=dword:FFFF
           
           ; String Name of the Drive as seen by the Host.
           "Product"="Davinci EVM Generic Mass Storage"
           "bcdDevice"=dword:0
           
        ;-------------------------------------------------------------------
        ; Selection of the Default USB Client Profile
        ; By Serial Class is enabled. If the user wishes to
        ; switch to Mass Storage profile, please comment the
        ; line "DefaultClientDriver"="Serial_Class"
        ; and uncomment the line "DefaultClientDriver"="Mass_Storage_Class"
        ;-------------------------------------------------------------------
        [HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers]
           "DefaultClientDriver"=- ; erase previous default
        [HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers]
           "DefaultClientDriver"="Serial_Class"
        ;;   "DefaultClientDriver"="Mass_Storage_Class"
    
        ;-------------------------------------------------------------------
        ; USB Serial Client Registry Settings
        ;-------------------------------------------------------------------
        [HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers\Serial_Class]
           "Dll"="serialusbfn.dll"
           
           ; As per the Spec, InterfaceSubClass and
           ; Interfaceprotocol is set to default value of FF
           "InterfaceSubClass"=dword:ff
           "InterfaceProtocol"=dword:ff
           
           ; Name of the Ras connection used
           "DeviceName"="USBFNS1:"
           
           ; Dll for the Transport Service provider. We will
           ; use the unimodem.dll for our modem related commands.
           "Tsp"="Unimodem.dll"
           
           ; Device Prefix for the USB Serial profile
           "Prefix"="COM"
           
           ; Friendly Name for the USB Serial connection
           "FriendlyName"="USB Cable:"
           
           ; Device Index for the Device to be created.
           ; Note that on DVEVM the initial Device Indices such as
           ; COM0, COM1 are reserved for the UART Serial Ports.
           "DeviceArrayIndex"=dword:0
           
           "DeviceType"=dword:0
           "IClass"="{CC5195AC-BA49-48a0-BE17-DF6D1B0173DD}"
           
           ; Vendor ID for the USB Serial profile.
           ; Set to Texas Instruments USB Vendor ID
           "idVendor"=dword:0451
           
           ; String Description of the Vendor
           "Manufacturer"="Texas Instruments"
           
           ; Product ID for the USB Serial Profile
           "idProduct"=dword:00ce
           
           ; String description for the Product
           "Product"="Davinci Generic Serial"
           "bcdDevice"=dword:0
    
           
        ;-------------------------------------------------------------------
        ; RAS and COMM Settings for USB Serial Client
        ;-------------------------------------------------------------------   
        [HKEY_LOCAL_MACHINE\Comm\USB\Linkage]
            "Bind"=multi_sz:"USBFNSER1"
    
        [HKEY_LOCAL_MACHINE\Comm\USBFNSER]
           "DisplayName"="USB Driver"
           "Group"="Serial"
           "ImagePath"="serialusbfn.dll"
    
        [HKEY_LOCAL_MACHINE\Comm\USBFNSER\Linkage]
           "Route"=multi_sz:"USBFNSER1"
    
        [HKEY_LOCAL_MACHINE\Comm\USBFNSER1\Parms]
            ; Intentionally left blank as a placeholder.
           
        ;--------------------------------------------------------------------
        ; ActiveSync USB Serial Reg Entry
        ; This creates the New Connectiod "USBDefault"
        ;-------------------------------------------------------------------
        [HKEY_LOCAL_MACHINE\Comm\AutoRas\RasEntry]
            "RasEntry"="USBDefault"
    
        ;-----------------------------------------------------------------------------
        ; Connectivity Registry Settings
        ; The registry settings related to ActiveSync connectivity are stored
        ; under the HKEY_CURRENT_USER\ControlPanel\Comm registry key on the target device.
        ;-----------------------------------------------------------------------------
        [HKEY_CURRENT_USER\ControlPanel\Comm]
            "AutoCnct"=dword:00000001
           
            ; Specifies the default connection used when the device is cradled.
            ; If this value is not set, the user must select a connection to use when cradling a device.
            "Cnct"="USBDefault"   
            "FriendlyName"="USB Cable:"
    
        [HKEY_LOCAL_MACHINE\Comm\DefaultConnections]
            "USBDefault"=multi_sz:"USB Cable:","115200"
            "FriendlyName"="USB Cable:"
            

    • Moved by Sean LimingMVP Sunday, February 14, 2016 10:46 PM Windows CE question
    Friday, July 3, 2009 8:52 AM

All replies