summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/bt8xx
AgeCommit message (Collapse)Author
2008-10-19v4l: use video_device.num instead of minor in video%dHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> The kernel number of a v4l2 node (e.g. videoX, radioX or vbiX) is now independent of the minor number. So instead of using the minor field of the video_device struct one has to use the num field: this always contains the kernel number of the device node. I forgot about this when I did the v4l2 core change, so this patch converts all drivers that use it in one go. Luckily the change is trivial. Priority: high Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> CC: michael@mihu.de CC: mchehab@infradead.org CC: corbet@lwn.net CC: luca.risolia@studio.unibo.it CC: isely@pobox.com CC: pe1rxq@amsat.org CC: royale@zerezo.com CC: mkrufky@linuxtv.org CC: stoth@linuxtv.org
2008-10-03v4l: remove vidioc_enum_fmt_vbi_capHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Remove the vidioc_enum_fmt_vbi_cap ops: it was scheduled for removal in 2.6.28 since the v4l2 specification says that V4L2_BUF_TYPE_VBI_CAPTURE should not support VIDIOC_ENUM_FMT. It's also pretty pointless. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-09-07bttv: Turn video_nr, vbi_nr and radio_nr into arraysMauro Carvalho Chehab
From: Jean Delvare <khali@linux-fr.org> With video_nr, vbi_nr and radio_nr being simple integers, it is not possible to use these parameters on a system with multiple bttv adapters (which happens to be my case.) video_register_device() will always fail on the second and later adapters. Turn these parameters into arrays, as many other V4L drivers are already doing, so that they can be used on such systems. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-09-07bttv: Prevent NULL pointer dereference in radio_openMauro Carvalho Chehab
From: Jean Delvare <khali@linux-fr.org> Fix the following crash in the bttv driver: BUG: unable to handle kernel NULL pointer dereference at 000000000000036c IP: [<ffffffffa037860a>] radio_open+0x3a/0x170 [bttv] This happens because radio_open assumes that all present bttv devices have a radio function. If a bttv device without radio and one with radio are installed on the same system, and the one without radio is registered first, then radio_open checks for the radio device number of a bttv device that has no radio function, and this breaks. All we have to do to fix it is to skip bttv devices without a radio function. Priority: high Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-08-30bttv: Don't unmask VPRES interruptMauro Carvalho Chehab
From: Jean Delvare <khali@linux-fr.org> When the input is set to tuner and no antenna is connected, the BT848 can flood VPRES interrupts. So we don't want to enable this type of interrupts when the input it set to tuner. As we don't do anything when receiving such an interrupt anyway, the easiest fix is to simply not unmask this specific interrupt. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-09-01b2c2 and bt8xx: udelay to mdelayThierry MERLE
From: Thierry MERLE <thierry.merle@free.fr> b2c2-flexcop, dvb/bt8xx and video/bt8xx fails to build on ARM with: __bad_udelay is specifically designed on ARM to fail when udelay is called in a bad way. arch/arm/include/asm/delay.h has this to say about __bad_udelay: /* * This function intentionally does not exist; if you see references to * it, it means that you're calling udelay() with an out of range value. * * With currently imposed limits, this means that we support a max delay * of 2000us. Further limits: HZ<=1000 and bogomips<=3355 */ extern void __bad_udelay(void); Solution is to replace udelay by a mdelay and udelay with value less than 2000 Priority: high Signed-off-by: Thierry MERLE <thierry.merle@free.fr>
2008-08-23v4l-dvb: fix a bunch of sparse warningsHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Fixed a lot of sparse warnings: mostly warnings about shadowed variables and signed/unsigned mismatches. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-08-05bttv: Add support for Encore ENLTV2-FMMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Thanks to Sistema Fenix (http://www.sistemafenix.com.br/) and CDI Brasil (www.cdibrasil.com.br/) for sponsoring this development. Priority: normal Signed-off-by: Gilberto <gilberto@sistemafenix.com.br> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-08-05Fix mute on bttv driverMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-30v4l: move BKL down to the driver level.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> The BKL is now moved from the video_open function in v4l2-dev.c to the various drivers. It seems about a third of the drivers already has a lock of some sort protecting the open(), another third uses video_exclusive_open (yuck!) and the last third required adding the BKL in their open function. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-27remove select's of FW_LOADERMauro Carvalho Chehab
From: Adrian Bunk <bunk@kernel.org> After commit d9b19199e4894089456aaad295023263b5225c1a (always enable FW_LOADER unless EMBEDDED=y) we can remove the FW_LOADER select's and corresponding dependencies on HOTPLUG. Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-26v4l2-dev: remove unused type and type2 field from video_deviceHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> The type and type2 fields were unused and so could be removed. Instead add a vfl_type field that contains the type of the video device. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-21videodev: move all ioctl callbacks to a new v4l2_ioctl_ops structHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> All ioctl callbacks are now stored in a new v4l2_ioctl_ops struct. Drivers fill in a const struct v4l2_ioctl_ops and video_device just contains a const pointer to it. This ensures a clean separation between the const ops struct and the non-const video_device struct. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-20videodev: move some functions from v4l2-dev.h to v4l2-common.h or v4l2-ioctl.hHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> The functions in a header should not belong to another module. The prio functions belong to v4l2-common.c, so move them to v4l2-common.h. The ioctl functions belong to v4l2-ioctl.c, so create a new v4l2-ioctl.h header and move those functions to it. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-20videodev: renamed 'class_dev' to 'dev'Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> The class_dev field is a normal device, not a class device. This is very confusing and now that the old 'dev' field has been renamed to 'parent' we can rename 'class_dev' to just 'dev'. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-20videodev: rename 'dev' to 'parent'Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> The field 'dev' is not the video device, but the parent of the video device. Rename accordingly. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-17backport commit 4f2a0c3cdbead635f8aae729f550fcabcb73d1a5Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Author: David Woodhouse <dwmw2@infradead.org> Date: Sat May 24 00:11:44 2008 +0100 bt8xx: treat firmware data as const kernel-sync: Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-08v4l-dvb: remove support for kernels < 2.6.16Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Phase 4 removes the compatibility support for kernels < 2.6.16. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-08v4l-dvb: remove support for kernels < 2.6.13Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Phase 3 of the compat cleanup. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-08v4l-dvb: remove support for kernels < 2.6.10Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Phase 2 removes support for kernels < 2.6.10. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-08v4l-dvb: remove support for kernels < 2.6.0Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> First phase of the backwards compatibility cleanup: stop supporting kernels older than 2.6.0. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-22bt8xx endianness annotations and fixesMauro Carvalho Chehab
From: Al Viro <viro@ftp.linux.org.uk> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-06-23bttv: allow debug ioctl'sMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-06-15bt8xx: i2c structure templates clean-upMauro Carvalho Chehab
From: Jean Delvare <khali@linux-fr.org> Clean up the use of structure templates in bttv-i2c. For one thing, a real template is supposed to be read-only. And in some cases it's more efficient to initialize the few fields we need individually. This clean-up shrinks bttv-i2c.o by 29% (x86_64). Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-06-03apply backout changesetMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-06-03backout changeset e30f9c367fabf6227e17c5191c62f886d55eb2d7Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Unfortunately, this patch were mixed with an experimental patch I'm working with. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-21 cinergyT2: endianness annotations, endianness and race fixesMauro Carvalho Chehab
From: Al Viro <viro@ftp.linux.org.uk> Endianness annotations and fixes + fixing the handling of ->uncorrected_block_count Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-28videodev: renamed the vidioc_*_fmt_* callbacksHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> The naming for the callbacks that handle the VIDIOC_ENUM_FMT and VIDIOC_S/G/TRY_FMT ioctls was very confusing. Renamed it to match the v4l2_buf_type name. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-05-21 bt8xx: unaligned accessMauro Carvalho Chehab
From: Al Viro <viro@ftp.linux.org.uk> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-21 annotate bcx_riscmemMauro Carvalho Chehab
From: Al Viro <viro@ftp.linux.org.uk> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-17 [PATCH] Fix a deadlock in the bttv driverMauro Carvalho Chehab
From: Arjan van de Ven <arjan@linux.intel.com> vidiocgmbuf() does this: mutex_lock(&fh->cap.vb_lock); retval = videobuf_mmap_setup(&fh->cap, gbuffers, gbufsize, V4L2_MEMORY_MMAP); and videobuf_mmap_setup() then just does mutex_lock(&q->vb_lock); ret = __videobuf_mmap_setup(q, bcount, bsize, memory); mutex_unlock(&q->vb_lock); which is an obvious double-take deadlock. This patch fixes this by having vidiocgmbuf() just call the __videobuf_mmap_setup function instead. Signed-off-by: Arjan van de Ven <arjan@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-06Fix FW_LOADER depencency at v4l/dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Since: 1) FW_LOADER is defined as: config FW_LOADER tristate "Userspace firmware loading support" depends on HOTPLUG 2) several V4L/DVB driver just selects it; 3) select is not smart enough to auto-select HOTPLUG, if select FW_LOADER. So, All drivers that select FW_LOADER should also depend on HOTPLUG. An easier solution (for the end-user perspective) would be to "select HOTPLUG". However, live is not simple. This would cause recursive dependency issues like this one: drivers/usb/Kconfig:62:error: found recursive dependency: USB -> USB_OHCI_HCD -> I2C -> MEDIA_TUNER -> MEDIA_TUNER_XC2028 -> HOTPLUG -> PCCARD -> PCMCIA -> USB_ARCH_HAS_HCD -> MOUSE_APPLETOUCH -> USB Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-06Re-creates VIDEO_TUNERMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> VIDEO_TUNER is responsible for compilation of tuners.ko module. This were the previous behaviour before the creation of MEDIA_TUNER. Before this patch, tuner.ko were created even for drivers that don't need a tuner (like webcam drivers). Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-05-02backport commit bdf4bbaaee3d4b8f555658333cbce1affe9070fbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> kernel-sync: Author: Harvey Harrison <harvey.harrison@gmail.com> Date: Wed Apr 30 00:54:55 2008 -0700 Add macros similar to min/max/min_t/max_t Also, change the variable names used in the min/max macros to avoid shadowed variable warnings when min/max min_t/max_t are nested. Small formatting changes to make all the macros have a similar form. [akpm@linux-foundation.org: coding-style fixes] [akpm@linux-foundation.org: fix v4l build] Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-30Use the same name convention for all tuners under common/tunersMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> kernel-sync: Auto generated by this script: for i in `find drivers/media/ -name Kconfig`; do cat $i |\ sed s,DVB_CORE_ATTACH,MEDIA_ATTACH,g |\ sed s,VIDEO_TUNER,MEDIA_TUNER,g |\ sed s,TUNER_SIMPLE,MEDIA_TUNER_SIMPLE,g |\ sed s,TUNER_TDA8290,MEDIA_TUNER_TDA8290,g |\ sed s,DVB_TDA827X,MEDIA_TUNER_TDA827X,g |\ sed s,DVB_TDA18271,MEDIA_TUNER_TDA18271,g |\ sed s,TUNER_TDA9887,MEDIA_TUNER_TDA9887,g |\ sed s,TUNER_TEA5761,MEDIA_TUNER_TEA5761,g |\ sed s,TUNER_TEA5767,MEDIA_TUNER_TEA5767,g |\ sed s,TUNER_MT20XX,MEDIA_TUNER_MT20XX,g |\ sed s,DVB_TUNER_MT2060,MEDIA_TUNER_MT2060,g |\ sed s,DVB_TUNER_MT2266,MEDIA_TUNER_MT2266,g |\ sed s,DVB_TUNER_MT2131,MEDIA_TUNER_MT2131,g |\ sed s,DVB_TUNER_QT1010,MEDIA_TUNER_QT1010,g |\ sed s,TUNER_XC2028,MEDIA_TUNER_XC2028,g |\ sed s,DVB_TUNER_XC5000,MEDIA_TUNER_XC5000,g >/tmp/temp_mv$$ mv /tmp/temp_mv$$ $i done for i in `find drivers/media/ -type f`; do cat $i |\ sed s,CONFIG_DVB_CORE_ATTACH,CONFIG_MEDIA_ATTACH,g |\ sed s,CONFIG_VIDEO_TUNER,CONFIG_MEDIA_TUNER,g |\ sed s,CONFIG_TUNER_SIMPLE,CONFIG_MEDIA_TUNER_SIMPLE,g |\ sed s,CONFIG_TUNER_TDA8290,CONFIG_MEDIA_TUNER_TDA8290,g |\ sed s,CONFIG_DVB_TDA827X,CONFIG_MEDIA_TUNER_TDA827X,g |\ sed s,CONFIG_DVB_TDA18271,CONFIG_MEDIA_TUNER_TDA18271,g |\ sed s,CONFIG_TUNER_TDA9887,CONFIG_MEDIA_TUNER_TDA9887,g |\ sed s,CONFIG_TUNER_TEA5761,CONFIG_MEDIA_TUNER_TEA5761,g |\ sed s,CONFIG_TUNER_TEA5767,CONFIG_MEDIA_TUNER_TEA5767,g |\ sed s,CONFIG_TUNER_MT20XX,CONFIG_MEDIA_TUNER_MT20XX,g |\ sed s,CONFIG_DVB_TUNER_MT2060,CONFIG_MEDIA_TUNER_MT2060,g |\ sed s,CONFIG_DVB_TUNER_MT2266,CONFIG_MEDIA_TUNER_MT2266,g |\ sed s,CONFIG_DVB_TUNER_MT2131,CONFIG_MEDIA_TUNER_MT2131,g |\ sed s,CONFIG_DVB_TUNER_QT1010,CONFIG_MEDIA_TUNER_QT1010,g |\ sed s,CONFIG_TUNER_XC2028,CONFIG_MEDIA_TUNER_XC2028,g |\ sed s,CONFIG_DVB_TUNER_XC5000,CONFIG_MEDIA_TUNER_XC5000,g >/tmp/temp_mv$$ mv /tmp/temp_mv$$ $i done Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-26From: Mauro Carvalho Chehab <mchehab@infradead.org>Mauro Carvalho Chehab
Move tuners to common/tuners There were several issues in the past, caused by the hybrid tuner design, since now, the same tuner can be used by drivers/media/dvb and drivers/media/video. This patch moves those common tuners into a common dir. It also moves saa7146 driver into drivers/media/video, where other hybrid drivers are placed. Kconfig items were rearranged, to split V4L/DVB core from their drivers. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-10 bttv: Fix memory leak in radio_releaseMauro Carvalho Chehab
From: Robert Fitzsimons <robfitz@273k.net> Fix the leak of the bttv_fh structure allocated in radio_open which was introduced by commit 5cd3955cb8adfc1edf481e9e1cb2289db50ccacb. Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-01Fix a small bug introduced on a previous changeset.Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-01bttv: Fix some API non-compliances for some audio/input V4L2 callsMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Thanks to Cyrill Gorcunov <gorcunov@gmail.com> for pointing this CC: Cyrill Gorcunov <gorcunov@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-01 bttv: fix missed index checkMauro Carvalho Chehab
From: Cyrill Gorcunov <gorcunov@gmail.com> We should check for proper index first Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-01 bttv: Bt832 - fix possible NULL pointer derefMauro Carvalho Chehab
From: Cyrill Gorcunov <gorcunov@gmail.com> This patch does fix potential NULL pointer dereference Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-02-10use tuner-simple for Philips FCV1236D digital tuning supportMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Convert dvb-bt8xx to use tuner-simple instead of dvb-pll for Philips FCV1236D Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2008-03-22bttv: Add a radio compat_ioctl file operationMauro Carvalho Chehab
From: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-03-18 git-dvb: drivers/media/video/bt8xx/bttv-cards.c: fix warningsMauro Carvalho Chehab
From: Andrew Morton <akpm@linux-foundation.org> drivers/media/video/bt8xx/bttv-cards.c:3030:38: warning: "/*" within comment drivers/media/video/bt8xx/bttv-cards.c:3032:20: warning: "/*" within comment Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-03-18merge: http://linuxtv.org/hg/~mkrufky/tunerMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-03-15tuner: rename TUNER_PHILIPS_ATSC to TUNER_PHILIPS_FCV1236DMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> TUNER_PHILIPS_ATSC is an ambiguous name for a tuner. Rename it to TUNER_PHILIPS_FCV1236D to be more descriptive. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2008-03-13bttv: added support for Kozumi KTV-01C cardMauro Carvalho Chehab
From: Mauro Lacy <mauro@lacy.com.ar> Signed-off-by: Mauro Lacy <mauro@lacy.com.ar> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-03-13Support for a 16-channel bt878 cardMauro Carvalho Chehab
From: Ernesto Hernández-Novich <emhn@usb.ve> I have what looks like a Geovision GV-600 (or 650) card. It has a large chip in the middle labeled CONEXANT FUSION 878A 25878-13 E345881.1 0312 TAIWAN It has an audio connector coming out from a chip labeled ATMEL 0242 AT89C2051-24PI It is identified as follows on my Debian GNU/Linux Etch (kernel 2.6.18) ... 01:0a.0 Multimedia video controller: Brooktree Corporation Bt878 Video Capture (rev 11) 01:0a.1 Multimedia controller: Brooktree Corporation Bt878 Audio Capture (rev 11) ... 01:0a.0 0400: 109e:036e (rev 11) Subsystem: 008a:763c Flags: bus master, medium devsel, latency 64, IRQ 58 Memory at dfffe000 (32-bit, prefetchable) [size=4K] Capabilities: [44] Vital Product Data Capabilities: [4c] Power Management version 2 01:0a.1 0480: 109e:0878 (rev 11) Subsystem: 008a:763c Flags: bus master, medium devsel, latency 64, IRQ 58 Memory at dffff000 (32-bit, prefetchable) [size=4K] Capabilities: [44] Vital Product Data Capabilities: [4c] Power Management version 2 It was being detected as a GENERIC UNKNOWN CARD both by the 2.6.18 kernel and the latest v4l-dvb drivers, but it did not work at all. The card has sixteen (16) BNC video inputs, four of them on the board itself and twelve on three daughter-cards. It has a single bt878 chip, no tuner and what looks like and audio input. After doing some research I managed to get only eight channels working by forcing card=125 and those DID NOT match channels 0-7 on the card, and no audio. Based on what was working for card=125, I added the card definition block, added a specific muxsel routine and got the card working fully with xawtv, where the sixteen channels show up as Composite0 to Composite15, matching the channel labels in the card and daughter-cards. I have made no efforts yet to get audio working, but would appreciate any pointers. Signed-off-by: Ernesto Hernández-Novich <emhn@usb.ve> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-03-01: tuner and radio addresses are missing for the PixelView PlayTV cardMauro Carvalho Chehab
From: Wojciech Migda <wojtek.golf@interia.pl> The PixelView PlayTV card definition structure was missing initialization of the tuner_addr and radio_addr fields. As a result it was impossible to have the tuner initialized using parameters specified while loading the bttv.ko module. This regression became visible after the v4l rearrangements introduced somewhere around 2.6.15 kernel version. The root cause for the tuner initialization failure is located in the attach_inform function in the bttv-i2c.c file. There at the very beginning the addr variable holding the tuner device address is initialized with the value taken from the bttv_tvcards array. For the PixelView PlayTV card the tuner address field (and the radio address as well) was uninitialized, and thus equal 0. Later in that function execution of the TUNER_SET_TYPE_ADDR tuner command is guarded with check for the tuner address either equal ADDR_UNSET, or client->addr. Since both are non-zero (the latter in case of the card owned by me at the runtime is equal 0x61) the TUNER_SET_TYPE_ADDR command is not executed, and consequently in the tuner_attach function in the tuner-core.c file call to i2c_attach_client does not result in assigning the tuner type variable with the requested value. Providing initialization of the tuner_addr and radio_addr with ADDR_UNSET values as it is already done for other tv cards defined in bttv-cards.c ensures that the tuner initialization is done correctly, just as it used to be in the 2.6.14 kernel. Signed-off-by: Wojciech Migda <wojtek.golf@interia.pl> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-02-27 bttv: Re-enable radio tuner support for VIDIOCGFREQ/VIDIOCSFREQ ioctls.Mauro Carvalho Chehab
From: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>