2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2025-01-10 06:34:17 +08:00
linux-next/Documentation/devicetree/bindings/mmc/socionext,uniphier-sd.yaml
Rob Herring 6fdc6e23a7 dt-bindings: Add missing 'unevaluatedProperties'
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>
2020-10-07 11:26:41 -05:00

102 lines
2.1 KiB
YAML

# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/mmc/socionext,uniphier-sd.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: UniPhier SD/SDIO/eMMC controller
maintainers:
- Masahiro Yamada <yamada.masahiro@socionext.com>
properties:
compatible:
description: version 2.91, 3.1, 3.1.1, respectively
enum:
- socionext,uniphier-sd-v2.91
- socionext,uniphier-sd-v3.1
- socionext,uniphier-sd-v3.1.1
reg:
maxItems: 1
interrupts:
maxItems: 1
clocks:
maxItems: 1
reset-names:
description: |
There are three reset signals at maximum
host: mandatory for all variants
bridge: exist only for version 2.91
hw: optional. exist if eMMC hw reset line is available
oneOf:
- const: host
- items:
- const: host
- const: bridge
- items:
- const: host
- const: hw
- items:
- const: host
- const: bridge
- const: hw
resets:
minItems: 1
maxItems: 3
allOf:
- $ref: mmc-controller.yaml
- if:
properties:
compatible:
contains:
const: socionext,uniphier-sd-v2.91
then:
properties:
reset-names:
contains:
const: bridge
else:
properties:
reset-names:
not:
contains:
const: bridge
required:
- compatible
- reg
- interrupts
- clocks
- reset-names
- resets
unevaluatedProperties: false
examples:
- |
sd: mmc@5a400000 {
compatible = "socionext,uniphier-sd-v2.91";
reg = <0x5a400000 0x200>;
interrupts = <0 76 4>;
pinctrl-names = "default", "uhs";
pinctrl-0 = <&pinctrl_sd>;
pinctrl-1 = <&pinctrl_sd_uhs>;
clocks = <&mio_clk 0>;
reset-names = "host", "bridge";
resets = <&mio_rst 0>, <&mio_rst 3>;
dma-names = "rx-tx";
dmas = <&dmac 4>;
bus-width = <4>;
cap-sd-highspeed;
sd-uhs-sdr12;
sd-uhs-sdr25;
sd-uhs-sdr50;
};