[Freedreno] [PATCH 3/3] drm/msm: a4xx support for msm-drm

Rob Clark robdclark at gmail.com
Thu Nov 6 13:13:56 PST 2014


On Fri, Oct 31, 2014 at 11:08 AM, Ganesan, Aravind
<aravindg at codeaurora.org> wrote:
> Added a4xx GPU support.
>
> Signed-off-by: Aravind Ganesan <aravindg at codeaurora.org>
> ---
> Resend the patch-set with the same thread-id
> Resend in patch-set format and with dri-devel at lists.freedesktop.org on
> the CC.
>  drivers/gpu/drm/msm/Makefile               |   1 +
>  drivers/gpu/drm/msm/adreno/a4xx_gpu.c      | 620
> +++++++++++++++++++++++++++++
>  drivers/gpu/drm/msm/adreno/a4xx_gpu.h      |  34 ++
>  drivers/gpu/drm/msm/adreno/adreno_device.c |  13 +
>  drivers/gpu/drm/msm/adreno/adreno_gpu.c    |   2 +-
>  drivers/gpu/drm/msm/adreno/adreno_gpu.h    |  14 +-
>  6 files changed, 681 insertions(+), 3 deletions(-)
>  create mode 100644 drivers/gpu/drm/msm/adreno/a4xx_gpu.c
>  create mode 100644 drivers/gpu/drm/msm/adreno/a4xx_gpu.h
>
> diff --git a/drivers/gpu/drm/msm/Makefile b/drivers/gpu/drm/msm/Makefile
> index 20b7eda..21020f9 100644
> --- a/drivers/gpu/drm/msm/Makefile
> +++ b/drivers/gpu/drm/msm/Makefile
> @@ -7,6 +7,7 @@ msm-y := \
>         adreno/adreno_device.o \
>         adreno/adreno_gpu.o \
>         adreno/a3xx_gpu.o \
> +       adreno/a4xx_gpu.o \
>         hdmi/hdmi.o \
>         hdmi/hdmi_audio.o \
>         hdmi/hdmi_bridge.o \
> diff --git a/drivers/gpu/drm/msm/adreno/a4xx_gpu.c
> b/drivers/gpu/drm/msm/adreno/a4xx_gpu.c
> new file mode 100644
> index 0000000..50cbaf4
> --- /dev/null
> +++ b/drivers/gpu/drm/msm/adreno/a4xx_gpu.c
[snip]
> +#ifdef CONFIG_DEBUG_FS
> +static void a4xx_show(struct msm_gpu *gpu, struct seq_file *m)
> +{
> +       struct drm_device *dev = gpu->dev;
> +
> +       mutex_lock(&dev->struct_mutex);

so, probably something that was missed in the rebase, but struct_mutex
is acquired/dropped in show_locked() (in msm_drv.c) now.. so you need
to drop the mutex_lock/_unlock() here.

BR,
-R

> +       gpu->funcs->pm_resume(gpu);
> +
> +       seq_printf(m, "status:   %08x\n",
> +                       gpu_read(gpu, REG_A4XX_RBBM_STATUS));
> +       gpu->funcs->pm_suspend(gpu);
> +
> +       adreno_show(gpu, m);
> +
> +       mutex_unlock(&dev->struct_mutex);
> +}
> +#endif
> +


More information about the Freedreno mailing list