Re: [PATCH v5 11/11] drm: sti: Add DRM driver itself

From: Daniel Vetter
Date: Wed Jul 30 2014 - 08:53:49 EST


On Wed, Jun 18, 2014 at 10:51:28AM +0200, Benjamin Gaignard wrote:
> Make the link between all the hardware drivers and DRM/KMS interface.
> Create the driver itself and make it register all the sub-components.
> Use GEM CMA helpers for buffer allocation.
>
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@xxxxxxxxxx>
> ---
> drivers/gpu/drm/sti/Kconfig | 8 +
> drivers/gpu/drm/sti/Makefile | 6 +-
> drivers/gpu/drm/sti/sti_compositor.c | 16 +-
> drivers/gpu/drm/sti/sti_drm_crtc.c | 419 +++++++++++++++++++++++++++++++++++
> drivers/gpu/drm/sti/sti_drm_crtc.h | 21 ++
> drivers/gpu/drm/sti/sti_drm_drv.c | 244 ++++++++++++++++++++
> drivers/gpu/drm/sti/sti_drm_drv.h | 29 +++
> drivers/gpu/drm/sti/sti_drm_plane.c | 192 ++++++++++++++++
> drivers/gpu/drm/sti/sti_drm_plane.h | 17 ++
> 9 files changed, 949 insertions(+), 3 deletions(-)
> create mode 100644 drivers/gpu/drm/sti/sti_drm_crtc.c
> create mode 100644 drivers/gpu/drm/sti/sti_drm_crtc.h
> create mode 100644 drivers/gpu/drm/sti/sti_drm_drv.c
> create mode 100644 drivers/gpu/drm/sti/sti_drm_drv.h
> create mode 100644 drivers/gpu/drm/sti/sti_drm_plane.c
> create mode 100644 drivers/gpu/drm/sti/sti_drm_plane.h
>
> diff --git a/drivers/gpu/drm/sti/Kconfig b/drivers/gpu/drm/sti/Kconfig
> index 1013570..bb48696 100644
> --- a/drivers/gpu/drm/sti/Kconfig
> +++ b/drivers/gpu/drm/sti/Kconfig

[snip]

> +int sti_drm_crtc_init(struct drm_device *drm_dev, struct sti_mixer *mixer)
> +{
> + struct drm_crtc *crtc = &mixer->drm_crtc;
> + int res;
> +
> + res = drm_crtc_init(drm_dev, crtc, &sti_crtc_funcs);

We now have universal planes where the primary plane is no longer part of
the crtc, but cut out as a separate plane. In 3.17 this is enabled so
userspace can use it, so I think new drivers should be converted to this
from the go.

It looks like your platform already has universal planes on the hw side,
so removing that fake disdinction for primary planes should help quite a
bit.
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/