[PATCH 0/3] GET_PLANE2 w/ i915 implementation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This patch series implements GET_PLANE2 support for Intel platforms and defines
the new kernel UAPI. The idea was originally introduced by Kristian. Ultimately,
the purpose of the new API is to provide the ability to query per-plane
modifiers in KMS. These modifiers, which are just fb modifiers, will be used by
the client to enable optimal modifications for framebuffers. A reference
implementation in kmscube is referenced (in that code is a comment for an
optimal algorithm not implemented).

This work has been discussed on the mailing list and IRC over the last few weeks
and this is a result of the agreed changes. There is still some debate about the
UAPI, I believe, but I can firmly say that this seems entirely sufficient for
Intel platforms in the foreseeable future.

Cc: Kristian Høgsberg <krh@xxxxxxxxxxxxx>
Cc: Rob Clark <robdclark@xxxxxxxxx>
Cc: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
Cc: Daniel Vetter <daniel.vetter@xxxxxxxx>
References: (ccs modifier) https://lists.freedesktop.org/archives/intel-gfx/2017-January/116022.html
References: (GBM modifiers) https://lists.freedesktop.org/archives/mesa-dev/2017-January/139284.html
References: (kmscube) https://github.com/bwidawsk/kmscube/commit/55519640f5a1a21983e267fb39e4cf48f6312ef9
References: (libdrm) https://lists.freedesktop.org/archives/dri-devel/2016-December/127942.html

Ben Widawsky (3):
  drm: Add new DRM_IOCTL_MODE_GETPLANE2
  drm/i915: Add format modifiers for Intel
  drm/i915: Add support for GET_PLANE2 CCS modifiers

 drivers/gpu/drm/arc/arcpgu_crtc.c               |   1 +
 drivers/gpu/drm/arm/hdlcd_crtc.c                |   1 +
 drivers/gpu/drm/arm/malidp_planes.c             |   2 +-
 drivers/gpu/drm/armada/armada_crtc.c            |   1 +
 drivers/gpu/drm/armada/armada_overlay.c         |   1 +
 drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c |   4 +-
 drivers/gpu/drm/drm_ioctl.c                     |   2 +-
 drivers/gpu/drm/drm_modeset_helper.c            |   1 +
 drivers/gpu/drm/drm_plane.c                     |  67 +++++++++++++-
 drivers/gpu/drm/drm_simple_kms_helper.c         |   3 +
 drivers/gpu/drm/exynos/exynos_drm_plane.c       |   2 +-
 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c     |   2 +-
 drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c  |   1 +
 drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c |   2 +-
 drivers/gpu/drm/i915/intel_display.c            | 116 +++++++++++++++++++++++-
 drivers/gpu/drm/i915/intel_sprite.c             |  31 +++++++
 drivers/gpu/drm/imx/ipuv3-plane.c               |   4 +-
 drivers/gpu/drm/mediatek/mtk_drm_plane.c        |   2 +-
 drivers/gpu/drm/meson/meson_plane.c             |   1 +
 drivers/gpu/drm/msm/mdp/mdp4/mdp4_plane.c       |   2 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_plane.c       |   2 +-
 drivers/gpu/drm/mxsfb/mxsfb_drv.c               |   2 +-
 drivers/gpu/drm/nouveau/nv50_display.c          |   5 +-
 drivers/gpu/drm/omapdrm/omap_plane.c            |   3 +-
 drivers/gpu/drm/rcar-du/rcar_du_plane.c         |   4 +-
 drivers/gpu/drm/rcar-du/rcar_du_vsp.c           |   5 +-
 drivers/gpu/drm/rockchip/rockchip_drm_vop.c     |   4 +-
 drivers/gpu/drm/sti/sti_cursor.c                |   1 +
 drivers/gpu/drm/sti/sti_gdp.c                   |   2 +-
 drivers/gpu/drm/sti/sti_hqvdp.c                 |   2 +-
 drivers/gpu/drm/sun4i/sun4i_layer.c             |   1 +
 drivers/gpu/drm/tegra/dc.c                      |  12 +--
 drivers/gpu/drm/vc4/vc4_plane.c                 |   2 +-
 drivers/gpu/drm/virtio/virtgpu_plane.c          |   2 +-
 drivers/gpu/drm/zte/zx_plane.c                  |   2 +-
 include/drm/drm_plane.h                         |  21 ++++-
 include/drm/drm_simple_kms_helper.h             |   1 +
 include/uapi/drm/drm.h                          |   1 +
 include/uapi/drm/drm_fourcc.h                   |  11 +++
 include/uapi/drm/drm_mode.h                     |  27 ++++++
 40 files changed, 320 insertions(+), 36 deletions(-)

-- 
2.11.0

_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux