]>
Commit | Line | Data |
---|---|---|
53633a89 TR |
1 | # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) |
2 | %YAML 1.2 | |
3 | --- | |
4 | $id: http://devicetree.org/schemas/mmc/brcm,sdhci-brcmstb.yaml# | |
5 | $schema: http://devicetree.org/meta-schemas/core.yaml# | |
6 | ||
7 | title: Broadcom BRCMSTB/BMIPS SDHCI Controller | |
8 | ||
9 | maintainers: | |
10 | - Al Cooper <alcooperx@gmail.com> | |
11 | - Florian Fainelli <f.fainelli@gmail.com> | |
12 | ||
13 | properties: | |
14 | compatible: | |
15 | oneOf: | |
16 | - items: | |
17 | - enum: | |
18 | - brcm,bcm7216-sdhci | |
19 | - const: brcm,bcm7445-sdhci | |
20 | - const: brcm,sdhci-brcmstb | |
21 | - items: | |
22 | - enum: | |
93743d24 | 23 | - brcm,bcm74165b0-sdhci |
53633a89 | 24 | - brcm,bcm7445-sdhci |
53633a89 TR |
25 | - brcm,bcm7425-sdhci |
26 | - const: brcm,sdhci-brcmstb | |
27 | ||
28 | reg: | |
29 | maxItems: 2 | |
30 | ||
31 | reg-names: | |
32 | items: | |
33 | - const: host | |
34 | - const: cfg | |
35 | ||
36 | interrupts: | |
37 | maxItems: 1 | |
38 | ||
39 | clocks: | |
40 | minItems: 1 | |
41 | items: | |
42 | - description: handle to core clock for the sdhci controller | |
43 | - description: handle to improved 150Mhz clock for sdhci controller (Optional clock) | |
44 | ||
45 | clock-names: | |
46 | minItems: 1 | |
47 | items: | |
48 | - const: sw_sdio | |
49 | - const: sdio_freq # Optional clock | |
50 | ||
51 | clock-frequency: | |
52 | description: | |
53 | Maximum operating frequency of sdio_freq sdhci controller clock | |
54 | $ref: /schemas/types.yaml#/definitions/uint32 | |
55 | minimum: 100000000 | |
56 | maximum: 150000000 | |
57 | ||
58 | sdhci,auto-cmd12: | |
59 | type: boolean | |
60 | description: Specifies that controller should use auto CMD12 | |
61 | ||
62 | allOf: | |
63 | - $ref: mmc-controller.yaml# | |
64 | - if: | |
65 | properties: | |
66 | clock-names: | |
67 | contains: | |
68 | const: sdio_freq | |
69 | ||
70 | then: | |
71 | required: | |
72 | - clock-frequency | |
73 | ||
74 | required: | |
75 | - compatible | |
76 | - reg | |
77 | - interrupts | |
78 | - clocks | |
79 | - clock-names | |
80 | ||
81 | unevaluatedProperties: false | |
82 | ||
83 | examples: | |
84 | - | | |
85 | mmc@84b0000 { | |
86 | compatible = "brcm,bcm7216-sdhci", | |
87 | "brcm,bcm7445-sdhci", | |
88 | "brcm,sdhci-brcmstb"; | |
89 | reg = <0x84b0000 0x260>, <0x84b0300 0x200>; | |
90 | reg-names = "host", "cfg"; | |
91 | sd-uhs-sdr50; | |
92 | sd-uhs-ddr50; | |
93 | sd-uhs-sdr104; | |
94 | sdhci,auto-cmd12; | |
95 | interrupts = <0x0 0x26 0x4>; | |
96 | clocks = <&scmi_clk 245>; | |
97 | clock-names = "sw_sdio"; | |
98 | }; | |
99 | ||
100 | mmc@84b1000 { | |
101 | compatible = "brcm,bcm7216-sdhci", | |
102 | "brcm,bcm7445-sdhci", | |
103 | "brcm,sdhci-brcmstb"; | |
104 | reg = <0x84b1000 0x260>, <0x84b1300 0x200>; | |
105 | reg-names = "host", "cfg"; | |
106 | mmc-ddr-1_8v; | |
107 | mmc-hs200-1_8v; | |
108 | mmc-hs400-1_8v; | |
109 | mmc-hs400-enhanced-strobe; | |
110 | supports-cqe; | |
111 | non-removable; | |
112 | bus-width = <0x8>; | |
113 | interrupts = <0x0 0x27 0x4>; | |
114 | clocks = <&scmi_clk 245>; | |
115 | clock-names = "sw_sdio"; | |
116 | }; |