# Copyright (c) 2020, Phytec Messtechnik GmbH
# SPDX-License-Identifier: Apache-2.0

description: GD7965 EPD display controller

compatible: "gooddisplay,gd7965"

include: [spi-device.yaml, display-controller.yaml]

properties:
    reset-gpios:
      type: phandle-array
      required: true
      description: RESET pin.

        The RESET pin of GD7965 is active low.
        If connected directly the MCU pin should be configured
        as active low.

    dc-gpios:
      type: phandle-array
      required: true
      description: DC pin.

        The DC pin of GD7965 is active low (transmission command byte).
        If connected directly the MCU pin should be configured
        as active low.

    busy-gpios:
      type: phandle-array
      required: true
      description: BUSY pin.

        The BUSY pin of GD7965 is active low.
        If connected directly the MCU pin should be configured
        as active low.

    pwr:
      type: uint8-array
      required: true
      description: Power Setting (PWR) values

    softstart:
      type: uint8-array
      required: true
      description: Booster Soft Start (BTST) values

    cdi:
      type: int
      required: true
      description: VCOM and data interval value

    tcon:
      type: int
      required: true
      description: TCON setting value
