diff options
author | Manu Abraham <abraham.manu@gmail.com> | 2008-03-08 18:28:09 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2008-12-29 14:53:23 -0500 |
commit | e399a7896080183132d875aa5d4faac647688134 (patch) | |
tree | d6e8395e5fd1e7c39f3e9cc4a43d563bda064ac4 /drivers/media/dvb/frontends/stb0899_drv.c | |
parent | b91a7cb026124951a34e41f8481f1a4fb754983e (diff) |
V4L/DVB (9463): Make delivery system standalone.
Eventhough the delivery system is made standalone, DVBFE_SET_DELSYS
needs to be set as the very first operation, for a multistandard frontend
Splitting delivery system out as a new ioctl, makes things a bit more
easier to understand.
Signed-off-by: Manu Abraham <manu@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/dvb/frontends/stb0899_drv.c')
-rw-r--r-- | drivers/media/dvb/frontends/stb0899_drv.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/drivers/media/dvb/frontends/stb0899_drv.c b/drivers/media/dvb/frontends/stb0899_drv.c index 38d9fa9c0ac1..e2509bf4a665 100644 --- a/drivers/media/dvb/frontends/stb0899_drv.c +++ b/drivers/media/dvb/frontends/stb0899_drv.c | |||
@@ -1374,7 +1374,6 @@ static int stb0899_get_info(struct dvb_frontend *fe, struct dvbfe_info *fe_info) | |||
1374 | 1374 | ||
1375 | dprintk(verbose, FE_DEBUG, 1, "Get Info"); | 1375 | dprintk(verbose, FE_DEBUG, 1, "Get Info"); |
1376 | 1376 | ||
1377 | state->delsys = fe_info->delivery; | ||
1378 | switch (state->delsys) { | 1377 | switch (state->delsys) { |
1379 | case DVBFE_DELSYS_DVBS: | 1378 | case DVBFE_DELSYS_DVBS: |
1380 | dprintk(verbose, FE_ERROR, 1, "Querying DVB-S info"); | 1379 | dprintk(verbose, FE_ERROR, 1, "Querying DVB-S info"); |
@@ -1404,7 +1403,7 @@ static int stb0899_get_delsys(struct dvb_frontend *fe, enum dvbfe_delsys *fe_del | |||
1404 | return 0; | 1403 | return 0; |
1405 | } | 1404 | } |
1406 | 1405 | ||
1407 | void stb0899_set_delsys(struct stb0899_state *state) | 1406 | static void stb0899_set_delivery(struct stb0899_state *state) |
1408 | { | 1407 | { |
1409 | u8 reg; | 1408 | u8 reg; |
1410 | u8 stop_clk[2]; | 1409 | u8 stop_clk[2]; |
@@ -1563,7 +1562,7 @@ static enum dvbfe_search stb0899_search(struct dvb_frontend *fe, struct dvbfe_pa | |||
1563 | /* checking Search Range is meaningless for a fixed 3 Mhz */ | 1562 | /* checking Search Range is meaningless for a fixed 3 Mhz */ |
1564 | if (INRANGE(i_params->srate, 1000000, 45000000)) { | 1563 | if (INRANGE(i_params->srate, 1000000, 45000000)) { |
1565 | dprintk(verbose, FE_DEBUG, 1, "Parameters IN RANGE"); | 1564 | dprintk(verbose, FE_DEBUG, 1, "Parameters IN RANGE"); |
1566 | stb0899_set_delsys(state); | 1565 | stb0899_set_delivery(state); |
1567 | 1566 | ||
1568 | if (state->config->tuner_set_rfsiggain) { | 1567 | if (state->config->tuner_set_rfsiggain) { |
1569 | if (internal->srate > 15000000) | 1568 | if (internal->srate > 15000000) |
@@ -1934,6 +1933,14 @@ static enum dvbfe_algo stb0899_frontend_algo(struct dvb_frontend *fe) | |||
1934 | return DVBFE_ALGO_CUSTOM; | 1933 | return DVBFE_ALGO_CUSTOM; |
1935 | } | 1934 | } |
1936 | 1935 | ||
1936 | static int stb0899_set_delsys(struct dvb_frontend *fe, enum dvbfe_delsys delsys) | ||
1937 | { | ||
1938 | struct stb0899_state *state = fe->demodulator_priv; | ||
1939 | |||
1940 | state->delsys = delsys; | ||
1941 | return 0; | ||
1942 | } | ||
1943 | |||
1937 | static struct dvb_frontend_ops stb0899_ops = { | 1944 | static struct dvb_frontend_ops stb0899_ops = { |
1938 | 1945 | ||
1939 | .info = { | 1946 | .info = { |
@@ -1948,6 +1955,7 @@ static struct dvb_frontend_ops stb0899_ops = { | |||
1948 | .i2c_gate_ctrl = stb0899_i2c_gate_ctrl, | 1955 | .i2c_gate_ctrl = stb0899_i2c_gate_ctrl, |
1949 | .get_info = stb0899_get_info, | 1956 | .get_info = stb0899_get_info, |
1950 | .get_delsys = stb0899_get_delsys, | 1957 | .get_delsys = stb0899_get_delsys, |
1958 | .set_delsys = stb0899_set_delsys, | ||
1951 | 1959 | ||
1952 | .get_frontend_algo = stb0899_frontend_algo, | 1960 | .get_frontend_algo = stb0899_frontend_algo, |
1953 | .search = stb0899_search, | 1961 | .search = stb0899_search, |