Tool/software: Linux
We are using kernel version 4.9.28 (ti processor sdk 4.00.04) on our custom AM335x board.
I have 3 USB flash drives connected. 2 flash drives are connected to USB1 peripheral through USB hub and 1 USB flash drive is connected to USB0 peripheral.
Following is what we are observing during EFT testing:
Prior to subjecting the unit to EFT:
listed the block devices under /dev/ -
# ls /dev/sd*
/dev/sda /dev/sda1 /dev/sdb /dev/sdb1 /dev/sdc /dev/sdc1
After subjecting unit to EFT:
I do not see block device for the USB flash drive connected to USB0 peripheral under /dev/
# ls /dev/sd*
/dev/sda /dev/sda1 /dev/sdb /dev/sdb1
I tried removing and reconnecting the USB flash , still block device /dev/sd* does not show up.
Nevertheless, the low-level USB device is in fact properly detected. See the logs;
# [ 1153.924737] usb 1-1: USB disconnect, device number 37
[ 1158.677385] usb 1-1: new high-speed USB device number 38 using musb-hdrc
[ 1158.801231] usb 1-1: New USB device found, idVendor=0781, idProduct=5575
[ 1158.808306] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 1158.816472] usb 1-1: Product: Cruzer Glide
[ 1158.821100] usb 1-1: Manufacturer: SanDisk
[ 1158.825708] usb 1-1: SerialNumber: 2005173961119B5080A5
[ 1158.839263] usb-storage 1-1:1.0: USB Mass Storage device detected
[ 1158.847144] scsi host0: usb-storage 1-1:1.0
I tried turning ON and OFF USB power, still block device /dev/sd* does not show up.
Nevertheless, the low-level USB device is in fact properly detected. See the logs;
# devmem 0x47401018
0x00000001
# devmem 0x47401818
0x00000001
# echo 0 > /sys/kernel/debug/musb-hdrc.0/softconnect
# [ 1492.336079] usb 1-1: USB disconnect, device number 38
# echo 1 > /sys/kernel/debug/musb-hdrc.0/softconnect
# [ 1503.653380] usb 1-1: new high-speed USB device number 39 using musb-hdrc
[ 1503.777223] usb 1-1: New USB device found, idVendor=0781, idProduct=5575
[ 1503.784309] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 1503.792483] usb 1-1: Product: Cruzer Glide
[ 1503.797127] usb 1-1: Manufacturer: SanDisk
[ 1503.801732] usb 1-1: SerialNumber: 2005173961119B5080A5
[ 1503.815237] usb-storage 1-1:1.0: USB Mass Storage device detected
[ 1503.824783] scsi host0: usb-storage 1-1:1.0
dmesg output:
I do see some warning messages after subjecting unit to EFT, see the logs:
[ 423.467013] musb-hdrc musb-hdrc.0: Babble
[ 423.472317] usb 1-1: USB disconnect, device number 21
[ 423.479137] ------------[ cut here ]------------
[ 423.484019] WARNING: CPU: 0 PID: 74 at drivers/dma/cppi41.c:702 cppi41_stop_chan+0x260/0x350
[ 423.492849] Modules linked in: ti_am335x_adc omap_aes_driver crypto_engine omap_sham cdc_ether usbnet mii omap_wdt ti_am335x_tscadc
[ 423.505306] CPU: 0 PID: 74 Comm: kworker/0:3 Not tainted 4.9.28-pic6-geed43d1050 #3
[ 423.513317] Hardware name: Generic AM33XX (Flattened Device Tree)
[ 423.519716] Workqueue: usb_hub_wq hub_event
[ 423.524095] Backtrace:
[ 423.526685] [<c010b9dc>] (dump_backtrace) from [<c010bc98>] (show_stack+0x18/0x1c)
[ 423.534612] r7:00000009 r6:00000000 r5:c084ac1c r4:00000000
[ 423.540546] [<c010bc80>] (show_stack) from [<c0379074>] (dump_stack+0x24/0x28)
[ 423.548117] [<c0379050>] (dump_stack) from [<c0129b90>] (__warn+0xe8/0x100)
[ 423.555410] [<c0129aa8>] (__warn) from [<c0129c60>] (warn_slowpath_null+0x28/0x30)
[ 423.563338] r9:c4041000 r8:0000003c r7:00000001 r6:c3bdbc10 r5:c3bdbc18 r4:c3bd9a80
[ 423.571449] [<c0129c38>] (warn_slowpath_null) from [<c03cd30c>] (cppi41_stop_chan+0x260/0x350)
[ 423.580479] [<c03cd0ac>] (cppi41_stop_chan) from [<c049d484>] (cppi41_dma_channel_abort+0x11c/0x224)
[ 423.590042] r9:c0a7df54 r8:c0a7df5c r7:c0a7df70 r6:00000004 r5:00000000 r4:c3c3a064
[ 423.598155] [<c049d368>] (cppi41_dma_channel_abort) from [<c049a128>] (musb_cleanup_urb+0x60/0x1e0)
[ 423.607628] r10:c3c3a064 r9:c3c56010 r8:c88fd410 r7:00000000 r6:c3cf0f80 r5:00000080
[ 423.615819] r4:c3c564e8
[ 423.618477] [<c049a0c8>] (musb_cleanup_urb) from [<c049a920>] (musb_urb_dequeue+0xf4/0x12c)
[ 423.627223] r10:00000001 r9:c0009580 r8:a0000093 r7:00000000 r6:c3c56010 r5:c3f64e00
[ 423.635414] r4:c3cf0f80
[ 423.638071] [<c049a82c>] (musb_urb_dequeue) from [<c046ba04>] (unlink1+0x34/0x110)
[ 423.645999] r10:c3d0c000 r9:c3e08200 r8:c3c49400 r7:ffffff94 r6:c3c49400 r5:c3e01180
[ 423.654193] r4:c3cf0f80 r3:c049a82c
[ 423.657940] [<c046b9d0>] (unlink1) from [<c046dc6c>] (usb_hcd_flush_endpoint+0xfc/0x110)
[ 423.666414] r9:c3e08200 r8:c3c49400 r7:c0a2d308 r6:c3e01198 r5:c3e01180 r4:c3cf0f80
[ 423.674525] [<c046db70>] (usb_hcd_flush_endpoint) from [<c0470888>] (usb_disable_endpoint+0x90/0x98)
[ 423.684089] r9:c3e08200 r8:00000000 r7:c3e1f800 r6:c3d2e3c8 r5:c3e1f800 r4:c3e01180
[ 423.692198] [<c04707f8>] (usb_disable_endpoint) from [<c04708dc>] (usb_disable_interface+0x4c/0x5c)
[ 423.701665] r5:00000001 r4:00000038
[ 423.705414] [<c0470890>] (usb_disable_interface) from [<c047310c>] (usb_unbind_interface+0x1fc/0x2b8)
[ 423.715069] r9:c3e08200 r8:c3d0c020 r7:c3d0c028 r6:c0a2d410 r5:c0a2e010 r4:c0a2e010
[ 423.723181] [<c0472f10>] (usb_unbind_interface) from [<c041626c>] (__device_release_driver+0x90/0x124)
[ 423.732927] r10:00000000 r9:c3e08200 r8:c3e1f870 r7:c3d0c028 r6:c0a2d410 r5:c0a2e010
[ 423.741118] r4:c3d0c020
[ 423.743774] [<c04161dc>] (__device_release_driver) from [<c0416324>] (device_release_driver+0x24/0x30)
[ 423.753513] r5:c3d0c020 r4:c3d0c054
[ 423.757259] [<c0416300>] (device_release_driver) from [<c0415af0>] (bus_remove_device+0xe0/0x10c)
[ 423.766543] r5:c3d0c020 r4:c399583c
[ 423.770297] [<c0415a10>] (bus_remove_device) from [<c0412a8c>] (device_del+0x114/0x224)
[ 423.778676] r7:c3d0c028 r6:c0a7d4c0 r5:c3d0c020 r4:c3e1f800
[ 423.784605] [<c0412978>] (device_del) from [<c0470994>] (usb_disable_device+0xa8/0x1ec)
[ 423.792985] r8:c3d0c000 r7:c3c49400 r6:00000000 r5:00000001 r4:c3e1f800
[ 423.800006] [<c04708ec>] (usb_disable_device) from [<c0467c0c>] (usb_disconnect+0x70/0x228)
[ 423.808752] r9:c3e08200 r8:c3c58a00 r7:c3e1f870 r6:c3e1f8a4 r5:c3e1f800 r4:00000000
[ 423.816863] [<c0467b9c>] (usb_disconnect) from [<c04694bc>] (hub_event+0x400/0x10ec)
[ 423.824972] r10:00000000 r9:00000000 r8:c3c58d24 r7:c3c4e800 r6:00000001 r5:00000001
[ 423.833166] r4:00000000 r3:c3e1f800
[ 423.836917] [<c04690bc>] (hub_event) from [<c013f23c>] (process_one_work+0x1b8/0x3e8)
[ 423.845117] r10:c3cad800 r9:00000000 r8:c7e9d400 r7:00000000 r6:c0a0f7d0 r5:c3cad800
[ 423.853309] r4:c3c58d24
[ 423.855965] [<c013f084>] (process_one_work) from [<c013f4c4>] (worker_thread+0x58/0x57c)
[ 423.864438] r10:c3cad800 r9:c3cc0000 r8:c0a0f7f4 r7:c0a156c0 r6:00000008 r5:c3cad818
[ 423.872630] r4:c0a0f7d0
[ 423.875292] [<c013f46c>] (worker_thread) from [<c0144d30>] (kthread+0xf8/0x110)
[ 423.882947] r10:00000000 r9:00000000 r8:c013f46c r7:c3cad800 r6:c3cc0000 r5:c3c99000
[ 423.891139] r4:00000000
[ 423.893798] [<c0144c38>] (kthread) from [<c0107d38>] (ret_from_fork+0x14/0x3c)
[ 423.901360] r8:00000000 r7:00000000 r6:00000000 r5:c0144c38 r4:c3c99000
[ 423.908372] ---[ end trace 695458ba9fac27d7 ]---
[ 423.930676] sd 0:0:0:0: [sda] tag#0 UNKNOWN(0x2003) Result: hostbyte=0x01 driverbyte=0x00
[ 423.939314] sd 0:0:0:0: [sda] tag#0 CDB: opcode=0x28 28 00 00 00 00 80 00 00 90 00
[ 423.947268] blk_update_request: I/O error, dev sda, sector 128
[ 423.975530] udevd[3711]: inotify_add_watch(6, /dev/sda1, 10) failed: No such file or directory
[ 424.061034] udevd[3711]: inotify_add_watch(6, /dev/sda, 10) failed: No such file or directory
[ 424.201468] usb 1-1: new high-speed USB device number 22 using musb-hdrc
[ 424.332329] usb 1-1: New USB device found, idVendor=0781, idProduct=5575
[ 424.344031] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 424.352079] usb 1-1: Product: Cruzer Glide
[ 424.356737] usb 1-1: Manufacturer: SanDisk
[ 424.361960] usb 1-1: SerialNumber: 2005173961119B5080A5
[ 424.368127] usb_emmc_test.s (3912): drop_caches: 3
[ 424.382623] usb-storage 1-1:1.0: USB Mass Storage device detected
[ 424.390738] scsi host0: usb-storage 1-1:1.0
[ 425.677799] rtc rtc0: read_time: fail to read: -22
[ 425.842002] usb 1-1: USB disconnect, device number 22
[ 426.183459] usb 1-1: new high-speed USB device number 23 using musb-hdrc
[ 426.315431] usb 1-1: New USB device found, idVendor=0781, idProduct=5575
[ 426.327207] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 426.344571] usb 1-1: Product: Cruzer Glide
[ 426.350901] usb 1-1: Manufacturer: SanDisk
[ 426.358829] usb 1-1: SerialNumber: 2005173961119B5080A5
[ 426.377940] usb-storage 1-1:1.0: USB Mass Storage device detected
[ 426.399456] scsi host0: usb-storage 1-1:1.0
[ 426.420929] usb_emmc_test.s (3933): drop_caches: 3
[ 429.327518] usb_emmc_test.s (3962): drop_caches: 3
[ 430.787726] usb 1-1: USB disconnect, device number 23
[ 430.813892] usb 2-1: USB disconnect, device number 33
[ 430.827649] usb 2-1.1: USB disconnect, device number 35
[ 430.854803] usb 2-1.2: USB disconnect, device number 34
[ 430.875086] cdc_ether 2-1.2:1.0 usb0: unregister 'cdc_ether' usb-musb-hdrc.1-1.2, CDC Ethernet Device
[ 430.936708] usb 2-1.3: USB disconnect, device number 36
[ 431.253393] usb 2-1: new high-speed USB device number 37 using musb-hdrc
[ 431.376607] usb 2-1: New USB device found, idVendor=0424, idProduct=2513
[ 431.383677] usb 2-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 431.397104] hub 2-1:1.0: USB hub found
[ 431.406452] hub 2-1:1.0: 3 ports detected
[ 431.515390] usb 1-1: new high-speed USB device number 24 using musb-hdrc
[ 431.639239] usb 1-1: New USB device found, idVendor=0781, idProduct=5575
[ 431.646437] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 431.654606] usb 1-1: Product: Cruzer Glide
[ 431.659257] usb 1-1: Manufacturer: SanDisk
[ 431.663860] usb 1-1: SerialNumber: 2005173961119B5080A5
[ 431.675199] usb-storage 1-1:1.0: USB Mass Storage device detected
[ 431.685083] scsi host0: usb-storage 1-1:1.0
[ 431.698401] usb 2-1.2: new high-speed USB device number 38 using musb-hdrc
[ 431.794540] usb 2-1.2: New USB device found, idVendor=0525, idProduct=a4a2
[ 431.801788] usb 2-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 431.811594] usb 2-1.2: Product: RNDIS/Ethernet Gadget
[ 431.818412] usb 2-1.2: Manufacturer: Linux 3.14.28-ltsi with r8a66597_udc
[ 431.842488] cdc_ether 2-1.2:1.0 usb0: register 'cdc_ether' at usb-musb-hdrc.1-1.2, CDC Ethernet Device, 62:47:82:e3:1f:3b
[ 432.070402] usb 2-1.1: new high-speed USB device number 39 using musb-hdrc
[ 432.166237] usb 2-1.1: New USB device found, idVendor=0781, idProduct=5575
[ 432.173487] usb 2-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 432.181864] usb 2-1.1: Product: Cruzer Glide
[ 432.186704] usb 2-1.1: Manufacturer: SanDisk
[ 432.191535] usb 2-1.1: SerialNumber: 2006057272119B5080AA
[ 432.203124] usb-storage 2-1.1:1.0: USB Mass Storage device detected
[ 432.216813] scsi host1: usb-storage 2-1.1:1.0
[ 432.412385] usb 2-1.3: new high-speed USB device number 40 using musb-hdrc
[ 432.508235] usb 2-1.3: New USB device found, idVendor=0781, idProduct=5575
[ 432.515480] usb 2-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 432.525197] usb 2-1.3: Product: Cruzer Glide
[ 432.531171] usb 2-1.3: Manufacturer: SanDisk
[ 432.535974] usb 2-1.3: SerialNumber: 2003500181119B5080AB
[ 432.547680] usb-storage 2-1.3:1.0: USB Mass Storage device detected
[ 432.557072] scsi host2: usb-storage 2-1.3:1.0
[ 433.230907] scsi 1:0:0:0: Direct-Access SanDisk Cruzer Glide 1.00 PQ: 0 ANSI: 6
[ 433.245970] sd 1:0:0:0: [sda] 30595072 512-byte logical blocks: (15.7 GB/14.6 GiB)
[ 433.262323] sd 1:0:0:0: [sda] Write Protect is on
[ 433.267410] sd 1:0:0:0: [sda] Mode Sense: 43 00 80 00
[ 433.268155] sd 1:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[ 433.288931] sda: sda1
[ 433.300719] sd 1:0:0:0: [sda] Attached SCSI removable disk
[ 433.615474] scsi 2:0:0:0: Direct-Access SanDisk Cruzer Glide 1.00 PQ: 0 ANSI: 6
[ 433.633718] sd 2:0:0:0: [sdb] 30595072 512-byte logical blocks: (15.7 GB/14.6 GiB)
[ 433.652512] sd 2:0:0:0: [sdb] Write Protect is off
[ 433.660786] sd 2:0:0:0: [sdb] Mode Sense: 43 00 00 00
[ 433.663129] sd 2:0:0:0: [sdb] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[ 433.678607] rtc rtc0: read_time: fail to read: -22
[ 433.692721] sdb: sdb1
[ 433.706406] sd 2:0:0:0: [sdb] Attached SCSI removable disk
[ 436.145314] FAT-fs (sdb1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
I have attached complete dmesg output for reference.
The only way to recover from this condition is to reboot my system, after reboot block device /dev/sd* shows up.
How do I get the usb-storage thing active after subjecting unit to EFT so it continues the process, exposes the storage to the SCSI and I get the /dev/sd* (USB0 peripheral) block device listed?