aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/dvb/bt8xx/dst.c
diff options
context:
space:
mode:
authorManu Abraham <manu@kromtek.com>2005-05-28 18:51:48 -0400
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-05-28 19:46:09 -0400
commit203fe8b3d1f5b1b527e86f6dbe5b75960acb7f4f (patch)
treeef55ec3add89c75635dc2e7acd8dd985bb299076 /drivers/media/dvb/bt8xx/dst.c
parent5212dd58e67e4b8009107d69a9de45dd2e687496 (diff)
[PATCH] dvb: Fix Mini DiSEqC bug
The bug was visible as a warning with gcc-3.4.4 (prerelease) Message: drivers/media/dvb/bt8xx/dst.c:1349: warning: initialization from incompatible pointer type. Signed-off-by: Manu Abraham <manu@kromtek.com> Cc: Johannes Stezenbach <js@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/media/dvb/bt8xx/dst.c')
-rw-r--r--drivers/media/dvb/bt8xx/dst.c31
1 files changed, 26 insertions, 5 deletions
diff --git a/drivers/media/dvb/bt8xx/dst.c b/drivers/media/dvb/bt8xx/dst.c
index d047e349d706..2efc6f1caf84 100644
--- a/drivers/media/dvb/bt8xx/dst.c
+++ b/drivers/media/dvb/bt8xx/dst.c
@@ -915,13 +915,11 @@ static int dst_tone_power_cmd(struct dst_state* state)
915 paket[2] = 0x02; 915 paket[2] = 0x02;
916 else 916 else
917 paket[2] = 0; 917 paket[2] = 0;
918 if (state->minicmd == SEC_MINI_A)
919 paket[3] = 0x02;
920 else
921 paket[3] = 0;
922 918
919 paket[3] = state->tx_tuna[3];
923 paket[7] = dst_check_sum (paket, 7); 920 paket[7] = dst_check_sum (paket, 7);
924 dst_command(state, paket, 8); 921 dst_command(state, paket, 8);
922
925 return 0; 923 return 0;
926} 924}
927 925
@@ -1134,6 +1132,29 @@ static int dst_set_tone(struct dvb_frontend* fe, fe_sec_tone_mode_t tone)
1134 return 0; 1132 return 0;
1135} 1133}
1136 1134
1135static int dst_send_burst(struct dvb_frontend *fe, fe_sec_mini_cmd_t minicmd)
1136{
1137 struct dst_state *state = fe->demodulator_priv;
1138
1139 if ((state->dst_type == DST_TYPE_IS_TERR) || (state->dst_type == DST_TYPE_IS_CABLE))
1140 return 0;
1141
1142 state->minicmd = minicmd;
1143
1144 switch (minicmd) {
1145 case SEC_MINI_A:
1146 state->tx_tuna[3] = 0x02;
1147 break;
1148 case SEC_MINI_B:
1149 state->tx_tuna[3] = 0xff;
1150 break;
1151 }
1152 dst_tone_power_cmd(state);
1153
1154 return 0;
1155}
1156
1157
1137static int dst_init(struct dvb_frontend* fe) 1158static int dst_init(struct dvb_frontend* fe)
1138{ 1159{
1139 struct dst_state* state = (struct dst_state*) fe->demodulator_priv; 1160 struct dst_state* state = (struct dst_state*) fe->demodulator_priv;
@@ -1346,7 +1367,7 @@ static struct dvb_frontend_ops dst_dvbs_ops = {
1346 .read_signal_strength = dst_read_signal_strength, 1367 .read_signal_strength = dst_read_signal_strength,
1347 .read_snr = dst_read_snr, 1368 .read_snr = dst_read_snr,
1348 1369
1349 .diseqc_send_burst = dst_set_tone, 1370 .diseqc_send_burst = dst_send_burst,
1350 .diseqc_send_master_cmd = dst_set_diseqc, 1371 .diseqc_send_master_cmd = dst_set_diseqc,
1351 .set_voltage = dst_set_voltage, 1372 .set_voltage = dst_set_voltage,
1352 .set_tone = dst_set_tone, 1373 .set_tone = dst_set_tone,