Creative Webcam and linux-gspca-kmod problem

Paul B. Mahol onemda at gmail.com
Sun Nov 16 15:02:00 PST 2008


On 11/16/08, Nikola Lecic <nikola.lecic at anthesphoria.net> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: RIPEMD160
>
> On Sun, 16 Nov 2008 12:20:43 +0100
> "Paul B. Mahol" <onemda at gmail.com> wrote:
>
> [...]
>
>> On 11/16/08, Nikola Lecic <nikola.lecic at anthesphoria.net> wrote:
>> > a. this camera is USB1.1 compatible, e.g.
>> >
>> >   http://www.qbik.ch/usb/devices/showdev.php?id=4040
>> >
>> I dont know how it would be usefull if used only with USB1.1
>> I belive that ehci can be completely disabled on STABLE.
>> I know that it can be disabled if all usb stuff is removed from
>> kernel configuration and than loaded as module, in that case you
>> only kldload uhci and not ehci (possible also from /boot/loader.conf)
>
> Will do it, but let's try the usb2 stuff first. So...
>
>> > b. the camera is supported by gspca1 (and eo ipso by v4l-ver1 if I
>> > understand this correctly), as listed in
>> > gspcav1-20071220/gspca_core.c:
>> >
>> > {USB_DEVICE(0x041e, 0x4051)},   /* Creative Live!Cam Notebook Pro
>> > (VF0250) */
>> >
>> > Does this still mean that the camera *needs* isochronous transfer?
>> > If yes, is there an easy way to compile and test that usb2 stuff on
>> > STABLE?
>> >
>>
>> I dont know that, but something like isochronous transfer should be
>> documented somehow with camera ....
>> Are you sure that you bought right one (explained in link you already
>> posted)?
>
> Yes, FreeBSD identifies the camera as
>
>   ldev0: vendor 0x041e product 0x4051, rev 1.10/1.00, addr 2
>
>> If you are interested in USB4BSD look:
>> http://www.selasky.org/hans_petter/usb4bsd/
>>
>> It supports 5/6/7 and 8.
>> You need svn to get source for 7 STABLE.
>
> Ok, I patched /usr/src, recompiled the kernel and now I see this in
> dmesg:
>
> - -------------------------------------------------------------------------
> usb0: <UHCI (generic) USB controller> on uhci0
> usb1: <UHCI (generic) USB controller> on uhci1
> usb2: <UHCI (generic) USB controller> on uhci2
> usb3: <UHCI (generic) USB controller> on uhci3
> usb4: EHCI version 1.0
> usb4: <Intel 82801GB/R (ICH7) USB 2.0 controller> on ehci0
> usb0: 12Mbps Full Speed USB v1.0
> uhub0: <Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usb0
> usb1: 12Mbps Full Speed USB v1.0
> uhub1: <Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usb1
> usb2: 12Mbps Full Speed USB v1.0
> uhub2: <Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usb2
> usb3: 12Mbps Full Speed USB v1.0
> uhub3: <Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usb3
> usb4: 480Mbps High Speed USB v2.0
> uhub4: <Intel EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usb4
> ugen0: <Creative Labs product 0x4051, rev 1.10/1.00, addr 2> on usb0
> link_elf: symbol usb_detach_wait undefined
> link_elf: symbol usb_detach_wait undefined

Oh, I'm sick of this kind of messages, usb2 LKM on STABLE is broken,
talk with hans@

> - -------------------------------------------------------------------------
>
> ... which is obviously better than before. However, now I can't compile
> linux-gspca-kmod:
>
> - -------------------------------------------------------------------------
> ===>  Extracting for linux-gspca-kmod-1.0.20
> => MD5 Checksum OK for gspcav1-20071220.tar.gz.
> => SHA256 Checksum OK for gspcav1-20071220.tar.gz.
> ===>  Patching for linux-gspca-kmod-1.0.20
> ===>  Applying FreeBSD patches for linux-gspca-kmod-1.0.20
> ===>   linux-gspca-kmod-1.0.20 depends on file:
> /usr/share/mk/bsd.linux_kmod.mk - found
> ===>  Configuring for linux-gspca-kmod-1.0.20
> ===>  Building for linux-gspca-kmod-1.0.20
> @ -> /usr/src/sys
> machine -> /usr/src/sys/i386/include
> awk -f @/tools/makeobjops.awk @/kern/bus_if.m -h
> awk -f @/tools/makeobjops.awk @/kern/device_if.m -h
> :> opt_usb.h
> rm -f .depend
> mkdep -f .depend -a   -nostdinc -DUSB_DEBUG -DGSPCA_ENABLE_DEBUG
> -DGSPCA_ENABLE_COMPRESSION -DCONFIG_USB_GSPCA_MODULE=1
> -DVID_HARDWARE_GSPCA=0xFF -DGSPCA_VERSION=\"01.00.20\" -D__KERNEL__
> -DDRIVER_NAME=gspca -DDEV_NAME=\"video\" -D_KERNEL -DKLD_MODULE -ISunplus
> -ISunplus-jpeg -ISonix -IConexant -IVimicro -Idecoder
> -I/usr/local/share/linux-kmod-compat/linux_compat -I. -I@ -I@/contrib/altq
> gspca_core.c
> /usr/ports/multimedia/linux-gspca-kmod/work/gspcav1-20071220/decoder/gspcadecoder.c
> /usr/local/share/linux-kmod-compat/linux_compat/ldev_stub.c
> /usr/local/share/linux-kmod-compat/linux_compat/linux_compat.c
> In file included from
> /usr/local/share/linux-kmod-compat/linux_compat/ldev_stub.h:69,
>                  from
> /usr/local/share/linux-kmod-compat/linux_compat/ldev_stub.c:44:
> @/dev/usb/usb_port.h:93:20: error: usb_if.h: No such file or directory
> In file included from
> /usr/local/share/linux-kmod-compat/linux_compat/ldev_stub.h:69,
>                  from
> /usr/local/share/linux-kmod-compat/linux_compat/linux_compat.c:44:
> @/dev/usb/usb_port.h:93:20: error: usb_if.h: No such file or directory
> mkdep: compile failed
> *** Error code 1
>
> Stop in /usr/ports/multimedia/linux-gspca-kmod/work/gspcav1-20071220.
> *** Error code 1
>
> Stop in /usr/ports/multimedia/linux-gspca-kmod.
> - -------------------------------------------------------------------------
>
> Before I try something else, is this expected or not?

Yes, that code need to be ported to usb2 (you dont want to use it with old usb),
dont ask me how to do that, please. Ask Hans. Probably it needs libusb 2.0.

Also note that usb2(USB4BSD) is compatible with linux usb, so it should make
all this type of things trivial.

Oh my god, it is pain to have more than one usb stack at same time.

>
> - --
> Nikola Lecic = Nikola Lechits
> fingerprint : FEF3 66AF C90E EDC3 D878  7CDC 956D F4AB A377 1C9B
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v2.0.9 (FreeBSD)
>
> iJwEAQEDAAYFAkkgouUACgkQ/MM/0rYIoZiR9QP+Lpc0E3pjNNfwb5Hkq0GL+2lj
> PxOKw0jSeY6OSpPzhRxVHsNAytaAe8PGCmXoVV0QVv/hyy+fEFuyap2pBka02xKd
> OfAU86mevnoh+dMN6qTiSmoRQWDgolIdf7dkY0e8PQS+yJ78uZ4/EtOKlZoDKu3S
> mbnSuUll5SmlrPGdLGg=
> =pAFH
> -----END PGP SIGNATURE-----
>


More information about the freebsd-multimedia mailing list