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>
110 lines
2.6 KiB
YAML
110 lines
2.6 KiB
YAML
# SPDX-License-Identifier: GPL-2.0
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/spi/spi-rockchip.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Rockchip SPI Controller
|
|
|
|
description:
|
|
The Rockchip SPI controller is used to interface with various devices such
|
|
as flash and display controllers using the SPI communication interface.
|
|
|
|
allOf:
|
|
- $ref: "spi-controller.yaml#"
|
|
|
|
maintainers:
|
|
- Heiko Stuebner <heiko@sntech.de>
|
|
|
|
# Everything else is described in the common file
|
|
properties:
|
|
compatible:
|
|
oneOf:
|
|
- const: rockchip,rk3036-spi
|
|
- const: rockchip,rk3066-spi
|
|
- const: rockchip,rk3228-spi
|
|
- const: rockchip,rv1108-spi
|
|
- items:
|
|
- enum:
|
|
- rockchip,px30-spi
|
|
- rockchip,rk3188-spi
|
|
- rockchip,rk3288-spi
|
|
- rockchip,rk3308-spi
|
|
- rockchip,rk3328-spi
|
|
- rockchip,rk3368-spi
|
|
- rockchip,rk3399-spi
|
|
- const: rockchip,rk3066-spi
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
interrupts:
|
|
maxItems: 1
|
|
|
|
clocks:
|
|
items:
|
|
- description: transfer-clock
|
|
- description: peripheral clock
|
|
|
|
clock-names:
|
|
items:
|
|
- const: spiclk
|
|
- const: apb_pclk
|
|
|
|
dmas:
|
|
items:
|
|
- description: TX DMA Channel
|
|
- description: RX DMA Channel
|
|
|
|
dma-names:
|
|
items:
|
|
- const: tx
|
|
- const: rx
|
|
|
|
rx-sample-delay-ns:
|
|
default: 0
|
|
description:
|
|
Nano seconds to delay after the SCLK edge before sampling Rx data
|
|
(may need to be fine tuned for high capacitance lines).
|
|
If not specified 0 will be used.
|
|
|
|
pinctrl-names:
|
|
minItems: 1
|
|
items:
|
|
- const: default
|
|
- const: sleep
|
|
description:
|
|
Names for the pin configuration(s); may be "default" or "sleep",
|
|
where the "sleep" configuration may describe the state
|
|
the pins should be in during system suspend.
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- interrupts
|
|
- clocks
|
|
- clock-names
|
|
|
|
unevaluatedProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/clock/rk3188-cru-common.h>
|
|
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
|
#include <dt-bindings/interrupt-controller/irq.h>
|
|
spi0: spi@ff110000 {
|
|
compatible = "rockchip,rk3066-spi";
|
|
reg = <0xff110000 0x1000>;
|
|
interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
|
|
clocks = <&cru SCLK_SPI0>, <&cru PCLK_SPI0>;
|
|
clock-names = "spiclk", "apb_pclk";
|
|
dmas = <&pdma1 11>, <&pdma1 12>;
|
|
dma-names = "tx", "rx";
|
|
pinctrl-0 = <&spi1_pins>;
|
|
pinctrl-1 = <&spi1_sleep>;
|
|
pinctrl-names = "default", "sleep";
|
|
rx-sample-delay-ns = <10>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
};
|