This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM365 usb issue

Hi.I have designed a custom DM365 board according DM365 EVM and appro dm365 ipnc.There are some errors about DM365 USB host.When I attach a 128M usb disk,it can be mounted sucessfully. But when I attach a 2G usb-disk.I got some errors as follows.

usb 1-1: new high speed USB device using musb_hdrc and address 2

usb 1-1: device descriptor read/all, error -71

usb 1-1: new high speed USB device using musb_hdrc and address 3

usb 1-1: device not accepting address 3, error -71

usb 1-1: new high speed USB device using musb_hdrc and address 4

usb 1-1: device descriptor read/8, error -71

usb 1-1: device descriptor read/8, error -71

usb 1-1: new high speed USB device using musb_hdrc and address 5

usb 1-1: device descriptor read/8, error -71

usb 1-1: device descriptor read/8, error -71

 

the DM365 evm boot information about usb host is :

Initializing USB Mass Storage driver...

usbcore: registered new driver usb-storage

USB Mass Storage support registered.

usbcore: registered new driver usbhid

drivers/usb/input/hid-core.c: v2.6:USB HID core driver

musb_hdrc: version 6.0, cppi-dma, host, debug=0

MUX: initialized GPIO33

 

but my board didn't print "MUX: initialized GPIO33",so i think there is some errors in usb driver when trying initialize GPIO33.

the GPIO33 is a mux pin.when I look into the /ti-davinci/drivers/usb/musb/davinci.c. I find the a function named "davinci_cfg_reg"

print the string.I add printk in this funtion to debug. I find the in DM365 EVM the GPIO33 original value is  0x55555555,but my custom board the original value is  0x0030c000,it confused me.Could someone give me a help?Thank very much.

  • Hi,

    It seems that the USB is functional (as you are able to successfully mount and use the USB stick).  2G errors might be reated to the power consumption of the device.  Can you provide the output of "lsusb -v" command with the 2G stick connected.

    Can you also provide information of your usb bus configuration - list of devices and how they are connected to the DM365 usb port.

    regards

    swami

  • Hi swami:

    I have test  the EVM board with my 2G usb disk.when i use the command "lsusb -v",it prints as follows:

     Bus 001 Device 003: ID 1307:0165

     Device Descriptor:

      bLength                18

      bDescriptorType         1

      bcdUSB               2.00

      bDeviceClass            0 (Defined at Interface level)

      bDeviceSubClass         0

      bDeviceProtocol         0

      bMaxPacketSize0        64

      idVendor           0x1307

      idProduct          0x0165

      bcdDevice            1.00

      iManufacturer           1 USB 2.0

      iProduct                2 USB Flash Drive

      iSerial                 3 0f005f76d5f0b1

      bNumConfigurations      1

      Configuration Descriptor:

        bLength                 9

        bDescriptorType         2

        wTotalLength           39

        bNumInterfaces          1

        bConfigurationValue     1

        iConfiguration          0

        bmAttributes         0x80

        MaxPower               98mA

        Interface Descriptor:

          bLength                 9

          bDescriptorType         4

          bInterfaceNumber        0

          bAlternateSetting       0

          bNumEndpoints           3

          bInterfaceClass         8 Mass Storage

          bInterfaceSubClass      6 SCSI

          bInterfaceProtocol     80 Bulk (Zip)

          iInterface              0

          Endpoint Descriptor:

            bLength                 7

            bDescriptorType         5

            bEndpointAddress     0x01  EP 1 OUT

            bmAttributes            2

              Transfer Type            Bulk

              Synch Type               None

              Usage Type               Data

            wMaxPacketSize     0x0200  bytes 512 once

            bInterval               1

          Endpoint Descriptor:

            bLength                 7

            bDescriptorType         5

            bEndpointAddress     0x82  EP 2 IN

            bmAttributes            2

              Transfer Type            Bulk

              Synch Type               None

              Usage Type               Data

            wMaxPacketSize     0x0200  bytes 512 once

            bInterval               1

          Endpoint Descriptor:

            bLength                 7

            bDescriptorType         5

            bEndpointAddress     0x83  EP 3 IN

            bmAttributes            3

              Transfer Type            Interrupt

              Synch Type               None

              Usage Type               Data

            wMaxPacketSize     0x0040  bytes 64 once

            bInterval               8

     

    Bus 001 Device 001: ID 0000:0000

    Device Descriptor:

      bLength                18

      bDescriptorType         1

      bcdUSB               2.00

      bDeviceClass            9 Hub

      bDeviceSubClass         0 Unused

      bDeviceProtocol         1 Single TT

      bMaxPacketSize0        64

      idVendor           0x0000

      idProduct          0x0000

      bcdDevice            2.06

      iManufacturer           3 Linux 2.6.18_pro500-davinci_evm-arm_v5t_le musb-hcd

      iProduct                2 MUSB HDRC host driver

      iSerial                 1 musb_hdrc

      bNumConfigurations      1

      Configuration Descriptor:

        bLength                 9

        bDescriptorType         2

        wTotalLength           25

        bNumInterfaces          1

        bConfigurationValue     1

        iConfiguration          0

        bmAttributes         0xe0

          Self Powered

          Remote Wakeup

        MaxPower                0mA

        Interface Descriptor:

          bLength                 9

          bDescriptorType         4

          bInterfaceNumber        0

          bAlternateSetting       0

          bNumEndpoints           1

          bInterfaceClass         9 Hub

          bInterfaceSubClass      0 Unused

          bInterfaceProtocol      0

          iInterface              0

          Endpoint Descriptor:

            bLength                 7

            bDescriptorType         5

            bEndpointAddress     0x81  EP 1 IN

            bmAttributes            3

              Transfer Type            Interrupt

              Synch Type               None

              Usage Type               Data

            wMaxPacketSize     0x0002  bytes 2 twice

            bInterval              12

    and the schmatic doc about my usb is :

    please give me some advice,thank you

  • Can you try disabling the DMA under usb config? another test would be connect the disk through a selfpowered usb hub.

    Can you provide the vendor and model information of the 2G usb stick.

    regards

    swami

  • I reconfig the kernel ,disable the dma.when i attach another 2G usb-disk ,it prints:

    usb 1-1: new high speed USB device using musb_hdrc and address 14

    usb 1-1: unable to read config index 0 descriptor/all

    usb 1-1: can't read configurations, error -71

    usb 1-1: new high speed USB device using musb_hdrc and address 15

    usb 1-1: unable to read config index 0 descriptor/all

    usb 1-1: can't read configurations, error -71

    usb 1-1: new high speed USB device using musb_hdrc and address 16

    usb 1-1: configuration #1 chosen from 1 choice

    usb 1-1: can't set config #1, error -71

    the error is same, .....

  • hi,
       I have meet the same problem.
       And with my boards,i have used two kinds of DM365 chips ,one is dm365(270Mhz) and the other dm365(300Mhz).
    When i attach  high-speed usb device to my 300Mhz DM365 board,kernel send error information as following,
    but when use low-speed or full-speed device there is nothing wrong .
     # usb 1-1: new high speed USB device using musb_hdrc and address 2
     usb 1-1: device descriptor read/64, error -71
     usb 1-1: device descriptor read/64, error -71
     usb 1-1: new high speed USB device using musb_hdrc and address 3
     usb 1-1: device descriptor read/64, error -71
     usb 1-1: device descriptor read/64, error -71
     usb 1-1: new high speed USB device using musb_hdrc and address 4
     usb 1-1: device descriptor read/64, error -71.

       But if I do the same thing at the other board which use dm365(270Mhz) cpu, the high-speed usb device can alse be detected very well as low-speed and full-speed device .

       I have check that  i>the register config is same on the two boards. ii>the program (ubl & kernel) is same.

       I have alse make some tries as follow ,
     . raise the Core Supply Voltage to 1.35V
     . reconfig the dm365(300MHz)to run with arm speed 270Mhz or 216Mhz speed .
     . disable dma
     . use selfpowered usb device
       But there is no change.

  • Hi,

     

    I have the same error message.

    Have you already solved this problem?

     

    Thanks,

    Martin