aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOliver Endriss <o.endriss@gmx.de>2011-01-10 04:36:24 -0500
committerMauro Carvalho Chehab <mchehab@redhat.com>2011-03-21 19:31:46 -0400
commit4862d6b2e23f0573ef60c784341e05e1ac0804eb (patch)
treeca645be5c8e2c192bef085561110aeeab26da50a
parent3d0cef2c3c7e19a2425f8e1379a535c46427951b (diff)
[media] stv090x: 22kHz workaround must also be performed for the 2nd frontend
22kHz workaround must also be performed for the 2nd frontend. Signed-off-by: Oliver Endriss <o.endriss@gmx.de> Signed-off-by: Manu Abraham <manu@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--drivers/media/dvb/frontends/stv090x.c26
1 files changed, 11 insertions, 15 deletions
diff --git a/drivers/media/dvb/frontends/stv090x.c b/drivers/media/dvb/frontends/stv090x.c
index e3442a14e5b2..d3362d0407eb 100644
--- a/drivers/media/dvb/frontends/stv090x.c
+++ b/drivers/media/dvb/frontends/stv090x.c
@@ -4696,10 +4696,6 @@ static int stv090x_setup(struct dvb_frontend *fe)
4696 if (stv090x_write_reg(state, STV090x_TSTRES0, 0x00) < 0) 4696 if (stv090x_write_reg(state, STV090x_TSTRES0, 0x00) < 0)
4697 goto err; 4697 goto err;
4698 4698
4699 /* workaround for stuck DiSEqC output */
4700 if (config->diseqc_envelope_mode)
4701 stv090x_send_diseqc_burst(fe, SEC_MINI_A);
4702
4703 return 0; 4699 return 0;
4704err: 4700err:
4705 dprintk(FE_ERROR, 1, "I/O error"); 4701 dprintk(FE_ERROR, 1, "I/O error");
@@ -4784,11 +4780,6 @@ struct dvb_frontend *stv090x_attach(const struct stv090x_config *config,
4784 state->internal = temp_int->internal; 4780 state->internal = temp_int->internal;
4785 state->internal->num_used++; 4781 state->internal->num_used++;
4786 dprintk(FE_INFO, 1, "Found Internal Structure!"); 4782 dprintk(FE_INFO, 1, "Found Internal Structure!");
4787 dprintk(FE_ERROR, 1, "Attaching %s demodulator(%d) Cut=0x%02x",
4788 state->device == STV0900 ? "STV0900" : "STV0903",
4789 demod,
4790 state->internal->dev_ver);
4791 return &state->frontend;
4792 } else { 4783 } else {
4793 state->internal = kmalloc(sizeof(struct stv090x_internal), 4784 state->internal = kmalloc(sizeof(struct stv090x_internal),
4794 GFP_KERNEL); 4785 GFP_KERNEL);
@@ -4799,15 +4790,20 @@ struct dvb_frontend *stv090x_attach(const struct stv090x_config *config,
4799 state->internal->i2c_adap = state->i2c; 4790 state->internal->i2c_adap = state->i2c;
4800 state->internal->i2c_addr = state->config->address; 4791 state->internal->i2c_addr = state->config->address;
4801 dprintk(FE_INFO, 1, "Create New Internal Structure!"); 4792 dprintk(FE_INFO, 1, "Create New Internal Structure!");
4802 }
4803 4793
4804 mutex_init(&state->internal->demod_lock); 4794 mutex_init(&state->internal->demod_lock);
4805 mutex_init(&state->internal->tuner_lock); 4795 mutex_init(&state->internal->tuner_lock);
4806 4796
4807 if (stv090x_setup(&state->frontend) < 0) { 4797 if (stv090x_setup(&state->frontend) < 0) {
4808 dprintk(FE_ERROR, 1, "Error setting up device"); 4798 dprintk(FE_ERROR, 1, "Error setting up device");
4809 goto error; 4799 goto error;
4800 }
4810 } 4801 }
4802
4803 /* workaround for stuck DiSEqC output */
4804 if (config->diseqc_envelope_mode)
4805 stv090x_send_diseqc_burst(&state->frontend, SEC_MINI_A);
4806
4811 dprintk(FE_ERROR, 1, "Attaching %s demodulator(%d) Cut=0x%02x", 4807 dprintk(FE_ERROR, 1, "Attaching %s demodulator(%d) Cut=0x%02x",
4812 state->device == STV0900 ? "STV0900" : "STV0903", 4808 state->device == STV0900 ? "STV0900" : "STV0903",
4813 demod, 4809 demod,