[Mesa-dev] [PATCH 2/8] panfrost: Detect GPU version at runtime

Rob Herring robh at kernel.org
Mon Mar 4 19:43:56 UTC 2019


On Mon, Mar 4, 2019 at 1:35 PM Alyssa Rosenzweig <alyssa at rosenzweig.io> wrote:
>
> >  /* If set, we'll require the use of single render-target framebuffer
> >   * descriptors (SFBD), for older hardware -- specifically, <T760 hardware, If
>
> This require_sfbd field should also be set at the same time. In
> particular, we'll want a (kernel-agnostic) routine to determine whether
> a given chip version supports MFBD, so we know to use it or not.
>
> In kernel-space, this corresponds to the "FEATURE_MRT" flag. We'll want
> to import this to userspace, but tl;dr "T760+ is MFBD, T6XX/T720 is
> SFBD".

+1

"is_t6xx" is not going to scale. We need to do feature and issues.
Doesn't have to be in this series though.

> > +        ctx->is_t6xx = pscreen->driver->query_gpu_version(pscreen) == 0x0750;
>
> Where did this magic number come from? Is that for T760 or actually T600
> or something else or...? For Midgard only, I suppose <= 0x0750 is
> probably what you want but we'll see.

Most of midgard has a number in hex matching the marketing number, but
there's some oddballs. This one is T760 which doesn't match is_t6xx.
The other oddball is T604 which has 0x6???. Then Bifrost has a
different scheme.

> > +     unsigned (*query_gpu_version) (struct panfrost_screen *screen);
>
> I'll implement this in the non-DRM module as well (tonight, if I get
> time for it), but that's needed for merging to avoid regressing. Just
> making a mental note to self -- nothing for you to worry about here :)


More information about the mesa-dev mailing list