diff options
Diffstat (limited to 'drivers/media/dvb/frontends/ix2505v.c')
-rw-r--r-- | drivers/media/dvb/frontends/ix2505v.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/media/dvb/frontends/ix2505v.c b/drivers/media/dvb/frontends/ix2505v.c index 6c2e929bd79f..9a517a4bf96d 100644 --- a/drivers/media/dvb/frontends/ix2505v.c +++ b/drivers/media/dvb/frontends/ix2505v.c | |||
@@ -218,11 +218,13 @@ static int ix2505v_set_params(struct dvb_frontend *fe, | |||
218 | fe->ops.i2c_gate_ctrl(fe, 1); | 218 | fe->ops.i2c_gate_ctrl(fe, 1); |
219 | 219 | ||
220 | len = sizeof(data); | 220 | len = sizeof(data); |
221 | |||
222 | ret |= ix2505v_write(state, data, len); | 221 | ret |= ix2505v_write(state, data, len); |
223 | 222 | ||
224 | data[2] |= 0x4; /* set TM = 1 other bits same */ | 223 | data[2] |= 0x4; /* set TM = 1 other bits same */ |
225 | 224 | ||
225 | if (fe->ops.i2c_gate_ctrl) | ||
226 | fe->ops.i2c_gate_ctrl(fe, 1); | ||
227 | |||
226 | len = 1; | 228 | len = 1; |
227 | ret |= ix2505v_write(state, &data[2], len); /* write byte 4 only */ | 229 | ret |= ix2505v_write(state, &data[2], len); /* write byte 4 only */ |
228 | 230 | ||
@@ -233,12 +235,12 @@ static int ix2505v_set_params(struct dvb_frontend *fe, | |||
233 | 235 | ||
234 | deb_info("Data 2=[%x%x]\n", data[2], data[3]); | 236 | deb_info("Data 2=[%x%x]\n", data[2], data[3]); |
235 | 237 | ||
238 | if (fe->ops.i2c_gate_ctrl) | ||
239 | fe->ops.i2c_gate_ctrl(fe, 1); | ||
240 | |||
236 | len = 2; | 241 | len = 2; |
237 | ret |= ix2505v_write(state, &data[2], len); /* write byte 4 & 5 */ | 242 | ret |= ix2505v_write(state, &data[2], len); /* write byte 4 & 5 */ |
238 | 243 | ||
239 | if (fe->ops.i2c_gate_ctrl) | ||
240 | fe->ops.i2c_gate_ctrl(fe, 0); | ||
241 | |||
242 | if (state->config->min_delay_ms) | 244 | if (state->config->min_delay_ms) |
243 | msleep(state->config->min_delay_ms); | 245 | msleep(state->config->min_delay_ms); |
244 | 246 | ||