Search

Technical Discussion Group Forum

This forum is provided for user discussion. While Beacon EmbeddedWorks support staff and engineers participate, Beacon EmbeddedWorks does not guarantee the accuracy of all information within in the Technical Discussion Group (TDG).

The "Articles" forums provide brief Articles written by Beacon EmbeddedWorks engineers that address the most frequently asked technical questions.

To receive email notifications when updates are posted for a Beacon EmbeddedWorks product download, please subscribe to the TDG Forum of interest.

TDG Forum

PrevPrev Go to previous topic
NextNext Go to next topic
Last Post 01 Aug 2014 07:26 AM by  Adam Ford
USB OTH throughput varies according to DM37x speed.
 3 Replies
Sort:
You are not authorized to post a reply.
Author Messages
jduran.gm
New Member
New Member
Posts:79


--
31 Jul 2014 07:09 PM
    Hello,

    We detected that the throughput of a custom made board connected to the USB OTG bus varies according to the DM37x speed. The custom board sends messages of 3851 bytes in packets of 64 bytes in bulk mode.

    In a low CPU load (< 10%) the baud rate is ~200 KBytes/second. (3 transactions of 64 bytes per frame)

    [ 6637.993194] musb-hdrc musb-hdrc: RXCSR10 := 0620
    [ 6637.993286] musb-hdrc musb-hdrc: ** IRQ host usb0008 tx0000 rx0400
    [ 6637.993316] musb-hdrc musb-hdrc: <== Power=e0, DevCtl=5d, int_usb=0x8
    [ 6637.993377] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 0 (+dma 11)
    [ 6637.993408] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x85a9c000 len 0/3851
    [ 6637.993469] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 0 (+dma 64)
    [ 6637.993499] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6637.993560] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6637.993621] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 64 (+dma 64)
    [ 6637.993652] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x85a9c040 len 64/3851
    [ 6637.993682] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 64 (+dma 64)
    [ 6637.993743] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6637.994079] musb-hdrc musb-hdrc: ** IRQ host usb0008 tx0000 rx0400
    [ 6637.994110] musb-hdrc musb-hdrc: <== Power=e0, DevCtl=5d, int_usb=0x8
    [ 6637.994140] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 128 (+dma 64)
    [ 6637.994201] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x85a9c080 len 128/3851
    [ 6637.994232] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 128 (+dma 64)
    [ 6637.994262] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6637.994354] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6637.994384] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 192 (+dma 64)
    [ 6637.994415] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x85a9c0c0 len 192/3851
    [ 6637.994476] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 192 (+dma 64)
    [ 6637.994506] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6637.994567] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6637.994598] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 256 (+dma 64)
    [ 6637.994659] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x85a9c100 len 256/3851
    [ 6637.994689] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 256 (+dma 64)
    [ 6637.994750] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6637.995056] musb-hdrc musb-hdrc: ** IRQ host usb0008 tx0000 rx0400
    [ 6637.995086] musb-hdrc musb-hdrc: <== Power=e0, DevCtl=5d, int_usb=0x8
    [ 6637.995117] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 320 (+dma 64)
    [ 6637.995178] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x85a9c140 len 320/3851
    [ 6637.995269] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 320 (+dma 64)
    [ 6637.995300] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6637.995361] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6637.995391] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 384 (+dma 64)
    [ 6637.995452] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x85a9c180 len 384/3851
    [ 6637.995483] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 384 (+dma 64)
    [ 6637.995544] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6637.995605] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6637.995635] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 448 (+dma 64)
    [ 6637.995666] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x85a9c1c0 len 448/3851
    [ 6637.995697] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 448 (+dma 64)
    [ 6637.995758] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6637.996093] musb-hdrc musb-hdrc: ** IRQ host usb0008 tx0000 rx0400
    [ 6637.996124] musb-hdrc musb-hdrc: <== Power=e0, DevCtl=5d, int_usb=0x8
    [ 6637.996154] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 512 (+dma 64)
    [ 6637.996215] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x85a9c200 len 512/3851
    [ 6637.996246] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 512 (+dma 64)
    [ 6637.996276] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6637.996337] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6637.996398] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 576 (+dma 64)
    [ 6637.996429] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x85a9c240 len 576/3851
    [ 6637.996490] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 576 (+dma 64)
    [ 6637.996520] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6637.996582] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6637.996612] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 640 (+dma 64)
    [ 6637.996673] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x85a9c280 len 640/3851
    [ 6637.996704] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 640 (+dma 64)
    [ 6637.996765] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6637.997070] musb-hdrc musb-hdrc: ** IRQ host usb0008 tx0000 rx0400
    [ 6637.997100] musb-hdrc musb-hdrc: <== Power=e0, DevCtl=5d, int_usb=0x8
    [ 6637.997131] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 704 (+dma 64)
    [ 6637.997192] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x85a9c2c0 len 704/3851
    [ 6637.997222] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 704 (+dma 64)

    In a high CPU load (near 99%) the baud rate is ~400 KBytes/second. (8 transactions of 64 bytes per frame)

    [ 6678.021575] musb-hdrc musb-hdrc: RXCSR10 := 0620
    [ 6678.022430] musb-hdrc musb-hdrc: ** IRQ host usb0008 tx0000 rx0400
    [ 6678.022460] musb-hdrc musb-hdrc: <== Power=e0, DevCtl=5d, int_usb=0x8
    [ 6678.022460] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 0 (+dma 11)
    [ 6678.022491] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48000 len 0/3851
    [ 6678.022491] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 0 (+dma 64)
    [ 6678.022521] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6678.022583] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.022583] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 64 (+dma 64)
    [ 6678.022583] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48040 len 64/3851
    [ 6678.022613] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 64 (+dma 64)
    [ 6678.022613] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6678.022674] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.022674] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 128 (+dma 64)
    [ 6678.022705] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48080 len 128/3851
    [ 6678.022705] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 128 (+dma 64)
    [ 6678.022735] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6678.022796] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.022796] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 192 (+dma 64)
    [ 6678.022796] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba480c0 len 192/3851
    [ 6678.022827] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 192 (+dma 64)
    [ 6678.022827] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6678.022918] musb-hdrc musb-hdrc: ** IRQ host usb0008 tx0000 rx0400
    [ 6678.022949] musb-hdrc musb-hdrc: <== Power=e0, DevCtl=5d, int_usb=0x8
    [ 6678.022949] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 256 (+dma 64)
    [ 6678.022949] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48100 len 256/3851
    [ 6678.022979] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 256 (+dma 64)
    [ 6678.022979] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6678.023040] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.023071] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 320 (+dma 64)
    [ 6678.023071] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48140 len 320/3851
    [ 6678.023071] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 320 (+dma 64)
    [ 6678.023101] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6678.023162] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.023162] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 384 (+dma 64)
    [ 6678.023162] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48180 len 384/3851
    [ 6678.023193] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 384 (+dma 64)
    [ 6678.023193] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6678.023254] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.023284] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 448 (+dma 64)
    [ 6678.023284] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba481c0 len 448/3851
    [ 6678.023284] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 448 (+dma 64)
    [ 6678.023315] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6678.023376] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.023376] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 512 (+dma 64)
    [ 6678.023406] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48200 len 512/3851
    [ 6678.023406] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 512 (+dma 64)
    [ 6678.023406] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6678.023468] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.023498] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 576 (+dma 64)
    [ 6678.023498] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48240 len 576/3851
    [ 6678.023498] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 576 (+dma 64)
    [ 6678.023529] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6678.023590] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.023590] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 640 (+dma 64)
    [ 6678.023620] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48280 len 640/3851
    [ 6678.023620] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 640 (+dma 64)
    [ 6678.023620] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6678.023681] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.023712] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 704 (+dma 64)
    [ 6678.023712] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba482c0 len 704/3851
    [ 6678.023742] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 704 (+dma 64)
    [ 6678.023742] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6678.023803] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.023803] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 768 (+dma 64)
    [ 6678.023834] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48300 len 768/3851
    [ 6678.023834] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 768 (+dma 64)
    [ 6678.023834] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6678.023925] musb-hdrc musb-hdrc: ** IRQ host usb0008 tx0000 rx0400
    [ 6678.023925] musb-hdrc musb-hdrc: <== Power=e0, DevCtl=5d, int_usb=0x8
    [ 6678.023956] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 832 (+dma 64)
    [ 6678.023956] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48340 len 832/3851
    [ 6678.023986] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 832 (+dma 64)
    [ 6678.023986] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6678.024047] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.024047] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 896 (+dma 64)
    [ 6678.024078] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48380 len 896/3851
    [ 6678.024078] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 896 (+dma 64)
    [ 6678.024108] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6678.024169] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.024169] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 960 (+dma 64)
    [ 6678.024169] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba483c0 len 960/3851
    [ 6678.024200] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 960 (+dma 64)
    [ 6678.024200] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6678.024261] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.024261] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 1024 (+dma 64)
    [ 6678.024291] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48400 len 1024/3851
    [ 6678.024291] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 1024 (+dma 64)
    [ 6678.024322] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6678.024383] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.024383] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 1088 (+dma 64)
    [ 6678.024383] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48440 len 1088/3851
    [ 6678.024414] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 1088 (+dma 64)
    [ 6678.024414] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6678.024475] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.024475] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 1152 (+dma 64)
    [ 6678.024505] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48480 len 1152/3851
    [ 6678.024505] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 1152 (+dma 64)
    [ 6678.024536] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6678.024597] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.024597] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 1216 (+dma 64)
    [ 6678.024597] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba484c0 len 1216/3851
    [ 6678.024627] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 1216 (+dma 64)
    [ 6678.024627] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6678.024688] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.024719] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 1280 (+dma 64)
    [ 6678.024719] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48500 len 1280/3851
    [ 6678.024719] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 1280 (+dma 64)
    [ 6678.024749] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6678.024810] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.024810] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 1344 (+dma 64)
    [ 6678.024810] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48540 len 1344/3851
    [ 6678.024841] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 1344 (+dma 64)
    [ 6678.024841] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6678.024932] musb-hdrc musb-hdrc: ** IRQ host usb0008 tx0000 rx0400
    [ 6678.024932] musb-hdrc musb-hdrc: <== Power=e0, DevCtl=5d, int_usb=0x8
    [ 6678.024963] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 1408 (+dma 64)
    [ 6678.024963] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48580 len 1408/3851
    [ 6678.024963] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 1408 (+dma 64)
    [ 6678.024993] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6678.025054] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.025054] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 1472 (+dma 64)
    [ 6678.025085] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba485c0 len 1472/3851
    [ 6678.025085] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 1472 (+dma 64)
    [ 6678.025085] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6678.025146] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.025177] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 1536 (+dma 64)
    [ 6678.025177] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48600 len 1536/3851
    [ 6678.025207] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 1536 (+dma 64)
    [ 6678.025207] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6678.025268] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.025268] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 1600 (+dma 64)
    [ 6678.025299] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48640 len 1600/3851
    [ 6678.025299] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 1600 (+dma 64)
    [ 6678.025299] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6678.025360] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.025390] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 1664 (+dma 64)
    [ 6678.025390] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48680 len 1664/3851
    [ 6678.025421] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 1664 (+dma 64)
    [ 6678.025421] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6678.025482] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.025482] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 1728 (+dma 64)
    [ 6678.025512] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba486c0 len 1728/3851
    [ 6678.025512] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 1728 (+dma 64)
    [ 6678.025543] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6678.025573] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.025604] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 1792 (+dma 64)
    [ 6678.025604] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48700 len 1792/3851
    [ 6678.025634] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 1792 (+dma 64)
    [ 6678.025634] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6678.025695] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.025695] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 1856 (+dma 64)
    [ 6678.025726] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48740 len 1856/3851
    [ 6678.025726] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 1856 (+dma 64)
    [ 6678.025756] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0
    [ 6678.025787] musb-hdrc musb-hdrc: ** IRQ host usb0000 tx0000 rx0400
    [ 6678.025817] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0003, urb actual 1920 (+dma 64)
    [ 6678.025817] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba48780 len 1920/3851
    [ 6678.025848] musb-hdrc musb-hdrc: <== hw 10 rxcsr a000, urb actual 1920 (+dma 64)
    [ 6678.025848] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0020, rxcount 0
    [ 6678.025909] musb-hdrc musb-hdrc: ** IRQ host usb0008 tx0000 rx0400
    [ 6678.025939] musb-hdrc musb-hdrc: <== Power=e0, DevCtl=5d, int_usb=0x8
    [ 6678.025939] musb-hdrc musb-hdrc: <== hw 10 rxcsr 0203, urb actual 1984 (+dma 64)
    [ 6678.025970] musb-hdrc musb-hdrc: RX10 count 64, buffer 0x8ba487c0 len 1984/3851
    [ 6678.025970] musb-hdrc musb-hdrc: <== hw 10 rxcsr a200, urb actual 1984 (+dma 64)
    [ 6678.026000] musb-hdrc musb-hdrc: ep 10 dma reset, rxcsr 0220, rxcount 0

    The tag usb0008 indicates that a new fame is sent.

    Has anyone noticed this behaviour?

    Thanks and Best Regards,
    Joaquim Duran

    jduran.gm
    New Member
    New Member
    Posts:79


    --
    01 Aug 2014 04:00 AM
    As a clarification, to get the throughput of 480 KBytes/second, it is required to set the CPU load at 100% by executing a task (ex: gzip -c /dev/null). If the frequency of the processor is forcer to 1Ghz, then the throughput is about 200 KBytes per second.

    Joaquim Duran
    jduran.gm
    New Member
    New Member
    Posts:79


    --
    01 Aug 2014 04:01 AM
    The command is:
     gzip -c < /dev/urandom > /dev/null 
    Adam Ford
    Advanced Member
    Advanced Member
    Posts:794


    --
    01 Aug 2014 07:26 AM
    If I understand what you are saying, you're wondering why the USB speeds up when the processor is being heavily tasked? If that is the case, I would suggest changing the governor. The ondemand governor keeps the processor speeds low to save power. When the demand is ramped up, it increases the processor speed.

    If you want to see what available governors:

    DM-37x# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
    conservative userspace ondemand performance

    To see what governor is currently enabled:
    DM-37x# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
    ondemand

    To see what the current processor speed is:
    DM-37x# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
    300000


    If you want to change the speed manually, you have several options.
    DM-37x# cpufreq-set -f 800Mhz (or 1000 depending on which SOM you have)

    Or you can change the governor:
    DM-37x# echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

    Reconfirm the processor speed
    DM-37x# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
    800000

    (some processors can run up to 1GHz)

    You are not authorized to post a reply.