Skip to content

Commit f3daa7e

Browse files
krzkUlf Hansson
authored andcommitted
dt-bindings: mmc: samsung,s3c6410-sdhci: convert to dtschema
Convert the Samsung SoC SDHCI Controller bindings to DT schema. The original bindings were quite old and incomplete, so add during conversion typical (already used) properties like reg, clocks, interrupts. The bindings were not precising the clocks, although the upstream DTS and Linux driver were expecting bus clocks in certain patterns in any order. Document the status quo even though it is not a proper approach for bindings. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20220626120342.38851-6-krzysztof.kozlowski@linaro.org Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
1 parent 2e586f8 commit f3daa7e

2 files changed

Lines changed: 81 additions & 32 deletions

File tree

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/mmc/samsung,s3c6410-sdhci.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Samsung SoC SDHCI Controller
8+
9+
maintainers:
10+
- Jaehoon Chung <jh80.chung@samsung.com>
11+
- Krzysztof Kozlowski <krzk@kernel.org>
12+
13+
properties:
14+
compatible:
15+
enum:
16+
- samsung,s3c6410-sdhci
17+
- samsung,exynos4210-sdhci
18+
19+
reg:
20+
maxItems: 1
21+
22+
clocks:
23+
minItems: 2
24+
maxItems: 5
25+
26+
clock-names:
27+
minItems: 2
28+
items:
29+
- const: hsmmc
30+
- pattern: "^mmc_busclk.[0-3]$"
31+
- pattern: "^mmc_busclk.[0-3]$"
32+
- pattern: "^mmc_busclk.[0-3]$"
33+
- pattern: "^mmc_busclk.[0-3]$"
34+
35+
interrupts:
36+
maxItems: 1
37+
38+
required:
39+
- compatible
40+
- reg
41+
- interrupts
42+
- clocks
43+
- clock-names
44+
45+
allOf:
46+
- $ref: mmc-controller.yaml#
47+
- if:
48+
properties:
49+
compatible:
50+
contains:
51+
enum:
52+
- samsung,exynos4210-sdhci
53+
then:
54+
properties:
55+
clocks:
56+
maxItems: 2
57+
clock-names:
58+
items:
59+
- const: hsmmc
60+
- const: mmc_busclk.2
61+
62+
unevaluatedProperties: false
63+
64+
examples:
65+
- |
66+
#include <dt-bindings/clock/exynos4.h>
67+
#include <dt-bindings/gpio/gpio.h>
68+
#include <dt-bindings/interrupt-controller/arm-gic.h>
69+
70+
mmc@12510000 {
71+
compatible = "samsung,exynos4210-sdhci";
72+
reg = <0x12510000 0x100>;
73+
interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
74+
clocks = <&clock CLK_SDMMC0>, <&clock CLK_SCLK_MMC0>;
75+
clock-names = "hsmmc", "mmc_busclk.2";
76+
bus-width = <4>;
77+
cd-gpios = <&gpx3 4 GPIO_ACTIVE_LOW>;
78+
pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sdhci2_cd>;
79+
pinctrl-names = "default";
80+
vmmc-supply = <&ldo21_reg>;
81+
};

Documentation/devicetree/bindings/mmc/samsung-sdhci.txt

Lines changed: 0 additions & 32 deletions
This file was deleted.

0 commit comments

Comments
 (0)