summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/saa7134
AgeCommit message (Collapse)Author
2008-10-13Add support for MSI TV@nywhere Plus remoteMauro Carvalho Chehab
From: Brian Rogers <brian_rogers@comcast.net> The IR controller has a couple quirks. It won't respond until some other device on the bus is probed. To work around that, probe 0x50 first. Then, since it won't respond to a zero-byte read, probe with a one-byte read. Signed-off-by: Brian Rogers <brian_rogers@comcast.net> [mchehab.redhat.com: Fix merge conflicts and remove an unused var] Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
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-08-08backport commit 5e246b850df563224be26f1d409cf66fd6c968dfMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Author: Takashi Iwai <tiwai@suse.de> ALSA: Kill snd_assert() in other places Kill snd_assert() in other places, either removed or replaced with if () with snd_BUG_ON(). kernel-sync: Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-10-04saa7134: fixes for the Asus Tiger Revision 1.00Mauro Carvalho Chehab
From: Hermann Pitton <hermann-pitton@arcor.de> In opposite to the P7131 Dual this early OEM card has a male radio antenna connector and also no remote. We currently switch the DVB-T RF feed to the radio input, like on the P7131 with female radio connector used also for DVB-T and should improve this. Priority: normal Signed-off-by: Hermann Pitton <hermann-pitton@arcor.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-09-29saa7134: fix I2C remote controls on saa7134Mauro Carvalho Chehab
From: Dmitri Belimov <d.belimov@gmail.com> This is patch for solve this regression. Load ir-kbd-i2c module when remote is i2c type. With my best regards, Dmitry. Signed-off-by: Beholder Intl. Ltd. Dmitry Belimov <d.belimov@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-05-06Add ADS Tech Instant HDTV PCI supportMauro Carvalho Chehab
From: Adam Glover <aglover.v4l@mindspring.com> Add PCI ID and device specific tables for ADS Tech Instant HDTV. Priority: normal [mchehab@redhat.com: make checkpatch happy and fix merge conflicts] Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-06-26saa7134: Add support for Real Audio 220Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Thanks to Sistema Fenix (http://www.sistemafenix.com.br/) for sponsoring this development. Signed-off-by: Gilberto <gilberto@sistemafenix.com.br> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-06-26saa7134: Add support for Avermedia PCI pure analog (M135A)Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Thanks to Sistema Fenix (http://www.sistemafenix.com.br/) for sponsoring this development. Signed-off-by: Gilberto <gilberto@sistemafenix.com.br> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-06-26saa7134: Add support for Encore version 5.3 boardMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Thanks to Sistema Fenix (http://www.sistemafenix.com.br/) for sponsoring this development. Signed-off-by: Gilberto <gilberto@sistemafenix.com.br> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-09-28saa7134: Hauppauge HVR-1110, support for radio and analog audio inMauro Carvalho Chehab
From: David Bentham <db260179@hotmail.com> The audio switch is at 0x100 and radio on gpio 21. Priority: normal Signed-off-by: David Bentham <db260179@hotmail.com> Reviewed-by: Hermann Pitton <hermann-pitton@arcor.de> Tested-by: Thomas Genty <tomlohave@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-09-12convert tuner drivers to use dvb_frontend->callbackMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Priority: normal Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2008-09-14saa7134: add support for the triple Asus Tiger 3in1Mauro Carvalho Chehab
From: hermann pitton <hermann-pitton@arcor.de> after looking it up, all rants about the 80 columns restriction seem to be in vain. After changing the card's name it are now "only" seven new lines in the tiny DVB-T/DVB-S switch function. saa7130/34: v4l2 driver version 0.2.14 loaded saa7133[0]: found at 0000:02:08.0, rev: 209, irq: 18, latency: 32, mmio: 0xfdef7000 saa7133[0]: subsystem: 1043:4878, board: Asus Tiger 3in1 [card=147,autodetected] saa7133[0]: board init: gpio is 200000 tuner' 2-004b: chip found @ 0x96 (saa7133[0]) saa7133[0]: i2c eeprom 00: 43 10 78 48 54 20 1c 00 43 43 a9 1c 55 d2 b2 92 saa7133[0]: i2c eeprom 10: ff ff ff 0f ff 20 ff ff ff ff ff ff ff ff ff ff saa7133[0]: i2c eeprom 20: 01 40 01 02 03 01 01 03 08 ff 00 d7 ff ff ff ff saa7133[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff saa7133[0]: i2c eeprom 40: ff 28 00 c2 96 16 03 02 c0 1c ff ff ff ff ff ff saa7133[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff saa7133[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff saa7133[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff saa7133[0]: i2c eeprom 80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff saa7133[0]: i2c eeprom 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff saa7133[0]: i2c eeprom a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff saa7133[0]: i2c eeprom b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff saa7133[0]: i2c eeprom c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff saa7133[0]: i2c eeprom d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff saa7133[0]: i2c eeprom e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff saa7133[0]: i2c eeprom f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff saa7133[0]: i2c scan: found device @ 0x10 [???] saa7133[0]: i2c scan: found device @ 0x16 [???] saa7133[0]: i2c scan: found device @ 0x1c [???] saa7133[0]: i2c scan: found device @ 0x96 [???] saa7133[0]: i2c scan: found device @ 0xa0 [eeprom] tda829x 2-004b: setting tuner address to 61 tda829x 2-004b: type set to tda8290+75a saa7133[0]: registered device video0 [v4l2] saa7133[0]: registered device vbi0 saa7133[0]: registered device radio0 DVB: registering new adapter (saa7133[0]) DVB: registering frontend 0 (Philips TDA10086 DVB-S)... The board init gpio is 0x0, 0x200000 is from previously unloading with antenna_switch = 1. It needs firmware for the tda10046 and analog sound needs saa7134-alsa. I have support for one more board and need to fix the first revision of the Asus Tiger DVB-T hybrid. DVB-T currently hangs on the male radio antenna input, also some small other stuff. Please report any issues with this patch, the next are depending on this one. saa7134: add support for the triple Asus Tiger 3in1 Signed-off-by: Hermann Pitton <hermann-pitton@arcor.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-09-06saa6752hs: simplify writing to registersHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Add some utility functions to set registers. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-09-06saa7134-empress: fix changing the capture standard for non-tuner inputsHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> When changing the standard the saa6752hs was not updated unless the input was the TV tuner. The saa6752hs should be updated regardless of the input. In addition the S_STD and G_STD ioctls for the mpeg video device didn't do anything. This is now fixed: they behave just like S_STD and G_STD on the video0 device. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-08-26A simple state machine was added to saa7134_ts.Hans Verkuil
From: Dmitry Belimov <d.belimov@gmail.com> A simple state machine was added to saa7134_ts. It has three states: SAA7134_TS_STOPPED SAA7134_TS_BUFF_DONE SAA7134_TS_STARTED When buffer_setup is run we start the TS initialization: set SAA7134_TS_STOPPED. When all buffers are prepared we write data into DMA register and set SAA7134_TS_BUFF_DONE. When the first buffer is active start TS and set SAA7134_TS_STARTED. When ts_release is called stop TS and set SAA7134_TS_STOPPED. Priority: normal Signed-off-by: Beholder Intl. Ltd. Dmitry Belimov <d.belimov@gmail.com> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-08-26saa7134-empress: remove incorrect IRQ defines for TSHans Verkuil
From: Dmitry Belimov <d.belimov@gmail.com> SAA7134_IRQ1_INTE_RA2_3 and SAA7134_IRQ1_INTE_RA2_2 are used for planar video, not for TS. Priority: normal Signed-off-by: Beholder Intl. Ltd. Dmitry Belimov <d.belimov@gmail.com> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-08-26saa7134-empress: insert leading null bytes for Beholder M6 empress cardsHans Verkuil
From: Dmitry Belimov <d.belimov@gmail.com> Additional code to improve the init sequence and add board type tests were done by Hans Verkuil. Priority: normal Signed-off-by: Beholder Intl. Ltd. Dmitry Belimov <d.belimov@gmail.com> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-08-22v4l2: fix a bunch of compile warnings.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-08-20saa7134-core.c: fix warningMauro Carvalho Chehab
From: Alexander Beregalov <a.beregalov@gmail.com> drivers/media/video/saa7134/saa7134-core.c:366: warning: 'saa7134_buffer_requeue' defined but not used Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-08-08saa6752hs: add PMT table for AC3Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> The PMT table for AC3 audio is different. Thanks to Dmitry Belimov for providing the table data. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-08-08saa6752hs: cleanup and add AC-3 supportHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Cleaned up the saa6752hs i2c driver. Add AC-3 support. Add VIDIOC_CHIP_IDENT support. Priority: normal Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-08-05saa7134: Add NEC prococol IR decoding capabilityMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> This patch adds the capability of decoding NEC protocol, received via GPIO18 line. This GPIO port can trigger saa7134 IRQ. A future improvement would be to make it a little more generic to work also with GPIO16 line. A pure IRQ code didn't work, since some delays were introduced on the tests we did. A possible approach would be to use polling at a rate of 2.5 ms or less. If a new code were taken, a code similar to nec_task() could be used. However, this would add an extra overhead to kernel, and will consume more power. Due to that, we took an hybrid approach: an IRQ upper half to trigger when a new key is received and a bottom half to convert pulse-distance into a keycode. The bottom half is polling based, to improve performance. During the bottom half proccess, GPIO18 IRQ line is disabled, preventing IRQ reentrancy and improving performance a little bit. Thanks to Sistema Fenix (http://www.sistemafenix.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-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-27merge: http://www.linuxtv.org/hg/~hverkuil/v4l-dvb-videodevMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-27merge: http://www.linuxtv.org/hg/~hverkuil/v4l-dvb-empressMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-26empress: fix control handling oopsHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-26saa7134-empress.c: fix deadlockHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> ts_release() locked a mutex that videobuf_stop() also tried to obtain. But ts_release() shouldn't hold that mutex at all. Make empress_users atomic as well to prevent possible race condition. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
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: 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-17Fix autodetection for SAA7134_BOARD_ASUSTeK_P7131_ANALOGMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-17saa7134: Fix Kbuild dependency of ir-kbd-i2cMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Currently, saa7134 is dependent of ir-kbd-i2c, since it uses a symbol that is defined there. However, as this symbol is used only on saa7134, there's no sense on keeping it defined there (or on ir-commons). So, let's move it to saa7134 and remove one symbol for being exported. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-26saa7134: Copy tuner data earlier in init to avoid overwriting manual tuner typeMauro Carvalho Chehab
From: Simon Arlott <simon@fire.lp0.eu> When saa7134_board_init2 runs, it immediately overwrites the current value (set earlier from module parameter) of tuner_type with the static values, and then does autodetection. This patch moves the tuner_addr copy to earlier in saa7134_initdev and removes the tuner_type copy from saa7134_board_init2. Autodetection could still potentially change to the wrong tuner type, but it is now possible to override the default type for the card again. My card's tuner is configured with autodetection from eeprom, so I don't need to manually set the tuner. I've checked that the autodetection still works for my card. Reviewed-by: Hermann Pitton <hermann-pitton@arcor.de> Cc: Brian Marete <bgmarete@gmail.com> Signed-off-by: Simon Arlott <simon@fire.lp0.eu> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-12saa7134: fix compilationMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Previous patch added a macro that it is not yet defined. Disable that part of the code for now. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-12saa7134: Add support for analog only ASUSTeK P7131Mauro Carvalho Chehab
From: Hermann Pitton <hermann-pitton@arcor.de> saa7134: add a separate entry for the ASUSTeK P7131 analog only and do some eeprom detection to escape from the TVFM35 with the same PCI subsystem on auto detection. Signed-off-by: Hermann Pitton <hermann-pitton@arcor.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-11saa7134: add support for AVerMedia M103Mauro Carvalho Chehab
From: Massimo Piccioni <alsa@piccio.org> The following patch updates saa7134 driver to add support for AVerMedia M103 MiniPCI DVB-T Hybrid card. Signed-off-by: Massimo Piccioni <alsa@piccio.org> [mchehab@infradead.org: fixed merge conflicts and a small codingstyle] 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-27saa7134-empress: fix MPEG control supportHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> The MPEG controls could not be enumerated and so could not be read or set through the v4l2-ctl utility or shown in control panels. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-06-29Avermedia E506 compositeMauro Carvalho Chehab
From: Tim Farrington <timf@iinet.net.au> Composite was originally mis-labelled as name_comp1, so it should be simply redone as name_comp, with its now corrected attributes. Signed-off-by: Tim Farrington <timf@iinet.net.au> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-06-28Add LifeVideo To-Go Cardbus PCI IDMauro Carvalho Chehab
From: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us> Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-06-27saa7134: Avermedia A16D composite inputMauro Carvalho Chehab
From: Dan Taylor <dtaylor@startrac.com> Signed-off-by: Star Trac by Unisen, Inc. Dan Taylor <dtaylor@startrac.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-06-22 Fix open/close race in saa7134Mauro Carvalho Chehab
From: Arjan van de Ven <arjan@linux.intel.com> The saa7134 driver uses a (non-atomic) variable in an attempt to only allow one opener of the device (how it deals with sending the fd over unix sockets I don't know). Unfortunately, the release function first decrements this variable, and THEN goes on to disable more of the device. This allows for a race where another opener of the device comes in after the decrement of the variable, configures the hardware just to then see the hardware be disabled by the rest of the release function. This patch makes the release function use the same lock as the open function to protect the hardware as well as the variable (which now at least has some locking to protect it). Signed-off-by: Arjan van de Ven <arjan@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-06-16Add register get/set debug ioctls to saa7134Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-06-15saa7134: Fix entries for Avermedia A16d and Avermedia E506Mauro Carvalho Chehab
From: Tim Farrington <timf@iinet.net.au> Also, adds IR table for Avermedia A16d Signed-off-by: Tim Farrington <timf@iinet.net.au> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-06-14Improve error messages for tda1004x attachMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> A fresh copy of v.29 firmware, using get_firmware, is leading to an invalid firmware: DVB: registering new adapter (saa7133[0]) DVB: registering frontend 0 (Philips TDA10046H DVB-T)... tda1004x: setting up plls for 48MHz sampling clock tda1004x: found firmware revision ff -- invalid tda1004x: trying to boot from eeprom tda1004x: found firmware revision ff -- invalid tda1004x: waiting for firmware upload... tda1004x: Error during firmware upload tda1004x: found firmware revision ff -- invalid tda1004x: firmware upload failed Sometimes, loading/unloading this firmware makes tda1004x to return an invalid ID. However, there were no printk messages to help to identify what were the cause for the error. With this patch, it will now print: Invalid tda1004x ID = 0xff. Can't proceed saa7133[0]/dvb: failed to attach tda10046 saa7133[0]/dvb: frontend initialization failed Tested with LifeView FlyDVB-T Hybrid Cardbus/MSI TV @nywhere A/D NB Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>