File Index
Files and directories
Sign in
FILE

hit,hd44780.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/auxdisplay/hit,hd44780.yaml YAML
  1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2%YAML 1.2
  3---
  4$id: http://devicetree.org/schemas/auxdisplay/hit,hd44780.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: Hitachi HD44780 Character LCD Controller
  8
  9maintainers:
 10  - Geert Uytterhoeven <geert@linux-m68k.org>
 11
 12description:
 13  The Hitachi HD44780 Character LCD Controller is commonly used on character
 14  LCDs that can display one or more lines of text. It exposes an M6800 bus
 15  interface, which can be used in either 4-bit or 8-bit mode. By using a
 16  GPIO expander it is possible to use the driver with one of the popular I2C
 17  expander boards based on the PCF8574 available for these displays. For
 18  an example see below.
 19
 20properties:
 21  compatible:
 22    const: hit,hd44780
 23
 24  data-gpios:
 25    description:
 26      GPIO pins connected to the data signal lines DB0-DB7 (8-bit mode) or
 27      DB4-DB7 (4-bit mode) of the LCD Controller's bus interface.
 28    oneOf:
 29      - maxItems: 4
 30      - maxItems: 8
 31
 32  enable-gpios:
 33    description:
 34      GPIO pin connected to the "E" (Enable) signal line of the LCD
 35      Controller's bus interface.
 36    maxItems: 1
 37
 38  rs-gpios:
 39    description:
 40      GPIO pin connected to the "RS" (Register Select) signal line of the LCD
 41      Controller's bus interface.
 42    maxItems: 1
 43
 44  rw-gpios:
 45    description:
 46      GPIO pin connected to the "RW" (Read/Write) signal line of the LCD
 47      Controller's bus interface.
 48    maxItems: 1
 49
 50  backlight-gpios:
 51    description: GPIO pin used for enabling the LCD's backlight.
 52    maxItems: 1
 53
 54  display-height-chars:
 55    description: Height of the display, in character cells,
 56    $ref: /schemas/types.yaml#/definitions/uint32
 57    minimum: 1
 58    maximum: 4
 59
 60  display-width-chars:
 61    description: Width of the display, in character cells.
 62    $ref: /schemas/types.yaml#/definitions/uint32
 63    minimum: 1
 64    maximum: 64
 65
 66  internal-buffer-width:
 67    description:
 68      Internal buffer width (default is 40 for displays with 1 or 2 lines, and
 69      display-width-chars for displays with more than 2 lines).
 70    $ref: /schemas/types.yaml#/definitions/uint32
 71    minimum: 1
 72    maximum: 64
 73
 74required:
 75  - compatible
 76  - data-gpios
 77  - enable-gpios
 78  - rs-gpios
 79  - display-height-chars
 80  - display-width-chars
 81
 82additionalProperties: false
 83
 84examples:
 85  - |
 86    #include <dt-bindings/gpio/gpio.h>
 87    display-controller {
 88        compatible = "hit,hd44780";
 89
 90        data-gpios = <&hc595 0 GPIO_ACTIVE_HIGH>,
 91                     <&hc595 1 GPIO_ACTIVE_HIGH>,
 92                     <&hc595 2 GPIO_ACTIVE_HIGH>,
 93                     <&hc595 3 GPIO_ACTIVE_HIGH>;
 94        enable-gpios = <&hc595 4 GPIO_ACTIVE_HIGH>;
 95        rs-gpios = <&hc595 5 GPIO_ACTIVE_HIGH>;
 96
 97        display-height-chars = <2>;
 98        display-width-chars = <16>;
 99    };
100
101  - |
102    #include <dt-bindings/gpio/gpio.h>
103    i2c {
104        #address-cells = <1>;
105        #size-cells = <0>;
106
107        pcf8574: gpio-expander@27 {
108            compatible = "nxp,pcf8574";
109            reg = <0x27>;
110            gpio-controller;
111            #gpio-cells = <2>;
112        };
113    };
114
115    display-controller {
116        compatible = "hit,hd44780";
117        display-height-chars = <2>;
118        display-width-chars = <16>;
119        data-gpios = <&pcf8574 4 GPIO_ACTIVE_HIGH>,
120                     <&pcf8574 5 GPIO_ACTIVE_HIGH>,
121                     <&pcf8574 6 GPIO_ACTIVE_HIGH>,
122                     <&pcf8574 7 GPIO_ACTIVE_HIGH>;
123        enable-gpios = <&pcf8574 2 GPIO_ACTIVE_HIGH>;
124        rs-gpios = <&pcf8574 0 GPIO_ACTIVE_HIGH>;
125        rw-gpios = <&pcf8574 1 GPIO_ACTIVE_HIGH>;
126        backlight-gpios = <&pcf8574 3 GPIO_ACTIVE_HIGH>;
127    };
~/ Read-only file preview.