When working with framebuffer modifiers, it can be useful to extract the vendor identifier or check a modifier against a given vendor identifier. Add one macro that extracts the vendor identifier and a helper to check a modifier against a given vendor identifier.
Showing the changes to include/uapi (1 of 1 file). Show all
Unified · Split
| @@ -373,6 +373,12 @@ extern "C" { · 372 unmodified lines | |||
| 373 | 373 | ||
| 374 | #define DRM_FORMAT_RESERVED ((1ULL << 56) - 1) | 374 | #define DRM_FORMAT_RESERVED ((1ULL << 56) - 1) |
| 375 | 375 | ||
| 376 | #define fourcc_mod_get_vendor(modifier) \ | ||
| 377 | (((modifier) >> 56) & 0xff) | ||
| 378 | |||
| 379 | #define fourcc_mod_is_vendor(modifier, vendor) \ | ||
| 380 | (fourcc_mod_get_vendor(modifier) == DRM_FORMAT_MOD_VENDOR_## vendor) | ||
| 381 | |||
| 376 | #define fourcc_mod_code(vendor, val) \ | 382 | #define fourcc_mod_code(vendor, val) \ |
| 377 | ((((__u64)DRM_FORMAT_MOD_VENDOR_## vendor) << 56) | ((val) & 0x00ffffffffffffffULL)) | 383 | ((((__u64)DRM_FORMAT_MOD_VENDOR_## vendor) << 56) | ((val) & 0x00ffffffffffffffULL)) |
| 378 | 384 | ||