Modify

Opened 3 years ago

Closed 3 years ago

#19056 closed defect (fixed)

USB1 not working, only USB2

Reported by: martin.espinoza@… Owned by: developers
Priority: normal Milestone:
Component: packages Version: Trunk
Keywords: Cc:

Description

I've installed every kmod I can think of, and everything else too, and I have usb2 working but not usb.

x86/generic Chaos Calmer r44497 / LuCI (git-15.051.48491-4137afe) on a WebDT Dt168 (AMD GEODE)

base-files - 157-r44497
busybox - 1.22.1-5
dnsmasq - 2.72-4
dropbear - 2014.65-2
firewall - 2015-01-08
fstools - 2015-01-28-6a448a100c7ce8b8b85f262ba1258e54363da9cc
hostapd-common - 2014-10-25-1
hostapd-utils - 2014-10-25-1
ip6tables - 1.4.21-1
iptables - 1.4.21-1
iw - 3.15-1
jshn - 2015-01-28-827ad8337e88ec9e0bf73a8af1d6cf8555e8ef3d
jsonfilter - 2014-06-19-cdc760c58077f44fc40adbbe41e1556a67c1b9a9
kernel - 3.14.32-1-b32ae41c4ede97977e59d041b932c181
kmod-8139too - 3.14.32-1
kmod-ath - 3.14.32+2014-11-04-1
kmod-ath5k - 3.14.32+2014-11-04-1
kmod-cfg80211 - 3.14.32+2014-11-04-1
kmod-crypto-aes - 3.14.32-1
kmod-crypto-arc4 - 3.14.32-1
kmod-crypto-core - 3.14.32-1
kmod-hid - 3.14.32-1
kmod-hid-generic - 3.14.32-1
kmod-hwmon-core - 3.14.32-1
kmod-input-core - 3.14.32-1
kmod-input-evdev - 3.14.32-1
kmod-input-matrixkmap - 3.14.32-1
kmod-ip6tables - 3.14.32-1
kmod-ipt-conntrack - 3.14.32-1
kmod-ipt-core - 3.14.32-1
kmod-ipt-nat - 3.14.32-1
kmod-ipv6 - 3.14.32-1
kmod-lib-crc-ccitt - 3.14.32-1
kmod-libphy - 3.14.32-1
kmod-mac80211 - 3.14.32+2014-11-04-1
kmod-mii - 3.14.32-1
kmod-nf-conntrack - 3.14.32-1
kmod-nf-conntrack6 - 3.14.32-1
kmod-nf-ipt - 3.14.32-1
kmod-nf-ipt6 - 3.14.32-1
kmod-nf-nat - 3.14.32-1
kmod-nf-nathelper - 3.14.32-1
kmod-nls-base - 3.14.32-1
kmod-pcnet32 - 3.14.32-1
kmod-ppp - 3.14.32-1
kmod-pppoe - 3.14.32-1
kmod-pppox - 3.14.32-1
kmod-pps - 3.14.32-1
kmod-ptp - 3.14.32-1
kmod-r8169 - 3.14.32-1
kmod-slhc - 3.14.32-1
kmod-tg3 - 3.14.32-1
kmod-usb-core - 3.14.32-1
kmod-usb-hid - 3.14.32-1
kmod-usb-ohci - 3.14.32-1
kmod-usb-uhci - 3.14.32-1
kmod-usb2 - 3.14.32-1
kmod-usb2-pci - 3.14.32-1
libblobmsg-json - 2015-01-28-827ad8337e88ec9e0bf73a8af1d6cf8555e8ef3d
libc - 0.9.33.2-1
libgcc - 4.8-linaro-1
libip4tc - 1.4.21-1
libip6tc - 1.4.21-1
libiwinfo - 2015-01-04-c9fd399316003040825dfbd9700488b621bd990e
libiwinfo-lua - 2015-01-04-c9fd399316003040825dfbd9700488b621bd990e
libjson-c - 0.11-2
libjson-script - 2015-01-28-827ad8337e88ec9e0bf73a8af1d6cf8555e8ef3d
liblua - 5.1.5-1
libnl-tiny - 0.1-4
libopenssl - 1.0.2-2
libpthread - 0.9.33.2-1
librt - 0.9.33.2-1
libubox - 2015-01-28-827ad8337e88ec9e0bf73a8af1d6cf8555e8ef3d
libubus - 2015-01-22-2d660c519d2fcff95248da9f4fd9b37d61f9eb09
libubus-lua - 2015-01-22-2d660c519d2fcff95248da9f4fd9b37d61f9eb09
libuci - 2014-04-11.1-1
libuci-lua - 2014-04-11.1-1
libusb-1.0 - 1.0.19-1
libxtables - 1.4.21-1
lua - 5.1.5-1
luci - git-15.051.48491-4137afe-1
luci-app-firewall - git-15.051.48491-4137afe-1
luci-base - git-15.051.48491-4137afe-1
luci-lib-ip - git-15.051.48491-4137afe-1
luci-lib-nixio - git-15.051.48491-4137afe-1
luci-mod-admin-full - git-15.051.48491-4137afe-1
luci-proto-ppp - git-15.051.48491-4137afe-1
luci-theme-bootstrap - git-15.051.48491-4137afe-1
mtd - 20
netifd - 2015-02-17-4d84111e1014c817653db92bcd8024ff1935b6be
odhcp6c - 2014-12-10-722226c4f1d45c8bf4ac9189523738abcf7d648f
odhcpd - 2014-11-06-3b628005e66e90770b2757a4a02c1dee25ccb883
openssh-keygen - 6.7p1-3
openssh-server - 6.7p1-3
opkg - 9c97d5ecd795709c8584e972bfdf3aee3a5b846d-7
pciutils - 3.3.0-1
ppp - 2.4.7-5
ppp-mod-pppoe - 2.4.7-5
procd - 2015-02-15-7676df3226da5391c2dfda2ed29a40500e04e15b
r8169-firmware - 2014-03-16-f8c22c692bdee57a20b092e647464ff6176df3ed-1
rpcd - 2015-02-09-7b7f254682d24aee497a545a3e20cdaf7cec4f22
ubox - 2014-10-06-0b274c16a3f9d235735a4b84215071e1e004caa9
ubus - 2015-01-22-2d660c519d2fcff95248da9f4fd9b37d61f9eb09
ubusd - 2015-01-22-2d660c519d2fcff95248da9f4fd9b37d61f9eb09
uci - 2014-04-11.1-1
uhttpd - 2015-01-25.2-db79faae848e9ca5ed1c5b62cdd9d01650687fff
uhttpd-mod-ubus - 2015-01-25.2-db79faae848e9ca5ed1c5b62cdd9d01650687fff
usbutils - 007-1
wpa-supplicant - 2014-10-25-1
zlib - 1.2.8-1

I've got pretty much everything else working, onboard ethernet, my ath5k minipci is working in WDS Client mode, USB2, but not USB1. Don't seem to be missing any kmod*hci* kmod*usb* kmod*input* kmod*hid* ...

hmm, whoops, system either just hung or just lost network connectivity. no way to find out without usb keyboard since there's no legacy keyboard bus on this PC

Attachments (0)

Change History (4)

comment:1 Changed 3 years ago by luizluca@…

Hi Martin,

I face the same problem before. I already sent two msgs to openwrt-devel but I guess an issue ticket is better.

This is a copy of the seconds msg. I already detected the problem.

--

The problem is that kernel missses the USB_OHCI_HCD_PCI option.
ohci-pci was split from ohci_hcd with:
http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=c1117afb85890adf4073c7ff18ebcb4d0495e6af

In BB, the usb controller was detected by ohci_hcd. At some point after the BB kernel version, the USB controller started to be detected only by ohci-pci and not ohci_hcd.

In BB:root@OpenWrt:/# dmesg | grep ohci
[ 0.543001] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 0.544195] ohci_hcd 0000:00:06.0: setting latency timer to 64
[ 0.544203] ohci_hcd 0000:00:06.0: OHCI Host Controller
[ 0.544910] ohci_hcd 0000:00:06.0: new USB bus registered, assigned bus number 2
[ 0.545964] ohci_hcd 0000:00:06.0: irq 11, io mem 0xf0804000
[ 1.040235] usb 2-1: new full-speed USB device number 2 using ohci_hcd

In CC (without USB_OHCI_HCD_PCI):
root@OpenWrt:/# dmesg |grep ohci
[ 0.884995] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 0.890242] ohci-platform: OHCI generic platform driver

In CC (with USB_OHCI_HCD_PCI):
[ 0.884343] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 0.885535] ohci-pci: OHCI PCI platform driver
[ 0.892110] ohci-pci 0000:00:06.0: OHCI PCI host controller
[ 0.893716] ohci-pci 0000:00:06.0: new USB bus registered, assigned bus number 2
[ 0.895858] ohci-pci 0000:00:06.0: irq 11, io mem 0xf0804000
[ 0.965726] ohci-platform: OHCI generic platform driver
[ 1.400359] usb 2-1: new full-speed USB device number 2 using ohci-pci

I fixed my problem creating a new kmod-ohci-pci that includes ohci-pci.ko. Probably, it should also be added to be built-in on every target that is pci-based and already include CONFIG_USB_OHCI_HCD build-in, like target/linux/x86/generic/config-default and others (which one?). However, it loads nicely as a module.

I can submit the patch for the new kmod but I'm not sure about kernel dependencies like LINUX_3_x as ohci-pci.ko seems to be present only after 3.10.

Looking the kernel commit log, it seems that ohci-pci wasn't the only one driver that was split from ohci. It was an effort for multi-plataform kernels on ARM. I guess every other one might need a kmod-ohci-xxx as well. So, the problem might affect every OHCI controller that where split.
http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/log/drivers/usb/host/ohci-hcd.c

In summary, no OHCI controller for CC on any target (except by some drivers that still lives inside ohci-hcd like octeon and other exotic platforms).

BTW, CONFIG_USB_OHCI_ATH79, used for kmod-usb-ohci is deprecated at 3.14.x.

"This option is deprecated now and the driver was removed, use

USB_OHCI_HCD_PLATFORM instead."

comment:2 Changed 3 years ago by Halry

Yes,I have the same issue,too.My camera won't mount but use stick is ok.My camera is using OHCI

comment:3 Changed 3 years ago by luizluca@…

This is the needed patch (at least for pci devices):

https://github.com/luizluca/openwrt/compare/add_kmod_usb-ohci-pci.patch

comment:4 Changed 3 years ago by blogic

  • Resolution set to fixed
  • Status changed from new to closed

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.