QTI Snapdragon Display Engine (SDE) shared display Required properties: - compatible: "qcom,shared-display" - qcom,shared-display-base: node handle of qcom,shared-display-base, see below. - qcom,blend-stage-range: A pair of u32 property defines the blend stage start and size for the shared display. For example <4 5> indicates this shared display's blending stage starts from 4 and there are 5 stages in total. Different shared display located on the same base display should not overlap with their blend stages. The maximum stages should be within the range of layer mixer hardware capability. - qcom,shared-display-src-mode: source resolution of the shared display, which is also the framebuffer size. It contains two properties: qcom,mode-h-active: A u32 property defines horizontal resolution. qcom,mode-v-active: A u32 property defines vertical resolution. - qcom,shared-display-dst-mode: destination rectangle in the shared display, which also includes the padding lines if line padding feature is enabled. It contains 4 properties: qcom,mode-x-offset: A u32 property of x offset. qcom,mode-y-offset: A u32 property of y offset. qcom,mode-width: A u32 property of width. qcom,mode-height: A u32 property of height, including line padding. qcom,shared-display-base properties: - qcom,shared-display-base-intf: A u32 property defines intf index of the base display. - qcom,shared-display-base-mst: A u32 property defines the DP MST branch port, needed if the base display sits on DP MST display. - qcom,shared-display-base-mode: timing of the physical base display, contains the following properties: qcom,mode-h-active: A u32 property defines the horizontal active size. qcom,mode-h-front-porch: A u32 property defines the horizontal front porch. qcom,mode-h-pulse-width: A u32 property defines the horizontal pulse. qcom,mode-h-back-porch: A u32 property defines the horizontal back porch. qcom,mode-h-active-high: A boolean property defines if horizontal polarity is high. qcom,mode-v-active: A u32 property defines the vertical active size. qcom,mode-v-front-porch: A u32 property defines the vertical front portch. qcom,mode-v-pulse-width: A u32 property defines the vertical pulse width. qcom,mode-v-back-porch: A u32 property defines the vertical back porch. qcom,mode-v-active-high: A boolean property defines if vertical polarity is high. qcom,mode-refresh-rate: A u32 property defines vertial refresh rate. qcom,mode-clock-in-khz: A u32 property defines clock in kHz. Example: / { ... sde_sh_base0: qcom,shared-display-base@0 { qcom,shared-display-base-intf = <0>; qcom,shared-display-base-mode { qcom,mode-h-active = <3840>; qcom,mode-h-front-porch = <176>; qcom,mode-h-pulse-width = <88>; qcom,mode-h-back-porch = <296>; qcom,mode-h-active-high; qcom,mode-v-active = <2160>; qcom,mode-v-front-porch = <8>; qcom,mode-v-pulse-width = <10>; qcom,mode-v-back-porch = <72>; qcom,mode-v-active-high; qcom,mode-refresh-rate = <30>; qcom,mode-clock-in-khz = <297000>; }; }; sde_sh0: qcom,shared-display@0 { compatible = "qcom,shared-display"; qcom,shared-display-base = <&sde_sh_base0>; qcom,blend-stage-range = <0 5>; qcom,shared-display-src-mode { qcom,mode-h-active = <1920>; qcom,mode-v-active = <2160>; }; qcom,shared-display-dst-mode { qcom,mode-x-offset = <0>; qcom,mode-y-offset = <0>; qcom,mode-width = <1920>; qcom,mode-height = <2160>; }; }; sde_sh1: qcom,shared-display@1 { compatible = "qcom,shared-display"; qcom,shared-display-base = <&sde_sh_base0>; qcom,blend-stage-range = <5 5>; qcom,shared-display-src-mode { qcom,mode-h-active = <1920>; qcom,mode-v-active = <2160>; }; qcom,shared-display-dst-mode { qcom,mode-x-offset = <1920>; qcom,mode-y-offset = <0>; qcom,mode-width = <1920>; qcom,mode-height = <2160>; }; }; };