Rob Clark robdclark at gmail.com
Wed Dec 21 15:41:13 UTC 2016

On Wed, Dec 21, 2016 at 4:15 AM, Daniel Vetter <daniel at ffwll.ch> wrote:
>> Also I guess it limits you to modifiers only with the first 64
>> formats.. maybe not a problem right away, but a quick look and drm/msm
>> is already at 23 formats (and there are probably some more it could
>> do.. without even starting to get into "exotic" float/etc formats and
>> whatever else might come in the future.
> Hm, I'd have said with max 23 currently used 64 is good enough.

The fact that the struct has no room to grow worries me a bit, when we
are nearly half way through using the available space, without even
adding permutations of float/sRGB/etc..

(and note: just a quick look at the trm/hrd for 8016 and it looks like
we could easily add things like permutations of 5551, 4444, etc..
those 23 formats aren't even trying to cover everything the hw could

Maybe something like:

  struct drm_format_support {
      u16 base;
      u16 pad;
      u32 mask;   /* bitmask relative to base */
      u64 modifier;

would be a bit more future proof..


More information about the dri-devel mailing list