RE: musb: communication issue with more than 12 FTDI ports

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Some host controllers just can't support so many pipes opened at once. Check what the SoC spec says about that.

-----Original Message-----
From: linux-usb-owner@xxxxxxxxxxxxxxx [mailto:linux-usb-owner@xxxxxxxxxxxxxxx] On Behalf Of Yegor Yefremov
Sent: Monday, October 12, 2015 05:35
To: linux-usb
Cc: linux-omap@xxxxxxxxxxxxxxx; Felipe Balbi
Subject: Re: musb: communication issue with more than 12 FTDI ports

On Mon, Oct 12, 2015 at 11:34 AM, Yegor Yefremov <yegorslists@xxxxxxxxxxxxxx> wrote:
> We have a problem, when using more than 12 FTDI ports. Kernels tried:
> 3.18.1, 4.2.3 and 4.3-rc5. SoC am335x 600MHz
>
> Below the USB topology:
>
> # lsusb -t
> /:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=musb-hdrc/1p, 480M
> /:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=musb-hdrc/1p, 480M
>     |__ Port 1: Dev 2, If 0, Class=, Driver=hub/4p, 480M
>         |__ Port 1: Dev 9, If 0, Class=, Driver=hub/4p, 480M
>             |__ Port 1: Dev 10, If 0, Class=, Driver=ftdi_sio, 12M
>             |__ Port 2: Dev 11, If 0, Class=, Driver=ftdi_sio, 480M
>             |__ Port 2: Dev 11, If 1, Class=, Driver=ftdi_sio, 480M
>             |__ Port 2: Dev 11, If 2, Class=, Driver=ftdi_sio, 480M
>             |__ Port 2: Dev 11, If 3, Class=, Driver=ftdi_sio, 480M
>             |__ Port 3: Dev 12, If 0, Class=, Driver=ftdi_sio, 480M
>             |__ Port 3: Dev 12, If 1, Class=, Driver=ftdi_sio, 480M
>             |__ Port 3: Dev 12, If 2, Class=, Driver=ftdi_sio, 480M
>             |__ Port 3: Dev 12, If 3, Class=, Driver=ftdi_sio, 480M
>         |__ Port 2: Dev 4, If 0, Class=, Driver=ftdi_sio, 480M
>         |__ Port 2: Dev 4, If 1, Class=, Driver=ftdi_sio, 480M
>         |__ Port 2: Dev 4, If 2, Class=, Driver=ftdi_sio, 480M
>         |__ Port 2: Dev 4, If 3, Class=, Driver=ftdi_sio, 480M
>         |__ Port 3: Dev 7, If 0, Class=, Driver=ftdi_sio, 480M
>         |__ Port 3: Dev 7, If 1, Class=, Driver=ftdi_sio, 480M
>         |__ Port 3: Dev 7, If 2, Class=, Driver=ftdi_sio, 480M
>         |__ Port 3: Dev 7, If 3, Class=, Driver=ftdi_sio, 480M
>
> When using 12 ports and performing serial test (a pair of ports is 
> connected via null-modem cable and a rather short string ca. 90 
> characters will be sent alternating at 1200 and 115200b/s, testing 
> scripts are written in Python and running as own processes per a pair 
> of ports) there are no timeouts, i.e. all sent characters will be 
> received. As soon as I open ports 13 and 14 I start to get arbitrary 
> timeouts  (from test software point of view) on all ports.
>
> In order to check, if ftdi_sio has primary to do with this issue, I've 
> performed the same test on a PC and PandaBoard Rev. A2 (EHCI port) and 
> there were no issues with 16 ports. So it seems to have something to 
> do with am335x + musb + number of end points.
>
> Any idea? Let me know, if you need our test script.

>From time to time I get following warnings (4.3.0-rc5):

musb_host_rx 1915: RX1 dma busy, csr 2020 musb_host_rx 1915: RX4 dma busy, csr 2020 musb_host_rx 1915: RX7 dma busy, csr 2220 musb_host_rx 1915: RX1 dma busy, csr 2020

Though they are not timely related to serial test timeouts.

Yegor
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at  http://vger.kernel.org/majordomo-info.html
��.n��������+%������w��{.n�����{���)��jg��������ݢj����G�������j:+v���w�m������w�������h�����٥




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux