++Laurent ,Dmitry, and Abhinav Hi, Can you have a look at the private implementation i915 is currently going with till we can figure out how to work with drm core . Regards, Suraj Kandpal > A patch series was floated in the drm mailing list which aimed to change the > drm_connector and drm_encoder fields to pointer in the > drm_connector_writeback structure, this received a huge pushback from the > community but since i915 expects each connector present in the drm_device > list to be a intel_connector but drm_writeback framework. > [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/ > This forces us to use a drm_connector which is not embedded in > intel_connector the current drm_writeback framework becomes very > unfeasible to us as it would mean a lot of checks at a lot of places to take into > account the above issue.Since no one had an issue with encoder field being > changed into a pointer it was decided to break the connector and encoder > pointer changes into two different series.The encoder field changes is > currently being worked upon by Abhinav Kumar > [3]https://patchwork.kernel.org/project/dri-devel/list/?series=633565 > In the meantime for i915 to start using the writeback functionality we came > up with a interim solution to own writeback pipeline bypassing one provided > by drm which is what these patches do. > Note: these are temp patches till we figure out how we can either change > drm core writeback to work with our intel_connector structure or find a > different solution which allows us to work with the current drm_writeback > framework > > Suraj Kandpal (3): > drm/i915: Creating writeback pipeline to bypass drm_writeback > framework > drm/i915: Define WD trancoder for i915 > drm/i915: Enabling WD Transcoder > > drivers/gpu/drm/i915/Makefile | 2 + > drivers/gpu/drm/i915/display/intel_acpi.c | 1 + > drivers/gpu/drm/i915/display/intel_display.c | 89 +- > drivers/gpu/drm/i915/display/intel_display.h | 15 + > .../drm/i915/display/intel_display_types.h | 18 + > drivers/gpu/drm/i915/display/intel_dpll.c | 3 + > drivers/gpu/drm/i915/display/intel_opregion.c | 3 + > .../gpu/drm/i915/display/intel_wb_connector.c | 296 ++++++ > .../gpu/drm/i915/display/intel_wb_connector.h | 99 ++ > drivers/gpu/drm/i915/display/intel_wd.c | 978 ++++++++++++++++++ > drivers/gpu/drm/i915/display/intel_wd.h | 82 ++ > drivers/gpu/drm/i915/i915_drv.h | 5 + > drivers/gpu/drm/i915/i915_irq.c | 8 +- > drivers/gpu/drm/i915/i915_pci.c | 7 +- > drivers/gpu/drm/i915/i915_reg.h | 139 +++ > 15 files changed, 1742 insertions(+), 3 deletions(-) create mode 100644 > drivers/gpu/drm/i915/display/intel_wb_connector.c > create mode 100644 drivers/gpu/drm/i915/display/intel_wb_connector.h > create mode 100644 drivers/gpu/drm/i915/display/intel_wd.c > create mode 100644 drivers/gpu/drm/i915/display/intel_wd.h > > -- > 2.35.1