ohci-ssb driver on a Broadcom BCM5354
The 5354 has a dual ohci/ehci usb core. It's in an ASUS WL520gu wifi router. The ohci hcd driver registers, but times out reading a descriptor from the device.
Any suggestions on how to track down the problem?
I'm using 2.6.32.1 kernel from the openwrt project with the "ohci SSB bus glue" and "Fix ohci-ssb with !CONFIG_PM" patches from linux-mips. If there is a better test frame, let me know and I'll build it and test that.
Is this driver known to work with some combination of Broadcom hardware?
The ohci/usb interface does work w/ the software provided with the WL520gu.
Steve
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
ohci_hcd ssb0:1: SSB OHCI Controller
ohci_hcd ssb0:1: new USB bus registered, assigned bus number 1
ohci_hcd ssb0:1: irq 5, io mem 0x18003000
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
USB Universal Host Controller Interface driver v3.0
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered. usb 1-1: new full speed USB device using ohci_hcd and address 2
usb 1-1: device descriptor read/64, error -145
===================
Quoted 24 lines
root@OpenWrt:/# cat /proc/bus/usb/devicesT: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux 2.6.23.1 ssb-usb-ohci
S: Product=SSB OHCI Controller
S: SerialNumber=ssb0:1
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms
Quoted 4 lines · Steve Brown
The 5354 has a dual ohci/ehci usb core. It's in an ASUS WL520gu wifi router. The ohci hcd driver registers, but times out reading a descriptor from the device.
You'd better post this to [email protected]
Quoted 2 lines
Any suggestions on how to track down the problem?
CONFIG_USB_DEBUG=y
and
usbmon perhaps.
Franck
You probably want to make Michael Buesch aware of this issue.
John
Quoted 74 lines · Steve Brown
The 5354 has a dual ohci/ehci usb core. It's in an ASUS WL520gu wifi router. The ohci hcd driver registers, but times out reading a descriptor from the device.
Any suggestions on how to track down the problem?
I'm using 2.6.32.1 kernel from the openwrt project with the "ohci SSB bus glue" and "Fix ohci-ssb with !CONFIG_PM" patches from linux-mips. If there is a better test frame, let me know and I'll build it and test that.
Is this driver known to work with some combination of Broadcom hardware?
The ohci/usb interface does work w/ the software provided with the WL520gu.
Steve
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
ohci_hcdssb0:1: SSB OHCI Controller
ohci_hcdssb0:1: new USB bus registered, assigned bus number 1
ohci_hcdssb0:1: irq 5, io mem0x18003000usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
USB Universal Host Controller Interface driver v3.0
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered. usb 1-1: new full speed USB device
usingohci_hcdand address 2usb 1-1: device descriptor read/64, error -145
===================
Quoted 25 lines
root@OpenWrt:/# cat /proc/bus/usb/devicesT: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 2.06 S: Manufacturer=Linux 2.6.23.1 ssb-usb-ohci S: Product=SSB OHCI Controller S: SerialNumber=ssb0:1 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms
Signature · 2 lines
John W. Linville [email protected]
Quoted 1 line · On Sunday 18 November 2007 23:47:52 John W. Linville wrote:
You probably want to make Michael Buesch aware of this issue.
I'm not sure anyone really tested this beyond some insmod tests. I did not test this, as I don't have such a device.
So if you have any patches to fix this, please send them. I'm certainly the wrong person who can fix this. ;)
Signature · 1 line
Greetings Michael.
Quoted 11 lines · Michael Buesch
Quoted 2 lines · On Sunday 18 November 2007 23:47:52 John W. Linville wrote:
You probably want to make Michael Buesch aware of this issue.
I'm not sure anyone really tested this beyond some insmod tests. I did not test this, as I don't have such a device.
So if you have any patches to fix this, please send them. I'm certainly the wrong person who can fix this. ;)
Adding the following at the end of ssb_ohci_attach seems to fix the problem.
if (ssb_dma_set_mask(dev, DMA_32BIT_MASK))
return -EOPNOTSUPP;
I guessed at the dma mask. Would the code in the b43 driver that selects a dma mask be appropriate here?
Steve
Quoted 12 lines · On Monday 26 November 2007 12:05:33 Steve Brown wrote:
Quoted 11 lines · Michael Buesch
Quoted 2 lines · On Sunday 18 November 2007 23:47:52 John W. Linville wrote:
You probably want to make Michael Buesch aware of this issue.
I'm not sure anyone really tested this beyond some insmod tests. I did not test this, as I don't have such a device.
So if you have any patches to fix this, please send them. I'm certainly the wrong person who can fix this. ;)
Quoted 7 lines
Adding the following at the end of
ssb_ohci_attachseems to fix the problem.if (
ssb_dma_set_mask(dev, DMA_32BIT_MASK))
return-EOPNOTSUPP;I guessed at the dma mask. Would the code in the b43 driver that selects a dma mask be appropriate here?
I have no idea. If it makes it work, yeah. Cool. Let's add this.
Signature · 1 line
Greetings Michael.