[PATCH v4 1/3] dt-bindings: display: add bindings for MIPI DBI compatible SPI panels
Noralf Trønnes
noralf at tronnes.org
Mon Feb 21 11:31:08 UTC 2022
Den 18.02.2022 16.11, skrev Noralf Trønnes:
> Add binding for MIPI DBI compatible SPI panels.
>
> v4:
> - There should only be two compatible (Maxime)
> - s/panel-dbi-spi/panel-mipi-dbi-spi/in compatible
>
> v3:
> - Move properties to Device Tree (Maxime)
> - Use contains for compatible (Maxime)
> - Add backlight property to example
> - Flesh out description
>
> v2:
> - Fix path for panel-common.yaml
> - Use unevaluatedProperties
> - Drop properties which are in the allOf section
> - Drop model property (Rob)
>
> Acked-by: Maxime Ripard <maxime at cerno.tech>
> Signed-off-by: Noralf Trønnes <noralf at tronnes.org>
> ---
> .../display/panel/panel-mipi-dbi-spi.yaml | 125 ++++++++++++++++++
> 1 file changed, 125 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/display/panel/panel-mipi-dbi-spi.yaml
>
> diff --git a/Documentation/devicetree/bindings/display/panel/panel-mipi-dbi-spi.yaml b/Documentation/devicetree/bindings/display/panel/panel-mipi-dbi-spi.yaml
> new file mode 100644
> index 000000000000..748c09113168
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/panel/panel-mipi-dbi-spi.yaml
> +allOf:
> + - $ref: panel-common.yaml#
> + - $ref: /schemas/spi/spi-peripheral-props.yaml#
> +
> +properties:
> + compatible:
> + items:
> + - {} # Panel Specific Compatible
> + - const: panel-mipi-dbi-spi
> +
Rob's bot uses a -m flag I didn't use, and with that the compatible fails:
$ make DT_CHECKER_FLAGS=-m dt_binding_check
DT_SCHEMA_FILES=Documentation/devicetree/bindings/display/panel/panel-mipi-dbi-spi.yaml
CHKDT Documentation/devicetree/bindings/processed-schema-examples.json
SCHEMA Documentation/devicetree/bindings/processed-schema-examples.json
DTEX
Documentation/devicetree/bindings/display/panel/panel-mipi-dbi-spi.example.dts
DTC
Documentation/devicetree/bindings/display/panel/panel-mipi-dbi-spi.example.dt.yaml
CHECK
Documentation/devicetree/bindings/display/panel/panel-mipi-dbi-spi.example.dt.yaml
Documentation/devicetree/bindings/display/panel/panel-mipi-dbi-spi.example.dt.yaml:0:0:
/example-0/spi/display at 0: failed to match any schema with compatible:
['sainsmart18', 'panel-mipi-dbi-spi']
How can I write the compatible property to make the checker happy?
Noralf.
> + write-only:
> + type: boolean
> + description:
> + Controller is not readable (ie. MISO is not wired up).
> +
> + dc-gpios:
> + maxItems: 1
> + description: |
> + Controller data/command selection (D/CX) in 4-line SPI mode.
> + If not set, the controller is in 3-line SPI mode.
> +
> +required:
> + - compatible
> + - reg
> + - panel-timing
> +
> +unevaluatedProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/gpio/gpio.h>
> +
> + spi {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + display at 0{
> + compatible = "sainsmart18", "panel-mipi-dbi-spi";
> + reg = <0>;
> + spi-max-frequency = <40000000>;
> +
> + dc-gpios = <&gpio 24 GPIO_ACTIVE_HIGH>;
> + reset-gpios = <&gpio 25 GPIO_ACTIVE_HIGH>;
> + write-only;
> +
> + backlight = <&backlight>;
> +
> + width-mm = <35>;
> + height-mm = <28>;
> +
> + panel-timing {
> + hactive = <160>;
> + vactive = <128>;
> + hback-porch = <0>;
> + vback-porch = <0>;
> +
> + clock-frequency = <0>;
> + hfront-porch = <0>;
> + hsync-len = <0>;
> + vfront-porch = <0>;
> + vsync-len = <0>;
> + };
> + };
> + };
> +
> +...
More information about the dri-devel
mailing list