1 /****************************************************************************
2  ****************************************************************************
3  ***
4  ***   This header was automatically generated from a Linux kernel header
5  ***   of the same name, to make information necessary for userspace to
6  ***   call into the kernel available to libc.  It contains only constants,
7  ***   structures, and macros generated from the original header, and thus,
8  ***   contains no copyrightable information.
9  ***
10  ***   To edit the content of this header, modify the corresponding
11  ***   source file (e.g. under external/kernel-headers/original/) then
12  ***   run bionic/libc/kernel/tools/update_all.py
13  ***
14  ***   Any manual change here will be lost the next time this script will
15  ***   be run. You've been warned!
16  ***
17  ****************************************************************************
18  ****************************************************************************/
19 #ifndef _UAPI_MSM_HDMI_MODES_H__
20 #define _UAPI_MSM_HDMI_MODES_H__
21 #include <linux/types.h>
22 enum aspect_ratio {
23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24  HDMI_RES_AR_INVALID,
25  HDMI_RES_AR_4_3,
26  HDMI_RES_AR_5_4,
27  HDMI_RES_AR_16_9,
28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29  HDMI_RES_AR_16_10,
30  HDMI_RES_AR_MAX,
31 };
32 enum msm_hdmi_s3d_mode {
33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34  HDMI_S3D_NONE,
35  HDMI_S3D_SIDE_BY_SIDE,
36  HDMI_S3D_TOP_AND_BOTTOM,
37  HDMI_S3D_FRAME_PACKING,
38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39  HDMI_S3D_MAX,
40 };
41 struct msm_hdmi_mode_timing_info {
42  uint32_t video_format;
43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44  uint32_t active_h;
45  uint32_t front_porch_h;
46  uint32_t pulse_width_h;
47  uint32_t back_porch_h;
48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49  uint32_t active_low_h;
50  uint32_t active_v;
51  uint32_t front_porch_v;
52  uint32_t pulse_width_v;
53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54  uint32_t back_porch_v;
55  uint32_t active_low_v;
56  uint32_t pixel_freq;
57  uint32_t refresh_rate;
58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59  uint32_t interlaced;
60  uint32_t supported;
61  enum aspect_ratio ar;
62 };
63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64 #define MSM_HDMI_INIT_RES_PAGE 1
65 #define MSM_HDMI_MODES_CEA (1 << 0)
66 #define MSM_HDMI_MODES_XTND (1 << 1)
67 #define MSM_HDMI_MODES_DVI (1 << 2)
68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69 #define MSM_HDMI_MODES_ALL (MSM_HDMI_MODES_CEA |  MSM_HDMI_MODES_XTND |  MSM_HDMI_MODES_DVI)
70 #define HDMI_VFRMT_UNKNOWN 0
71 #define HDMI_VFRMT_640x480p60_4_3 1
72 #define HDMI_VFRMT_720x480p60_4_3 2
73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74 #define HDMI_VFRMT_720x480p60_16_9 3
75 #define HDMI_VFRMT_1280x720p60_16_9 4
76 #define HDMI_VFRMT_1920x1080i60_16_9 5
77 #define HDMI_VFRMT_720x480i60_4_3 6
78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79 #define HDMI_VFRMT_1440x480i60_4_3 HDMI_VFRMT_720x480i60_4_3
80 #define HDMI_VFRMT_720x480i60_16_9 7
81 #define HDMI_VFRMT_1440x480i60_16_9 HDMI_VFRMT_720x480i60_16_9
82 #define HDMI_VFRMT_720x240p60_4_3 8
83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84 #define HDMI_VFRMT_1440x240p60_4_3 HDMI_VFRMT_720x240p60_4_3
85 #define HDMI_VFRMT_720x240p60_16_9 9
86 #define HDMI_VFRMT_1440x240p60_16_9 HDMI_VFRMT_720x240p60_16_9
87 #define HDMI_VFRMT_2880x480i60_4_3 10
88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89 #define HDMI_VFRMT_2880x480i60_16_9 11
90 #define HDMI_VFRMT_2880x240p60_4_3 12
91 #define HDMI_VFRMT_2880x240p60_16_9 13
92 #define HDMI_VFRMT_1440x480p60_4_3 14
93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94 #define HDMI_VFRMT_1440x480p60_16_9 15
95 #define HDMI_VFRMT_1920x1080p60_16_9 16
96 #define HDMI_VFRMT_720x576p50_4_3 17
97 #define HDMI_VFRMT_720x576p50_16_9 18
98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99 #define HDMI_VFRMT_1280x720p50_16_9 19
100 #define HDMI_VFRMT_1920x1080i50_16_9 20
101 #define HDMI_VFRMT_720x576i50_4_3 21
102 #define HDMI_VFRMT_1440x576i50_4_3 HDMI_VFRMT_720x576i50_4_3
103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
104 #define HDMI_VFRMT_720x576i50_16_9 22
105 #define HDMI_VFRMT_1440x576i50_16_9 HDMI_VFRMT_720x576i50_16_9
106 #define HDMI_VFRMT_720x288p50_4_3 23
107 #define HDMI_VFRMT_1440x288p50_4_3 HDMI_VFRMT_720x288p50_4_3
108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109 #define HDMI_VFRMT_720x288p50_16_9 24
110 #define HDMI_VFRMT_1440x288p50_16_9 HDMI_VFRMT_720x288p50_16_9
111 #define HDMI_VFRMT_2880x576i50_4_3 25
112 #define HDMI_VFRMT_2880x576i50_16_9 26
113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114 #define HDMI_VFRMT_2880x288p50_4_3 27
115 #define HDMI_VFRMT_2880x288p50_16_9 28
116 #define HDMI_VFRMT_1440x576p50_4_3 29
117 #define HDMI_VFRMT_1440x576p50_16_9 30
118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
119 #define HDMI_VFRMT_1920x1080p50_16_9 31
120 #define HDMI_VFRMT_1920x1080p24_16_9 32
121 #define HDMI_VFRMT_1920x1080p25_16_9 33
122 #define HDMI_VFRMT_1920x1080p30_16_9 34
123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
124 #define HDMI_VFRMT_2880x480p60_4_3 35
125 #define HDMI_VFRMT_2880x480p60_16_9 36
126 #define HDMI_VFRMT_2880x576p50_4_3 37
127 #define HDMI_VFRMT_2880x576p50_16_9 38
128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
129 #define HDMI_VFRMT_1920x1250i50_16_9 39
130 #define HDMI_VFRMT_1920x1080i100_16_9 40
131 #define HDMI_VFRMT_1280x720p100_16_9 41
132 #define HDMI_VFRMT_720x576p100_4_3 42
133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
134 #define HDMI_VFRMT_720x576p100_16_9 43
135 #define HDMI_VFRMT_720x576i100_4_3 44
136 #define HDMI_VFRMT_1440x576i100_4_3 HDMI_VFRMT_720x576i100_4_3
137 #define HDMI_VFRMT_720x576i100_16_9 45
138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
139 #define HDMI_VFRMT_1440x576i100_16_9 HDMI_VFRMT_720x576i100_16_9
140 #define HDMI_VFRMT_1920x1080i120_16_9 46
141 #define HDMI_VFRMT_1280x720p120_16_9 47
142 #define HDMI_VFRMT_720x480p120_4_3 48
143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
144 #define HDMI_VFRMT_720x480p120_16_9 49
145 #define HDMI_VFRMT_720x480i120_4_3 50
146 #define HDMI_VFRMT_1440x480i120_4_3 HDMI_VFRMT_720x480i120_4_3
147 #define HDMI_VFRMT_720x480i120_16_9 51
148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
149 #define HDMI_VFRMT_1440x480i120_16_9 HDMI_VFRMT_720x480i120_16_9
150 #define HDMI_VFRMT_720x576p200_4_3 52
151 #define HDMI_VFRMT_720x576p200_16_9 53
152 #define HDMI_VFRMT_720x576i200_4_3 54
153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
154 #define HDMI_VFRMT_1440x576i200_4_3 HDMI_VFRMT_720x576i200_4_3
155 #define HDMI_VFRMT_720x576i200_16_9 55
156 #define HDMI_VFRMT_1440x576i200_16_9 HDMI_VFRMT_720x576i200_16_9
157 #define HDMI_VFRMT_720x480p240_4_3 56
158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
159 #define HDMI_VFRMT_720x480p240_16_9 57
160 #define HDMI_VFRMT_720x480i240_4_3 58
161 #define HDMI_VFRMT_1440x480i240_4_3 HDMI_VFRMT_720x480i240_4_3
162 #define HDMI_VFRMT_720x480i240_16_9 59
163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
164 #define HDMI_VFRMT_1440x480i240_16_9 HDMI_VFRMT_720x480i240_16_9
165 #define HDMI_VFRMT_1280x720p24_16_9 60
166 #define HDMI_VFRMT_1280x720p25_16_9 61
167 #define HDMI_VFRMT_1280x720p30_16_9 62
168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
169 #define HDMI_VFRMT_1920x1080p120_16_9 63
170 #define HDMI_VFRMT_1920x1080p100_16_9 64
171 #define HDMI_VFRMT_END 127
172 #define EVFRMT_OFF(x) (HDMI_VFRMT_END + x)
173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
174 #define HDMI_VFRMT_3840x2160p30_16_9 EVFRMT_OFF(1)
175 #define HDMI_VFRMT_3840x2160p25_16_9 EVFRMT_OFF(2)
176 #define HDMI_VFRMT_3840x2160p24_16_9 EVFRMT_OFF(3)
177 #define HDMI_VFRMT_4096x2160p24_16_9 EVFRMT_OFF(4)
178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
179 #define HDMI_EVFRMT_END HDMI_VFRMT_4096x2160p24_16_9
180 #define WQXGA_OFF(x) (HDMI_EVFRMT_END + x)
181 #define HDMI_VFRMT_2560x1600p60_16_9 WQXGA_OFF(1)
182 #define HDMI_WQXGAFRMT_END HDMI_VFRMT_2560x1600p60_16_9
183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
184 #define WXGA_OFF(x) (HDMI_WQXGAFRMT_END + x)
185 #define HDMI_VFRMT_1280x800p60_16_10 WXGA_OFF(1)
186 #define HDMI_VFRMT_1366x768p60_16_10 WXGA_OFF(2)
187 #define HDMI_WXGAFRMT_END HDMI_VFRMT_1366x768p60_16_10
188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
189 #define ETI_OFF(x) (HDMI_WXGAFRMT_END + x)
190 #define HDMI_VFRMT_800x600p60_4_3 ETI_OFF(1)
191 #define ETI_VFRMT_END HDMI_VFRMT_800x600p60_4_3
192 #define ETII_OFF(x) (ETI_VFRMT_END + x)
193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
194 #define HDMI_VFRMT_1024x768p60_4_3 ETII_OFF(1)
195 #define HDMI_VFRMT_1280x1024p60_5_4 ETII_OFF(2)
196 #define ETII_VFRMT_END HDMI_VFRMT_1280x1024p60_5_4
197 #define ETIII_OFF(x) (ETII_VFRMT_END + x)
198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
199 #define HDMI_VFRMT_848x480p60_16_9 ETIII_OFF(1)
200 #define HDMI_VFRMT_1280x960p60_4_3 ETIII_OFF(2)
201 #define HDMI_VFRMT_1360x768p60_16_9 ETIII_OFF(3)
202 #define HDMI_VFRMT_1440x900p60_16_10 ETIII_OFF(4)
203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
204 #define HDMI_VFRMT_1400x1050p60_4_3 ETIII_OFF(5)
205 #define HDMI_VFRMT_1680x1050p60_16_10 ETIII_OFF(6)
206 #define HDMI_VFRMT_1600x1200p60_4_3 ETIII_OFF(7)
207 #define HDMI_VFRMT_1920x1200p60_16_10 ETIII_OFF(8)
208 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
209 #define ETIII_VFRMT_END HDMI_VFRMT_1920x1200p60_16_10
210 #define RESERVE_OFF(x) (ETIII_VFRMT_END + x)
211 #define HDMI_VFRMT_RESERVE1 RESERVE_OFF(1)
212 #define HDMI_VFRMT_RESERVE2 RESERVE_OFF(2)
213 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
214 #define HDMI_VFRMT_RESERVE3 RESERVE_OFF(3)
215 #define HDMI_VFRMT_RESERVE4 RESERVE_OFF(4)
216 #define HDMI_VFRMT_RESERVE5 RESERVE_OFF(5)
217 #define HDMI_VFRMT_RESERVE6 RESERVE_OFF(6)
218 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
219 #define HDMI_VFRMT_RESERVE7 RESERVE_OFF(7)
220 #define HDMI_VFRMT_RESERVE8 RESERVE_OFF(8)
221 #define RESERVE_VFRMT_END HDMI_VFRMT_RESERVE8
222 #define HDMI_VFRMT_MAX (RESERVE_VFRMT_END + 1)
223 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
224 #define HDMI_VFRMT_FORCE_32BIT 0x7FFFFFFF
225 #define VFRMT_NOT_SUPPORTED(VFRMT)   {VFRMT, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, false,   HDMI_RES_AR_INVALID}
226 #define HDMI_VFRMT_640x480p60_4_3_TIMING   {HDMI_VFRMT_640x480p60_4_3, 640, 16, 96, 48, true,   480, 10, 2, 33, true, 25200, 60000, false, true, HDMI_RES_AR_4_3}
227 #define HDMI_VFRMT_720x480p60_4_3_TIMING   {HDMI_VFRMT_720x480p60_4_3, 720, 16, 62, 60, true,   480, 9, 6, 30, true, 27027, 60000, false, true, HDMI_RES_AR_4_3}
228 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
229 #define HDMI_VFRMT_720x480p60_16_9_TIMING   {HDMI_VFRMT_720x480p60_16_9, 720, 16, 62, 60, true,   480, 9, 6, 30, true, 27027, 60000, false, true, HDMI_RES_AR_16_9}
230 #define HDMI_VFRMT_1280x720p60_16_9_TIMING   {HDMI_VFRMT_1280x720p60_16_9, 1280, 110, 40, 220, false,   720, 5, 5, 20, false, 74250, 60000, false, true, HDMI_RES_AR_16_9}
231 #define HDMI_VFRMT_1920x1080i60_16_9_TIMING   {HDMI_VFRMT_1920x1080i60_16_9, 1920, 88, 44, 148, false,   540, 2, 5, 5, false, 74250, 60000, false, true, HDMI_RES_AR_16_9}
232 #define HDMI_VFRMT_1440x480i60_4_3_TIMING   {HDMI_VFRMT_1440x480i60_4_3, 1440, 38, 124, 114, true,   240, 4, 3, 15, true, 27000, 60000, true, true, HDMI_RES_AR_4_3}
233 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
234 #define HDMI_VFRMT_1440x480i60_16_9_TIMING   {HDMI_VFRMT_1440x480i60_16_9, 1440, 38, 124, 114, true,   240, 4, 3, 15, true, 27000, 60000, true, true, HDMI_RES_AR_16_9}
235 #define HDMI_VFRMT_1920x1080p60_16_9_TIMING   {HDMI_VFRMT_1920x1080p60_16_9, 1920, 88, 44, 148, false,   1080, 4, 5, 36, false, 148500, 60000, false, true, HDMI_RES_AR_16_9}
236 #define HDMI_VFRMT_720x576p50_4_3_TIMING   {HDMI_VFRMT_720x576p50_4_3, 720, 12, 64, 68, true,   576, 5, 5, 39, true, 27000, 50000, false, true, HDMI_RES_AR_4_3}
237 #define HDMI_VFRMT_720x576p50_16_9_TIMING   {HDMI_VFRMT_720x576p50_16_9, 720, 12, 64, 68, true,   576, 5, 5, 39, true, 27000, 50000, false, true, HDMI_RES_AR_16_9}
238 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
239 #define HDMI_VFRMT_1280x720p50_16_9_TIMING   {HDMI_VFRMT_1280x720p50_16_9, 1280, 440, 40, 220, false,   720, 5, 5, 20, false, 74250, 50000, false, true, HDMI_RES_AR_16_9}
240 #define HDMI_VFRMT_1440x576i50_4_3_TIMING   {HDMI_VFRMT_1440x576i50_4_3, 1440, 24, 126, 138, true,   288, 2, 3, 19, true, 27000, 50000, true, true, HDMI_RES_AR_4_3}
241 #define HDMI_VFRMT_1440x576i50_16_9_TIMING   {HDMI_VFRMT_1440x576i50_16_9, 1440, 24, 126, 138, true,   288, 2, 3, 19, true, 27000, 50000, true, true, HDMI_RES_AR_16_9}
242 #define HDMI_VFRMT_1920x1080p50_16_9_TIMING   {HDMI_VFRMT_1920x1080p50_16_9, 1920, 528, 44, 148, false,   1080, 4, 5, 36, false, 148500, 50000, false, true, HDMI_RES_AR_16_9}
243 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
244 #define HDMI_VFRMT_1920x1080p24_16_9_TIMING   {HDMI_VFRMT_1920x1080p24_16_9, 1920, 638, 44, 148, false,   1080, 4, 5, 36, false, 74250, 24000, false, true, HDMI_RES_AR_16_9}
245 #define HDMI_VFRMT_1920x1080p25_16_9_TIMING   {HDMI_VFRMT_1920x1080p25_16_9, 1920, 528, 44, 148, false,   1080, 4, 5, 36, false, 74250, 25000, false, true, HDMI_RES_AR_16_9}
246 #define HDMI_VFRMT_1920x1080p30_16_9_TIMING   {HDMI_VFRMT_1920x1080p30_16_9, 1920, 88, 44, 148, false,   1080, 4, 5, 36, false, 74250, 30000, false, true, HDMI_RES_AR_16_9}
247 #define HDMI_VFRMT_1024x768p60_4_3_TIMING   {HDMI_VFRMT_1024x768p60_4_3, 1024, 24, 136, 160, false,   768, 2, 6, 29, false, 65000, 60000, false, true, HDMI_RES_AR_4_3}
248 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
249 #define HDMI_VFRMT_1280x1024p60_5_4_TIMING   {HDMI_VFRMT_1280x1024p60_5_4, 1280, 48, 112, 248, false,   1024, 1, 3, 38, false, 108000, 60000, false, true, HDMI_RES_AR_5_4}
250 #define HDMI_VFRMT_2560x1600p60_16_9_TIMING   {HDMI_VFRMT_2560x1600p60_16_9, 2560, 48, 32, 80, false,   1600, 3, 6, 37, false, 268500, 60000, false, true, HDMI_RES_AR_16_9}
251 #define HDMI_VFRMT_3840x2160p30_16_9_TIMING   {HDMI_VFRMT_3840x2160p30_16_9, 3840, 176, 88, 296, false,   2160, 8, 10, 72, false, 297000, 30000, false, true, HDMI_RES_AR_16_9}
252 #define HDMI_VFRMT_3840x2160p25_16_9_TIMING   {HDMI_VFRMT_3840x2160p25_16_9, 3840, 1056, 88, 296, false,   2160, 8, 10, 72, false, 297000, 25000, false, true, HDMI_RES_AR_16_9}
253 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
254 #define HDMI_VFRMT_3840x2160p24_16_9_TIMING   {HDMI_VFRMT_3840x2160p24_16_9, 3840, 1276, 88, 296, false,   2160, 8, 10, 72, false, 297000, 24000, false, true, HDMI_RES_AR_16_9}
255 #define HDMI_VFRMT_4096x2160p24_16_9_TIMING   {HDMI_VFRMT_4096x2160p24_16_9, 4096, 1020, 88, 296, false,   2160, 8, 10, 72, false, 297000, 24000, false, true, HDMI_RES_AR_16_9}
256 #define HDMI_VFRMT_800x600p60_4_3_TIMING   {HDMI_VFRMT_800x600p60_4_3, 800, 40, 128, 88, false,   600, 1, 4, 23, false, 40000, 60000, false, true, HDMI_RES_AR_4_3}
257 #define HDMI_VFRMT_848x480p60_16_9_TIMING   {HDMI_VFRMT_848x480p60_16_9, 848, 16, 112, 112, false,   480, 6, 8, 23, false, 33750, 60000, false, true, HDMI_RES_AR_16_9}
258 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
259 #define HDMI_VFRMT_1280x960p60_4_3_TIMING  {HDMI_VFRMT_1280x960p60_4_3, 1280, 96, 112, 312, false,   960, 1, 3, 36, false, 108000, 60000, false, true, HDMI_RES_AR_4_3}
260 #define HDMI_VFRMT_1360x768p60_16_9_TIMING  {HDMI_VFRMT_1360x768p60_16_9, 1360, 64, 112, 256, false,   768, 3, 6, 18, false, 85500, 60000, false, true, HDMI_RES_AR_16_9}
261 #define HDMI_VFRMT_1440x900p60_16_10_TIMING  {HDMI_VFRMT_1440x900p60_16_10, 1440, 48, 32, 80, false,   900, 3, 6, 17, true, 88750, 60000, false, true, HDMI_RES_AR_16_10}
262 #define HDMI_VFRMT_1400x1050p60_4_3_TIMING  {HDMI_VFRMT_1400x1050p60_4_3, 1400, 48, 32, 80, false,   1050, 3, 4, 23, true, 101000, 60000, false, true, HDMI_RES_AR_4_3}
263 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
264 #define HDMI_VFRMT_1680x1050p60_16_10_TIMING  {HDMI_VFRMT_1680x1050p60_16_10, 1680, 48, 32, 80, false,   1050, 3, 6, 21, true, 119000, 60000, false, true, HDMI_RES_AR_16_10}
265 #define HDMI_VFRMT_1600x1200p60_4_3_TIMING  {HDMI_VFRMT_1600x1200p60_4_3, 1600, 64, 192, 304, false,   1200, 1, 3, 46, false, 162000, 60000, false, true, HDMI_RES_AR_4_3}
266 #define HDMI_VFRMT_1920x1200p60_16_10_TIMING  {HDMI_VFRMT_1920x1200p60_16_10, 1920, 48, 32, 80, false,  1200, 3, 6, 26, true, 154000, 60000, false, true, HDMI_RES_AR_16_10}
267 #define HDMI_VFRMT_1366x768p60_16_10_TIMING  {HDMI_VFRMT_1366x768p60_16_10, 1366, 70, 143, 213, false,  768, 3, 3, 24, false, 85500, 60000, false, true, HDMI_RES_AR_16_10}
268 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
269 #define HDMI_VFRMT_1280x800p60_16_10_TIMING  {HDMI_VFRMT_1280x800p60_16_10, 1280, 72, 128, 200, true,  800, 3, 6, 22, false, 83500, 60000, false, true, HDMI_RES_AR_16_10}
270 #define MSM_HDMI_MODES_SET_TIMING(LUT, MODE) do {   struct msm_hdmi_mode_timing_info mode = MODE##_TIMING;   LUT[MODE] = mode;  } while (0)
271 #define MSM_HDMI_MODES_INIT_TIMINGS(__lut)  do {   unsigned int i;   for (i = 0; i < HDMI_VFRMT_MAX; i++) {   struct msm_hdmi_mode_timing_info mode =   VFRMT_NOT_SUPPORTED(i);   (__lut)[i] = mode;   }  } while (0)
272 #define MSM_HDMI_MODES_SET_SUPP_TIMINGS(__lut, __type)  do {   if (__type & MSM_HDMI_MODES_CEA) {   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_640x480p60_4_3);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_720x480p60_4_3);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_720x480p60_16_9);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1280x720p60_16_9);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1920x1080i60_16_9);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1440x480i60_4_3);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1440x480i60_16_9);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1920x1080p60_16_9);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_720x576p50_4_3);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_720x576p50_16_9);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1280x720p50_16_9);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1440x576i50_4_3);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1440x576i50_16_9);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1920x1080p50_16_9);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1920x1080p24_16_9);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1920x1080p25_16_9);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1920x1080p30_16_9);   }   if (__type & MSM_HDMI_MODES_XTND) {   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_3840x2160p30_16_9);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_3840x2160p25_16_9);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_3840x2160p24_16_9);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_4096x2160p24_16_9);   }   if (__type & MSM_HDMI_MODES_DVI) {   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1024x768p60_4_3);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1280x1024p60_5_4);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_2560x1600p60_16_9);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_800x600p60_4_3);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_848x480p60_16_9);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1280x960p60_4_3);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1360x768p60_16_9);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1440x900p60_16_10);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1400x1050p60_4_3);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1680x1050p60_16_10);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1600x1200p60_4_3);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1920x1200p60_16_10);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1366x768p60_16_10);   MSM_HDMI_MODES_SET_TIMING(__lut,   HDMI_VFRMT_1280x800p60_16_10);   }  } while (0)
273 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
274 #define MSM_HDMI_MODES_GET_DETAILS(mode, MODE) do {   struct msm_hdmi_mode_timing_info info = MODE##_TIMING;   *mode = info;   } while (0)
275 #endif
276 
277