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

title: Hitachi HD44780 Character LCD Controller

maintainers:
  - Geert Uytterhoeven <geert@linux-m68k.org>

description:
  The Hitachi HD44780 Character LCD Controller is commonly used on character
  LCDs that can display one or more lines of text. It exposes an M6800 bus
  interface, which can be used in either 4-bit or 8-bit mode. By using a
  GPIO expander it is possible to use the driver with one of the popular I2C
  expander boards based on the PCF8574 available for these displays. For
  an example see below.

properties:
  compatible:
    const: hit,hd44780

  data-gpios:
    description:
      GPIO pins connected to the data signal lines DB0-DB7 (8-bit mode) or
      DB4-DB7 (4-bit mode) of the LCD Controller's bus interface.
    oneOf:
      - maxItems: 4
      - maxItems: 8

  enable-gpios:
    description:
      GPIO pin connected to the "E" (Enable) signal line of the LCD
      Controller's bus interface.
    maxItems: 1

  rs-gpios:
    description:
      GPIO pin connected to the "RS" (Register Select) signal line of the LCD
      Controller's bus interface.
    maxItems: 1

  rw-gpios:
    description:
      GPIO pin connected to the "RW" (Read/Write) signal line of the LCD
      Controller's bus interface.
    maxItems: 1

  backlight-gpios:
    description: GPIO pin used for enabling the LCD's backlight.
    maxItems: 1

  display-height-chars:
    description: Height of the display, in character cells,
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 1
    maximum: 4

  display-width-chars:
    description: Width of the display, in character cells.
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 1
    maximum: 64

  internal-buffer-width:
    description:
      Internal buffer width (default is 40 for displays with 1 or 2 lines, and
      display-width-chars for displays with more than 2 lines).
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 1
    maximum: 64

required:
  - compatible
  - data-gpios
  - enable-gpios
  - rs-gpios
  - display-height-chars
  - display-width-chars

additionalProperties: false

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>
    display-controller {
        compatible = "hit,hd44780";

        data-gpios = <&hc595 0 GPIO_ACTIVE_HIGH>,
                     <&hc595 1 GPIO_ACTIVE_HIGH>,
                     <&hc595 2 GPIO_ACTIVE_HIGH>,
                     <&hc595 3 GPIO_ACTIVE_HIGH>;
        enable-gpios = <&hc595 4 GPIO_ACTIVE_HIGH>;
        rs-gpios = <&hc595 5 GPIO_ACTIVE_HIGH>;

        display-height-chars = <2>;
        display-width-chars = <16>;
    };

  - |
    #include <dt-bindings/gpio/gpio.h>
    i2c {
        #address-cells = <1>;
        #size-cells = <0>;

        pcf8574: gpio-expander@27 {
            compatible = "nxp,pcf8574";
            reg = <0x27>;
            gpio-controller;
            #gpio-cells = <2>;
        };
    };

    display-controller {
        compatible = "hit,hd44780";
        display-height-chars = <2>;
        display-width-chars = <16>;
        data-gpios = <&pcf8574 4 GPIO_ACTIVE_HIGH>,
                     <&pcf8574 5 GPIO_ACTIVE_HIGH>,
                     <&pcf8574 6 GPIO_ACTIVE_HIGH>,
                     <&pcf8574 7 GPIO_ACTIVE_HIGH>;
        enable-gpios = <&pcf8574 2 GPIO_ACTIVE_HIGH>;
        rs-gpios = <&pcf8574 0 GPIO_ACTIVE_HIGH>;
        rw-gpios = <&pcf8574 1 GPIO_ACTIVE_HIGH>;
        backlight-gpios = <&pcf8574 3 GPIO_ACTIVE_HIGH>;
    };
