V4L/DVB (9182): S2API: Added support for DTV_HIERARCHY
authorSteven Toth <stoth@linuxtv.org>
Tue, 7 Oct 2008 01:01:47 +0000 (22:01 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Mon, 13 Oct 2008 14:28:12 +0000 (12:28 -0200)
A user tuning DVB-T via the S2API reports that this was not implemented,
and his tuning was failing.

Signed-off-by: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/dvb/dvb-core/dvb_frontend.c
include/linux/dvb/frontend.h

index 0ddc2f4ecd4a08a22e31bf3d0c465921899cd3dc..bd59c9514ab5b193bafac0db7ec516ad477d844c 100644 (file)
@@ -830,6 +830,11 @@ struct dtv_cmds_h dtv_cmds[] = {
                .cmd    = DTV_DELIVERY_SYSTEM,
                .set    = 1,
        },
+       [DTV_HIERARCHY] = {
+               .name   = "DTV_HIERARCHY",
+               .cmd    = DTV_HIERARCHY,
+               .set    = 1,
+       },
        [DTV_CODE_RATE_HP] = {
                .name   = "DTV_CODE_RATE_HP",
                .cmd    = DTV_CODE_RATE_HP,
@@ -882,6 +887,11 @@ struct dtv_cmds_h dtv_cmds[] = {
                .cmd    = DTV_TRANSMISSION_MODE,
                .set    = 0,
        },
+       [DTV_HIERARCHY] = {
+               .name   = "DTV_HIERARCHY",
+               .cmd    = DTV_HIERARCHY,
+               .set    = 0,
+       },
 };
 
 void dtv_property_dump(struct dtv_property *tvp)
@@ -1173,6 +1183,9 @@ int dtv_property_process_get(struct dvb_frontend *fe, struct dtv_property *tvp,
        case DTV_TRANSMISSION_MODE:
                tvp->u.data = fe->dtv_property_cache.transmission_mode;
                break;
+       case DTV_HIERARCHY:
+               tvp->u.data = fe->dtv_property_cache.hierarchy;
+               break;
        default:
                r = -1;
        }
@@ -1266,6 +1279,9 @@ int dtv_property_process_set(struct dvb_frontend *fe, struct dtv_property *tvp,
        case DTV_TRANSMISSION_MODE:
                fe->dtv_property_cache.transmission_mode = tvp->u.data;
                break;
+       case DTV_HIERARCHY:
+               fe->dtv_property_cache.hierarchy = tvp->u.data;
+               break;
        default:
                r = -1;
        }
index 5578fba208f457f8ccb3d49e6937efd9d35c68ab..e185627219e3c9b46ecd2d9665109c21ebfb9eb6 100644 (file)
@@ -273,8 +273,9 @@ struct dvb_frontend_event {
 #define DTV_CODE_RATE_LP                       37
 #define DTV_GUARD_INTERVAL                     38
 #define DTV_TRANSMISSION_MODE                  39
+#define DTV_HIERARCHY                          40
 
-#define DTV_MAX_COMMAND                                DTV_TRANSMISSION_MODE
+#define DTV_MAX_COMMAND                                DTV_HIERARCHY
 
 typedef enum fe_pilot {
        PILOT_ON,