[media] mn88473: implement DVB-T mode
authorAntti Palosaari <crope@iki.fi>
Tue, 30 Sep 2014 22:56:22 +0000 (19:56 -0300)
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>
Fri, 14 Nov 2014 19:24:22 +0000 (17:24 -0200)
Implement DVB-T mode.

Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
drivers/media/dvb-frontends/mn88473.c

index 68bfb65..cda0bdb 100644 (file)
@@ -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                  |