diff options
author | Mauro Carvalho Chehab <mchehab@redhat.com> | 2008-01-08 09:26:59 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2010-05-17 23:40:05 -0400 |
commit | e5cc2bf4450fd9739534e690cc16efc140d7b7fc (patch) | |
tree | 91aa4b18c352edbf51dc52d7cf2c2f1f0ce4db11 /drivers/media/common | |
parent | 6eb5c8a6c82d7c753ea52df94ea2ff096b5aba96 (diff) |
V4L/DVB (12824): tuner-xc2028: adds an option to send i2c data on slower speed
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/common')
-rw-r--r-- | drivers/media/common/tuners/tuner-xc2028.c | 5 | ||||
-rw-r--r-- | drivers/media/common/tuners/tuner-xc2028.h | 1 |
2 files changed, 5 insertions, 1 deletions
diff --git a/drivers/media/common/tuners/tuner-xc2028.c b/drivers/media/common/tuners/tuner-xc2028.c index 96d61707f501..8d2907f38a94 100644 --- a/drivers/media/common/tuners/tuner-xc2028.c +++ b/drivers/media/common/tuners/tuner-xc2028.c | |||
@@ -100,6 +100,7 @@ struct xc2028_data { | |||
100 | if (size != _rc) \ | 100 | if (size != _rc) \ |
101 | tuner_info("i2c output error: rc = %d (should be %d)\n",\ | 101 | tuner_info("i2c output error: rc = %d (should be %d)\n",\ |
102 | _rc, (int)size); \ | 102 | _rc, (int)size); \ |
103 | msleep(priv->ctrl.msleep); \ | ||
103 | _rc; \ | 104 | _rc; \ |
104 | }) | 105 | }) |
105 | 106 | ||
@@ -119,6 +120,7 @@ struct xc2028_data { | |||
119 | if (isize != _rc) \ | 120 | if (isize != _rc) \ |
120 | tuner_err("i2c input error: rc = %d (should be %d)\n", \ | 121 | tuner_err("i2c input error: rc = %d (should be %d)\n", \ |
121 | _rc, (int)isize); \ | 122 | _rc, (int)isize); \ |
123 | msleep(priv->ctrl.msleep); \ | ||
122 | _rc; \ | 124 | _rc; \ |
123 | }) | 125 | }) |
124 | 126 | ||
@@ -130,7 +132,7 @@ struct xc2028_data { | |||
130 | _val, sizeof(_val)))) { \ | 132 | _val, sizeof(_val)))) { \ |
131 | tuner_err("Error on line %d: %d\n", __LINE__, _rc); \ | 133 | tuner_err("Error on line %d: %d\n", __LINE__, _rc); \ |
132 | } else \ | 134 | } else \ |
133 | msleep(10); \ | 135 | msleep(priv->ctrl.msleep); \ |
134 | _rc; \ | 136 | _rc; \ |
135 | }) | 137 | }) |
136 | 138 | ||
@@ -996,6 +998,7 @@ static int generic_set_freq(struct dvb_frontend *fe, u32 freq /* in HZ */, | |||
996 | The reset CLK is needed only with tm6000. | 998 | The reset CLK is needed only with tm6000. |
997 | Driver should work fine even if this fails. | 999 | Driver should work fine even if this fails. |
998 | */ | 1000 | */ |
1001 | msleep(priv->ctrl.msleep); | ||
999 | do_tuner_callback(fe, XC2028_RESET_CLK, 1); | 1002 | do_tuner_callback(fe, XC2028_RESET_CLK, 1); |
1000 | 1003 | ||
1001 | msleep(10); | 1004 | msleep(10); |
diff --git a/drivers/media/common/tuners/tuner-xc2028.h b/drivers/media/common/tuners/tuner-xc2028.h index a90c35d50add..e116071810e0 100644 --- a/drivers/media/common/tuners/tuner-xc2028.h +++ b/drivers/media/common/tuners/tuner-xc2028.h | |||
@@ -33,6 +33,7 @@ enum firmware_type { | |||
33 | struct xc2028_ctrl { | 33 | struct xc2028_ctrl { |
34 | char *fname; | 34 | char *fname; |
35 | int max_len; | 35 | int max_len; |
36 | int msleep; | ||
36 | unsigned int scode_table; | 37 | unsigned int scode_table; |
37 | unsigned int mts :1; | 38 | unsigned int mts :1; |
38 | unsigned int input1:1; | 39 | unsigned int input1:1; |