# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/display/allwinner,sun6i-a31-mipi-dsi.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Allwinner A31 MIPI-DSI Controller Device Tree Bindings

maintainers:
  - Chen-Yu Tsai <wens@csie.org>
  - Maxime Ripard <mripard@kernel.org>

properties:
  "#address-cells": true
  "#size-cells": true

  compatible:
    enum:
      - allwinner,sun6i-a31-mipi-dsi
      - allwinner,sun50i-a64-mipi-dsi

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    minItems: 1
    maxItems: 2
    items:
      - description: Bus Clock
      - description: Module Clock

  clock-names:
    items:
      - const: bus
      - const: mod

  resets:
    maxItems: 1

  vcc-dsi-supply:
    description: VCC-DSI power supply of the DSI encoder

  phys:
    maxItems: 1

  phy-names:
    const: dphy

  port:
    type: object
    description:
      A port node with endpoint definitions as defined in
      Documentation/devicetree/bindings/media/video-interfaces.txt. That
      port should be the input endpoint, usually coming from the
      associated TCON.

patternProperties:
  "^panel@[0-9]+$": true

required:
  - "#address-cells"
  - "#size-cells"
  - compatible
  - reg
  - interrupts
  - clocks
  - phys
  - phy-names
  - resets
  - vcc-dsi-supply
  - port

allOf:
  - if:
      properties:
         compatible:
           contains:
             const: allwinner,sun6i-a31-mipi-dsi

    then:
        properties:
          clocks:
            minItems: 2

        required:
          - clock-names

  - if:
      properties:
         compatible:
           contains:
             const: allwinner,sun50i-a64-mipi-dsi

    then:
        properties:
          clocks:
            minItems: 1

additionalProperties: false

examples:
  - |
    dsi0: dsi@1ca0000 {
        compatible = "allwinner,sun6i-a31-mipi-dsi";
        reg = <0x01ca0000 0x1000>;
        interrupts = <0 89 4>;
        clocks = <&ccu 23>, <&ccu 96>;
        clock-names = "bus", "mod";
        resets = <&ccu 4>;
        phys = <&dphy0>;
        phy-names = "dphy";
        vcc-dsi-supply = <&reg_dcdc1>;
        #address-cells = <1>;
        #size-cells = <0>;

        panel@0 {
                compatible = "bananapi,lhr050h41", "ilitek,ili9881c";
                reg = <0>;
                power-gpios = <&pio 1 7 0>; /* PB07 */
                reset-gpios = <&r_pio 0 5 1>; /* PL05 */
                backlight = <&pwm_bl>;
        };

        port {
            dsi0_in_tcon0: endpoint {
                remote-endpoint = <&tcon0_out_dsi0>;
            };
        };
    };

...
