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.

[参考译文] Linux/AM3354:间歇性 USB 读/写故障

Guru**** 2950080 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/673823/linux-am3354-intermittent-usb-read-write-failures

器件型号:AM3354

工具/软件:Linux

您好!

我正在开发基于 TI Sitara 335x 的电路板。 使用 Sitara SDK 版本7.00.00、Ubuntu 12.04.5LTS、GNU/Linux 3.12.10-ti2013.12.01 armv71。 有两个 USB 端口。 当我在这些端口中的任何一个上插入 USB 驱动器时、它已成功安装、但观察到间歇性 I/O 错误并导致我的应用程序挂起和崩溃、需要重新启动。  在读取和写入操作期间都观察到 I/O 错误。

下面是观察到 USB 故障时'dmesg'命令输出的快照。

[11149.266851]---- [在此处剪切]-----
[11149.266911]警告:CPU:0 PID:18652 at drivers/dma/ccppi41.c:612 cppio1_dma_control+0x29c/0x2e0 ()
[11149.266918]链接到的模块:bufferclass_ti (O) omaplfb (O) pvrsrvkm (O) snd_soc_omp snd_pcm_dmaengine musb_dsps musb_hdrc musb_am335x
[11149.266959] CPU:0 PID:18652 Comm:SCSI_eh_12污染:G       W O 3.12.10-ti2013.12.01 #1
[11149.266967]回溯:
[11149.266991][ ](dump_backtrace+0x0/0x10c)从[ ](show_stack+0x18/0x1c)
[11149.266998] R6:c031e15c R5:00000009 R4:00000000 R3:00000000
[11149.267028][ ](show_stack+0x0/0x1c)、来自[ ](dump_stack+0x20/0x28)
[11149.267048][ ](dump_stack+0x0/0x28)从[ ](WARN_RASPEK_COMMON + 0x70/0x90)
[11149.267062][ ](WARN_RASPEK_COMMON + 0x0/0x90)、从[ ](WARN_RASPEK_NULL_0x24/0x2C)
[11149.267068] R8:0000003c r7:00000001 R6:00000022 R5:ed422000 R4:ed3664c0
[11149.267088][ ](warn_slESpath_null+0x0/0x2C)、来自[ ](cppi41_dma_control+0x29c/0x2e0)
[11149.267150][ ](cppi41_dma_control+0x0/0x2e0)从[ ](cppi41_dma_channel_abort+0xc4/0x130 [musb_hdrc])
[11149.267185][ ](cppi41_dma_channel_abort+0x0/0x130 [musb_hdrc])、从[ ](musb_clean_h话 术+0x48/0xf8 [musb_hdrc])
[11149.267191] R8:ed7d6010 r7:ed3f7068 R6:ec667240 R5:f0c4a520 R4:ed7d63f0
[11149.267191] R3:bf00ccb0
[11149.267229][ ](musb_clean_话 术+0x0/0xf8 [musb_hdrc])、来自[ ](musb_hurb_dequeue+0x110/0x124 [musb_hdrc])
[11149.267255][ ](musb_hurb_dequeue+0x0/0x124 [musb_hdrc])、来自[ ](unlink1+0x34/0x10c)
[11149.2672667][ ](unlink1+0x0/0x10c)从[ ](USB_hcd_unlink_h话 术+0x60/0x7c)
[11149.267280][ ](USB_hcd_unlink_h话 术+0x0/0x7c)、来自[ ](USB_unlink 话术+0x34/0x50)
[11149.267285] r7:0000000a R6:000003e8 R5:ec0c6000 R4:ec0c6370
[11149.267307][ ](USB_unlink_话 术+0x0/0x50)、来自[ ](USB_STOR_STOP_transport + 0x64/0x68)
[11149.267319][ ](USB_STOR_STOP_transport + 0x0/0x68)从[ ](COMMAND_ABORT+0x90/0x9C)
[11149.267325] R4:ec0c6370 R3:ec0c6000
[11149.267354][ ](COMMAND_ABORT+0x0/0x9C)从[ ](scsi_send_eh_cmnd+0x154/0x370)
[11149.267360] R4:e40f82c0 R3:c0446758
[11149.267375][ ](scsi_send_eh_cmnd+0x0/0x370)、来自[ ](scsi_eh_tur+0x3c/0x74)
[11149.267388][ ](scsi_eh_tur+0x0/0x74)、来自[ ](scsi_eh_test_devices/0x78/0x170)
[11149.267393] r7:ed6bdf20 R6:00000000 R5:ed6bdf30 R4:e40f82c0
[11149.267411] ](scsi_eh_test_devices/0x0/0x170)、从[ ](scsi_error_handler + 0x3f8/0x470)
[11149.267426][ ](SCSI_ERROR_handler + 0x0/0x470)、来自[ ](kthread+0xac/bb 8)
[11149.267449][ ](kthread+0x0/b8)从[ ](RET_FANK_F叉+0x14/0x3c)
[11149.267455] r7:00000000 R6:00000000 R5:c005f6bc R4:ed13fb04
[11149.267467]--[结束线迹1b75b31a2719ed65 ]--
[11149.386879] USB 1-1:使用 musb-hdrc 重置高速 USB 器件编号12
[11156.268077] init:串行主进程(21325)终止,状态为1
[11156.26823] init:串行主进程结束,重新开始
[11165.646879] USB 1-1:使用 musb-hdrc 重置高速 USB 器件编号12
[11165.906849] USB 1-1:使用 musb-hdrc 重置高速 USB 器件编号12
[11166.288097] init:串行主进程(21339)终止,状态为1
[11166.288308]初始化:串行主进程结束,重新开始
[11176.166899] USB 1-1:使用 musb-hdrc 重置高速 USB 器件编号12
[11176.308137] init:串行主进程(21351)终止,状态为1
[11176.308337] init:串行主进程结束,重新生成
[11176.311810] SD 12:0:0:0:0:器件脱机-错误恢复后未就绪
[11176.311875] SD 12:0:0:0:[SDA]未处理错误代码
[11176.311886] SD 12:0:0:0:[SDA]
[11176.311895]结果:hostbyte=0x05 driverbyte=0x00
[11176.311903] SD 12:0:0:0:[SDA] CDB:
[11176.311911] cdb[0]= 0x28:28 00 00 01 B8 00 08 00
[11176.311939] end_request:I/O error、dev sda、sector 440
[11176.317492]器件 SDA1上的缓冲器 I/O 错误、逻辑块39

[11176.323822] SD 12:0:0:0:0:拒绝 I/O 到离线设备

[11176.334857] SD 12:0:0:0:0:拒绝 I/O 到离线设备
[11176.351581] SD 12:0:0:0:0:拒绝 I/O 到离线设备
[11176.35785] SD 12:0:0:0:0:拒绝 I/O 到离线设备
[11176.363181] SD 12:0:0:0:0:拒绝 I/O 到离线设备
[11176.36889] SD 12:0:0:0:0:拒绝 I/O 到离线设备
[11186.352965] init:串行主进程(21364)终止,状态为1
[11186.353163] init:串行主进程结束,重新开始
[11196.373267] init:串行主进程(21378)终止,状态为1
[11196.373479] init:串行主进程结束,重新开始

此致、

Suresh