18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 28c2ecf20Sopenharmony_ci%YAML 1.2 38c2ecf20Sopenharmony_ci--- 48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/mmc/cdns,sdhci.yaml# 58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_cititle: Cadence SD/SDIO/eMMC Host Controller (SD4HC) 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_cimaintainers: 108c2ecf20Sopenharmony_ci - Masahiro Yamada <yamada.masahiro@socionext.com> 118c2ecf20Sopenharmony_ci - Piotr Sroka <piotrs@cadence.com> 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ciallOf: 148c2ecf20Sopenharmony_ci - $ref: mmc-controller.yaml 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_ciproperties: 178c2ecf20Sopenharmony_ci compatible: 188c2ecf20Sopenharmony_ci items: 198c2ecf20Sopenharmony_ci - enum: 208c2ecf20Sopenharmony_ci - socionext,uniphier-sd4hc 218c2ecf20Sopenharmony_ci - const: cdns,sd4hc 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_ci reg: 248c2ecf20Sopenharmony_ci maxItems: 1 258c2ecf20Sopenharmony_ci 268c2ecf20Sopenharmony_ci interrupts: 278c2ecf20Sopenharmony_ci maxItems: 1 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ci clocks: 308c2ecf20Sopenharmony_ci maxItems: 1 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ci # PHY DLL input delays: 338c2ecf20Sopenharmony_ci # They are used to delay the data valid window, and align the window to 348c2ecf20Sopenharmony_ci # sampling clock. The delay starts from 5ns (for delay parameter equal to 0) 358c2ecf20Sopenharmony_ci # and it is increased by 2.5ns in each step. 368c2ecf20Sopenharmony_ci 378c2ecf20Sopenharmony_ci cdns,phy-input-delay-sd-highspeed: 388c2ecf20Sopenharmony_ci description: Value of the delay in the input path for SD high-speed timing 398c2ecf20Sopenharmony_ci $ref: "/schemas/types.yaml#/definitions/uint32" 408c2ecf20Sopenharmony_ci minimum: 0 418c2ecf20Sopenharmony_ci maximum: 0x1f 428c2ecf20Sopenharmony_ci 438c2ecf20Sopenharmony_ci cdns,phy-input-delay-legacy: 448c2ecf20Sopenharmony_ci description: Value of the delay in the input path for legacy timing 458c2ecf20Sopenharmony_ci $ref: "/schemas/types.yaml#/definitions/uint32" 468c2ecf20Sopenharmony_ci minimum: 0 478c2ecf20Sopenharmony_ci maximum: 0x1f 488c2ecf20Sopenharmony_ci 498c2ecf20Sopenharmony_ci cdns,phy-input-delay-sd-uhs-sdr12: 508c2ecf20Sopenharmony_ci description: Value of the delay in the input path for SD UHS SDR12 timing 518c2ecf20Sopenharmony_ci $ref: "/schemas/types.yaml#/definitions/uint32" 528c2ecf20Sopenharmony_ci minimum: 0 538c2ecf20Sopenharmony_ci maximum: 0x1f 548c2ecf20Sopenharmony_ci 558c2ecf20Sopenharmony_ci cdns,phy-input-delay-sd-uhs-sdr25: 568c2ecf20Sopenharmony_ci description: Value of the delay in the input path for SD UHS SDR25 timing 578c2ecf20Sopenharmony_ci $ref: "/schemas/types.yaml#/definitions/uint32" 588c2ecf20Sopenharmony_ci minimum: 0 598c2ecf20Sopenharmony_ci maximum: 0x1f 608c2ecf20Sopenharmony_ci 618c2ecf20Sopenharmony_ci cdns,phy-input-delay-sd-uhs-sdr50: 628c2ecf20Sopenharmony_ci description: Value of the delay in the input path for SD UHS SDR50 timing 638c2ecf20Sopenharmony_ci $ref: "/schemas/types.yaml#/definitions/uint32" 648c2ecf20Sopenharmony_ci minimum: 0 658c2ecf20Sopenharmony_ci maximum: 0x1f 668c2ecf20Sopenharmony_ci 678c2ecf20Sopenharmony_ci cdns,phy-input-delay-sd-uhs-ddr50: 688c2ecf20Sopenharmony_ci description: Value of the delay in the input path for SD UHS DDR50 timing 698c2ecf20Sopenharmony_ci $ref: "/schemas/types.yaml#/definitions/uint32" 708c2ecf20Sopenharmony_ci minimum: 0 718c2ecf20Sopenharmony_ci maximum: 0x1f 728c2ecf20Sopenharmony_ci 738c2ecf20Sopenharmony_ci cdns,phy-input-delay-mmc-highspeed: 748c2ecf20Sopenharmony_ci description: Value of the delay in the input path for MMC high-speed timing 758c2ecf20Sopenharmony_ci $ref: "/schemas/types.yaml#/definitions/uint32" 768c2ecf20Sopenharmony_ci minimum: 0 778c2ecf20Sopenharmony_ci maximum: 0x1f 788c2ecf20Sopenharmony_ci 798c2ecf20Sopenharmony_ci cdns,phy-input-delay-mmc-ddr: 808c2ecf20Sopenharmony_ci description: Value of the delay in the input path for eMMC high-speed DDR timing 818c2ecf20Sopenharmony_ci 828c2ecf20Sopenharmony_ci # PHY DLL clock delays: 838c2ecf20Sopenharmony_ci # Each delay property represents the fraction of the clock period. 848c2ecf20Sopenharmony_ci # The approximate delay value will be 858c2ecf20Sopenharmony_ci # (<delay property value>/128)*sdmclk_clock_period. 868c2ecf20Sopenharmony_ci $ref: "/schemas/types.yaml#/definitions/uint32" 878c2ecf20Sopenharmony_ci minimum: 0 888c2ecf20Sopenharmony_ci maximum: 0x1f 898c2ecf20Sopenharmony_ci 908c2ecf20Sopenharmony_ci cdns,phy-dll-delay-sdclk: 918c2ecf20Sopenharmony_ci description: | 928c2ecf20Sopenharmony_ci Value of the delay introduced on the sdclk output for all modes except 938c2ecf20Sopenharmony_ci HS200, HS400 and HS400_ES. 948c2ecf20Sopenharmony_ci $ref: "/schemas/types.yaml#/definitions/uint32" 958c2ecf20Sopenharmony_ci minimum: 0 968c2ecf20Sopenharmony_ci maximum: 0x7f 978c2ecf20Sopenharmony_ci 988c2ecf20Sopenharmony_ci cdns,phy-dll-delay-sdclk-hsmmc: 998c2ecf20Sopenharmony_ci description: | 1008c2ecf20Sopenharmony_ci Value of the delay introduced on the sdclk output for HS200, HS400 and 1018c2ecf20Sopenharmony_ci HS400_ES speed modes. 1028c2ecf20Sopenharmony_ci $ref: "/schemas/types.yaml#/definitions/uint32" 1038c2ecf20Sopenharmony_ci minimum: 0 1048c2ecf20Sopenharmony_ci maximum: 0x7f 1058c2ecf20Sopenharmony_ci 1068c2ecf20Sopenharmony_ci cdns,phy-dll-delay-strobe: 1078c2ecf20Sopenharmony_ci description: | 1088c2ecf20Sopenharmony_ci Value of the delay introduced on the dat_strobe input used in 1098c2ecf20Sopenharmony_ci HS400 / HS400_ES speed modes. 1108c2ecf20Sopenharmony_ci $ref: "/schemas/types.yaml#/definitions/uint32" 1118c2ecf20Sopenharmony_ci minimum: 0 1128c2ecf20Sopenharmony_ci maximum: 0x7f 1138c2ecf20Sopenharmony_ci 1148c2ecf20Sopenharmony_cirequired: 1158c2ecf20Sopenharmony_ci - compatible 1168c2ecf20Sopenharmony_ci - reg 1178c2ecf20Sopenharmony_ci - interrupts 1188c2ecf20Sopenharmony_ci - clocks 1198c2ecf20Sopenharmony_ci 1208c2ecf20Sopenharmony_ciunevaluatedProperties: false 1218c2ecf20Sopenharmony_ci 1228c2ecf20Sopenharmony_ciexamples: 1238c2ecf20Sopenharmony_ci - | 1248c2ecf20Sopenharmony_ci emmc: mmc@5a000000 { 1258c2ecf20Sopenharmony_ci compatible = "socionext,uniphier-sd4hc", "cdns,sd4hc"; 1268c2ecf20Sopenharmony_ci reg = <0x5a000000 0x400>; 1278c2ecf20Sopenharmony_ci interrupts = <0 78 4>; 1288c2ecf20Sopenharmony_ci clocks = <&clk 4>; 1298c2ecf20Sopenharmony_ci bus-width = <8>; 1308c2ecf20Sopenharmony_ci mmc-ddr-1_8v; 1318c2ecf20Sopenharmony_ci mmc-hs200-1_8v; 1328c2ecf20Sopenharmony_ci mmc-hs400-1_8v; 1338c2ecf20Sopenharmony_ci cdns,phy-dll-delay-sdclk = <0>; 1348c2ecf20Sopenharmony_ci }; 135