# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/display/panel/synaptics,td4300-panel.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Synaptics TDDI Display Panel Controller

maintainers:
  - Kaustabh Chakraborty <kauschluss@disroot.org>

allOf:
  - $ref: panel-common.yaml#

properties:
  compatible:
    enum:
      - syna,td4101-panel
      - syna,td4300-panel

  reg:
    maxItems: 1

  vio-supply:
    description: core I/O voltage supply

  vsn-supply:
    description: negative voltage supply for analog circuits

  vsp-supply:
    description: positive voltage supply for analog circuits

  backlight-gpios:
    maxItems: 1
    description: backlight enable GPIO

  reset-gpios: true
  width-mm: true
  height-mm: true
  panel-timing: true

required:
  - compatible
  - reg
  - width-mm
  - height-mm
  - panel-timing

additionalProperties: false

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>

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

        panel@0 {
            compatible = "syna,td4300-panel";
            reg = <0>;

            vio-supply = <&panel_vio_reg>;
            vsn-supply = <&panel_vsn_reg>;
            vsp-supply = <&panel_vsp_reg>;

            backlight-gpios = <&gpd3 5 GPIO_ACTIVE_LOW>;
            reset-gpios = <&gpd3 4 GPIO_ACTIVE_LOW>;

            width-mm = <68>;
            height-mm = <121>;

            panel-timing {
                clock-frequency = <144389520>;

                hactive = <1080>;
                hsync-len = <4>;
                hfront-porch = <120>;
                hback-porch = <32>;

                vactive = <1920>;
                vsync-len = <2>;
                vfront-porch = <21>;
                vback-porch = <4>;
            };
        };
    };

...
