Rev 1430 | Rev 2967 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1430 | Rev 1964 | ||
---|---|---|---|
Line 26... | Line 26... | ||
26 | #include |
26 | #include |
Line 27... | Line 27... | ||
27 | 27 | ||
28 | #define EDID_LENGTH 128 |
28 | #define EDID_LENGTH 128 |
Line -... | Line 29... | ||
- | 29 | #define DDC_ADDR 0x50 |
|
- | 30 | ||
- | 31 | #define CEA_EXT 0x02 |
|
- | 32 | #define VTB_EXT 0x10 |
|
- | 33 | #define DI_EXT 0x40 |
|
- | 34 | #define LS_EXT 0x50 |
|
29 | #define DDC_ADDR 0x50 |
35 | #define MI_EXT 0x60 |
30 | 36 | ||
31 | struct est_timings { |
37 | struct est_timings { |
32 | u8 t1; |
38 | u8 t1; |
33 | u8 t2; |
39 | u8 t2; |
Line 118... | Line 124... | ||
118 | u8 pad2; |
124 | u8 pad2; |
119 | union { |
125 | union { |
120 | struct detailed_data_string str; |
126 | struct detailed_data_string str; |
121 | struct detailed_data_monitor_range range; |
127 | struct detailed_data_monitor_range range; |
122 | struct detailed_data_wpindex color; |
128 | struct detailed_data_wpindex color; |
123 | struct std_timing timings[5]; |
129 | struct std_timing timings[6]; |
124 | struct cvt_timing cvt[4]; |
130 | struct cvt_timing cvt[4]; |
125 | } data; |
131 | } data; |
126 | } __attribute__((packed)); |
132 | } __attribute__((packed)); |
Line 127... | Line 133... | ||
127 | 133 | ||
Line 147... | Line 153... | ||
147 | #define DRM_EDID_INPUT_SYNC_ON_GREEN (1 << 1) |
153 | #define DRM_EDID_INPUT_SYNC_ON_GREEN (1 << 1) |
148 | #define DRM_EDID_INPUT_COMPOSITE_SYNC (1 << 2) |
154 | #define DRM_EDID_INPUT_COMPOSITE_SYNC (1 << 2) |
149 | #define DRM_EDID_INPUT_SEPARATE_SYNCS (1 << 3) |
155 | #define DRM_EDID_INPUT_SEPARATE_SYNCS (1 << 3) |
150 | #define DRM_EDID_INPUT_BLANK_TO_BLACK (1 << 4) |
156 | #define DRM_EDID_INPUT_BLANK_TO_BLACK (1 << 4) |
151 | #define DRM_EDID_INPUT_VIDEO_LEVEL (3 << 5) |
157 | #define DRM_EDID_INPUT_VIDEO_LEVEL (3 << 5) |
152 | #define DRM_EDID_INPUT_DIGITAL (1 << 7) /* bits below must be zero if set */ |
158 | #define DRM_EDID_INPUT_DIGITAL (1 << 7) |
- | 159 | #define DRM_EDID_DIGITAL_DEPTH_MASK (7 << 4) |
|
- | 160 | #define DRM_EDID_DIGITAL_DEPTH_UNDEF (0 << 4) |
|
- | 161 | #define DRM_EDID_DIGITAL_DEPTH_6 (1 << 4) |
|
- | 162 | #define DRM_EDID_DIGITAL_DEPTH_8 (2 << 4) |
|
- | 163 | #define DRM_EDID_DIGITAL_DEPTH_10 (3 << 4) |
|
- | 164 | #define DRM_EDID_DIGITAL_DEPTH_12 (4 << 4) |
|
- | 165 | #define DRM_EDID_DIGITAL_DEPTH_14 (5 << 4) |
|
- | 166 | #define DRM_EDID_DIGITAL_DEPTH_16 (6 << 4) |
|
- | 167 | #define DRM_EDID_DIGITAL_DEPTH_RSVD (7 << 4) |
|
- | 168 | #define DRM_EDID_DIGITAL_TYPE_UNDEF (0) |
|
- | 169 | #define DRM_EDID_DIGITAL_TYPE_DVI (1) |
|
- | 170 | #define DRM_EDID_DIGITAL_TYPE_HDMI_A (2) |
|
- | 171 | #define DRM_EDID_DIGITAL_TYPE_HDMI_B (3) |
|
- | 172 | #define DRM_EDID_DIGITAL_TYPE_MDDI (4) |
|
- | 173 | #define DRM_EDID_DIGITAL_TYPE_DP (5) |
|
Line 153... | Line 174... | ||
153 | 174 | ||
154 | #define DRM_EDID_FEATURE_DEFAULT_GTF (1 << 0) |
175 | #define DRM_EDID_FEATURE_DEFAULT_GTF (1 << 0) |
155 | #define DRM_EDID_FEATURE_PREFERRED_TIMING (1 << 1) |
176 | #define DRM_EDID_FEATURE_PREFERRED_TIMING (1 << 1) |
- | 177 | #define DRM_EDID_FEATURE_STANDARD_COLOR (1 << 2) |
|
156 | #define DRM_EDID_FEATURE_STANDARD_COLOR (1 << 2) |
178 | /* If analog */ |
- | 179 | #define DRM_EDID_FEATURE_DISPLAY_TYPE (3 << 3) /* 00=mono, 01=rgb, 10=non-rgb, 11=unknown */ |
|
- | 180 | /* If digital */ |
|
- | 181 | #define DRM_EDID_FEATURE_COLOR_MASK (3 << 3) |
|
- | 182 | #define DRM_EDID_FEATURE_RGB (0 << 3) |
|
- | 183 | #define DRM_EDID_FEATURE_RGB_YCRCB444 (1 << 3) |
|
- | 184 | #define DRM_EDID_FEATURE_RGB_YCRCB422 (2 << 3) |
|
- | 185 | #define DRM_EDID_FEATURE_RGB_YCRCB (3 << 3) /* both 4:4:4 and 4:2:2 */ |
|
157 | #define DRM_EDID_FEATURE_DISPLAY_TYPE (3 << 3) /* 00=mono, 01=rgb, 10=non-rgb, 11=unknown */ |
186 | |
158 | #define DRM_EDID_FEATURE_PM_ACTIVE_OFF (1 << 5) |
187 | #define DRM_EDID_FEATURE_PM_ACTIVE_OFF (1 << 5) |
159 | #define DRM_EDID_FEATURE_PM_SUSPEND (1 << 6) |
188 | #define DRM_EDID_FEATURE_PM_SUSPEND (1 << 6) |
Line 160... | Line 189... | ||
160 | #define DRM_EDID_FEATURE_PM_STANDBY (1 << 7) |
189 | #define DRM_EDID_FEATURE_PM_STANDBY (1 << 7) |
Line 199... | Line 228... | ||
199 | u8 checksum; |
228 | u8 checksum; |
200 | } __attribute__((packed)); |
229 | } __attribute__((packed)); |
Line 201... | Line 230... | ||
201 | 230 | ||
Line 202... | Line -... | ||
202 | #define EDID_PRODUCT_ID(e) ((e)->prod_code[0] | ((e)->prod_code[1] << 8)) |
- | |
203 | - | ||
204 | /* define the number of Extension EDID block */ |
- | |
205 | #define DRM_MAX_EDID_EXT_NUM 4 |
231 | #define EDID_PRODUCT_ID(e) ((e)->prod_code[0] | ((e)->prod_code[1] << 8)) |