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.

OMAP L138 problem with multiple usb serial converters on same 2.0 USB port

Other Parts Discussed in Thread: DA8XX, OMAPL138, OMAP-L138

Hi, we are using an board with an OMAP L138 with a exar xr21v141x [1], an usb to two serial port converter. The exar have drivers [2] for linux but aren't on mainline. We are having problems when using both ports at same time, the driver only receive the information from one port after the other was closed.

All testes were executed on a linux 3.0.20 from mainline with RT and linux-davinci patches applied.

On musb_core.c there are some information about problems with multi point devices. The behavior that we are seeing is due to this ? Using a different approach, with a hub and two USB to serial converter from Prolific Technology Inc that uses the pl2303 driver, I get the same error.

When opening one of the devices I can communicate and everything work fine.

When trying to open a second one, with the first connected, I receive this error:

    pl2303 ttyUSB1: pl2303_open - failed submitting interrupt urb, error -28

This setup works on i386, so can this be a problem from MUSB ?

Any way of resolve this, being able to receive data from both ports when both are open ? We are having problems compiling the latest release of linux-davinci kernel with usb support, even usb 1.0 interface don't work on OMAP L138 evm. Any info about this ?

Thanks.

[1] - http://www.exar.com/connectivity/uart-and-bridging-solutions/usb-uarts/xr21v1412
[2] - http://www.exar.com/common/content/document.ashx?id=20835&languageid=1033

Regards,
Aníbal

  • Hi Anibal,

    Could you please try v3.3 based DaVinci kernel and see if it solves the issue you are facing?

    Thanks,

    Prakash

  • Tested today with arago, made a git clone, and the error maintains.

    Tested with a OMAP L138  and eXar evaluation boards.

  • Hi,

    can you confirm what is the MUSB Config you have tested so far with latest arago kernel

    • PIO Mode
    • CPPI41_DMA wo transparent DMA mode
    • CPPI41_DMA with Transparent DMA mode

    does the behavior is always the same whatever the mode ?

    Thanks

    Nicolas

  • Hi,

    I need to clarify the kernel that I need to use.

    I made a git clone from git://arago-project.org/git/projects/linux-davinci.git

    And compiled and make the tests but the kernel was the 2.6.37 not the latest one.

    I tried the tags linux-v3.3 or linux-v3.3-davinci1 and they don't have any setup of usb on board-da850-evm.c.

    What is the kernel that I should use ? And how I can get it.

    Just to have sure that we are using/talking from the same things.

    Thanks.

  • With last support package from texas to omapl138-lcdk the USB is disable on da8xx_omapl_defconfig.

    I tried to enable on OMAP L138 logic evm but still don't work (retrieve using cat .config | grep -i USB | grep -v "#" ):

    CONFIG_SND_USB=y
    CONFIG_USB_SUPPORT=y
    CONFIG_USB_ARCH_HAS_HCD=y
    CONFIG_USB_ARCH_HAS_OHCI=y
    CONFIG_USB=y
    CONFIG_USB_DEVICE_CLASS=y
    CONFIG_USB_OHCI_HCD=y
    CONFIG_USB_OHCI_LITTLE_ENDIAN=y
    CONFIG_USB_MUSB_HDRC=y
    CONFIG_USB_MUSB_DA8XX=y
    CONFIG_MUSB_PIO_ONLY=y
    CONFIG_USB_SERIAL=y
    CONFIG_USB_SERIAL_PL2303=y
    CONFIG_USB_GADGET=y
    CONFIG_USB_GADGET_VBUS_DRAW=2
    CONFIG_USB_OTG_UTILS=y
    CONFIG_NOP_USB_XCEIV=y

    What options I need to activate?

  • Hi,

    Can you make sure to checkout "DEV_DAVINCIPSP_03.22.00.01" tag from linux-davinci repo you cloned and run default da850_omapl138_defconfig? It is v3.3 based kernel.

    Thanks,

    Prakash

  • Just to clarify, on the tests we are using a logic OMAPL138 evm with an HUB and two prolific usb serial converter.

    We used da850_omapl138_defconfig with support for prolific driver and modifications on USB due to the tests.

    In the test we connect both usb serial converter to hub that is connected to OMAP USB and send messages by both.

    This procedure works on kernel 2.6.37 and 3.3.0+ on USB 1.1

    On USB2.0 with kernel 2.6.37 we detect both converters but fail when trying to open the second one.

    On USB2.0 with kernel 3.3.0+ with 3 option

    • PIO Mode
    • CPPI41_DMA wo transparent DMA mode
    • CPPI41_DMA with Transparent DMA mode

     we don't receive any announce for new devices.

    Next is the log from 3.3.0+ with USB DMA with transparency:

    root@arago:~# dmesg | grep usb                                                     
    usbcore: registered new interface driver usbfs                                     
    usbcore: registered new interface driver hub                                       
    usbcore: registered new device driver usb                                          
    musb-hdrc: version 6.0, ?dma?, otg (peripheral+host)                               
    musb-hdrc musb-hdrc: dma type: dma-cppi41                                          
    musb-hdrc: ConfigData=0x06 (UTMI-8, dyn FIFOs, SoftConn)                           
    musb-hdrc: MHDRC RTL version 1.800                                                 
    musb-hdrc: setup fifo_mode 2                                                       
    musb-hdrc: 7/9 max ep, 2624/4096 memory                                            
    musb-hdrc musb-hdrc: USB OTG mode controller at fee00000 using DMA, IRQ 58         
    usbcore: registered new interface driver usb-storage                               
    usbcore: registered new interface driver usbserial                                 
    usbserial: USB Serial Driver core                                                  
    usbcore: registered new interface driver pl2303                                    
    usbcore: registered new interface driver uvcvideo                                  
    usbcore: registered new interface driver usbhid                                    
    usbhid: USB HID core driver                                                        
    usbcore: registered new interface driver snd-usb-audio

    The log from the other options was similar.

  • Anyone have USB 2.0 working as HOST on a logic OMAP L138 EVM with a latest kernel ?

  • Anibal,

    I do. You need to insert any gadget module to enable interrupts on the musb port.

    Try this command: "insmod /lib/modules/3.3.0/kernel/drivers/usb/gadget/g_ether.ko"

    See logs for my setup below.

    Regards,

    Carlos

    am180x-evm login: root
    root@am180x-evm:~# dmesg | grep usb
    usbcore: registered new interface driver usbfs
    usbcore: registered new interface driver hub
    usbcore: registered new device driver usb
    musb-hdrc: version 6.0, ?dma?, otg (peripheral+host)
    musb-hdrc musb-hdrc: dma type: dma-cppi41
    musb-hdrc: ConfigData=0x06 (UTMI-8, dyn FIFOs, SoftConn)
    musb-hdrc: MHDRC RTL version 1.800
    musb-hdrc: setup fifo_mode 2
    musb-hdrc: 7/9 max ep, 2624/4096 memory
    musb-hdrc musb-hdrc: USB OTG mode controller at fee00000 using DMA, IRQ 58
    usbcore: registered new interface driver usb-storage
    usbcore: registered new interface driver uvcvideo
    usbcore: registered new interface driver usbhid
    usbhid: USB HID core driver
    usbcore: registered new interface driver snd-usb-audio
    root@am180x-evm:~#
    root@am180x-evm:~# uname -a
    Linux am180x-evm 3.3.0 #1 PREEMPT Tue Jul 10 14:38:07 EDT 2012 armv5tejl unknown
    root@am180x-evm:~#
    root@am180x-evm:~# insmod /lib/modules/3.3.0/kernel/drivers/usb/gadget/g_ether.k
    o
     gadget: using random self ethernet address
     gadget: using random host ethernet address
    usb0: MAC 72:c1:d3:21:c0:35
    usb0: HOST MAC 22:c8:6e:44:75:6f
     gadget: Ethernet Gadget, version: Memorial Day 2008
     gadget: g_ether ready
    musb-hdrc musb-hdrc: MUSB HDRC host driver
    musb-hdrc musb-hdrc: new USB bus registered, assigned bus number 2
    hub 2-0:1.0: USB hub found
    hub 2-0:1.0: 1 port detected
    root@am180x-evm:~# usb 2-1: new high-speed USB device number 2 using musb-hdrc
    ADDRCONF(NETDEV_UP): usb0: link is not ready
    hub 2-1:1.0: USB hub found
    hub 2-1:1.0: 4 ports detected
    usb 2-1.2: new high-speed USB device number 3 using musb-hdrc
    scsi1 : usb-storage 2-1.2:1.0
    scsi 1:0:0:0: Direct-Access     Hitachi  HDT725050VLAT80  0000 PQ: 0 ANSI: 0
    sd 1:0:0:0: Attached scsi generic sg0 type 0
    sd 1:0:0:0: [sda] 976773168 512-byte logical blocks: (500 GB/465 GiB)
    sd 1:0:0:0: [sda] Write Protect is off
    sd 1:0:0:0: [sda] No Caching mode page present
    sd 1:0:0:0: [sda] Assuming drive cache: write through
    sd 1:0:0:0: [sda] No Caching mode page present
    sd 1:0:0:0: [sda] Assuming drive cache: write through
     sda: sda1 sda2 sda3
    sd 1:0:0:0: [sda] No Caching mode page present
    sd 1:0:0:0: [sda] Assuming drive cache: write through
    sd 1:0:0:0: [sda] Attached SCSI disk
    root@am180x-evm:~#
    root@am180x-evm:~# lsusb
    Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    Bus 002 Device 002: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB
    Bus 002 Device 003: ID 059b:007e Iomega Corp.
    root@am180x-evm:~#


  • Thanks for give a look.

    Same steps that you made:

    arago login: root
    root@arago:~# dmesg | grep usb
    usbcore: registered new interface driver usbfs
    usbcore: registered new interface driver hub
    usbcore: registered new device driver usb
    musb-hdrc: version 6.0, ?dma?, otg (peripheral+host)
    musb-hdrc musb-hdrc: dma type: dma-cppi41
    musb-hdrc: ConfigData=0x06 (UTMI-8, dyn FIFOs, SoftConn)
    musb-hdrc: MHDRC RTL version 1.800
    musb-hdrc: setup fifo_mode 2
    musb-hdrc: 7/9 max ep, 2624/4096 memory
    musb-hdrc musb-hdrc: USB OTG mode controller at fee00000 using DMA, IRQ 58
    usbcore: registered new interface driver usb-storage
    usbcore: registered new interface driver uvcvideo
    usbcore: registered new interface driver usbhid
    usbhid: USB HID core driver
    usbcore: registered new interface driver snd-usb-audio
    root@arago:~# cd /lib/modules/3.3.0\+/drivers/usb/gadget/
    root@arago:/lib/modules/3.3.0+/drivers/usb/gadget# insmod g_ether.ko
     gadget: using random self ethernet address
     gadget: using random host ethernet address
    usb0: MAC 9a:69:16:db:1f:b3
    usb0: HOST MAC 22:3c:4a:96:10:7c
     gadget: Ethernet Gadget, version: Memorial Day 2008
     gadget: g_ether ready
    musb-hdrc musb-hdrc: MUSB HDRC host driver
    musb-hdrc musb-hdrc: new USB bus registered, assigned bus number 2
    hub 2-0:1.0: USB hub found
    hub 2-0:1.0: 1 port detected
    root@arago:/lib/modules/3.3.0+/drivers/usb/gadget# lsusb
    Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    root@arago:/lib/modules/3.3.0+/drivers/usb/gadget#

    And after inserted the hub with the usb serial converter the lsusb result was the same.

    We verified that we have the interrupts on /proc/interrups but can't detect hub or the converters.

    Can you send me the binaries to test it ? Send to anibal"dot"pinto"at"efacec"dot"com, please exchange the marks.

    Thanks.

  • Anibal,

    I built from http://arago-project.org/git/projects/?p=linux-davinci.git;a=summary master branch and I used da850_omapl138_defconfig.

    Regards,

    Carlos

  • I am using the git://arago-project.org/git/projects/linux-davinci.git (cat .git/config | grep url) on c7fd326 (HEAD, DEV_DAVINCIPSP_03.22.00.01, origin/master, origin/davinci-next, origin/HEAD) (git tags)

    I made:

    export PATH=$PATH:/opt/arm-2009q1/bin/
    make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- mrproper
    make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- da850_omapl138_defconfig
    make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- uImage modules -j8

    And the board still don't detect any usb device plugged in USB 2.0. On UBS 1.1 it works.

    We are using a connector to be able to test. Attached is a image with the setup.

  • Anibal,

    I suspect the problem is with your USB connection.

    You need to use a USB Mini A cable. See attached pictures.

    Carlos


  • Thanks for the tip, with the right cable and after inserting the g_ether.ko module we can detect the devices.

    With kernel 2.6.37 it worked because the port was forced to be host.

    Our original problem is still present though. When we connect an usb hub to the 2.0 port, and then connect two usb to serial converters to the hub we get the following errors after opening the ports with microcom simultaneously:

    Terminal 1:
    root@arago:~#
    root@arago:~# microcom -s 115200 /dev/ttyUSB0


    Terminal 2:
    root@arago:~# microcom -s 115200 /dev/ttyUSB1
    Input/output error
    root@arago:~# dmesg | tail
    pl2303_open - failed submitting interrupt urb, error -28

    Can you test this setup ?

    Thanks.

  • Anibal,

    I don't have a two-port usb serial device. 

    Does it work fine with just one serial console device? You might be reaching max number of USB input/output endpoints (4 for am180x)

    Carlos

  • Carlos,

    Can you try a hub with 2x one port serial-to-usb converter ? It gives the same error ...

    I have attached an image to be clear the setup that we are using.

    On pastebin [1] is the output from lsusb -t and lsusb -v.

    [1] - http://pastebin.com/1q9PPjjW

    Thanks

    Aníbal

  • Carlos,

    you were able to  get the same behavior ?

    Thanks.

    Regards,

    Aníbal

  • Anibal,

    I tried with 2 usb serial adapters and they are detected but apparently a new serial port node is not created because the kernel does not have the drivers for them.

    root@am180x-evm:~# lsusb -t
    2-1.1:1.0: No such file or directory
    2-1.2:1.0: No such file or directory
    /: Bus 02.Port 1: Dev 1, class="root_hub", Driver=musb-hdrc/1p, 480M
    |__ Port 1: Dev 2, If 0, class="hub", Driver=hub/4p, 480M
    |__ Port 1: Dev 5, If 0, class="vend"., Driver=, 12M
    |__ Port 2: Dev 6, If 0, class="vend"., Driver=, 12M
    /: Bus 01.Port 1: Dev 1, class="root_hub", Driver=ohci/1p, 12M
    root@am180x-evm:~# lsusb
    Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    Bus 002 Device 002: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB
    Bus 002 Device 005: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
    Bus 002 Device 006: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
    root@am180x-evm:~#

    root@am180x-evm:~# find /lib/modules/3.3.0/ -name pl2303

    I will try to build another image with pl2303 support.

    Carlos

  • Anibal,

    I was able to reproduce the problem. I will pass the information to the kernel dev team.

    See logs and procedure below:

    am180x-evm login: root
    root@am180x-evm:~# lsusb
    Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    root@am180x-evm:~#
    root@am180x-evm:~# insmod /lib/modules/3.3.0/kernel/drivers/usb/gadget/g_ether.k
    o
    gadget: using random self ethernet address
    gadget: using random host ethernet address
    usb0: MAC c2:d8:0a:bd:43:c3
    usb0: HOST MAC c2:41:be:6b:a1:bb
    gadget: Ethernet Gadget, version: Memorial Day 2008
    gadget: g_ether ready
    musb-hdrc musb-hdrc: MUSB HDRC host driver
    musb-hdrc musb-hdrc: new USB bus registered, assigned bus number 2
    hub 2-0:1.0: USB hub found
    hub 2-0:1.0: 1 port detected
    root@am180x-evm:~# usb 2-1: new high-speed USB device number 2 using musb-hdrc
    ADDRCONF(NETDEV_UP): usb0: link is not ready
    hub 2-1:1.0: USB hub found
    hub 2-1:1.0: 4 ports detected
    usb 2-1.1: new full-speed USB device number 3 using musb-hdrc
    pl2303 2-1.1:1.0: pl2303 converter detected
    usb 2-1.1: pl2303 converter now attached to ttyUSB0
    usb 2-1.2: new full-speed USB device number 4 using musb-hdrc
    pl2303 2-1.2:1.0: pl2303 converter detected
    usb 2-1.2: pl2303 converter now attached to ttyUSB1

    root@am180x-evm:~# lsusb -t
    /: Bus 02.Port 1: Dev 1, class="root_hub", Driver=musb-hdrc/1p, 480M
    |__ Port 1: Dev 2, If 0, class="hub", Driver=hub/4p, 480M
    |__ Port 1: Dev 3, If 0, class="vend"., Driver=pl2303, 12M
    |__ Port 2: Dev 4, If 0, class="vend"., Driver=pl2303, 12M
    /: Bus 01.Port 1: Dev 1, class="root_hub", Driver=ohci/1p, 12M
    root@am180x-evm:~#

    Open telnet session and open microcom on /dev/ttyUSB0:

    root@am180x-evm:~# microcom -s 115200 /dev/ttyUSB0

    Open another telnet session and open microcom on /dev/ttyUSB1:

    root@am180x-evm:~# microcom -s 115200 /dev/ttyUSB1
    microcom: can't open '/dev/ttyUSB1': Input/output error
    root@am180x-evm:~#

    Also as you pointed out the following message is shown on the console:

    root@am180x-evm:~# pl2303 ttyUSB1: pl2303_open - failed submitting interrupt urb, error -28

    Regards,

    Carlos 

  • Carlos,

    its the same error that I have.

    If you need any help testing or validate the modifications, just ask.

    Thanks.

    Regards,

    Aníbal

  • Carlos,

    any update ? Anyone have an idea why this happen ? It there a solution or a quick fix for this ?

    Thanks.

    Regards,

    Aníbal

  • hi team,

    do we have any update regarding this issue, we need support asap since it has a deep impact on end customers, thanks a lot.

  • Hi

    Please find the interrupt ep scheduling patch 3.x kernel and available at arago link at http://arago-project.org/git/projects/?p=linux-davinci.git;a=commit;h=2432b15edbd0ee4a7f274a215698a408c1b6522f .  This feature will help to connect more interrupt devices on musb controller which has limited number of eps.

    Make sure to enable "CONFIG_MUSB_SCHEDULE_INTR_EP" feature through Menuconfig.

    Menuconfig->"Device Drivers"->"USB Support"

    Regards

    Ravi B

  • Hi

    Hope this patch will resolve the issue you are observing.

    Regards

    Ravi B

  • Hi,

    I have some good news and some bad news.


    Good news:

    My previous test of connecting a hub to the OMAP L138 EVM and then connecting 2 usb2serial to the hub did not return any error and worked as expected.
    I also tried the same test with DMA using CPP4.1 and in PIO mode. Both tests were succesful.


    Bad news:

    When I did the test using DMA CPP4.1, althought it worked as expected, when I remove the device it is not properly disconnected, and no message appear on DMESG. After that, the usb stops working until I reboot the EVM. This problem does not occur in PIO mode.

    I tried a different test were I plugged a SMSC lan9512 EVM in PIO mode, and I get this error:
    root@arago:~# usb 2-1: new high-speed USB device number 2 using musb-hdrc
    hub 2-1:1.0: USB hub found
    hub 2-1:1.0: config failed, can't read hub descriptor (err -22)

    and then the usb stops working.

    If I plug the SMSC lan9512 EVM with USB in DMA CPP4.1, I get this error:
    root@arago:~# usb 2-1: new high-speed USB device number 2 using musb-hdrc
    usb 2-1: device not accepting address 2, error -71
    usb 2-1: new high-speed USB device number 3 using musb-hdrc
    usb 2-1: device not accepting address 3, error -71
    usb 2-1: new high-speed USB device number 4 using musb-hdrc
    usb 2-1: device descriptor read/8, error -32
    usb 2-1: can't set config #1, error -71

    and then the usb stops working, like when I use PIO mode.

    Please note that the SMSC lan9512 has driver support on the kernel, I just had to enable it, like I did for the usb to serial converters.

    Regards,
    Aníbal

  • Hello team, could you please provide some feedback about this post? It is pending for almost 2 months... Thanks, Beatriz.

  • Hi

    We would like to have some clarifications on the following.

    1.OMAP-L138 LogicPD has TiDVSDK that has the kernel version 2.6.37.  Whether the patch ( referred by Ravi) is applied to this kernel version? If no, please specify the kernel version.

    2. Whether the observations ( mentioned as "Good news and Bad news") here are done after applying the patch referred by Ravi? If no, What are the changes done from your side?

    3. In the post, it is mentioned that the SMSC lan9512 with USB in DMA CPP4.1 doesnot work. Whether SMSC lan9512 with USB in DMA CPP4.1 works before applying patch?

    Anibal says said:
     My previous test of connecting a hub to the OMAP L138 EVM and then connecting 2 usb2serial to the hub did not return any error and worked as expected. I also tried the same test with DMA using CPP4.1 and in PIO mode. Both tests were succesful.

    4. In which set up the test has passed? Either with hub or without hub?

       If it is without hub, Whether the OneUSBToTwoSerial converter worked in any of the modes?

       If it is with hub, either two pieces of converters are used ? One in each ports of the hub.?  i.e., OneUSBToOneSerial converters? or just with OneUSBToTwoSerial converter ( Exar )

    5.  Whether the same erraneous behaviour is observed when any other multiple USB devices are connected. ( For example, Two pendrives connected to OMAPl138 through a hub on USB 2.0 )  

    6. In which Logic PD kits, this experiment is carried out? Either Experimenter's Kit or Developer's Kit?

    ( Note: we are trying to reproduce the issue from our side ( On Experimenter's Kit) . We will let you know the status asap )

    Regards,

    Shankari.

  • Hi Shankari,

    I will try to answer all your questions, but it has been a while since the tests were made.

    Shankari G said:
    1.OMAP-L138 LogicPD has TiDVSDK that has the kernel version 2.6.37.  Whether the patch ( referred by Ravi) is applied to this kernel version? If no, please specify the kernel version.

    The patch was applied to kernel 3.3.0.

    I will re-do the test on kernel versions 2.6.37 and 3.3.0, with and without the patch, and post here the results.

    Shankari G said:
    2. Whether the observations ( mentioned as "Good news and Bad news") here are done after applying the patch referred by Ravi? If no, What are the changes done from your side?

    The observations are all done after applying the patch.

    Shankari G said:

    3. In the post, it is mentioned that the SMSC lan9512 with USB in DMA CPP4.1 doesnot work. Whether SMSC lan9512 with USB in DMA CPP4.1 works before applying patch?

     

    My previous test of connecting a hub to the OMAP L138 EVM and then connecting 2 usb2serial to the hub did not return any error and worked as expected. I also tried the same test with DMA using CPP4.1 and in PIO mode. Both tests were succesful.

    [/quote]

    This was not tested. Before applying the patch, the default configuration for the musb driver was used

    Shankari G said:

    4. In which set up the test has passed? Either with hub or without hub?

       If it is without hub, Whether the OneUSBToTwoSerial converter worked in any of the modes?

       If it is with hub, either two pieces of converters are used ? One in each ports of the hub.?  i.e., OneUSBToOneSerial converters? or just with OneUSBToTwoSerial converter ( Exar )

    The test that passed after applying the patch was the one in which we use an hub to connect the two serial2usb adapters. We used two pieces, one in each port of the hub.

    Please note that in DMA, if we disconnected one of them and reconnect it, it will malfunction and only after a reboot the problem was solved.

    Shankari G said:
    5.  Whether the same erraneous behaviour is observed when any other multiple USB devices are connected. ( For example, Two pen-drives connected to OMAPl138 through a hub on USB 2.0 )  

    This was not tested because the simplest way to replicate the problem was to use two identical usb2serial converters that have the same chip. Since we didn't have two identical pen drives, we didn't test it.

    Shankari G said:
    6. In which Logic PD kits, this experiment is carried out? Either Experimenter's Kit or Developer's Kit?

    We wave the first Developer board, model SDK-XOMAPL138-6408R. I think they have been replaced by a new, different model but I think they are pretty much the same.

    I will re-do all the tests, with every configuration, and post the results but please proceed with your tests.

    If you need more information, please don't hesitate to ask here.

    Regards,

    Jose

  • http://e2e.ti.com/cfs-file.ashx/__key/communityserver-discussions-components-files/354/0647.OMAPL138_5F00_SDI_5F00_belkinHUB_5F00_2.0_5F00_multipledevices_5F00_log_5F00_8.8.2013

    Hi,

    I have done the testing with the following test set up and my observations are given below.

    Setup:

    Linux version : 3.3.0 ( cloned directly from Arago git repository without any patch )

    OMAPL138 SDI ( We just have the experimenter kit of Logic PD, So used SDI board)

    USB Devices: 1 Hub ( Belkin ) and 3 USB devices [ 2 Pen drive( Lexar and HP) and 1 SD card reader ]

    Observations:

    USB 2.0 OTG port on OMAPL138 Spectrum Digital board is tested by connecting a USB hub (Belkin ) with multiple USB devices. It is able to detect the USB devices properly when connected and when disconnected, it sensitize properly. Even if connected after disconnection, it detects it again without any problem.

    USB 2.0  OTG port works with all these USB devices individually without the HUB as well.

    ( Attached the logs and the teraterm screenshots for reference. )

    Note: Ofcourse, When tested with one non-standard USB hub ( the make of the HUb is not mentioned), some disconnection problem is observed.

    But, both the mUSB driver and the USB 2.0 OTG port on OMAPL138 SDI doesnot seems to have any problem. It works as expected. The problem seems to be on HUB.

     

    Regards,

    Shankari

     

     

  • Hi,

    I have done the same test, and also added three more configurations.

    For future references, I will call this test: Test 1.

    Setup

    • arago linux-davinchi 3.22.02 kernel 3.3.0
    • Config: da850_omapl138_defconfig with usb gadget support, usb serial adapter (prolific) support and SMSC LAN95XX support.
    • No USB Patch was applied in any of the tests
    • uImage loaded using TFTP
    • Filesystem loaded using NFS

    USB Setting

    • musb DMA transaparent mode (default config).

    Test Configurations

    a) Toshiba HUB connected to EVM; 2x usb pens (1xSanDisk, 1xKingston) connected to Hub;
    b) Toshiba HUB connected to EVM; 2x usb 2 serial converters (identical with prolific chip);
    c) EVM connected to SMSC Lan9512EVM; 2x usb 2 serial converters (identical with prolific chip); RJ45 Ethernet cable Connected;
    d) EVM connected to SMSC Lan9512EVM; 2x usb 2 serial converters (identical with prolific chip); RJ45 Ethernet cable Connected.

    Test Description

    a)
    • Connect the Hub to the EVM after login;
    • Connect the two Pen Drives, one at a time;
    • Disconnect the two Pen Drives, one at a time;
    • Re-connect the two Pen Drives, one at a time.
    b)
    • Connect the Hub to the EVM after login;
    • Connect the two usb to serial adapters, one at a time;
    • Open two SSH sessions to the EVM;
    • Open with microcom one usb to serial adapter on each SSH session;
    • Communicate between the two usb to serial converters.

    c)
    • Connect the SMSC LAN9512EVM to the OMAP_EVM after login;
    • Connect the two usb to serial adapters, one at a time;
    • Open two SSH sessions to the EVM;
    • Open with microcom one usb to serial adapter on each SSH session;
    • Communicate between the two usb to serial converters;
    • Connect the RJ45 cable and check connection.

    d)
    • Connect the SMSC LAN9512EVM to the OMAP_EVM after login;
    • Connect the RJ45 cable and check connection;
    • Connect the two usb to serial adapters, one at a time;
    • Open two SSH sessions to the EVM;
    • Open with microcom one usb to serial adapter on each SSH session;
    • Communicate between the two usb to serial converters.

    Result Summary

    a) No Problems;
    b) Problem occurs when opening the second serial port;
    c) Problem occurs when opening the second serial port; Problem occurs when trying to configure the Ethernet Port of the SMSC LAN9512;
    d) Problem occurs when opening the first and second serial ports; 

    The log of Test 1 with all configurations is attached below.

    8311.test_1_log.txt

    The log contains the dmesg with the errors, as well as the log from the SSH sessions.

    I will do more tests with the same configurations for other USB settings (DMA and PIO modes).

    I think it is clear that the problem is not the hub used.

    If you want me to do a specific test, please describe it and I will do it asap.

    Best Regards,

    José

  • Hi Jose,

    Thanks for acknowledging that the test case 1 has been passed.  Atleast we both are in sync with the setup for testcase 1.

    (i.e., Atleast, the mUSB driver works fine in detecting multiple USB devices ( pen drives + SD/MMC card reader) )

    We do not have the USBToserial converters and the HUBS ( SMSC LAN9512EVM and Toshiba) to test and reproduce the issue.

    Mean while we try to test with any available USB to Serial converters with OMAPL138 SDI EVM through HUB.

    Is it possible to get us these two sets of hardwares you were using?

     

    Regards,

    Shankari

     

     

  • Hi Shankari,

    Shankari G said:
    Is it possible to get us these two sets of hardwares you were using?

    Yes, it is possible to send the two hardware setups.

    I will need your contact and address. Is it possible to start private conversations on this forum so we can exchange information?

    Regards,

    José

  • Hi Jose,

    We will discuss with the team and get back to you.

     

    Regards,

    Shankari.

  • Hi Jose,

    I had a discussion with my team.

    I was suggested to get the weblinks from you and to check whether the converters and HUB can be purchased through online.

    Please provide the details about purchasing them.

     

    Regards,

    Shankari

     

  • Hi Shankari,

    the links were you can buy the equipments that I am using on our test:

    LAN9512:
    * http://export.farnell.com/microchip/evb9512/eval-board-enet-phy-lan9512/dp/2292562?Ntt=EVB9512
    * http://int.rsdelivers.com/product/smsc/evb9512/evaluation-board-for-smsc-lan9512/7160465.aspx

    HUB
    * http://www.shopping.com/Toshiba-TOSHIBA-PA3627U-1ETC-USB-2-0-Mini-4-Port-Hub/info

    Serial to USB:
    * http://int.rsdelivers.com/product/rotronic/12021086/usb-serial-converter-cable/4503238.aspx

    If you need any more detail please ask.

    Thanks.

    Regards,
    Aníbal

  • Hi Shankari,


    any update on this ?

    If you need more information please don't hesitate to post here.

    Thanks.

    Regards,
    Aníbal

  • We purchased all the mentioned hardware items and carried out the testing.

    I have done the same test as jose mentioned in his previous post.

    "Able to successfully open the two ttyUSBx ports of USBSerialconverters via SMSC LAN9512" without any problem ; even before and after configuring the Ethernet port of SMSC. Attached the snapshots for your reference. In the attachment, the teraterm and putty windows will show that the ttyUSB0 and ttyUSB1 ports were opened.  

    Setup

    • arago linux-davinchi 3.22.02 kernel 3.3.0
    • Config: da850_omapl138_defconfig with usb gadget support, usb serial adapter (prolific) support and SMSC LAN95XX support.
    • No USB Patch was applied in any of the tests
    • uImage loaded using nfs
    • Filesystem loaded using NFS
    Test Configurations
    a) Toshiba HUB connected to EVM; 2x usb pens (1xLexar, 1xcardreader) connected to Hub;
    b) Toshiba HUB connected to EVM; 2x usb 2 serial converters (one from prolific and other one is a Taiwan product);
    c) EVM connected to SMSC Lan9512EVM; 2x usb 2 serial converters (one from prolific and other one is a Taiwan product); RJ45 Ethernet cable Connected;
    d) EVM connected to SMSC Lan9512EVM; 2x usb 2 serial converters; RJ45 Ethernet cable Connected.

    Test Description

    a)
    • Connect the Hub to the EVM after login;
    • Connect the two Pen Drives, one at a time;
    • Disconnect the two Pen Drives, one at a time;
    • Re-connect the two Pen Drives, one at a time.
    b)
    • Connect the Hub to the EVM after login;
    • Connect the two usb to serial adapters, one at a time;
    • Open two SSH sessions to the EVM;
    • Open with microcom one usb to serial adapter on each SSH session;

    c)
    • Connect the SMSC LAN9512EVM to the OMAP_EVM after login;
    • Connect the two usb to serial adapters, one at a time;
    • Open two SSH sessions to the EVM;
    • Open with microcom one usb to serial adapter on each SSH session;


    d)

    • Connect the SMSC LAN9512EVM to the OMAP_EVM after login;
    • Connect the RJ45 cable and check connection;
    • Connect the two usb to serial adapters, one at a time;
    • Open two SSH sessions to the EVM;
    • Open with microcom one usb to serial adapter on each SSH session;

    Result Summary

    a) No Problems;
    b) No Problem. Able to open the second serial port successfully;
    c) No problem; Able to open the second serial port successfully; Able to configure the Ethernet Port of the SMSC LAN9512;
    d) No Problem occurs when opening the first and second serial ports;
     
    ( if needed I can share the .config file and the kernel Image )
     
    Best Regards,
    Shankari

    -------------------------------------------------------------------------------------------------------

    Please click the Verify Answer button on this post if it answers your question.
    --------------------------------------------------------------------------------------------------------

     
  • Hi Shankari,

    Thank you very much for your effort. On your test configuration setup, it is described that the usb to serial converters used are different: 1x prolific and 1x taiwan model.

    The problem only occurs if the usb to serial converters have the same chipset (same maker, model). It really is important that both are identical in order to detect the problem.

    Carlos Hernandez was also able to reproduce the problem. You can see his post here: http://e2e.ti.com/support/embedded/linux/f/354/p/197489/729078.aspx#729078

    Can you perform the tests with identical usb to serial converters?

    Thank you once again.

    Best Regards,

    José

  • Hi Shankari,

    Have you managed to test with two identical usb to serial converters? What were the results?

    Please post them here as soon as you have them please.

    Regards,

    José

  • Hi Shankari,


    were you able to reproduce the problem with two identical usb to serial converters ?


    Thanks.


    Regards,
    Aníbal

  • Happy new Year :)

    Any news about this ? Are you able to reproduce the problem ?

    Thanks

    Best Regards,

    Aníbal

  • Hi,

    Yes, Iam able to test with two USB to serial converters with the same make, i.e., prolific. The OMAPL138 SOM

    doesnot have any problem in detecting multiple identical devices. I have attached the snapshot below in which the converters are attached to ttyUSB0 and ttyUSB1.

    Regards,

    Shankari

     

    -------------------------------------------------------------------------------------------------------

    Please click the Verify Answer button on this post if it answers your question.
    --------------------------------------------------------------------------------------------------------

  • Hi Shankari,


    first thanks for invest some of your time with this.

    Is possible to you connect a null cable modem between both converters and verify if possible to transmit and receive data? For example using microcom on both ports and send data from both sides.

    On our side normally when we try to open both ports the problems start, with messages on dmesg and communication errors.

    Thanks.

    Regards,
    Aníbal