|
View:
New views
7 Messages
—
Rating Filter:
Alert me
|
|
|
NEC usb controller and huawei E620 supportHi all,
I have a small question, but it's not tech enough for tech@, so asking it here. How do I add support for NEC usb controller to OpenBSD? http://www.huawei.com/mobileweb/en/products/view.do?id=145 Currently it looks like the NEC usb controller is not recognized because OpenBSD doesn't know its id. Huawei card is 'hiding' behind the controller, and is not visible at the moment. I've taken a look at /usr/src/sys/dev/usb/usbdevs file and saw this: /* NEC products */ product NEC USB2EXTEND 0x0409 Repeater product NEC HUB 0x55aa hub product NEC HUB_B 0x55ab hub product NEC PICTY760 0xbef4 Picty760 product NEC PICTY900 0xefbe Picty900 product NEC PICTY920 0xf0be Picty920 product NEC PICTY800 0xf1be Picty800 According to my dmesg (below), device id is: ohci0 at cardbus0 dev 0 function 0 "NEC USB" rev 0x43: irq 5, version 0.0 ohci0: unsupported OHCI revision ohci1 at cardbus0 dev 0 function 1 "NEC USB" rev 0x43: irq 5, version 0.0 ohci1: unsupported OHCI revision But I cannot figure out what string should I add to usbdevs file: product NEC PCMCIAUSB 0x4300 or product NEC PCMCIAUSB 0x3433 (43 into hex??) or something completely different? I've tried searching the net, but not enough definite pointers there neither. http://alenitchev.wordpress.com/2006/10/02/hacking-usb-device-drivers-part-2/#more-43 Here's the dmesg from -current, yesterday's checkout and compile: $ dmesg OpenBSD 4.3-current (GENERIC) #1: Wed Jun 18 20:54:44 CEST 2008 root@...:/usr/src/sys/arch/i386/compile/GENERIC cpu0: Intel(R) Pentium(R) M processor 1.80GHz ("GenuineIntel" 686-class) 1.80 GH z cpu0: FPU,V86,DE,PSE,TSC,MSR,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,CFLUSH,DS,ACPI,MM X,FXSR,SSE,SSE2,SS,TM,SBF,EST,TM2 real mem = 2146332672 (2046MB) avail mem = 2067288064 (1971MB) mainbus0 at root bios0 at mainbus0: AT/286+ BIOS, date 02/27/06, BIOS32 rev. 0 @ 0xfd750, SMBIOS rev. 2.33 @ 0xe0010 (61 entries) bios0: vendor IBM version "1RETDOWW (3.20 )" date 02/27/2006 bios0: IBM 2373M1G apm0 at bios0: Power Management spec V1.2 apm0: battery life expectancy 83% apm0: AC on, battery charge high, charging acpi at bios0 function 0x0 not configured pcibios0 at bios0: rev 2.1 @ 0xfd6e0/0x920 pcibios0: PCI IRQ Routing Table rev 1.0 @ 0xfdea0/272 (15 entries) pcibios0: PCI Interrupt Router at 000:31:0 ("Intel 82371FB ISA" rev 0x00) pcibios0: PCI bus #6 is the last bus bios0: ROM list: 0xc0000/0x10000 0xd0000/0x1000 0xd1000/0x1000 0xdc000/0x4000! 0 xe0000/0x10000 cpu0 at mainbus0 cpu0: Enhanced SpeedStep 1800 MHz (1340 mV): speeds: 1800, 1600, 1400, 1200, 100 0, 800, 600 MHz pci0 at mainbus0 bus 0: configuration mode 1 (no bios) pchb0 at pci0 dev 0 function 0 "Intel 82855PM Host" rev 0x03 ppb0 at pci0 dev 1 function 0 "Intel 82855PM AGP" rev 0x03 pci1 at ppb0 bus 1 vga1 at pci1 dev 0 function 0 "ATI Radeon Mobility M10 NP" rev 0x00 wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation) wsdisplay0: screen 1-5 added (80x25, vt100 emulation) agp0 at vga1: aperture at 0xd0000000, size 0x10000000 uhci0 at pci0 dev 29 function 0 "Intel 82801DB USB" rev 0x01: irq 5 uhci1 at pci0 dev 29 function 1 "Intel 82801DB USB" rev 0x01: irq 6 uhci2 at pci0 dev 29 function 2 "Intel 82801DB USB" rev 0x01: irq 9 ehci0 at pci0 dev 29 function 7 "Intel 82801DB USB" rev 0x01: irq 11 usb0 at ehci0: USB revision 2.0 uhub0 at usb0 "Intel EHCI root hub" rev 2.00/1.00 addr 1 ppb1 at pci0 dev 30 function 0 "Intel 82801BAM Hub-to-PCI" rev 0x81 pci2 at ppb1 bus 2 cbb0 at pci2 dev 0 function 0 "TI PCI4520 CardBus" rev 0x01: irq 5 cbb1 at pci2 dev 0 function 1 "TI PCI4520 CardBus" rev 0x01: irq 5 em0 at pci2 dev 1 function 0 "Intel PRO/1000MT (82540EP)" rev 0x03: irq 5, addre ss 00:11:25:b1:ab:3b ath0 at pci2 dev 2 function 0 "Atheros AR5212 (IBM MiniPCI)" rev 0x01: irq 9 ath0: AR5213 5.9 phy 4.3 rf5112a 3.6, WOR2W, address 00:0e:9b:c6:8b:16 cardslot0 at cbb0 slot 0 flags 0 cardbus0 at cardslot0: bus 3 device 0 cacheline 0x8, lattimer 0xb0 pcmcia0 at cardslot0 cardslot1 at cbb1 slot 1 flags 0 cardbus1 at cardslot1: bus 6 device 0 cacheline 0x8, lattimer 0xb0 pcmcia1 at cardslot1 ichpcib0 at pci0 dev 31 function 0 "Intel 82801DBM LPC" rev 0x01: 24-bit timer a t 3579545Hz pciide0 at pci0 dev 31 function 1 "Intel 82801DBM IDE" rev 0x01: DMA, channel 0 configured to compatibility, channel 1 configured to compatibility wd0 at pciide0 channel 0 drive 0: <HTS541080G9AT00> wd0: 16-sector PIO, LBA, 76319MB, 156301488 sectors wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 5 atapiscsi0 at pciide0 channel 1 drive 0 scsibus0 at atapiscsi0: 2 targets, initiator 7 cd0 at scsibus0 targ 0 lun 0: <HL-DT-ST, RW/DVD GCC-4242N, 0201> ATAPI 5/cdrom r emovable cd0(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 2 ichiic0 at pci0 dev 31 function 3 "Intel 82801DB SMBus" rev 0x01: irq 5 iic0 at ichiic0 spdmem0 at iic0 addr 0x50: 1GB DDR SDRAM non-parity PC2700CL2.5 spdmem1 at iic0 addr 0x51: 1GB DDR SDRAM non-parity PC2700CL2.5 auich0 at pci0 dev 31 function 5 "Intel 82801DB AC97" rev 0x01: irq 5, ICH4 AC97 ac97: codec id 0x41445374 (Analog Devices AD1981B) ac97: codec features headphone, 20 bit DAC, No 3D Stereo audio0 at auich0 "Intel 82801DB Modem" rev 0x01 at pci0 dev 31 function 6 not configured usb1 at uhci0: USB revision 1.0 uhub1 at usb1 "Intel UHCI root hub" rev 1.00/1.00 addr 1 usb2 at uhci1: USB revision 1.0 uhub2 at usb2 "Intel UHCI root hub" rev 1.00/1.00 addr 1 usb3 at uhci2: USB revision 1.0 uhub3 at usb3 "Intel UHCI root hub" rev 1.00/1.00 addr 1 isa0 at ichpcib0 isadma0 at isa0 com0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo com1 at isa0 port 0x2f8/8 irq 3: ns16550a, 16 byte fifo pckbc0 at isa0 port 0x60/5 pckbd0 at pckbc0 (kbd slot) pckbc0: using irq 1 for kbd slot wskbd0 at pckbd0: console keyboard, using wsdisplay0 pms0 at pckbc0 (aux slot) pckbc0: using irq 12 for aux slot wsmouse0 at pms0 mux 0 pcppi0 at isa0 port 0x61 midi0 at pcppi0: <PC speaker> spkr0 at pcppi0 lpt0 at isa0 port 0x378/4 irq 7 aps0 at isa0 port 0x1600/31 npx0 at isa0 port 0xf0/16: reported by CPUID; using exception 16 biomask ef65 netmask ef65 ttymask ffff mtrr: Pentium Pro MTRR support rum0 at uhub0 port 4 "Ralink 54M.USB......." rev 2.00/0.01 addr 2 rum0: MAC/BBP RT2573 (rev 0x2573a), RF RT2528, address 00:16:0a:0f:66:61 ugen0 at uhub3 port 2 "STMicroelectronics Biometric Coprocessor" rev 1.00/0.01 a ddr 2 softraid0 at root root on wd0a swap on wd0b dump on wd0b ehci_idone: ex=0xd2a8fe00 is done! ohci0 at cardbus0 dev 0 function 0 "NEC USB" rev 0x43: irq 5, version 0.0 ohci0: unsupported OHCI revision ohci1 at cardbus0 dev 0 function 1 "NEC USB" rev 0x43: irq 5, version 0.0 ohci1: unsupported OHCI revision $ Maxim |
|
|
Re: NEC usb controller and huawei E620 support* Maxim Belooussov <belooussov@...> [080619 14:11]:
> Hi all, > > I have a small question, but it's not tech enough for tech@, so asking it here. > > How do I add support for NEC usb controller to OpenBSD? > > http://www.huawei.com/mobileweb/en/products/view.do?id=145 > > Currently it looks like the NEC usb controller is not recognized > because OpenBSD doesn't know its id. Huawei card is 'hiding' behind > the controller, and is not visible at the moment. > > I've taken a look at /usr/src/sys/dev/usb/usbdevs file and saw this: > > /* NEC products */ > product NEC USB2EXTEND 0x0409 Repeater > product NEC HUB 0x55aa hub > product NEC HUB_B 0x55ab hub > product NEC PICTY760 0xbef4 Picty760 > product NEC PICTY900 0xefbe Picty900 > product NEC PICTY920 0xf0be Picty920 > product NEC PICTY800 0xf1be Picty800 > > According to my dmesg (below), device id is: > ohci0 at cardbus0 dev 0 function 0 "NEC USB" rev 0x43: irq 5, version 0.0 > ohci0: unsupported OHCI revision > ohci1 at cardbus0 dev 0 function 1 "NEC USB" rev 0x43: irq 5, version 0.0 > ohci1: unsupported OHCI revision > > But I cannot figure out what string should I add to usbdevs file: > > product NEC PCMCIAUSB 0x4300 > > or > > product NEC PCMCIAUSB 0x3433 (43 into hex??) > > or something completely different? > you can get the id from pcidump -v, something like this: 0:0:0: Intel 82Q965 Host 0x0000: Vendor ID: 8086 Product ID: 2990 ^^^^ -- Alexander Polakov | http://rootshell.be/~polachok/ |
|
|
Re: NEC usb controller and huawei E620 supportHi all,
Thanks to all who have responded. Replying for the archives. > Currently it looks like the NEC usb controller is not recognized > because OpenBSD doesn't know its id. Huawei card is 'hiding' behind > the controller, and is not visible at the moment. After finding the id with `pcidev -dv` and adding it to usbdevs didn't do the trick. The problem seems to be hiding in /usr/src/sys/dev/usb/ohci.c file: if (OHCI_REV_HI(rev) != 1 || OHCI_REV_LO(rev) != 0) { printf("%s: unsupported OHCI revision\n", sc->sc_bus.bdev.dv_xname); sc->sc_bus.usbrev = USBREV_UNKNOWN; return (USBD_INVAL); } The device seems to report wrong (unsupported) ohci revision. Intentionally messing up the revision check in the source code and recompiling the kernel results in: ohci0 at cardbus0 dev 0 function 0 "NEC USB" rev 0x43: irq 5, version 0.0 ohci0: reset timeout ohci0: init failed, error=13 ohci1 at cardbus0 dev 0 function 1 "NEC USB" rev 0x43: irq 5, version 0.0 ohci1: reset timeout ohci1: init failed, error=13 Hence, just adding device and vendor id and recompiling the kernel is not enough, ohci handling code needs to support the "correct" revision for the device. Or tweaking usb-quirks as Miod does from time to time, but this is way beyond my current level. Maxim |
|
|
Re: NEC usb controller and huawei E620 support* Maxim Belooussov <belooussov@...> [2008-06-19 11:57]:
> How do I add support for NEC usb controller to OpenBSD? > > Currently it looks like the NEC usb controller is not recognized > because OpenBSD doesn't know its id. Huawei card is 'hiding' behind > the controller, and is not visible at the moment. > ohci0 at cardbus0 dev 0 function 0 "NEC USB" rev 0x43: irq 5, version 0.0 the usb controller is detected just fine. > ohci0: unsupported OHCI revision that is your real problem. -- Henning Brauer, hb@..., henning@... BS Web Services, http://bsws.de Full-Service ISP - Secure Hosting, Mail and DNS Services Dedicated Servers, Rootservers, Application Hosting - Hamburg & Amsterdam |
|
|
Re: NEC usb controller and huawei E620 supportHi Henning,
On Tue, Jul 1, 2008 at 4:08 PM, Henning Brauer <lists-openbsd@...> wrote: > * Maxim Belooussov <belooussov@...> [2008-06-19 11:57]: >> How do I add support for NEC usb controller to OpenBSD? >> >> Currently it looks like the NEC usb controller is not recognized >> because OpenBSD doesn't know its id. Huawei card is 'hiding' behind >> the controller, and is not visible at the moment. > >> ohci0 at cardbus0 dev 0 function 0 "NEC USB" rev 0x43: irq 5, version 0.0 > > the usb controller is detected just fine. > >> ohci0: unsupported OHCI revision > > that is your real problem. Indeed, and that's exactly what I said in my previous email on June 20th. Thank you for confirming my diagnosis :) <quote> The device seems to report wrong (unsupported) ohci revision. Intentionally messing up the revision check in the source code and recompiling the kernel results in: ohci0 at cardbus0 dev 0 function 0 "NEC USB" rev 0x43: irq 5, version 0.0 ohci0: reset timeout ohci0: init failed, error=13 ohci1 at cardbus0 dev 0 function 1 "NEC USB" rev 0x43: irq 5, version 0.0 ohci1: reset timeout ohci1: init failed, error=13 Hence, just adding device and vendor id and recompiling the kernel is not enough, ohci handling code needs to support the "correct" revision for the device. Or tweaking usb-quirks as Miod does from time to time, but this is way beyond my current level. </endquote> Once I get my new laptop from my work, I intend to lend the card to Felix, so maybe he can help. Maxim |
|
|
Re: NEC usb controller and huawei E620 supportOn 2008-07-01, Maxim Belooussov <belooussov@...> wrote:
><quote> > The device seems to report wrong (unsupported) ohci revision. > Intentionally messing up the revision check in the source code and > recompiling the kernel results in: > > ohci0 at cardbus0 dev 0 function 0 "NEC USB" rev 0x43: irq 5, version 0.0 > ohci0: reset timeout > ohci0: init failed, error=13 > ohci1 at cardbus0 dev 0 function 1 "NEC USB" rev 0x43: irq 5, version 0.0 > ohci1: reset timeout > ohci1: init failed, error=13 > > Hence, just adding device and vendor id and recompiling the kernel is > not enough, ohci handling code needs to support the "correct" revision > for the device. Or tweaking usb-quirks as Miod does from time to time, > but this is way beyond my current level. There might be multiple problems. Does that cardbus slot work correctly with other 32-bit devices? |
|
|
Re: NEC usb controller and huawei E620 supportHi Stuart,
>> Hence, just adding device and vendor id and recompiling the kernel is >> not enough, ohci handling code needs to support the "correct" revision >> for the device. Or tweaking usb-quirks as Miod does from time to time, >> but this is way beyond my current level. > > There might be multiple problems. Does that cardbus slot work > correctly with other 32-bit devices? Had to dig out some PCMCIA network cards from the garbage bin - those got recognized. These commits caught my attention the other day: http://marc.info/?l=openbsd-cvs&m=121498398305603&w=2 http://marc.info/?l=openbsd-cvs&m=121501156320436&w=2 And after new kernel recompile and reboot the card shows up in dmesg: OpenBSD 4.4-beta (GENERIC) #0: Thu Jul 3 10:09:02 CEST 2008 root@...:/usr/src/sys/arch/i386/compile/GENERIC cpu0: Intel(R) Pentium(R) M processor 1.80GHz ("GenuineIntel" 686-class) 1.80 GHz cpu0: FPU,V86,DE,PSE,TSC,MSR,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,TM,SBF,EST,TM2 real mem = 2146332672 (2046MB) avail mem = 2067238912 (1971MB) mainbus0 at root bios0 at mainbus0: AT/286+ BIOS, date 02/27/06, BIOS32 rev. 0 @ 0xfd750, SMBIOS rev. 2.33 @ 0xe0010 (61 entries) bios0: vendor IBM version "1RETDOWW (3.20 )" date 02/27/2006 bios0: IBM 2373M1G apm0 at bios0: Power Management spec V1.2 apm0: battery life expectancy 100% apm0: AC off, battery charge high, estimated 1:43 hours acpi at bios0 function 0x0 not configured pcibios0 at bios0: rev 2.1 @ 0xfd6e0/0x920 pcibios0: PCI IRQ Routing Table rev 1.0 @ 0xfdea0/272 (15 entries) pcibios0: PCI Interrupt Router at 000:31:0 ("Intel 82371FB ISA" rev 0x00) pcibios0: PCI bus #6 is the last bus bios0: ROM list: 0xc0000/0x10000 0xdc000/0x4000! 0xe0000/0x10000 cpu0 at mainbus0 cpu0: Enhanced SpeedStep 1800 MHz (1340 mV): speeds: 1800, 1600, 1400, 1200, 1000, 800, 600 MHz pci0 at mainbus0 bus 0: configuration mode 1 (no bios) pchb0 at pci0 dev 0 function 0 "Intel 82855PM Host" rev 0x03 ppb0 at pci0 dev 1 function 0 "Intel 82855PM AGP" rev 0x03 pci1 at ppb0 bus 1 vga1 at pci1 dev 0 function 0 "ATI Radeon Mobility M10 NP" rev 0x00 wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation) wsdisplay0: screen 1-5 added (80x25, vt100 emulation) agp0 at vga1: aperture at 0xd0000000, size 0x10000000 uhci0 at pci0 dev 29 function 0 "Intel 82801DB USB" rev 0x01: irq 5 uhci1 at pci0 dev 29 function 1 "Intel 82801DB USB" rev 0x01: irq 6 uhci2 at pci0 dev 29 function 2 "Intel 82801DB USB" rev 0x01: irq 9 ehci0 at pci0 dev 29 function 7 "Intel 82801DB USB" rev 0x01: irq 11 usb0 at ehci0: USB revision 2.0 uhub0 at usb0 "Intel EHCI root hub" rev 2.00/1.00 addr 1 ppb1 at pci0 dev 30 function 0 "Intel 82801BAM Hub-to-PCI" rev 0x81 pci2 at ppb1 bus 2 cbb0 at pci2 dev 0 function 0 "TI PCI4520 CardBus" rev 0x01: irq 5 cbb1 at pci2 dev 0 function 1 "TI PCI4520 CardBus" rev 0x01: irq 5 em0 at pci2 dev 1 function 0 "Intel PRO/1000MT (82540EP)" rev 0x03: irq 5, address 00:11:25:b1:ab:3b ath0 at pci2 dev 2 function 0 "Atheros AR5212 (IBM MiniPCI)" rev 0x01: irq 9 ath0: AR5213 5.9 phy 4.3 rf5112a 3.6, WOR2W, address 00:0e:9b:c6:8b:16 cardslot0 at cbb0 slot 0 flags 0 cardbus0 at cardslot0: bus 3 device 0 cacheline 0x8, lattimer 0xb0 pcmcia0 at cardslot0 cardslot1 at cbb1 slot 1 flags 0 cardbus1 at cardslot1: bus 6 device 0 cacheline 0x8, lattimer 0xb0 pcmcia1 at cardslot1 ichpcib0 at pci0 dev 31 function 0 "Intel 82801DBM LPC" rev 0x01: 24-bit timer at 3579545Hz pciide0 at pci0 dev 31 function 1 "Intel 82801DBM IDE" rev 0x01: DMA, channel 0 configured to compatibility, channel 1 configured to compatibility wd0 at pciide0 channel 0 drive 0: <HTS541080G9AT00> wd0: 16-sector PIO, LBA, 76319MB, 156301488 sectors wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 5 atapiscsi0 at pciide0 channel 1 drive 0 scsibus0 at atapiscsi0: 2 targets, initiator 7 cd0 at scsibus0 targ 0 lun 0: <HL-DT-ST, RW/DVD GCC-4242N, 0201> ATAPI 5/cdrom removable cd0(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 2 ichiic0 at pci0 dev 31 function 3 "Intel 82801DB SMBus" rev 0x01: irq 5 iic0 at ichiic0 spdmem0 at iic0 addr 0x50: 1GB DDR SDRAM non-parity PC2700CL2.5 spdmem1 at iic0 addr 0x51: 1GB DDR SDRAM non-parity PC2700CL2.5 auich0 at pci0 dev 31 function 5 "Intel 82801DB AC97" rev 0x01: irq 5, ICH4 AC97 ac97: codec id 0x41445374 (Analog Devices AD1981B) ac97: codec features headphone, 20 bit DAC, No 3D Stereo audio0 at auich0 "Intel 82801DB Modem" rev 0x01 at pci0 dev 31 function 6 not configured usb1 at uhci0: USB revision 1.0 uhub1 at usb1 "Intel UHCI root hub" rev 1.00/1.00 addr 1 usb2 at uhci1: USB revision 1.0 uhub2 at usb2 "Intel UHCI root hub" rev 1.00/1.00 addr 1 usb3 at uhci2: USB revision 1.0 uhub3 at usb3 "Intel UHCI root hub" rev 1.00/1.00 addr 1 isa0 at ichpcib0 isadma0 at isa0 com0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo com1 at isa0 port 0x2f8/8 irq 3: ns16550a, 16 byte fifo pckbc0 at isa0 port 0x60/5 pckbd0 at pckbc0 (kbd slot) pckbc0: using irq 1 for kbd slot wskbd0 at pckbd0: console keyboard, using wsdisplay0 pms0 at pckbc0 (aux slot) pckbc0: using irq 12 for aux slot wsmouse0 at pms0 mux 0 pcppi0 at isa0 port 0x61 midi0 at pcppi0: <PC speaker> spkr0 at pcppi0 lpt0 at isa0 port 0x378/4 irq 7 aps0 at isa0 port 0x1600/31 npx0 at isa0 port 0xf0/16: reported by CPUID; using exception 16 biomask ef65 netmask ef65 ttymask ffff mtrr: Pentium Pro MTRR support ugen0 at uhub3 port 2 "STMicroelectronics Biometric Coprocessor" rev 1.00/0.01 addr 2 softraid0 at root root on wd0a swap on wd0b dump on wd0b ohci0 at cardbus0 dev 0 function 0 "NEC USB" rev 0x43: irq 5, version 1.0 usb4 at ohci0: USB revision 1.0 uhub4 at usb4 "NEC OHCI root hub" rev 1.00/1.00 addr 1 ohci1 at cardbus0 dev 0 function 1 "NEC USB" rev 0x43: irq 5, version 1.0 usb5 at ohci1: USB revision 1.0 uhub5 at usb5 "NEC OHCI root hub" rev 1.00/1.00 addr 1 ubsa0 at uhub4 port 1 "HUAWEI Technologies HUAWEI Mobile" rev 1.10/0.00 addr 2 ucom0 at ubsa0 Thanks a lot to all involved!!! Maxim |
| Free Forum Powered by Nabble | Forum Help |