drivers: mipi_dbi: add SPI based MIPI DBI mode C driver

SPI controllers can easily implement MIPI DBI mode C, with the help of
GPIO pins for the reset and command/data signals. Introduce a MIPI DBI
compliant SPI driver, which emulates MIPI DBI mode C (SPI 3 and 4 wire).

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
This commit is contained in:
Daniel DeGrasse 2023-10-27 22:42:32 +00:00 committed by Fabio Baltieri
commit 571de47e16
5 changed files with 374 additions and 0 deletions

View file

@ -0,0 +1,35 @@
# Copyright 2023 NXP
# SPDX-License-Identifier: Apache-2.0
description: |
MIPI-DBI Mode C compatible SPI controller. This driver emulates MIPI DBI
mode C using a SPI controller and GPIO pins
compatible: "zephyr,mipi-dbi-spi"
include: ["mipi-dbi-controller.yaml", "pinctrl-device.yaml"]
properties:
spi-dev:
type: phandle
required: true
description: |
SPI device to use for data transfers with MIPI DBI commands. This SPI
device should be connected to the MIPI DBI display.
dc-gpios:
type: phandle-array
description: |
Data/command gpio pin. Required when using 4 wire SPI mode (Mode C1).
Set to low when sending a command, or high when sending data.
reset-gpios:
type: phandle-array
description: |
Reset GPIO pin. Used to reset the display during initialization.
Active low pin.
write-only:
type: boolean
description: |
Controller is not readable, IE only DOUT pin is connected on the SPI
interface.