Kernel-4.18.0-80.el8_dw-dsi

Device-Tree bindings for DesignWare DSI Host Controller v1.20a driver

A DSI Host Controller resides in the middle of display controller and external
HDMI converter or panel.

Required properties:

  • compatible: value should be “hisilicon,hi6220-dsi”.
  • reg: physical base address and length of dsi controller’s registers.
  • clocks: contains APB clock phandle + clock-specifier pair.
  • clock-names: should be “pclk”.
  • ports: contains DSI controller input and output sub port.
    The input port connects to ADE output port with the reg value “0”.
    The output port with the reg value “1”, it could connect to panel or
    any other bridge endpoints.
    See Documentation/devicetree/bindings/graph.txt for more device graph info.

A example of HiKey board hi6220 SoC and board specific DT entry:
Example:

SoC specific:
dsi: dsi@f4107800 {
compatible = “hisilicon,hi6220-dsi”;
reg = <0x0 0xf4107800 0x0 0x100>;
clocks = <&media_ctrl HI6220_DSI_PCLK>;
clock-names = “pclk”;
status = “disabled”;

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

        /* 0 for input port */
        port@0 {
            reg = <0>;
            dsi_in: endpoint {
                remote-endpoint = <&ade_out>;
            };
        };
    };
};

Board specific:
&dsi {
status = “ok”;

    ports {
        /* 1 for output port */
        port@1 {
            reg = <1>;

            dsi_out0: endpoint@0 {
                remote-endpoint = <&adv7533_in>;
            };
        };
    };
};

&i2c2 {
    ...

    adv7533: adv7533@39 {
        ...

        port {
            adv7533_in: endpoint {
                remote-endpoint = <&dsi_out0>;
            };
        };
    };
};