Subversion Repositories Kolibri OS

Rev

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))