summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--linux/drivers/media/dvb/dvb-core/dvb_frontend.c16
-rw-r--r--linux/include/linux/dvb/frontend.h3
2 files changed, 18 insertions, 1 deletions
diff --git a/linux/drivers/media/dvb/dvb-core/dvb_frontend.c b/linux/drivers/media/dvb/dvb-core/dvb_frontend.c
index 361c1c541..546705d13 100644
--- a/linux/drivers/media/dvb/dvb-core/dvb_frontend.c
+++ b/linux/drivers/media/dvb/dvb-core/dvb_frontend.c
@@ -841,6 +841,11 @@ struct dtv_cmds_h dtv_cmds[] = {
.cmd = DTV_DELIVERY_SYSTEM,
.set = 1,
},
+ [DTV_HIERARCHY] = {
+ .name = "DTV_HIERARCHY",
+ .cmd = DTV_HIERARCHY,
+ .set = 1,
+ },
#if 0
[DTV_ISDB_SEGMENT_IDX] = {
.name = "DTV_ISDB_SEGMENT_IDX",
@@ -952,6 +957,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)
@@ -1279,6 +1289,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;
}
@@ -1381,6 +1394,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;
}
diff --git a/linux/include/linux/dvb/frontend.h b/linux/include/linux/dvb/frontend.h
index 313ba84e6..79fb7bd86 100644
--- a/linux/include/linux/dvb/frontend.h
+++ b/linux/include/linux/dvb/frontend.h
@@ -304,8 +304,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,