summaryrefslogtreecommitdiff
path: root/meta-bsp/recipes-kernel/linux-libc-headers/files/linux_4_1_1_17_dvbs2x.patch
blob: a8ca9f2541be7f411b8ed412bb22a2bee67d7e32 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
diff --git a/drivers/media/dvb-core/dvb_frontend.c b/drivers/media/dvb-core/dvb_frontend.c
index 3ab8747..78c1b24 100644
--- a/drivers/media/dvb-core/dvb_frontend.c
+++ b/drivers/media/dvb-core/dvb_frontend.c
@@ -170,6 +170,7 @@ static enum dvbv3_emulation_type dvbv3_type(u32 delivery_system)
 		return DVBV3_QAM;
 	case SYS_DVBS:
 	case SYS_DVBS2:
+	case SYS_DVBS2X:
 	case SYS_TURBO:
 	case SYS_ISDBS:
 	case SYS_DSS:
@@ -1008,6 +1009,7 @@ static int dvb_frontend_check_parameters(struct dvb_frontend *fe)
 	switch (c->delivery_system) {
 	case SYS_DVBS:
 	case SYS_DVBS2:
+	case SYS_DVBS2X:
 	case SYS_TURBO:
 	case SYS_DVBC_ANNEX_A:
 	case SYS_DVBC_ANNEX_C:
@@ -1074,6 +1076,7 @@ static int dvb_frontend_clear_cache(struct dvb_frontend *fe)
 	switch (c->delivery_system) {
 	case SYS_DVBS:
 	case SYS_DVBS2:
+	case SYS_DVBS2X:
 	case SYS_TURBO:
 		c->modulation = QPSK;   /* implied for DVB-S in legacy API */
 		c->rolloff = ROLLOFF_35;/* implied for DVB-S */
@@ -2200,6 +2203,7 @@ static int dtv_set_frontend(struct dvb_frontend *fe)
 		rolloff = 135;
 		break;
 	case SYS_DVBS2:
+	case SYS_DVBS2X:
 		switch (c->rolloff) {
 		case ROLLOFF_20:
 			rolloff = 120;
@@ -2240,6 +2244,7 @@ static int dtv_set_frontend(struct dvb_frontend *fe)
 		switch (c->delivery_system) {
 		case SYS_DVBS:
 		case SYS_DVBS2:
+		case SYS_DVBS2X:
 		case SYS_ISDBS:
 		case SYS_TURBO:
 		case SYS_DVBC_ANNEX_A:
diff --git a/include/uapi/linux/dvb/frontend.h b/include/uapi/linux/dvb/frontend.h
index c56d77c..5aebaa9 100644
--- a/include/uapi/linux/dvb/frontend.h
+++ b/include/uapi/linux/dvb/frontend.h
@@ -165,6 +165,24 @@ typedef enum fe_code_rate {
 	FEC_3_5,
 	FEC_9_10,
 	FEC_2_5,
+	FEC_13_45=13,
+	FEC_9_20=14,
+	FEC_11_20=15,
+	FEC_23_36=16,
+	FEC_25_36=17,
+	FEC_13_18=18,
+	FEC_26_45=19,
+	FEC_28_45=20,
+	FEC_7_9=21,
+	FEC_77_90=22,
+	FEC_32_45=23,
+	FEC_11_15=24,
+	FEC_1_2_L=25,
+	FEC_8_15_L=26,
+	FEC_3_5_L=27,
+	FEC_2_3_L=28,
+	FEC_5_9_L=29,
+	FEC_26_45_L=30
 } fe_code_rate_t;
 
 
@@ -183,6 +201,7 @@ typedef enum fe_modulation {
 	APSK_32,
 	DQPSK,
 	QAM_4_NR,
+	APSK_8,
 } fe_modulation_t;
 
 typedef enum fe_transmit_mode {
@@ -410,6 +429,7 @@ typedef enum fe_delivery_system {
 	SYS_DVBT2,
 	SYS_TURBO,
 	SYS_DVBC_ANNEX_C,
+	SYS_DVBS2X = 21,
 } fe_delivery_system_t;
 
 /* backward compatibility */