Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[linux-dvb] [PATCH] Make grundig_29504-401 tuner work on module re-insertion
- To: linux-dvb@linuxtv.org
- Subject: [linux-dvb] [PATCH] Make grundig_29504-401 tuner work on module re-insertion
- From: Jon Burgess <mplayer@jburgess.uklinux.net>
- Date: Tue, 10 Jun 2003 19:36:13 +0100
- Content-type: multipart/mixed;boundary="------------000809030101010003010504"
- Sender: linux-dvb-bounce@linuxtv.org
- User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.3.1) Gecko/20030425
I noticed that if I remove and re-insert the grundig tuner and
dvb-ttpci-budget modules then the tuner module doesn't recognise the
hardware.
I tracked this down to two of the initialisation sanity checks failing
during the re-insertion. I have disabled these using the patch attached
and it works for me. Does anyone have a good enough understanding of the
chip to know if disabling these checks would cause a problem?
Are the relevant datasheets available?
Thanks,
Jon
--- grundig_29504-401.c~ 2003-06-07 12:53:55.000000000 +0100
+++ grundig_29504-401.c 2003-06-09 23:11:23.000000000 +0100
@@ -433,16 +433,20 @@
struct i2c_msg msg [] = { { .addr = 0x55, .flags = 0, .buf = b0, .len = 1 },
{ .addr = 0x55, .flags = I2C_M_RD, .buf = b1, .len = 1 } };
+#if 0 // This test fails on re-insertion
if (i2c->xfer (i2c, msg, 2) == 2) /* probably an EEPROM... */
return -ENODEV;
+#endif
reset_and_configure (i2c);
if (i2c->xfer (i2c, msg, 2) != 2) /* nothing... */
return -ENODEV;
+#if 0 // This test fails on re-insertion
if (b1[0] != 0xa1)
return -ENODEV;
+#endif
dvb_register_frontend (grundig_29504_401_ioctl, i2c, NULL,
&grundig_29504_401_info);
Home |
Main Index |
Thread Index