# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/display/panel/kingdisplay,kd035g6-54nt.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: King Display KD035G6-54NT 3.5" (320x240 pixels) 24-bit TFT LCD panel

description: |
  The panel must obey the rules for a SPI slave device as specified in
  spi/spi-controller.yaml

maintainers:
  - Paul Cercueil <paul@crapouillou.net>

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

properties:
  compatible:
    const: kingdisplay,kd035g6-54nt

  backlight: true
  port: true
  power-supply: true
  reg: true
  reset-gpios: true

required:
  - compatible
  - power-supply
  - reset-gpios

unevaluatedProperties: false

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

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

        panel@0 {
            compatible = "kingdisplay,kd035g6-54nt";
            reg = <0>;

            spi-max-frequency = <3125000>;
            spi-3wire;
            spi-cs-high;

            reset-gpios = <&gpe 2 GPIO_ACTIVE_LOW>;

            backlight = <&backlight>;
            power-supply = <&ldo6>;

            port {
                panel_input: endpoint {
                    remote-endpoint = <&panel_output>;
                };
            };
        };
    };

...
