diff options
author | Steven Toth <stoth@linuxtv.org> | 2008-10-06 20:55:46 -0400 |
---|---|---|
committer | Steven Toth <stoth@linuxtv.org> | 2008-10-06 20:55:46 -0400 |
commit | 3a13c060ab3b0907e4749fa6914a3ddbeba1c0a6 (patch) | |
tree | 03221442481f25c74b98212158ef558b8514a6b1 /linux/drivers/media/dvb/dvb-core | |
parent | 35dfa5543c3557464747e67b89107fc28f902b47 (diff) | |
download | mediapointer-dvb-s2-3a13c060ab3b0907e4749fa6914a3ddbeba1c0a6.tar.gz mediapointer-dvb-s2-3a13c060ab3b0907e4749fa6914a3ddbeba1c0a6.tar.bz2 |
S2API: Added support for DTV_CODE_RATE_HP/LP
From: Steven Toth <stoth@linuxtv.org>
Reports from users that using the new API for tuning DTV was failing,
and the cache was missing some essential items.
Priority: normal
Signed-off-by: Steven Toth <stoth@linuxtv.org>
Diffstat (limited to 'linux/drivers/media/dvb/dvb-core')
-rw-r--r-- | linux/drivers/media/dvb/dvb-core/dvb_frontend.c | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/linux/drivers/media/dvb/dvb-core/dvb_frontend.c b/linux/drivers/media/dvb/dvb-core/dvb_frontend.c index b2b5515e2..d453108e1 100644 --- a/linux/drivers/media/dvb/dvb-core/dvb_frontend.c +++ b/linux/drivers/media/dvb/dvb-core/dvb_frontend.c @@ -853,6 +853,16 @@ struct dtv_cmds_h dtv_cmds[] = { .set = 1, }, #endif + [DTV_CODE_RATE_HP] = { + .name = "DTV_CODE_RATE_HP", + .cmd = DTV_CODE_RATE_HP, + .set = 1, + }, + [DTV_CODE_RATE_LP] = { + .name = "DTV_CODE_RATE_LP", + .cmd = DTV_CODE_RATE_LP, + .set = 1, + }, /* Get */ [DTV_DISEQC_SLAVE_REPLY] = { .name = "DTV_DISEQC_SLAVE_REPLY", @@ -912,6 +922,16 @@ struct dtv_cmds_h dtv_cmds[] = { .cmd = DTV_API_VERSION, .set = 0, }, + [DTV_CODE_RATE_HP] = { + .name = "DTV_CODE_RATE_HP", + .cmd = DTV_CODE_RATE_HP, + .set = 0, + }, + [DTV_CODE_RATE_LP] = { + .name = "DTV_CODE_RATE_LP", + .cmd = DTV_CODE_RATE_LP, + .set = 0, + }, }; void dtv_property_dump(struct dtv_property *tvp) @@ -1227,6 +1247,12 @@ int dtv_property_process_get(struct dvb_frontend *fe, struct dtv_property *tvp, case DTV_API_VERSION: tvp->u.data = (DVB_API_VERSION << 8) | DVB_API_VERSION_MINOR; break; + case DTV_CODE_RATE_HP: + tvp->u.data = fe->dtv_property_cache.code_rate_HP; + break; + case DTV_CODE_RATE_LP: + tvp->u.data = fe->dtv_property_cache.code_rate_LP; + break; default: r = -1; } @@ -1317,6 +1343,12 @@ int dtv_property_process_set(struct dvb_frontend *fe, struct dtv_property *tvp, r = dvb_frontend_ioctl_legacy(inode, file, FE_SET_TONE, (void *)fe->dtv_property_cache.sectone); break; + case DTV_CODE_RATE_HP: + fe->dtv_property_cache.code_rate_HP = tvp->u.data; + break; + case DTV_CODE_RATE_LP: + fe->dtv_property_cache.code_rate_LP = tvp->u.data; + break; default: r = -1; } |