[Mesa-dev] [PATCH 11/19] gallium/freedreno: handle query_renderer caps

Rob Clark robdclark at gmail.com
Fri Aug 15 09:33:19 PDT 2014


On Thu, Aug 14, 2014 at 6:18 PM, Emil Velikov <emil.l.velikov at gmail.com> wrote:
> Provide the real vendor and and hardcode the device id as
> 0xffffffff as the devices currently using freedreno are non-pci.
> The device features UMA.
>
> Cc: Rob Clark <robclark at freedesktop.org>
> Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
> ---
>  src/gallium/drivers/freedreno/freedreno_screen.c | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
>
> diff --git a/src/gallium/drivers/freedreno/freedreno_screen.c b/src/gallium/drivers/freedreno/freedreno_screen.c
> index de69b14..d2edf56 100644
> --- a/src/gallium/drivers/freedreno/freedreno_screen.c
> +++ b/src/gallium/drivers/freedreno/freedreno_screen.c
> @@ -264,6 +264,18 @@ fd_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
>         case PIPE_CAP_MIN_MAP_BUFFER_ALIGNMENT:
>                 return 64;
>
> +       case PIPE_CAP_VENDOR_ID:
> +               return 0x5143;
> +       case PIPE_CAP_DEVICE_ID:
> +               return 0xFFFFFFFF;
> +       case PIPE_CAP_ACCELERATED:
> +               return 1;
> +       case PIPE_CAP_VIDEO_MEMORY:
> +               DBG("FINISHME: The value returned is incorrect\n");
> +               return 10;

I probably need to add a property that userspace can query the kernel
for this.  In practice for all but one oddball device that I currently
support, reporting the amount of system ram seems sane.

I'll try to cook up something before 3.18 merge window.. I guess for
now this is ok.  Hopefully apps will at least notice that it is a UMA
device and amount-of-vram doesn't really mean the same thing.

At any rate,

Reviewed-by: Rob Clark <robdclark at gmail.com>


> +       case PIPE_CAP_UMA:
> +               return 1;
> +
>         default:
>                 DBG("unknown param %d", param);
>                 return 0;
> --
> 2.0.2
>


More information about the mesa-dev mailing list