This adds display sharing support in tidss display driver along with an example overlay devicetree file using which can be used to enable display sharing on AM62x devices with device manager core i.e. R5F expected to run a custom firmware which supports corresponding display sharing configuration. As resources can be partitioned at different levels a flexible scheme is followed while designing devicetree bindings and driver changes keeping in mind possible scenarios in which resources can be partitioned and various DSS hardware IP's supported across different devices. A rebased version of this patch has been tested on AM62P SoC which also supports same DSS IP as AM62x and the patch with display sharing functionality is already available in vendor-specific kernel source tree [1] along with documentation which explains the design [2] and DM firmware support [3]. NOTE1: This is marked as RFC for upstream since AM62P is not yet supported in upstream tree and for AM62x SoC which is the target SoC for this patch, the dss sharing functionality is not validated on upstream tree due to missing OLDI support and display sharing DM firmware support, but we still wanted to get some feedback on this. NOTE2: This series depends on : https://lore.kernel.org/all/20240115125716.560363-1-devarsht@xxxxxx/ [1] : https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/commit/?h=09.01.00.007&id=d805270609cfb6b2e67bd2fd5959d71f48393196 https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/commit/?h=09.01.00.007&id=93d751a94cbf9ad07c7f658e78aa510d919d7cd6 https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/commit/?h=09.01.00.007&id=665c17837dc8bed27e8d63388f8f7f7a85c0cd94 https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/commit/?h=ti-linux-6.1.y-cicd&id=f8d7f1a9617862af922c6bc10e0765ba4f4857d6 [2] : https://software-dl.ti.com/processor-sdk-linux/esd/AM62PX/09_01_00_08/exports/docs/linux/Foundational_Components/Kernel/Kernel_Drivers/Display/DSS7.html#driver-features (Display Sharing mode feature description) https://software-dl.ti.com/processor-sdk-linux/esd/AM62PX/09_01_00_08/exports/docs/linux/How_to_Guides/Target/How_to_enable_display_sharing_between_remotecore_and_Linux.html (How To Guide) https://software-dl.ti.com/processor-sdk-linux/esd/AM62PX/09_01_00_08/exports/docs/system/Demo_User_Guides/Display_Cluster_User_Guide.html (Display Cluster user guide with demo details) [3] : https://git.ti.com/cgit/processor-firmware/ti-linux-firmware/tree/ti-dm/am62pxx/dss_display_share.wkup-r5f0_0.release.strip.out?h=ti-linux-firmware-next Devarsh Thakkar (3): dt-bindings: display: ti,am65x-dss: Add support for display sharing mode drm/tidss: Add support for display sharing arm64: dts: ti: k3-am62x: Add overlay to use DSS in display sharing mode .../bindings/display/ti/ti,am65x-dss.yaml | 82 ++++++ arch/arm64/boot/dts/ti/Makefile | 1 + .../dts/ti/k3-am62x-sk-dss-shared-mode.dtso | 23 ++ drivers/gpu/drm/tidss/tidss_crtc.c | 120 ++++++++- drivers/gpu/drm/tidss/tidss_dispc.c | 254 ++++++++++++++++-- drivers/gpu/drm/tidss/tidss_dispc.h | 2 +- drivers/gpu/drm/tidss/tidss_drv.c | 33 ++- drivers/gpu/drm/tidss/tidss_drv.h | 6 + 8 files changed, 481 insertions(+), 40 deletions(-) create mode 100644 arch/arm64/boot/dts/ti/k3-am62x-sk-dss-shared-mode.dtso -- 2.34.1