summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorManu Abraham <abraham.manu@gmail.com>2011-11-17 01:37:06 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2011-12-12 15:04:22 -0200
commit6bad3aeb8cc542b90ae62b35caca44305cd93ef5 (patch)
tree5c66d74345ed9dda85154fd01d92a5e44c66ca13
parent61d4f9c918c591e4f7970ef29bafb302664be466 (diff)
[media] STV090x: Query DVB frontend delivery capabilities
Override default delivery system information provided by FE_GET_INFO, so that applications can enumerate delivery systems provided by the frontend. Signed-off-by: Manu Abraham <abraham.manu@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--drivers/media/dvb/frontends/stv090x.c19
1 files changed, 18 insertions, 1 deletions
diff --git a/drivers/media/dvb/frontends/stv090x.c b/drivers/media/dvb/frontends/stv090x.c
index ebda41936b90..8a2637c20d7c 100644
--- a/drivers/media/dvb/frontends/stv090x.c
+++ b/drivers/media/dvb/frontends/stv090x.c
@@ -4711,6 +4711,21 @@ int stv090x_set_gpio(struct dvb_frontend *fe, u8 gpio, u8 dir, u8 value,
}
EXPORT_SYMBOL(stv090x_set_gpio);
+static int stv090x_get_property(struct dvb_frontend *fe, struct dtv_property *p)
+{
+ switch (p->cmd) {
+ case DTV_ENUM_DELSYS:
+ p->u.buffer.data[0] = SYS_DSS;
+ p->u.buffer.data[1] = SYS_DVBS;
+ p->u.buffer.data[2] = SYS_DVBS2;
+ p->u.buffer.len = 3;
+ break;
+ default:
+ break;
+ }
+ return 0;
+}
+
static struct dvb_frontend_ops stv090x_ops = {
.info = {
@@ -4743,7 +4758,9 @@ static struct dvb_frontend_ops stv090x_ops = {
.read_status = stv090x_read_status,
.read_ber = stv090x_read_per,
.read_signal_strength = stv090x_read_signal_strength,
- .read_snr = stv090x_read_cnr
+ .read_snr = stv090x_read_cnr,
+
+ .get_property = stv090x_get_property,
};