I have been following this USB thread for a while and wanted to add my 2 cents. I have a related but "opposite" problem. My hot plug works but my cold plugs does not. Let me clarify.
5) Plug USB back in. Everything works as expected. So hot plug works.
1) Power up the BBB with the powered USB connected. The USB hub come up alot faster than the BBB.
2) No matter what is done, there is no way to get the BBB to see the USB devices apart from following up a reboot / power cycle as stated above.
OS: Richard Nelson's Linux version 3.8.13-bone30 (root@imx6q-sabrelite-1gb-1) (gcc version
Hardware: BBB Rev B. Only started shipping from March 2014 onwards. I noticed a capacitor discrete mounted near the USB port. Is this a Rev B hack?
I would like to have the USB devices come online upon power up without having to observe the (1) BBB on first (2) plug in the USB Hub + devices sequence. I.E. if I stick all this stuff into an embedded gadget it would not come up on power up. I would have to have some sort of two-phase relay hardware in place to (1) power up the BBB first, then (2) the USB + USB devices / dongles.
ubuntu@woofieone:~$ dmesg | egrep usb
[ 0.135150] usbcore: registered new interface driver usbfs
[ 0.135217] usbcore: registered new interface driver hub
[ 0.135457] usbcore: registered new device driver usb
[ 1.464285] usbcore: registered new interface driver cdc_ether
[ 1.479302] usbcore: registered new interface driver rndis_host
[ 1.503131] usbcore: registered new interface driver cdc_ncm
[ 1.523280] usbcore: registered new interface driver cdc_acm
[ 1.567758] usbcore: registered new interface driver usb-storage
[ 1.621644] musb-hdrc: version 6.0, ?dma?, otg (peripheral+host)
[ 1.628255] musb-hdrc musb-hdrc.0.auto: pdev->id = 0
[ 1.633507] musb-hdrc musb-hdrc.0.auto: drivers/usb/musb/musb_dsps.c:468 dsps_musb_init: OK
[ 1.656309] musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, bulk combine, bulk split, HB-ISO Rx, HB-ISO Tx, SoftConn)
[ 1.656326] musb-hdrc: MHDRC RTL version 2.0
[ 1.656335] musb-hdrc: setup fifo_mode 4
[ 1.656351] musb-hdrc: 28/31 max ep, 16384/16384 memory
[ 1.656456] musb-hdrc musb-hdrc.0.auto: *** mode=3
[ 1.661525] musb-hdrc musb-hdrc.0.auto: *** power=250
[ 1.692769] musb-hdrc musb-hdrc.1.auto: pdev->id = 1
[ 1.698031] musb-hdrc musb-hdrc.1.auto: drivers/usb/musb/musb_dsps.c:468 dsps_musb_init: OK
[ 1.715656] musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, bulk combine, bulk split, HB-ISO Rx, HB-ISO Tx, SoftConn)
[ 1.715668] musb-hdrc: MHDRC RTL version 2.0
[ 1.715677] musb-hdrc: setup fifo_mode 4
[ 1.715689] musb-hdrc: 28/31 max ep, 16384/16384 memory
[ 1.715786] musb-hdrc musb-hdrc.1.auto: *** mode=1
[ 1.720837] musb-hdrc musb-hdrc.1.auto: *** power=250
[ 1.726151] musb-hdrc musb-hdrc.1.auto: MUSB HDRC host driver
[ 1.758390] musb-hdrc musb-hdrc.1.auto: new USB bus registered, assigned bus number 1
[ 1.766666] musb-hdrc musb-hdrc.1.auto: supports USB remote wakeup
[ 1.766748] usb usb1: default language 0x0409
[ 1.766783] usb usb1: udev 1, busnum 1, minor = 0
[ 1.766796] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[ 1.773951] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 1.781539] usb usb1: Product: MUSB HDRC host driver
[ 1.786761] usb usb1: Manufacturer: Linux 3.8.13-bone30 musb-hcd
[ 1.793073] usb usb1: SerialNumber: musb-hdrc.1.auto
[ 1.825146] usb usb1: usb_probe_device
[ 1.825166] usb usb1: configuration #1 chosen from 1 choice
[ 1.825217] usb usb1: adding 1-0:1.0 (config #1, interface 0)
[ 1.825330] hub 1-0:1.0: usb_probe_interface
[ 1.825343] hub 1-0:1.0: usb_probe_interface - got id
[ 1.934524] usb usb1: bus auto-suspend, wakeup 1
[ 2.116993] usbcore: registered new interface driver usbhid
[ 2.122933] usbhid: USB HID core driver
[ 5.561628] usbcore: registered new interface driver rtl8192cu
[ 23.760104] usb usb1: usb wakeup-resume
[ 23.760150] usb usb1: usb auto-resume
[ 23.969260] usb 1-1: new high-speed USB device number 2 using musb-hdrc
[ 24.088645] usb 1-1: default language 0x0409
[ 24.088715] usb 1-1: udev 2, busnum 1, minor = 1
[ 24.088730] usb 1-1: New USB device found, idVendor=1a40, idProduct=0101
[ 24.088742] usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[ 24.088753] usb 1-1: Product: USB 2.0 Hub
[ 24.090507] usb 1-1: usb_probe_device
[ 24.090535] usb 1-1: configuration #1 chosen from 1 choice
[ 24.092498] usb 1-1: adding 1-1:1.0 (config #1, interface 0)
[ 24.092724] hub 1-1:1.0: usb_probe_interface
[ 24.092741] hub 1-1:1.0: usb_probe_interface - got id
[ 24.363806] usb 1-1.3: new full-speed USB device number 3 using musb-hdrc
[ 24.459263] usb 1-1.3: default language 0x0409
[ 24.461214] usb 1-1.3: udev 3, busnum 1, minor = 2
[ 24.461232] usb 1-1.3: New USB device found, idVendor=0a12, idProduct=0001
[ 24.461245] usb 1-1.3: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[ 24.461256] usb 1-1.3: Product: CSR8510 A10
[ 24.461819] usb 1-1.3: usb_probe_device
[ 24.461839] usb 1-1.3: configuration #1 chosen from 1 choice
[ 24.462756] usb 1-1.3: adding 1-1.3:1.0 (config #1, interface 0)
[ 24.463213] usb 1-1.3: adding 1-1.3:1.1 (config #1, interface 1)
[ 24.519918] btusb 1-1.3:1.0: usb_probe_interface
[ 24.519949] btusb 1-1.3:1.0: usb_probe_interface - got id
[ 24.529170] usbcore: registered new interface driver btusb
[ 24.533029] usb 1-1.4: new high-speed USB device number 4 using musb-hdrc
[ 24.612124] usb 1-1.4: default language 0x0409
[ 24.612211] usb 1-1.4: udev 4, busnum 1, minor = 3
[ 24.612227] usb 1-1.4: New USB device found, idVendor=1a40, idProduct=0101
[ 24.612240] usb 1-1.4: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[ 24.612251] usb 1-1.4: Product: USB 2.0 Hub
[ 24.612741] usb 1-1.4: usb_probe_device
[ 24.612762] usb 1-1.4: configuration #1 chosen from 1 choice
[ 24.612904] usb 1-1.4: adding 1-1.4:1.0 (config #1, interface 0)
[ 24.613060] hub 1-1.4:1.0: usb_probe_interface
[ 24.613074] hub 1-1.4:1.0: usb_probe_interface - got id
[ 24.717887] usb 1-1.4: usb auto-suspend, wakeup 1
[ 58.956081] usb 1-1: USB disconnect, device number 2
[ 58.956095] usb 1-1.3: USB disconnect, device number 3
[ 58.956106] usb 1-1.3: unregistering device
[ 58.956119] usb 1-1.3: unregistering interface 1-1.3:1.0
[ 58.956467] musb-hdrc musb-hdrc.1.auto: shutdown urb de1c4bc0 ep1in-intr
[ 58.956491] musb-hdrc musb-hdrc.1.auto: shutdown urb de329f40 ep2in-bulk
[ 58.956508] musb-hdrc musb-hdrc.1.auto: shutdown urb de329e40 ep2in-bulk
[ 58.966138] usb 1-1.3: unregistering interface 1-1.3:1.1
[ 58.966430] usb 1-1.3: usb_disable_device nuking all URBs
[ 58.966915] usb 1-1.4: USB disconnect, device number 4
[ 58.966930] usb 1-1.4: unregistering device
[ 58.966942] usb 1-1.4: unregistering interface 1-1.4:1.0
[ 58.967341] usb 1-1.4: usb_disable_device nuking all URBs
[ 58.969200] usb 1-1: unregistering device
[ 58.969222] usb 1-1: unregistering interface 1-1:1.0
[ 58.969414] musb-hdrc musb-hdrc.1.auto: shutdown urb de1c46c0 ep1in-intr
[ 58.973932] usb 1-1: usb_disable_device nuking all URBs
[ 59.083145] usb usb1: bus auto-suspend, wakeup 1
[ 67.196410] usb usb1: usb wakeup-resume
[ 67.196457] usb usb1: usb auto-resume
[ 67.405253] usb 1-1: new high-speed USB device number 5 using musb-hdrc
[ 67.524620] usb 1-1: default language 0x0409
[ 67.524688] usb 1-1: udev 5, busnum 1, minor = 4
[ 67.524702] usb 1-1: New USB device found, idVendor=1a40, idProduct=0101
[ 67.524715] usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[ 67.524726] usb 1-1: Product: USB 2.0 Hub
[ 67.526497] usb 1-1: usb_probe_device
[ 67.526525] usb 1-1: configuration #1 chosen from 1 choice
[ 67.528467] usb 1-1: adding 1-1:1.0 (config #1, interface 0)
[ 67.528691] hub 1-1:1.0: usb_probe_interface
[ 67.528708] hub 1-1:1.0: usb_probe_interface - got id
[ 67.799792] usb 1-1.3: new full-speed USB device number 6 using musb-hdrc
[ 67.895269] usb 1-1.3: default language 0x0409
[ 67.897204] usb 1-1.3: udev 6, busnum 1, minor = 5
[ 67.897222] usb 1-1.3: New USB device found, idVendor=0a12, idProduct=0001
[ 67.897235] usb 1-1.3: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[ 67.897246] usb 1-1.3: Product: CSR8510 A10
[ 67.897799] usb 1-1.3: usb_probe_device
[ 67.897820] usb 1-1.3: configuration #1 chosen from 1 choice
[ 67.898711] usb 1-1.3: adding 1-1.3:1.0 (config #1, interface 0)
[ 67.898948] btusb 1-1.3:1.0: usb_probe_interface
[ 67.898965] btusb 1-1.3:1.0: usb_probe_interface - got id
[ 67.902207] usb 1-1.3: adding 1-1.3:1.1 (config #1, interface 1)
[ 67.969786] usb 1-1.4: new high-speed USB device number 7 using musb-hdrc
[ 68.050043] usb 1-1.4: default language 0x0409
[ 68.050111] usb 1-1.4: udev 7, busnum 1, minor = 6
[ 68.050125] usb 1-1.4: New USB device found, idVendor=1a40, idProduct=0101
[ 68.050138] usb 1-1.4: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[ 68.050149] usb 1-1.4: Product: USB 2.0 Hub
[ 68.050658] usb 1-1.4: usb_probe_device
[ 68.050679] usb 1-1.4: configuration #1 chosen from 1 choice
[ 68.050816] usb 1-1.4: adding 1-1.4:1.0 (config #1, interface 0)
[ 68.050956] hub 1-1.4:1.0: usb_probe_interface
[ 68.050970] hub 1-1.4:1.0: usb_probe_interface - got id
[ 68.155761] usb 1-1.4: usb auto-suspend, wakeup 1
[ 280.645675] usb 1-1.1: new high-speed USB device number 8 using musb-hdrc
[ 280.857913] usb 1-1.1: default language 0x0409
[ 280.859216] usb 1-1.1: udev 8, busnum 1, minor = 7
[ 280.859265] usb 1-1.1: New USB device found, idVendor=154b, idProduct=004f
[ 280.859305] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 280.859340] usb 1-1.1: Product: USB 2.0 FD
[ 280.859373] usb 1-1.1: Manufacturer: PNY Tech
[ 280.859405] usb 1-1.1: SerialNumber: 055811050105115493000298
[ 280.864561] usb 1-1.1: usb_probe_device
[ 280.864628] usb 1-1.1: configuration #1 chosen from 1 choice
[ 280.868047] usb 1-1.1: adding 1-1.1:1.0 (config #1, interface 0)
[ 280.868795] usb-storage 1-1.1:1.0: usb_probe_interface
[ 280.868877] usb-storage 1-1.1:1.0: usb_probe_interface - got id
[ 280.872671] scsi0 : usb-storage 1-1.1:1.0