From 6ebbe22d42f6f4a2940190b1dd98b7454b805a9c Mon Sep 17 00:00:00 2001 From: Antti Palosaari Date: Tue, 30 Sep 2014 19:56:22 -0300 Subject: [media] mn88473: implement DVB-T mode Implement DVB-T mode. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab --- drivers/media/dvb-frontends/mn88473.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'drivers/media/dvb-frontends') diff --git a/drivers/media/dvb-frontends/mn88473.c b/drivers/media/dvb-frontends/mn88473.c index 68bfb6560eec..cda0bdbeca18 100644 --- a/drivers/media/dvb-frontends/mn88473.c +++ b/drivers/media/dvb-frontends/mn88473.c @@ -132,6 +132,13 @@ static int mn88473_set_frontend(struct dvb_frontend *fe) } switch (c->delivery_system) { + case SYS_DVBT: + delivery_system = 0x02; + if (c->bandwidth_hz <= 7000000) + memcpy(params, "\x2e\xcb\xfb\xc8\x00\x00\x17\x0a\x17\x0a", 10); + else if (c->bandwidth_hz <= 8000000) + memcpy(params, "\x2e\xcb\xfb\xaf\x00\x00\x11\xec\x11\xec", 10); + break; case SYS_DVBT2: delivery_system = 0x03; if (c->bandwidth_hz <= 7000000) @@ -194,10 +201,12 @@ static int mn88473_set_frontend(struct dvb_frontend *fe) ret = mn88473_wregs(dev, 0x1c2d, "\x3b", 1); ret = mn88473_wregs(dev, 0x1c2e, "\x00", 1); ret = mn88473_wregs(dev, 0x1c56, "\x0d", 1); + ret = mn88473_wregs(dev, 0x1801, "\xba", 1); ret = mn88473_wregs(dev, 0x1802, "\x13", 1); ret = mn88473_wregs(dev, 0x1803, "\x80", 1); ret = mn88473_wregs(dev, 0x1804, "\xba", 1); ret = mn88473_wregs(dev, 0x1805, "\x91", 1); + ret = mn88473_wregs(dev, 0x1807, "\xe7", 1); ret = mn88473_wregs(dev, 0x1808, "\x28", 1); ret = mn88473_wregs(dev, 0x180a, "\x1a", 1); ret = mn88473_wregs(dev, 0x1813, "\x1f", 1); @@ -382,7 +391,7 @@ err: EXPORT_SYMBOL(mn88473_attach); static struct dvb_frontend_ops mn88473_ops = { - .delsys = {SYS_DVBT2, SYS_DVBC_ANNEX_AC}, + .delsys = {SYS_DVBT, SYS_DVBT2, SYS_DVBC_ANNEX_AC}, .info = { .name = "Panasonic MN88473", .caps = FE_CAN_FEC_1_2 | -- cgit v1.2.3-55-g7522