V4L/DVB (9396): Fix clocks at stb0899
authorManu Abraham <abraham.manu@gmail.com>
Sun, 23 Sep 2007 00:39:17 +0000 (21:39 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Mon, 29 Dec 2008 19:53:16 +0000 (17:53 -0200)
Really silly! Disabled all clocks and expected it to run.

Signed-off-by: Manu Abraham <manu@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/dvb/frontends/stb0899_drv.c

index 598e3348d53473e8107cb17a353f430cbc434af6..db620f02eda93e97de9b6fa8f6ea0d63b4b91be1 100644 (file)
@@ -251,7 +251,6 @@ int _stb0899_read_reg(struct stb0899_state *state, unsigned int reg)
                dprintk(verbose, FE_ERROR, 1, "Reg=[0x%02x], data=%02x",
                        reg, buf);
 
-
        return (unsigned int)buf;
 }
 
@@ -812,6 +811,13 @@ static int stb0899_wakeup(struct dvb_frontend *fe)
        int rc;
        struct stb0899_state *state = fe->demodulator_priv;
 
+       if ((rc = stb0899_write_reg(state, STB0899_SYNTCTRL, STB0899_SELOSCI)))
+               return rc;
+       /* Activate all clocks; DVB-S2 registers are inaccessible otherwise. */
+       if ((rc = stb0899_write_reg(state, STB0899_STOPCLK1, 0x00)))
+               return rc;
+       if ((rc = stb0899_write_reg(state, STB0899_STOPCLK2, 0x00)))
+               return rc;
 
        return 0;
 }
@@ -1825,7 +1831,6 @@ static int stb0899_get_params(struct dvb_frontend *fe, struct dvbfe_params *para
                dprintk(verbose, FE_DEBUG, 1, "Get DSS params");
                params->delsys.dss.symbol_rate          = internal->srate;
                params->delsys.dss.modulation           = DVBFE_MOD_QPSK;
-
                break;
        case DVBFE_DELSYS_DVBS2:
                dprintk(verbose, FE_DEBUG, 1, "Get DVB-S2 params");