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

title: SHARP LS037V7DW01 TFT-LCD panel

description: |
  This panel can have zero to five GPIOs to configure to change configuration
  between QVGA and VGA mode and the scan direction. As these pins can be also
  configured with external pulls, all the GPIOs are considered optional with holes
  in the array.

maintainers:
  - Tony Lindgren <tony@atomide.com>

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

properties:
  compatible:
    const: sharp,ls037v7dw01

  label: true
  enable-gpios: true
  reset-gpios: true
  port: true
  power-supply: true

  mode-gpios:
    minItems: 1
    maxItems: 3
    description: |
      GPIO ordered MO, LR, and UD as specified in LS037V7DW01.pdf
      This panel can have zero to three GPIOs to configure to
      change configuration between QVGA and VGA mode and the
      scan direction. As these pins can be also configured
      with external pulls, all the GPIOs are considered
      optional with holes in the array.

required:
  - compatible
  - port

additionalProperties: false

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

    lcd0: display {
        compatible = "sharp,ls037v7dw01";
        power-supply = <&lcd_3v3>;
        enable-gpios = <&gpio5 24 GPIO_ACTIVE_HIGH>;    /* gpio152, lcd INI */
        reset-gpios = <&gpio5 27 GPIO_ACTIVE_HIGH>;     /* gpio155, lcd RESB */
        mode-gpios = <&gpio5 26 GPIO_ACTIVE_HIGH        /* gpio154, lcd MO */
                      &gpio1 2 GPIO_ACTIVE_HIGH         /* gpio2, lcd LR */
                      &gpio1 3 GPIO_ACTIVE_HIGH>;       /* gpio3, lcd UD */

        port {
            lcd_in: endpoint {
                remote-endpoint = <&dpi_out>;
            };
        };
    };

...