Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 17 Jul 2015 21:28:16 +0200
From:      Tom Lislegaard <freebsd@lislegaard.net>
To:        freebsd-usb@freebsd.org
Subject:   Logitech C525 webcam won't work on Raspberry PI2
Message-ID:  <CAFxxQFxDo5n7XjkhV8efinqxmzj7iRkOT-O7h06Fxo-CknWrNw@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
This is an RPI2 with a recent CURRENT snapshot, but the original RPI with
10.1-Stable give exactly the same result. The camera works without problems
on amd64 with 10.1-Stable.

tl@rpi2:~ % uname -a
FreeBSD rpi2 11.0-CURRENT FreeBSD 11.0-CURRENT #0 r284969: Wed Jul  8
19:50:02 CEST 2015     tl@rpi2:/usr/obj/usr/src/sys/RPI2  arm

Trying to connect the camera I get this error

usb_alloc_device: Failure selecting configuration index 0:USB_ERR_TIMEOUT,
port 4, addr 5 (ignored)

Things I have tried include disconnecting all other usb-devices, and
connect the cam via an external powered hub.

usbconfig/lsusb show the following

root@rpi2:~ # usbconfig
ugen0.1: <OTG Root HUB DWCOTG> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps)
pwr=SAVE (0mA)
ugen0.2: <product 0x9514 vendor 0x0424> at usbus0, cfg=0 md=HOST spd=HIGH
(480Mbps) pwr=SAVE (2mA)
ugen0.3: <product 0xec00 vendor 0x0424> at usbus0, cfg=0 md=HOST spd=HIGH
(480Mbps) pwr=ON (2mA)
ugen0.4: <USB2.0 Hub vendor 0x05e3> at usbus0, cfg=0 md=HOST spd=HIGH
(480Mbps) pwr=SAVE (100mA)
ugen0.5: <HD Webcam C525 vendor 0x046d> at usbus0, cfg=255 md=HOST spd=HIGH
(480Mbps) pwr=ON (100mA)

root@rpi2:~ # lsusb -d 046d: -vvv

Bus /dev/usb Device /dev/ugen0.5: ID 046d:0826 Logitech, Inc.
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass          239 Miscellaneous Device
  bDeviceSubClass         2 ?
  bDeviceProtocol         1 Interface Association
  bMaxPacketSize0        64
  idVendor           0x046d Logitech, Inc.
  idProduct          0x0826
  bcdDevice            0.10
  iManufacturer           0
  iProduct                2 HD Webcam C525
  iSerial                 1 045B8DA0
  bNumConfigurations      1
Device Qualifier (for other device speed):
  bLength                10
  bDescriptorType         6
  bcdUSB               2.00
  bDeviceClass          239 Miscellaneous Device
  bDeviceSubClass         2 ?
  bDeviceProtocol         1 Interface Association
  bMaxPacketSize0        64
  bNumConfigurations      1
can't get debug descriptor: Input/output error
Device Status:     0x0000
  (Bus Powered)


I'd be grateful for any tips or trick you might share to make this webcam
work.
(please CC me on any reply as I'm not subscribed to the list)

Added below is the full dmesg output in case it's useful.

-tom


root@rpi2:~ # dmesg
KDB: debugger backends: ddb
KDB: current backend: ddb
Copyright (c) 1992-2015 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 11.0-CURRENT #0 r284969: Wed Jul  8 19:50:02 CEST 2015
    tl@rpi2:/usr/obj/usr/src/sys/RPI2 arm
FreeBSD clang version 3.6.1 (tags/RELEASE_361/final 237755) 20150525
VT: init without driver.
sema_sysinit
CPU: Cortex A7 rev 5 (Cortex-A core)
 Supported features: ARM_ISA THUMB2 JAZELLE THUMBEE ARMv4 Security_Ext
 WB disabled EABT branch prediction enabled
LoUU:2 LoC:3 LoUIS:2
Cache level 1:
 32KB/64B 4-way data cache WB Read-Alloc Write-Alloc
 32KB/32B 2-way instruction cache Read-Alloc
Cache level 2:
 512KB/64B 8-way unified cache WB Read-Alloc Write-Alloc
real memory  = 989851648 (943 MB)
avail memory = 958423040 (914 MB)
FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
random: entropy device external interface
kbd0 at kbdmux0
ofwbus0: <Open Firmware Device Tree>
simplebus0: <Flattened device tree simple bus> mem 0x3f000000-0x3fffffff on
ofwbus0
bcm28360: <Broadcom bcm2836>
generic_timer0: <ARMv7 Generic Timer> irq 72,73,75,74 on ofwbus0
Timecounter "ARM MPCore Timecounter" frequency 19200000 Hz quality 1000
Event timer "ARM MPCore Eventtimer" frequency 19200000 Hz quality 1000
intc0: <BCM2835 Interrupt Controller> mem 0xb200-0xb3ff on simplebus0
bcmwd0: <BCM2708/2835 Watchdog> mem 0x10001c-0x100027 on simplebus0
gpio0: <BCM2708/2835 GPIO controller> mem 0x200000-0x2000af irq 57,59,58,60
on simplebus0
gpio0: read-only pins: 46,48-53.
gpio0: reserved pins: 48-53.
gpiobus0: <OFW GPIO bus> on gpio0
gpioled0: <GPIO led> at pin(s) 35 on gpiobus0
gpioled1: <GPIO led> at pin(s) 47 on gpiobus0
gpioc0: <GPIO controller> on gpio0
iichb0: <BCM2708/2835 BSC controller> mem 0x205000-0x20501f irq 61 on
simplebus0
iicbus0: <OFW I2C bus> on iichb0
iic0: <I2C generic I/O> on iicbus0
iichb1: <BCM2708/2835 BSC controller> mem 0x804000-0x80401f irq 61 on
simplebus0
iicbus1: <OFW I2C bus> on iichb1
iic1: <I2C generic I/O> on iicbus1
spi0: <BCM2708/2835 SPI controller> mem 0x204000-0x20401f irq 62 on
simplebus0
spibus0: <OFW SPI bus> on spi0
bcm_dma0: <BCM2835 DMA Controller> mem 0x7000-0x7fff,0xe05000-0xe05fff irq
24,25,26,27,28,29,30,31,32,33,34,35,36 on simplebus0
mbox0: <BCM2835 VideoCore Mailbox> mem 0xb880-0xb8bf irq 1 on simplebus0
sdhci_bcm0: <Broadcom 2708 SDHCI controller> mem 0x300000-0x3000ff irq 70
on simplebus0
mmc0: <MMC/SD bus> on sdhci_bcm0
uart0: <PrimeCell UART (PL011)> mem 0x201000-0x201fff irq 65 on simplebus0
uart0: console (115200,n,8,1)
vchiq0: <BCM2835 VCHIQ> mem 0xb800-0xb84f irq 2 on simplebus0
vchiq0: [GIANT-LOCKED]
vchiq: local ver 6 (min 3), remote ver 6.
pcm0: <VCHQI audio> on vchiq0
bcm283x_dwcotg0: <DWC OTG 2.0 integrated USB controller (bcm283x)> mem
0x980000-0x99ffff irq 17 on simplebus0
usbus0 on bcm283x_dwcotg0
cpulist0: <Open Firmware CPU Group> on ofwbus0
cpu0: <Open Firmware CPU> on cpulist0
bcm2835_cpufreq0: <CPU Frequency Control> on cpu0
cpu1: <Open Firmware CPU> on cpulist0
cpu2: <Open Firmware CPU> on cpulist0
cpu3: <Open Firmware CPU> on cpulist0
fb0: <BCM2835 VT framebuffer driver> on ofwbus0
fbd0 on fb0
VT: initialize with new VT driver "fb".
fb0: 1824x984(1824x984@0,0) 24bpp
fb0: fbswap: 1, pitch 5472, base 0x3d359000, screen_size 5428224
Timecounters tick every 10.000 msec
usbus0: 480Mbps High Speed USB v2.0
ugen0.1: <DWCOTG> at usbus0
uhub0: <DWCOTG OTG Root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus0
sdhci_bcm0-slot0: Got data interrupt 0x00000002, but there is no active
command.
sdhci_bcm0-slot0: ============== REGISTER DUMP ==============
sdhci_bcm0-slot0: Sys addr: 0x00000000 | Version:  0x00009902
sdhci_bcm0-slot0: Blk size: 0x00000040 | Blk cnt:  0x00000001
sdhci_bcm0-slot0: Argument: 0x00070000 | Trn mode: 0x0000071b
sdhci_bcm0-slot0: Present:  0x01ff0000 | Host ctl: 0x00000001
sdhci_bcm0-slot0: Power:    0x0000000f | Blk gap:  0x00000000
sdhci_bcm0-slot0: Wake-up:  0x00000000 | Clock:    0x00003947
sdhci_bcm0-slot0: Timeout:  0x0000000e | Int stat: 0x00000000
sdhci_bcm0-slot0: Int enab: 0x01ff00fb | Sig enab: 0x01ff00fb
sdhci_bcm0-slot0: AC12 err: 0x00000000 | Slot int: 0x00000000
sdhci_bcm0-slot0: Caps:     0x00000000 | Max curr: 0x00000001
sdhci_bcm0-slot0: ===========================================
sdhci_bcm0-slot0: Got data interrupt 0x00000002, but there is no active
command.
sdhci_bcm0-slot0: ============== REGISTER DUMP ==============
sdhci_bcm0-slot0: Sys addr: 0x00000000 | Version:  0x00009902
sdhci_bcm0-slot0: Blk size: 0x00000040 | Blk cnt:  0x00000001
sdhci_bcm0-slot0: Argument: 0x00070000 | Trn mode: 0x0000071b
sdhci_bcm0-slot0: Present:  0x01ff0000 | Host ctl: 0x00000001
sdhci_bcm0-slot0: Power:    0x0000000f | Blk gap:  0x00000000
sdhci_bcm0-slot0: Wake-up:  0x00000000 | Clock:    0x00003947
sdhci_bcm0-slot0: Timeout:  0x0000000e | Int stat: 0x00000000
sdhci_bcm0-slot0: Int enab: 0x01ff00fb | Sig enab: 0x01ff00fb
sdhci_bcm0-slot0: AC12 err: 0x00000000 | Slot int: 0x00000000
sdhci_bcm0-slot0: Caps:     0x00000000 | Max curr: 0x00000001
sdhci_bcm0-slot0: ===========================================
sdhci_bcm0-slot0: Got data interrupt 0x00000002, but there is no active
command.
sdhci_bcm0-slot0: ============== REGISTER DUMP ==============
sdhci_bcm0-slot0: Sys addr: 0x00000000 | Version:  0x00009902
sdhci_bcm0-slot0: Blk size: 0x00000040 | Blk cnt:  0x00000001
sdhci_bcm0-slot0: Argument: 0x00070000 | Trn mode: 0x0000071b
sdhci_bcm0-slot0: Present:  0x01ff0000 | Host ctl: 0x00000001
sdhci_bcm0-slot0: Power:    0x0000000f | Blk gap:  0x00000000
sdhci_bcm0-slot0: Wake-up:  0x00000000 | Clock:    0x00003947
sdhci_bcm0-slot0: Timeout:  0x0000000e | Int stat: 0x00000000
sdhci_bcm0-slot0: Int enab: 0x01ff00fb | Sig enab: 0x01ff00fb
sdhci_bcm0-slot0: AC12 err: 0x00000000 | Slot int: 0x00000000
sdhci_bcm0-slot0: Caps:     0x00000000 | Max curr: 0x00000001
sdhci_bcm0-slot0: ===========================================
sdhci_bcm0-slot0: Got data interrupt 0x00000002, but there is no active
command.
sdhci_bcm0-slot0: ============== REGISTER DUMP ==============
sdhci_bcm0-slot0: Sys addr: 0x00000000 | Version:  0x00009902
sdhci_bcm0-slot0: Blk size: 0x00000040 | Blk cnt:  0x00000001
sdhci_bcm0-slot0: Argument: 0x00070000 | Trn mode: 0x0000071b
sdhci_bcm0-slot0: Present:  0x01ff0000 | Host ctl: 0x00000001
sdhci_bcm0-slot0: Power:    0x0000000f | Blk gap:  0x00000000
sdhci_bcm0-slot0: Wake-up:  0x00000000 | Clock:    0x00003947
sdhci_bcm0-slot0: Timeout:  0x0000000e | Int stat: 0x00000000
sdhci_bcm0-slot0: Int enab: 0x01ff00fb | Sig enab: 0x01ff00fb
sdhci_bcm0-slot0: AC12 err: 0x00000000 | Slot int: 0x00000000
sdhci_bcm0-slot0: Caps:     0x00000000 | Max curr: 0x00000001
sdhci_bcm0-slot0: ===========================================
mmc0: CMD7 failed, RESULT: 1
mmcsd0: 16GB <SDHC SD16G 3.0 SN 0003E0DF MFG 07/2012 by 65 42> at mmc0
41.6MHz/4bit/65535-block
uhub0: 1 port with 1 removable, self powered
bcm2835_cpufreq0: ARM 600MHz, Core 250MHz, SDRAM 400MHz, Turbo OFF
Release APs
Root mount waiting for: usbus0
ugen0.2: <vendor 0x0424> at usbus0
uhub1: <vendor 0x0424 product 0x9514, class 9/0, rev 2.00/2.00, addr 2> on
usbus0
uhub1: MTT enabled
Root mount waiting for: usbus0
uhub1: 5 ports with 4 removable, self powered
ugen0.3: <vendor 0x0424> at usbus0
smsc0: <vendor 0x0424 product 0xec00, rev 2.00/2.00, addr 3> on usbus0
smsc0: chip 0xec00, rev. 0002
miibus0: <MII bus> on smsc0
ukphy0: <Generic IEEE 802.3u media interface> PHY 1 on miibus0
ukphy0:  none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
ue0: <USB Ethernet> on smsc0
ue0: Ethernet address: b8:27:eb:ad:bf:9b
Root mount waiting for: usbus0
ugen0.4: <vendor 0x05e3> at usbus0
uhub2: <vendor 0x05e3 USB2.0 Hub, class 9/0, rev 2.00/77.64, addr 4> on
usbus0
Root mount waiting for: usbus0
uhub2: 4 ports with 4 removable, self powered
Root mount waiting for: usbus0
Root mount waiting for: usbus0
Root mount waiting for: usbus0
Root mount waiting for: usbus0
Root mount waiting for: usbus0
Root mount waiting for: usbus0
Root mount waiting for: usbus0
Root mount waiting for: usbus0
usb_alloc_device: Failure selecting configuration index 0:USB_ERR_TIMEOUT,
port 4, addr 5 (ignored)
ugen0.5: <vendor 0x046d> at usbus0
Trying to mount root from ufs:/dev/ufs/rootfs [rw]...
WARNING: / was not properly dismounted
warning: no time-of-day clock registered, system time will not be set
accurately
.
Cuse4BSD v0.1.36 @ /dev/cuse
smsc0: chip 0xec00, rev. 0002
ue0: link state changed to DOWN
ue0: link state changed to UP



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAFxxQFxDo5n7XjkhV8efinqxmzj7iRkOT-O7h06Fxo-CknWrNw>