Date: Sat, 8 Jan 2011 14:11:11 -0500 From: Andrew Gallatin <gallatin@gmail.com> To: freebsd-multimedia@freebsd.org Subject: em28xx? Message-ID: <AANLkTimhh9qt1mwMk0NJ0_XP2W14azixpKD=fZYYpOpi@mail.gmail.com>
next in thread | raw e-mail | index | archive | help
Hi, I was pointed to the webcamd / cuse4bsd project as a way to run a DVB based device on FreeBSD. I have a Kworld UB435Q (em28xx, lgdt3305 demod): % sudo usbconfig -d 4.2 ugen4.2: <USB 2870 Device vendor 0x1b80> at usbus4, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON Unfortunately, this does not seem to be supported by the webcamd project, as the em28xx driver is not compiled in. When I naively try to compile it by uncommenting the 'SRC+= em28xx-*c' lines in webcamd's Makefile, the build fails spectacularly (see appended output). Has anybody tried this before? What are the general steps for porting a driver? Thanks, Drew % make | head Warning: Object directory not changed from original /tank/ports/multimedia/webcamd/work/webcamd-0.1.18 cc -O2 -pipe -DNO_MALLOC_EXTRAS -D_GNU_SOURCE -DCONFIG_USB_GSPCA -DCONFIG_USB_GSPCA_SONIXB -DCONFIG_USB_GSPCA_SONIXJ -DCONFIG_USB_GSPCA_ZC3XX -DCONFIG_DVB_AF9013 -DCONFIG_MEDIA_TUNER_MXL5005S -DCONFIG_DVB_STV0288 -DCONFIG_DVB_MT312 -DCONFIG_DVB_DS3000 -DCONFIG_DVB_STB0899 -DCONFIG_DVB_STB6100 -DCONFIG_DVB_LNBP22 -DCONFIG_DVB_TUNER_DIB0070 -DCONFIG_DVB_DIB7000P -DCONFIG_MEDIA_TUNER_MT2060 -DBITS_PER_LONG=64 -I/tank/ports/multimedia/webcamd/work/webcamd-0.1.18/dummy -I/tank/ports/multimedia/webcamd/work/webcamd-0.1.18/headers -I/tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux/drivers/media/video/gspca -I/tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux/drivers/media/video/hdpvr -I/tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux/drivers/media/common/tuners -I/tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux/drivers/media/dvb/dvb-core -I/tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux/drivers/media/dvb/frontends -I/tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux/drivers/media/dvb/dvb-usb -I/tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux/include -I/tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux -I/tank/ports/multimedia/webcamd/work/webcamd-0.1.18 -I/tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux/drivers/media/dvb/ttpci -DLINUX -DCONFIG_INPUT -DCONFIG_VIDEO_V4L1_COMPAT -DCONFIG_DVB_DIB3000MC -DCONFIG_VIDEO_PVRUSB2_DVB -DCONFIG_I2C -DCONFIG_DVB_CORE -DCONFIG_AS102_USB -DCONFIG_FW_LOADER -DHAVE_WEBCAMD -DCONFIG_DVB_AT76C651 -DCONFIG_DVB_ATBM8830 -DCONFIG_DVB_AU8522 -DCONFIG_DVB_BCM3510 -DCONFIG_DVB_CX22700 -DCONFIG_DVB_CX22702 -DCONFIG_DVB_CX24110 -DCONFIG_DVB_CX24116 -DCONFIG_DVB_CX24123 -DCONFIG_DVB_DIB3000MB -DCONFIG_DVB_DIB3000MC -DCONFIG_DVB_DIB3000MC -DCONFIG_DVB_DIB7000M -DCONFIG_DVB_DIB7000P -DCONFIG_DVB_DIB8000 -DCONFIG_DVB_DRX397XD -DCONFIG_DVB_EC100 -DCONFIG_DVB_ISL6405 -DCONFIG_DVB_ISL6421 -DCONFIG_DVB_ISL6423 -DCONFIG_DVB_L64781 -DCONFIG_DVB_LGDT3304 -DCONFIG_DVB_LGDT3305 -DCONFIG_DVB_LGDT330X -DCONFIG_DVB_LGS8GL5 -DCONFIG_DVB_LGS8GXX -DCONFIG_DVB_LNBP21 -DCONFIG_DVB_LNBP22 -DCONFIG_DVB_MB86A16 -DCONFIG_DVB_MT312 -DCONFIG_DVB_MT352 -DCONFIG_DVB_NXT200X -DCONFIG_DVB_NXT6000 -DCONFIG_DVB_OR51132 -DCONFIG_DVB_OR51211 -DCONFIG_DVB_PLL -DCONFIG_DVB_S5H1409 -DCONFIG_DVB_S5H1411 -DCONFIG_DVB_S5H1420 -DCONFIG_DVB_S921 -DCONFIG_DVB_SI21XX -DCONFIG_DVB_SP8870 -DCONFIG_DVB_SP887X -DCONFIG_DVB_STB0899 -DCONFIG_DVB_STB6000 -DCONFIG_DVB_STB6100 -DCONFIG_DVB_STV0288 -DCONFIG_DVB_STV0297 -DCONFIG_DVB_STV0299 -DCONFIG_DVB_STV0900 -DCONFIG_DVB_STV090x -DCONFIG_DVB_STV6110 -DCONFIG_DVB_STV6110x -DCONFIG_DVB_TDA10021 -DCONFIG_DVB_TDA10023 -DCONFIG_DVB_TDA10048 -DCONFIG_DVB_TDA1004X -DCONFIG_DVB_TDA10086 -DCONFIG_DVB_TDA665x -DCONFIG_DVB_TDA8083 -DCONFIG_DVB_TDA80XX -DCONFIG_DVB_TDA8261 -DCONFIG_DVB_TDA826X -DCONFIG_DVB_TUA6100 -DCONFIG_DVB_TUNER_CX24113 -DCONFIG_DVB_TUNER_DIB0090 -DCONFIG_DVB_TUNER_ITD1000 -DCONFIG_DVB_VES1820 -DCONFIG_DVB_VES1X93 -DCONFIG_DVB_ZL10036 -DCONFIG_DVB_ZL10039 -DCONFIG_DVB_ZL10353 -DCONFIG_MEDIA_TUNER_MAX2165 -DCONFIG_MEDIA_TUNER_MC44S803 -DCONFIG_MEDIA_TUNER_MC44S803 -DCONFIG_MEDIA_TUNER_MT2060 -DCONFIG_MEDIA_TUNER_MT20XX -DCONFIG_MEDIA_TUNER_MT2131 -DCONFIG_MEDIA_TUNER_MT2266 -DCONFIG_MEDIA_TUNER_MXL5005S -DCONFIG_MEDIA_TUNER_MXL5007T -DCONFIG_MEDIA_TUNER_QT1010 -DCONFIG_MEDIA_TUNER_SIMPLE -DCONFIG_MEDIA_TUNER_TDA18271 -DCONFIG_MEDIA_TUNER_TDA827X -DCONFIG_MEDIA_TUNER_TDA8290 -DCONFIG_MEDIA_TUNER_TDA9887 -DCONFIG_MEDIA_TUNER_TEA5761 -DCONFIG_MEDIA_TUNER_TEA5767 -DCONFIG_MEDIA_TUNER_XC2028 -DCONFIG_MEDIA_TUNER_XC5000 -DCONFIG_VIDEO_EM28XX_DVB -DCONFIG_VIDEO_SAA7134_DVB_MODULE -include webcamd_global.h -O2 -Wall -Wno-pointer-sign -fvisibility=hidden -I/usr/local/include -std=gnu99 -fstack-protector -c /tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux/drivers/media/video/em28xx/em28xx-cards.c In file included from /tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux/include/media/ir-common.h:29, from /tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux/include/media/ir-kbd-i2c.h:4, from /tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux/drivers/media/video/em28xx/em28xx.h:35, from /tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux/drivers/media/video/em28xx/em28xx-cards.c:42: /tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux/include/media/ir-core.h:20:25: error: linux/kfifo.h: No such file or directory In file included from /tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux/drivers/media/video/em28xx/em28xx.h:38, from /tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux/drivers/media/video/em28xx/em28xx-cards.c:42: /tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux/include/media/videobuf-dvb.h:7: error: redefinition of 'struct videobuf_dvb' /tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux/include/media/videobuf-dvb.h:26: error: redefinition of 'struct videobuf_dvb_frontend' /tank/ports/multimedia/webcamd/work/webcamd-0.1.18/v4l-dvb/linux/include/media/videobuf-dvb.h:32: error: redefinition of 'struct videobuf_dvb_frontends' *** Error code 1 Stop in /tank/ports/multimedia/webcamd/work/webcamd-0.1.18.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTimhh9qt1mwMk0NJ0_XP2W14azixpKD=fZYYpOpi>