Rev 5068 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 5068 | Rev 6110 | ||
---|---|---|---|
Line 171... | Line 171... | ||
171 | #define DRM_MODE_ENCODER_NONE 0 |
171 | #define DRM_MODE_ENCODER_NONE 0 |
172 | #define DRM_MODE_ENCODER_DAC 1 |
172 | #define DRM_MODE_ENCODER_DAC 1 |
173 | #define DRM_MODE_ENCODER_TMDS 2 |
173 | #define DRM_MODE_ENCODER_TMDS 2 |
174 | #define DRM_MODE_ENCODER_LVDS 3 |
174 | #define DRM_MODE_ENCODER_LVDS 3 |
175 | #define DRM_MODE_ENCODER_TVDAC 4 |
175 | #define DRM_MODE_ENCODER_TVDAC 4 |
- | 176 | #define DRM_MODE_ENCODER_VIRTUAL 5 |
|
- | 177 | #define DRM_MODE_ENCODER_DSI 6 |
|
- | 178 | #define DRM_MODE_ENCODER_DPMST 7 |
|
Line 176... | Line 179... | ||
176 | 179 | ||
177 | struct drm_mode_get_encoder { |
180 | struct drm_mode_get_encoder { |
178 | __u32 encoder_id; |
181 | __u32 encoder_id; |
Line 208... | Line 211... | ||
208 | #define DRM_MODE_CONNECTOR_DisplayPort 10 |
211 | #define DRM_MODE_CONNECTOR_DisplayPort 10 |
209 | #define DRM_MODE_CONNECTOR_HDMIA 11 |
212 | #define DRM_MODE_CONNECTOR_HDMIA 11 |
210 | #define DRM_MODE_CONNECTOR_HDMIB 12 |
213 | #define DRM_MODE_CONNECTOR_HDMIB 12 |
211 | #define DRM_MODE_CONNECTOR_TV 13 |
214 | #define DRM_MODE_CONNECTOR_TV 13 |
212 | #define DRM_MODE_CONNECTOR_eDP 14 |
215 | #define DRM_MODE_CONNECTOR_eDP 14 |
- | 216 | #define DRM_MODE_CONNECTOR_VIRTUAL 15 |
|
- | 217 | #define DRM_MODE_CONNECTOR_DSI 16 |
|
Line 213... | Line 218... | ||
213 | 218 | ||
Line 214... | Line 219... | ||
214 | struct drm_mode_get_connector { |
219 | struct drm_mode_get_connector { |
215 | 220 | ||
Line 237... | Line 242... | ||
237 | #define DRM_MODE_PROP_IMMUTABLE (1<<2) |
242 | #define DRM_MODE_PROP_IMMUTABLE (1<<2) |
238 | #define DRM_MODE_PROP_ENUM (1<<3) /* enumerated type with text strings */ |
243 | #define DRM_MODE_PROP_ENUM (1<<3) /* enumerated type with text strings */ |
239 | #define DRM_MODE_PROP_BLOB (1<<4) |
244 | #define DRM_MODE_PROP_BLOB (1<<4) |
240 | #define DRM_MODE_PROP_BITMASK (1<<5) /* bitmask of enumerated types */ |
245 | #define DRM_MODE_PROP_BITMASK (1<<5) /* bitmask of enumerated types */ |
Line -... | Line 246... | ||
- | 246 | ||
- | 247 | /* non-extended types: legacy bitmask, one bit per type: */ |
|
- | 248 | #define DRM_MODE_PROP_LEGACY_TYPE ( \ |
|
- | 249 | DRM_MODE_PROP_RANGE | \ |
|
- | 250 | DRM_MODE_PROP_ENUM | \ |
|
- | 251 | DRM_MODE_PROP_BLOB | \ |
|
- | 252 | DRM_MODE_PROP_BITMASK) |
|
- | 253 | ||
- | 254 | /* extended-types: rather than continue to consume a bit per type, |
|
- | 255 | * grab a chunk of the bits to use as integer type id. |
|
- | 256 | */ |
|
- | 257 | #define DRM_MODE_PROP_EXTENDED_TYPE 0x0000ffc0 |
|
- | 258 | #define DRM_MODE_PROP_TYPE(n) ((n) << 6) |
|
- | 259 | #define DRM_MODE_PROP_OBJECT DRM_MODE_PROP_TYPE(1) |
|
- | 260 | #define DRM_MODE_PROP_SIGNED_RANGE DRM_MODE_PROP_TYPE(2) |
|
241 | 261 | ||
242 | struct drm_mode_property_enum { |
262 | struct drm_mode_property_enum { |
243 | __u64 value; |
263 | __u64 value; |
244 | char name[DRM_PROP_NAME_LEN]; |
264 | char name[DRM_PROP_NAME_LEN]; |
Line 301... | Line 321... | ||
301 | /* driver specific handle */ |
321 | /* driver specific handle */ |
302 | __u32 handle; |
322 | __u32 handle; |
303 | }; |
323 | }; |
Line 304... | Line 324... | ||
304 | 324 | ||
- | 325 | #define DRM_MODE_FB_INTERLACED (1<<0) /* for interlaced framebuffers */ |
|
Line 305... | Line 326... | ||
305 | #define DRM_MODE_FB_INTERLACED (1<<0) /* for interlaced framebuffers */ |
326 | #define DRM_MODE_FB_MODIFIERS (1<<1) /* enables ->modifer[] */ |
306 | 327 | ||
307 | struct drm_mode_fb_cmd2 { |
328 | struct drm_mode_fb_cmd2 { |
308 | __u32 fb_id; |
329 | __u32 fb_id; |
Line 321... | Line 342... | ||
321 | * 8 bit 2x2 subsampled colour difference samples. |
342 | * 8 bit 2x2 subsampled colour difference samples. |
322 | * |
343 | * |
323 | * So it would consist of Y as offset[0] and UV as |
344 | * So it would consist of Y as offset[0] and UV as |
324 | * offset[1]. Note that offset[0] will generally |
345 | * offset[1]. Note that offset[0] will generally |
325 | * be 0. |
346 | * be 0. |
- | 347 | * |
|
- | 348 | * To accommodate tiled, compressed, etc formats, a per-plane |
|
- | 349 | * modifier can be specified. The default value of zero |
|
- | 350 | * indicates "native" format as specified by the fourcc. |
|
- | 351 | * Vendor specific modifier token. This allows, for example, |
|
- | 352 | * different tiling/swizzling pattern on different planes. |
|
- | 353 | * See discussion above of DRM_FORMAT_MOD_xxx. |
|
326 | */ |
354 | */ |
327 | __u32 handles[4]; |
355 | __u32 handles[4]; |
328 | __u32 pitches[4]; /* pitch for each plane */ |
356 | __u32 pitches[4]; /* pitch for each plane */ |
329 | __u32 offsets[4]; /* offset of each plane */ |
357 | __u32 offsets[4]; /* offset of each plane */ |
- | 358 | __u64 modifier[4]; /* ie, tiling, compressed (per plane) */ |
|
330 | }; |
359 | }; |
Line 331... | Line 360... | ||
331 | 360 | ||
332 | #define DRM_MODE_FB_DIRTY_ANNOTATE_COPY 0x01 |
361 | #define DRM_MODE_FB_DIRTY_ANNOTATE_COPY 0x01 |
333 | #define DRM_MODE_FB_DIRTY_ANNOTATE_FILL 0x02 |
362 | #define DRM_MODE_FB_DIRTY_ANNOTATE_FILL 0x02 |
Line 485... | Line 514... | ||
485 | 514 | ||
486 | struct drm_mode_destroy_dumb { |
515 | struct drm_mode_destroy_dumb { |
487 | __u32 handle; |
516 | __u32 handle; |
Line -... | Line 517... | ||
- | 517 | }; |
|
- | 518 | ||
- | 519 | /* page-flip flags are valid, plus: */ |
|
- | 520 | #define DRM_MODE_ATOMIC_TEST_ONLY 0x0100 |
|
- | 521 | #define DRM_MODE_ATOMIC_NONBLOCK 0x0200 |
|
- | 522 | #define DRM_MODE_ATOMIC_ALLOW_MODESET 0x0400 |
|
- | 523 | ||
- | 524 | struct drm_mode_atomic { |
|
- | 525 | __u32 flags; |
|
- | 526 | __u32 count_objs; |
|
- | 527 | __u64 objs_ptr; |
|
- | 528 | __u64 count_props_ptr; |
|
- | 529 | __u64 props_ptr; |
|
- | 530 | __u64 prop_values_ptr; |
|
- | 531 | __u64 reserved; |
|
- | 532 | __u64 user_data; |
|
- | 533 | }; |
|
- | 534 | ||
- | 535 | /** |
|
- | 536 | * Create a new 'blob' data property, copying length bytes from data pointer, |
|
- | 537 | * and returning new blob ID. |
|
- | 538 | */ |
|
- | 539 | struct drm_mode_create_blob { |
|
- | 540 | /** Pointer to data to copy. */ |
|
- | 541 | __u64 data; |
|
- | 542 | /** Length of data to copy. */ |
|
- | 543 | __u32 length; |
|
- | 544 | /** Return: new property ID. */ |
|
- | 545 | __u32 blob_id; |
|
- | 546 | }; |
|
- | 547 | ||
- | 548 | /** |
|
- | 549 | * Destroy a user-created blob property. |
|
- | 550 | */ |
|
- | 551 | struct drm_mode_destroy_blob { |
|
- | 552 | __u32 blob_id; |
|
- | 553 | }; |
|
488 | }; |
554 |