Date: Sat, 24 Jul 2010 18:05:14 +0200 From: Juergen Lock <nox@jelal.kn-bremen.de> To: Juergen Lock <nox@jelal.kn-bremen.de> Cc: freebsd-multimedia@FreeBSD.org Subject: Re: usb tuners that don't immediately work with webcamd Message-ID: <20100724160514.GA7452@triton8.kn-bremen.de> In-Reply-To: <20100724154459.GA5755@triton8.kn-bremen.de>
index | next in thread | previous in thread | raw e-mail
On Sat, Jul 24, 2010 at 05:44:59PM +0200, Juergen Lock wrote: > Since I've now done this for the third time... > > If your usb tuner doesn't immediately work with webcamd (no device > node gets created or /dev/dvb/adapterX/frontend0 is missing in case > of dvb or the device is just not tuning/receiving), there may only > be some Linux driver(s) not enabled i.e. a simple webcamd Makefile > patch like this may be all that's needed: > > Index: ulinux/Makefile > =================================================================== > --- ulinux/Makefile (revision 1592) > +++ ulinux/Makefile (working copy) > @@ -462,6 +462,10 @@ > SRCS+= flexcop-usb.c > SRCS+= flexcop.c > > +SRCS+= dib7000p.c > +CFLAGS+= -DCONFIG_DVB_DIB7000P > +SRCS+= mt2060.c > +CFLAGS+= -DCONFIG_MEDIA_TUNER_MT2060 > # > # Various webcams > # > > How to find out which driver is missing? webcamd svn now has a > HAVE_DEBUG knob, i.e. in hps' svn instructions here: > > http://www.selasky.org/hans_petter/video4bsd/ > > replace > > make -j3 all > > with: > > make HAVE_DEBUG=YES -j3 all > > then the resulting webcamd will show Linux driver's debug output. > If in those you see messages like: > > dib7000pc_detection: driver disabled by Kconfig > > you may be lucky: grep for that symbol - i.e. dib7000pc_detection > in this case - in ulinux/v4l-dvb/linux/drivers/media/ and > look which .c source file defines it (there should be a > EXPORT_SYMBOL() around it, in this case it was in > ulinux/v4l-dvb/linux/drivers/media/dvb/frontends/dib7000p.c ) and > which CONFIG_xxx definition is needed - in this case there was an > > #if defined(CONFIG_DVB_DIB7000P) ... > > in ulinux/v4l-dvb/linux/drivers/media/dvb/frontends/dib7000p.h . > > Add those to ulinux/Makefile as in the patch above, do > > rm ulinux/*.o > > for good measure and then do another > > make HAVE_DEBUG=YES -j3 all > > and repeat. (In this case it turned out that also the mt2060 tuner > driver was missing.) > > Good luck! > Juergen > > PS: This particular device was an `EyeTV for DTT' tuner that comes > up as 'Hauppauge Nova-T Stick' (hi callum! :), but apparently with > this specific model there are still (I guess) Linux driver issues, > it only got poor reception while on the same antenna on osx and > using the `EyeTV' software that came with it reception was alright; > even enabling a module_param called `buggy_sfn_workaround' that > came up on a web search (and currently has to be hardcoded with > webcamd) didn't really help there: > > --- ulinux/v4l-dvb/linux/drivers/media/dvb/frontends/dib7000p.c > +++ ulinux/v4l-dvb/linux/drivers/media/dvb/frontends/dib7000p.c.orig > @@ -24,7 +24,7 @@ static int debug; > module_param(debug, int, 0644); > MODULE_PARM_DESC(debug, "turn on debugging (default: 0)"); > > -static int buggy_sfn_workaround; > +static int buggy_sfn_workaround = 1; > module_param(buggy_sfn_workaround, int, 0644); > MODULE_PARM_DESC(buggy_sfn_workaround, "Enable work-around for buggy SFNs (default: 0)"); > I forgot to say: Someone(tm) may want to grep for '#if.*defined(CONFIG_' and try to enable the remaining drivers that aren't yet... (and then only disable those that don't build with webcamd.) Cheers, Juergenhome | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100724160514.GA7452>
