dt-bindings: mmc: Convert sdhci-pxa to json-schema
Convert the sdhci-pxa binding to DT schema format using json-schema. At the same time, fix a couple of issues with the examples discovered by the validation tool -- a semicolon instead of a comma and wrong node names. Signed-off-by: Lubomir Rintel <lkundrak@v3.sk> Link: https://lore.kernel.org/r/20200521091356.2211020-2-lkundrak@v3.sk Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
This commit is contained in:
parent
9253d71011
commit
ae5c0585df
@ -1,50 +0,0 @@
|
|||||||
* Marvell sdhci-pxa v2/v3 controller
|
|
||||||
|
|
||||||
This file documents differences between the core properties in mmc.txt
|
|
||||||
and the properties used by the sdhci-pxav2 and sdhci-pxav3 drivers.
|
|
||||||
|
|
||||||
Required properties:
|
|
||||||
- compatible: Should be "mrvl,pxav2-mmc", "mrvl,pxav3-mmc" or
|
|
||||||
"marvell,armada-380-sdhci".
|
|
||||||
- reg:
|
|
||||||
* for "mrvl,pxav2-mmc" and "mrvl,pxav3-mmc", one register area for
|
|
||||||
the SDHCI registers.
|
|
||||||
|
|
||||||
* for "marvell,armada-380-sdhci", three register areas. The first
|
|
||||||
one for the SDHCI registers themselves, the second one for the
|
|
||||||
AXI/Mbus bridge registers of the SDHCI unit, the third one for the
|
|
||||||
SDIO3 Configuration register
|
|
||||||
- reg names: should be "sdhci", "mbus", "conf-sdio3". only mandatory
|
|
||||||
for "marvell,armada-380-sdhci"
|
|
||||||
- clocks: Array of clocks required for SDHCI; requires at least one for
|
|
||||||
I/O clock.
|
|
||||||
- clock-names: Array of names corresponding to clocks property; shall be
|
|
||||||
"io" for I/O clock and "core" for optional core clock.
|
|
||||||
|
|
||||||
Optional properties:
|
|
||||||
- mrvl,clk-delay-cycles: Specify a number of cycles to delay for tuning.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
sdhci@d4280800 {
|
|
||||||
compatible = "mrvl,pxav3-mmc";
|
|
||||||
reg = <0xd4280800 0x800>;
|
|
||||||
bus-width = <8>;
|
|
||||||
interrupts = <27>;
|
|
||||||
clocks = <&chip CLKID_SDIO1XIN>, <&chip CLKID_SDIO1>;
|
|
||||||
clock-names = "io", "core";
|
|
||||||
non-removable;
|
|
||||||
mrvl,clk-delay-cycles = <31>;
|
|
||||||
};
|
|
||||||
|
|
||||||
sdhci@d8000 {
|
|
||||||
compatible = "marvell,armada-380-sdhci";
|
|
||||||
reg-names = "sdhci", "mbus", "conf-sdio3";
|
|
||||||
reg = <0xd8000 0x1000>,
|
|
||||||
<0xdc000 0x100>;
|
|
||||||
<0x18454 0x4>;
|
|
||||||
interrupts = <0 25 0x4>;
|
|
||||||
clocks = <&gateclk 17>;
|
|
||||||
clock-names = "io";
|
|
||||||
mrvl,clk-delay-cycles = <0x1F>;
|
|
||||||
};
|
|
102
Documentation/devicetree/bindings/mmc/sdhci-pxa.yaml
Normal file
102
Documentation/devicetree/bindings/mmc/sdhci-pxa.yaml
Normal file
@ -0,0 +1,102 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0-only
|
||||||
|
%YAML 1.2
|
||||||
|
---
|
||||||
|
$id: http://devicetree.org/schemas/mmc/sdhci-pxa.yaml#
|
||||||
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||||
|
|
||||||
|
title: Marvell PXA SDHCI v2/v3 bindings
|
||||||
|
|
||||||
|
maintainers:
|
||||||
|
- Ulf Hansson <ulf.hansson@linaro.org>
|
||||||
|
|
||||||
|
allOf:
|
||||||
|
- $ref: mmc-controller.yaml#
|
||||||
|
- if:
|
||||||
|
properties:
|
||||||
|
compatible:
|
||||||
|
contains:
|
||||||
|
const: marvell,armada-380-sdhci
|
||||||
|
then:
|
||||||
|
properties:
|
||||||
|
regs:
|
||||||
|
minItems: 3
|
||||||
|
reg-names:
|
||||||
|
minItems: 3
|
||||||
|
required:
|
||||||
|
- reg-names
|
||||||
|
else:
|
||||||
|
properties:
|
||||||
|
regs:
|
||||||
|
maxItems: 1
|
||||||
|
reg-names:
|
||||||
|
maxItems: 1
|
||||||
|
|
||||||
|
properties:
|
||||||
|
compatible:
|
||||||
|
enum:
|
||||||
|
- mrvl,pxav2-mmc
|
||||||
|
- mrvl,pxav3-mmc
|
||||||
|
- marvell,armada-380-sdhci
|
||||||
|
|
||||||
|
reg:
|
||||||
|
minItems: 1
|
||||||
|
maxItems: 3
|
||||||
|
|
||||||
|
reg-names:
|
||||||
|
items:
|
||||||
|
- const: sdhci
|
||||||
|
- const: mbus
|
||||||
|
- const: conf-sdio3
|
||||||
|
|
||||||
|
interrupts:
|
||||||
|
maxItems: 1
|
||||||
|
|
||||||
|
clocks:
|
||||||
|
minItems: 1
|
||||||
|
maxItems: 2
|
||||||
|
|
||||||
|
clock-names:
|
||||||
|
minItems: 1
|
||||||
|
maxItems: 2
|
||||||
|
items:
|
||||||
|
- const: io
|
||||||
|
- const: core
|
||||||
|
|
||||||
|
mrvl,clk-delay-cycles:
|
||||||
|
description: Specify a number of cycles to delay for tuning.
|
||||||
|
$ref: /schemas/types.yaml#/definitions/uint32
|
||||||
|
|
||||||
|
required:
|
||||||
|
- compatible
|
||||||
|
- reg
|
||||||
|
- interrupts
|
||||||
|
- clocks
|
||||||
|
- clock-names
|
||||||
|
|
||||||
|
examples:
|
||||||
|
- |
|
||||||
|
#include <dt-bindings/clock/berlin2.h>
|
||||||
|
mmc@d4280800 {
|
||||||
|
compatible = "mrvl,pxav3-mmc";
|
||||||
|
reg = <0xd4280800 0x800>;
|
||||||
|
bus-width = <8>;
|
||||||
|
interrupts = <27>;
|
||||||
|
clocks = <&chip CLKID_SDIO1XIN>, <&chip CLKID_SDIO1>;
|
||||||
|
clock-names = "io", "core";
|
||||||
|
non-removable;
|
||||||
|
mrvl,clk-delay-cycles = <31>;
|
||||||
|
};
|
||||||
|
- |
|
||||||
|
mmc@d8000 {
|
||||||
|
compatible = "marvell,armada-380-sdhci";
|
||||||
|
reg-names = "sdhci", "mbus", "conf-sdio3";
|
||||||
|
reg = <0xd8000 0x1000>,
|
||||||
|
<0xdc000 0x100>,
|
||||||
|
<0x18454 0x4>;
|
||||||
|
interrupts = <0 25 0x4>;
|
||||||
|
clocks = <&gateclk 17>;
|
||||||
|
clock-names = "io";
|
||||||
|
mrvl,clk-delay-cycles = <0x1F>;
|
||||||
|
};
|
||||||
|
|
||||||
|
...
|
Loading…
Reference in New Issue
Block a user