Komeda HW can support dual-link which splits display frame to two halves
(left/link0, right/link1) and output them by two output links.
Due to the halved pixel rate of each link, the pxlclk of dual-link can be
reduced two times compare with single-link.

For enabling dual-link:
- The DT need to configure two output-links for the pipeline node.
- Komeda enable dual-link when both link0 and link1 have been connected.

Example of how the pipeline node will look like for dual-link setup

pipe0: pipeline@0 {
        clocks = <&fpgaosc2>;
        clock-names = "pxclk";
        reg = <0>;

        #address-cells = <1>;
        #size-cells = <0>;

        port@0 {
                reg = <0>;

                #address-cells = <1>;
                #size-cells = <0>;
                dp0_pipe0_link0: endpoint@0 {
                        reg = <0>;
                        remote-endpoint = <&dlink_connector_in0>;

                };
                dp0_pipe0_link1: endpoint@1 {
                        reg = <1>;
                        remote-endpoint = <&dlink_connector_in1>;
                };
        };
};

James Qian Wang (Arm Technology China) (2):
  drm/komeda: Use drm_display_mode "crtc_" prefixed hardware timings
  drm/komeda: Enable dual-link support

 .../arm/display/komeda/d71/d71_component.c    | 42 +++++----
 .../gpu/drm/arm/display/komeda/komeda_crtc.c  | 89 +++++++++++++------
 .../gpu/drm/arm/display/komeda/komeda_dev.c   |  5 +-
 .../gpu/drm/arm/display/komeda/komeda_drv.c   |  8 +-
 .../gpu/drm/arm/display/komeda/komeda_kms.h   |  4 +-
 .../drm/arm/display/komeda/komeda_pipeline.c  | 19 +++-
 .../drm/arm/display/komeda/komeda_pipeline.h  |  6 +-
 .../display/komeda/komeda_pipeline_state.c    |  2 +-
 8 files changed, 118 insertions(+), 57 deletions(-)

--
2.17.1

Reply via email to