[PATCH v6 0/4] Allow drm_writeback_connector to accept pointer to drm_encoder

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

 



There are some vendor drivers for which the writeback encoder shares
hardware resources such as clocks and interrupts with the rest of the
display pipeline. In addition, there can be use-cases where the
writeback encoder could be a shared encoder between the physical display
path and the writeback path.

To accommodate for such cases, change the drm_writeback_connector to
accept a pointer to drm_encoder.

For existing users of drm_writeback_connector there will not be any
change in functionality due to this change.

This approach was first posted by Suraj Kandpal here [1] for both
encoder and connector. But after discussions [2], the consensus was
reached to split this change for the drm_encoder first and the
drm_connector part can be reworked in a subsequent change later.

Validation of this change was done using igt_writeback tests on
MSM based RB5 board using the changes posted here [3].

For all other chipsets, these changes were compile-tested.

[1] https://patchwork.kernel.org/project/dri-devel/patch/20220202081702.22119-1-suraj.kandpal@xxxxxxxxx/
[2] https://patchwork.kernel.org/project/dri-devel/patch/20220202085429.22261-6-suraj.kandpal@xxxxxxxxx/
[3] https://patchwork.freedesktop.org/series/99724/

changes in v6:
	- remove drm_writeback_connector_setup() and instead
      directly call drm_writeback_connector_init_with_encoder()
	- pass encoder as a parameter explicitly to the new API
      for better readability  


Abhinav Kumar (4):
  drm: allow passing possible_crtcs to drm_writeback_connector_init()
  drm: introduce drm_writeback_connector_init_with_encoder() API
  drm/vc4: change vc4 driver to use
    drm_writeback_connector_init_with_encoder()
  drm: allow real encoder to be passed for drm_writeback_connector

 .../drm/arm/display/komeda/komeda_wb_connector.c   |  3 +-
 drivers/gpu/drm/arm/malidp_mw.c                    |  4 +-
 drivers/gpu/drm/drm_writeback.c                    | 78 ++++++++++++++++++----
 drivers/gpu/drm/rcar-du/rcar_du_writeback.c        |  4 +-
 drivers/gpu/drm/vc4/vc4_txp.c                      | 35 +++++++---
 drivers/gpu/drm/vkms/vkms_writeback.c              |  4 +-
 include/drm/drm_writeback.h                        | 29 +++++++-
 7 files changed, 126 insertions(+), 31 deletions(-)

-- 
2.7.4




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux