USB broken on Banana Pi in Linux 4.6

Marc Haber
2016-05-30T19:02:58Z

Hi,

on my Bananapis, in kernel 4.6 USB does not work. Kernel configuration
is USB-wise identical to 4.5 (grepped for differences in (hci|usb)),
and in 4.6 there is not even /dev/bus/usb.

Here is the log excerpt from a 4.5 kernel coming up:

May 15 09:30:14 cadencia kernel: [ 5.307730] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
May 15 09:30:14 cadencia kernel: [ 5.312891] ehci-platform: EHCI generic platform driver
May 15 09:30:14 cadencia kernel: [ 5.315579] sun4i-ss 1c15000.crypto-engine: no reset control found
May 15 09:30:14 cadencia kernel: [ 5.317303] sun4i-ss 1c15000.crypto-engine: Die ID 0
May 15 09:30:14 cadencia kernel: [ 5.322742] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
May 15 09:30:14 cadencia kernel: [ 5.332052] ohci-platform: OHCI generic platform driver
May 15 09:30:14 cadencia kernel: [ 5.360131] axp20x 0-0034: AXP20x variant AXP209 found
May 15 09:30:14 cadencia kernel: [ 5.405989] axp20x 0-0034: AXP20X driver loaded
May 15 09:30:14 cadencia kernel: [ 5.409201] ehci-platform 1c14000.usb: EHCI Host Controller
May 15 09:30:14 cadencia kernel: [ 5.409271] ehci-platform 1c14000.usb: new USB bus registered, assigned bus number 1
May 15 09:30:14 cadencia kernel: [ 5.409506] ehci-platform 1c14000.usb: irq 29, io mem 0x01c14000
May 15 09:30:14 cadencia kernel: [ 5.410553] sunxi-wdt 1c20c90.watchdog: Watchdog enabled (timeout=16 sec, nowayout=0)
May 15 09:30:14 cadencia kernel: [ 5.420414] ehci-platform 1c14000.usb: USB 2.0 started, EHCI 1.00
May 15 09:30:14 cadencia kernel: [ 5.420977] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
May 15 09:30:14 cadencia kernel: [ 5.420998] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
May 15 09:30:14 cadencia kernel: [ 5.421010] usb usb1: Product: EHCI Host Controller
May 15 09:30:14 cadencia kernel: [ 5.421021] usb usb1: Manufacturer: Linux 4.5.4-zgbpi-armmp-lpae ehci_hcd
May 15 09:30:14 cadencia kernel: [ 5.421033] usb usb1: SerialNumber: 1c14000.usb
May 15 09:30:14 cadencia kernel: [ 5.422317] hub 1-0:1.0: USB hub found
May 15 09:30:14 cadencia kernel: [ 5.422431] hub 1-0:1.0: 1 port detected
May 15 09:30:14 cadencia kernel: [ 5.423753] ehci-platform 1c1c000.usb: EHCI Host Controller
May 15 09:30:14 cadencia kernel: [ 5.423814] ehci-platform 1c1c000.usb: new USB bus registered, assigned bus number 2
May 15 09:30:14 cadencia kernel: [ 5.424055] ehci-platform 1c1c000.usb: irq 33, io mem 0x01c1c000
May 15 09:30:14 cadencia kernel: [ 5.432424] ehci-platform 1c1c000.usb: USB 2.0 started, EHCI 1.00
May 15 09:30:14 cadencia kernel: [ 5.433089] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
May 15 09:30:14 cadencia kernel: [ 5.433110] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
May 15 09:30:14 cadencia kernel: [ 5.433122] usb usb2: Product: EHCI Host Controller
May 15 09:30:14 cadencia kernel: [ 5.433133] usb usb2: Manufacturer: Linux 4.5.4-zgbpi-armmp-lpae ehci_hcd
May 15 09:30:14 cadencia kernel: [ 5.433144] usb usb2: SerialNumber: 1c1c000.usb
May 15 09:30:14 cadencia kernel: [ 5.434472] hub 2-0:1.0: USB hub found
May 15 09:30:14 cadencia kernel: [ 5.434595] hub 2-0:1.0: 1 port detected
May 15 09:30:14 cadencia kernel: [ 5.436189] ohci-platform 1c14400.usb: Generic Platform OHCI controller
May 15 09:30:14 cadencia kernel: [ 5.436528] ohci-platform 1c14400.usb: new USB bus registered, assigned bus number 3
May 15 09:30:14 cadencia kernel: [ 5.436779] ohci-platform 1c14400.usb: irq 30, io mem 0x01c14400
May 15 09:30:14 cadencia kernel: [ 5.497002] usb usb3: New USB device found, idVendor=1d6b, idProduct=0001
May 15 09:30:14 cadencia kernel: [ 5.497032] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
May 15 09:30:14 cadencia kernel: [ 5.497045] usb usb3: Product: Generic Platform OHCI controller
May 15 09:30:14 cadencia kernel: [ 5.497056] usb usb3: Manufacturer: Linux 4.5.4-zgbpi-armmp-lpae ohci_hcd
May 15 09:30:14 cadencia kernel: [ 5.497068] usb usb3: SerialNumber: 1c14400.usb

In kernel 4.6, the message "ohci-platform: OHCI generic platform
driver" is the last one, and "ehci-platform 1c14000.usb: EHCI Host
Controller" is the first one that is missing.

Is this already a known issue? Or, does a 4.6 kernel need to be
configured differently if you want USB?