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

Daniel Vetter daniel at ffwll.ch
Wed Jul 30 05:53:48 PDT 2014


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 at linaro.org>
> ---
>  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


More information about the dri-devel mailing list