# Copyright (c) 2020, Kim Bøndergaard <kim@fam-boendergaard.dk>
# SPDX-License-Identifier: Apache-2.0

description: ST7735R 160x128 display controller

compatible: "sitronix,st7735r"

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

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

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

    cmd-data-gpios:
      type: phandle-array
      required: true
      description: D/CX pin.

        The D/CX pin of ST7735R is active low (transmission command byte).
        If connected directly the MCU pin should be configured
        as active low.

    x-offset:
      type: int
      required: true
      description: The column offset in pixels of the LCD to the controller memory

    y-offset:
      type: int
      required: true
      description: The row offset in pixels of the LCD to the controller memory

    madctl:
      type: int
      default: 0x00
      description: Memory Data Access Control

    colmod:
      type: int
      default: 0x06
      description: Interface Pixel Format

    pwctr1:
      type: uint8-array
      default: [0xb4, 0x14, 0x04]
      description: Power Control 1 Parameter

    pwctr2:
      type: uint8-array
      default: [0xc0]
      description: Power Control 2 Parameter

    pwctr3:
      type: uint8-array
      default: [0x0a, 0x00]
      description: Power Control 3 Parameter

    pwctr4:
      type: uint8-array
      default: [0x8a, 0x26]
      description: Power Control 4 Parameter

    pwctr5:
      type: uint8-array
      default: [0x8a, 0xee]
      description: Power Control 5 Parameter

    gamctrp1:
      type: uint8-array
      required: true
      description: Positive Voltage Gamma Control Parameter

    gamctrn1:
      type: uint8-array
      required: true
      description: Negative Voltage Gamma Control Parameter

    frmctr1:
      type: uint8-array
      default: [0x05, 0x3a, 0x3a]
      description: Frame rate control (normal mode / full colors)

    frmctr2:
      type: uint8-array
      default: [0x05, 0x3a, 0x3a]
      description: Frame rate control (idle mode / 8 colors)

    frmctr3:
      type: uint8-array
      default: [0x05, 0x3a, 0x3a, 0x05, 0x3a, 0x3a]
      description: Frame rate control (partial mode / full colors)

    caset:
      type: uint8-array
      default: [0x00, 0x00, 0x00, 0x7f]
      description: Column Address Set

    raset:
      type: uint8-array
      default: [0x00, 0x00, 0x00, 0x9f]
      description: Row Address Set

    vmctr1:
      type: int
      default: 0x0a
      description: VCOM Control 1

    invctr:
      type: int
      default: 0x07
      description: |
        Display Inversion Control
        Set dot inversion or line inversion for each normal/idle/partial mode.

    inversion-on:
      type: boolean
      description: |
        Enable Display Inversion
        Make a drawing with the inverted color of the frame memory.
