6fdc6e23a7
This doesn't yet do anything in the tools, but make it explicit so we can check either 'unevaluatedProperties' or 'additionalProperties' is present in schemas. 'unevaluatedProperties' is appropriate when including another schema (via '$ref') and all possible properties and/or child nodes are not explicitly listed in the schema with the '$ref'. This is in preparation to add a meta-schema to check for missing 'unevaluatedProperties' or 'additionalProperties'. This has been a constant source of review issues. Acked-by: Mark Brown <broonie@kernel.org> Acked-by: Wolfram Sang <wsa@kernel.org> Acked-by: Krzysztof Kozlowski <krzk@kernel.org> Acked-By: Vinod Koul <vkoul@kernel.org> Acked-by: Geert Uytterhoeven <geert+renesas@glider.be> Acked-by: Ulf Hansson <ulf.hansson@linaro.org> Acked-by: Guenter Roeck <linux@roeck-us.net> Acked-by: Mathieu Poirier <mathieu.poirier@linaro.org> Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Link: https://lore.kernel.org/r/20201005183830.486085-2-robh@kernel.org Signed-off-by: Rob Herring <robh@kernel.org>
104 lines
2.4 KiB
YAML
104 lines
2.4 KiB
YAML
# SPDX-License-Identifier: GPL-2.0
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/display/panel/tpo,tpg110.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: TPO TPG110 Panel
|
|
|
|
maintainers:
|
|
- Linus Walleij <linus.walleij@linaro.org>
|
|
- Thierry Reding <thierry.reding@gmail.com>
|
|
|
|
description: |+
|
|
This panel driver is a component that acts as an intermediary
|
|
between an RGB output and a variety of panels. The panel
|
|
driver is strapped up in electronics to the desired resolution
|
|
and other properties, and has a control interface over 3WIRE
|
|
SPI. By talking to the TPG110 over SPI, the strapped properties
|
|
can be discovered and the hardware is therefore mostly
|
|
self-describing.
|
|
|
|
+--------+
|
|
SPI -> | TPO | -> physical display
|
|
RGB -> | TPG110 |
|
|
+--------+
|
|
|
|
If some electrical strap or alternate resolution is desired,
|
|
this can be set up by taking software control of the display
|
|
over the SPI interface. The interface can also adjust
|
|
for properties of the display such as gamma correction and
|
|
certain electrical driving levels.
|
|
|
|
The TPG110 does not know the physical dimensions of the panel
|
|
connected, so this needs to be specified in the device tree.
|
|
|
|
It requires a GPIO line for control of its reset line.
|
|
|
|
The serial protocol has line names that resemble I2C but the
|
|
protocol is not I2C but 3WIRE SPI.
|
|
|
|
|
|
allOf:
|
|
- $ref: panel-common.yaml#
|
|
|
|
properties:
|
|
compatible:
|
|
oneOf:
|
|
- items:
|
|
- enum:
|
|
- ste,nomadik-nhk15-display
|
|
- const: tpo,tpg110
|
|
- const: tpo,tpg110
|
|
|
|
reg: true
|
|
|
|
grestb-gpios:
|
|
maxItems: 1
|
|
description: panel reset GPIO
|
|
|
|
spi-3wire: true
|
|
|
|
spi-max-frequency:
|
|
const: 3000000
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- grestb-gpios
|
|
- width-mm
|
|
- height-mm
|
|
- spi-3wire
|
|
- spi-max-frequency
|
|
- port
|
|
|
|
unevaluatedProperties: false
|
|
|
|
examples:
|
|
- |+
|
|
spi {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
panel: display@0 {
|
|
compatible = "tpo,tpg110";
|
|
reg = <0>;
|
|
spi-3wire;
|
|
/* 320 ns min period ~= 3 MHz */
|
|
spi-max-frequency = <3000000>;
|
|
/* Width and height from data sheet */
|
|
width-mm = <116>;
|
|
height-mm = <87>;
|
|
grestb-gpios = <&foo_gpio 5 1>;
|
|
backlight = <&bl>;
|
|
|
|
port {
|
|
nomadik_clcd_panel: endpoint {
|
|
remote-endpoint = <&foo>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
...
|