1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 # Copyright (C) 2020 Texas Instruments Incorporated - http://www.ti.com/
5 $id: http://devicetree.org/schemas/mmc/sdhci-am654.yaml#
6 $schema: http://devicetree.org/meta-schemas/core.yaml#
8 title: TI AM654 MMC Controller
14 - $ref: sdhci-common.yaml#
27 - const: ti,j7200-sdhci-8bit
28 - const: ti,j721e-sdhci-8bit
30 - const: ti,j7200-sdhci-4bit
31 - const: ti,j721e-sdhci-4bit
45 description: Handles to input clocks
56 # PHY output tap delays:
57 # Used to delay the data valid window and align it to the sampling clock.
58 # Binding needs to be provided for each supported speed mode otherwise the
59 # corresponding mode will be disabled.
61 ti,otap-del-sel-legacy:
62 description: Output tap delay for SD/MMC legacy timing
63 $ref: /schemas/types.yaml#/definitions/uint32
67 ti,otap-del-sel-mmc-hs:
68 description: Output tap delay for MMC high speed timing
69 $ref: /schemas/types.yaml#/definitions/uint32
73 ti,otap-del-sel-sd-hs:
74 description: Output tap delay for SD high speed timing
75 $ref: /schemas/types.yaml#/definitions/uint32
79 ti,otap-del-sel-sdr12:
80 description: Output tap delay for SD UHS SDR12 timing
81 $ref: /schemas/types.yaml#/definitions/uint32
85 ti,otap-del-sel-sdr25:
86 description: Output tap delay for SD UHS SDR25 timing
87 $ref: /schemas/types.yaml#/definitions/uint32
91 ti,otap-del-sel-sdr50:
92 description: Output tap delay for SD UHS SDR50 timing
93 $ref: /schemas/types.yaml#/definitions/uint32
97 ti,otap-del-sel-sdr104:
98 description: Output tap delay for SD UHS SDR104 timing
99 $ref: /schemas/types.yaml#/definitions/uint32
103 ti,otap-del-sel-ddr50:
104 description: Output tap delay for SD UHS DDR50 timing
105 $ref: /schemas/types.yaml#/definitions/uint32
109 ti,otap-del-sel-ddr52:
110 description: Output tap delay for eMMC DDR52 timing
111 $ref: /schemas/types.yaml#/definitions/uint32
115 ti,otap-del-sel-hs200:
116 description: Output tap delay for eMMC HS200 timing
117 $ref: /schemas/types.yaml#/definitions/uint32
121 ti,otap-del-sel-hs400:
122 description: Output tap delay for eMMC HS400 timing
123 $ref: /schemas/types.yaml#/definitions/uint32
127 # PHY input tap delays:
128 # Used to delay the data valid window and align it to the sampling clock for
129 # modes that don't support tuning
131 ti,itap-del-sel-legacy:
132 description: Input tap delay for SD/MMC legacy timing
133 $ref: /schemas/types.yaml#/definitions/uint32
137 ti,itap-del-sel-mmc-hs:
138 description: Input tap delay for MMC high speed timing
139 $ref: /schemas/types.yaml#/definitions/uint32
143 ti,itap-del-sel-sd-hs:
144 description: Input tap delay for SD high speed timing
145 $ref: /schemas/types.yaml#/definitions/uint32
149 ti,itap-del-sel-sdr12:
150 description: Input tap delay for SD UHS SDR12 timing
151 $ref: /schemas/types.yaml#/definitions/uint32
155 ti,itap-del-sel-sdr25:
156 description: Input tap delay for SD UHS SDR25 timing
157 $ref: /schemas/types.yaml#/definitions/uint32
161 ti,itap-del-sel-ddr50:
162 description: Input tap delay for MMC DDR50 timing
163 $ref: /schemas/types.yaml#/definitions/uint32
167 ti,itap-del-sel-ddr52:
168 description: Input tap delay for MMC DDR52 timing
169 $ref: /schemas/types.yaml#/definitions/uint32
174 description: DLL trim select
175 $ref: /schemas/types.yaml#/definitions/uint32
179 ti,driver-strength-ohm:
180 description: DLL drive strength in ohms
181 $ref: /schemas/types.yaml#/definitions/uint32
190 description: strobe select delay for HS400 speed mode.
191 $ref: /schemas/types.yaml#/definitions/uint32
194 description: Clock Delay Buffer Select
195 $ref: /schemas/types.yaml#/definitions/uint32
197 ti,fails-without-test-cd:
198 $ref: /schemas/types.yaml#/definitions/flag
200 When present, indicates that the CD line is not connected
201 and the controller is required to be forced into Test mode
202 to set the TESTCD bit.
210 - ti,otap-del-sel-legacy
212 unevaluatedProperties: false
216 #include <dt-bindings/interrupt-controller/irq.h>
217 #include <dt-bindings/interrupt-controller/arm-gic.h>
220 #address-cells = <2>;
224 compatible = "ti,am654-sdhci-5.1";
225 reg = <0x0 0x4f80000 0x0 0x260>, <0x0 0x4f90000 0x0 0x134>;
226 power-domains = <&k3_pds 47>;
227 clocks = <&k3_clks 47 0>, <&k3_clks 47 1>;
228 clock-names = "clk_ahb", "clk_xin";
229 interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>;
230 sdhci-caps-mask = <0x80000007 0x0>;
232 ti,otap-del-sel-legacy = <0x0>;
233 ti,otap-del-sel-mmc-hs = <0x0>;
234 ti,otap-del-sel-ddr52 = <0x5>;
235 ti,otap-del-sel-hs200 = <0x5>;
236 ti,otap-del-sel-hs400 = <0x0>;
237 ti,itap-del-sel-legacy = <0x10>;
238 ti,itap-del-sel-mmc-hs = <0xa>;
239 ti,itap-del-sel-ddr52 = <0x3>;