~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/mmc/samsung,exynos-dw-mshc.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  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,exynos-dw-mshc.yaml#
  5 $schema: http://devicetree.org/meta-schemas/core.yaml#
  6 
  7 title:
  8   Samsung Exynos SoC specific extensions to the Synopsys Designware Mobile
  9   Storage Host Controller
 10 
 11 maintainers:
 12   - Jaehoon Chung <jh80.chung@samsung.com>
 13   - Krzysztof Kozlowski <krzk@kernel.org>
 14 
 15 properties:
 16   compatible:
 17     oneOf:
 18       - enum:
 19           - axis,artpec8-dw-mshc
 20           - samsung,exynos4210-dw-mshc
 21           - samsung,exynos4412-dw-mshc
 22           - samsung,exynos5250-dw-mshc
 23           - samsung,exynos5420-dw-mshc
 24           - samsung,exynos5420-dw-mshc-smu
 25           - samsung,exynos7-dw-mshc
 26           - samsung,exynos7-dw-mshc-smu
 27       - items:
 28           - enum:
 29               - samsung,exynos5433-dw-mshc-smu
 30               - samsung,exynos7885-dw-mshc-smu
 31               - samsung,exynos850-dw-mshc-smu
 32           - const: samsung,exynos7-dw-mshc-smu
 33 
 34   reg:
 35     maxItems: 1
 36 
 37   interrupts:
 38     maxItems: 1
 39 
 40   clocks:
 41     maxItems: 2
 42     description:
 43       Handle to "biu" and "ciu" clocks for the
 44       bus interface unit clock and the card interface unit clock.
 45 
 46   clock-names:
 47     items:
 48       - const: biu
 49       - const: ciu
 50 
 51   samsung,dw-mshc-ciu-div:
 52     $ref: /schemas/types.yaml#/definitions/uint32
 53     minimum: 0
 54     maximum: 7
 55     description:
 56       The divider value for the card interface unit (ciu) clock.
 57 
 58   samsung,dw-mshc-ddr-timing:
 59     $ref: /schemas/types.yaml#/definitions/uint32-array
 60     items:
 61       - description: CIU clock phase shift value for tx mode
 62         minimum: 0
 63         maximum: 7
 64       - description: CIU clock phase shift value for rx mode
 65         minimum: 0
 66         maximum: 7
 67     description:
 68       The value of CUI clock phase shift value in transmit mode and CIU clock
 69       phase shift value in receive mode for double data rate mode operation.
 70       See also samsung,dw-mshc-hs400-timing property.
 71 
 72   samsung,dw-mshc-hs400-timing:
 73     $ref: /schemas/types.yaml#/definitions/uint32-array
 74     items:
 75       - description: CIU clock phase shift value for tx mode
 76         minimum: 0
 77         maximum: 7
 78       - description: CIU clock phase shift value for rx mode
 79         minimum: 0
 80         maximum: 7
 81     description: |
 82       The value of CIU TX and RX clock phase shift value for HS400 mode
 83       operation.
 84       Valid values for SDR and DDR CIU clock timing::
 85         - valid value for tx phase shift and rx phase shift is 0 to 7.
 86         - when CIU clock divider value is set to 3, all possible 8 phase shift
 87           values can be used.
 88         - if CIU clock divider value is 0 (that is divide by 1), both tx and rx
 89           phase shift clocks should be 0.
 90       If missing, values from samsung,dw-mshc-ddr-timing property are used.
 91 
 92   samsung,dw-mshc-sdr-timing:
 93     $ref: /schemas/types.yaml#/definitions/uint32-array
 94     items:
 95       - description: CIU clock phase shift value for tx mode
 96         minimum: 0
 97         maximum: 7
 98       - description: CIU clock phase shift value for rx mode
 99         minimum: 0
100         maximum: 7
101     description:
102       The value of CIU clock phase shift value in transmit mode and CIU clock
103       phase shift value in receive mode for single data rate mode operation.
104       See also samsung,dw-mshc-hs400-timing property.
105 
106   samsung,read-strobe-delay:
107     $ref: /schemas/types.yaml#/definitions/uint32
108     description:
109       RCLK (Data strobe) delay to control HS400 mode (Latency value for delay
110       line in Read path). If missing, default from hardware is used.
111 
112 required:
113   - compatible
114   - reg
115   - interrupts
116   - clocks
117   - clock-names
118   - samsung,dw-mshc-ddr-timing
119   - samsung,dw-mshc-sdr-timing
120 
121 allOf:
122   - $ref: synopsys-dw-mshc-common.yaml#
123   - if:
124       properties:
125         compatible:
126           contains:
127             enum:
128               - samsung,exynos5250-dw-mshc
129               - samsung,exynos5420-dw-mshc
130               - samsung,exynos7-dw-mshc
131               - samsung,exynos7-dw-mshc-smu
132               - axis,artpec8-dw-mshc
133     then:
134       required:
135         - samsung,dw-mshc-ciu-div
136 
137 unevaluatedProperties: false
138 
139 examples:
140   - |
141     #include <dt-bindings/clock/exynos5420.h>
142     #include <dt-bindings/interrupt-controller/arm-gic.h>
143 
144     mmc@12220000 {
145         compatible = "samsung,exynos5420-dw-mshc";
146         interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
147         #address-cells = <1>;
148         #size-cells = <0>;
149         reg = <0x12220000 0x1000>;
150         clocks = <&clock CLK_MMC2>, <&clock CLK_SCLK_MMC2>;
151         clock-names = "biu", "ciu";
152         fifo-depth = <0x40>;
153         card-detect-delay = <200>;
154         samsung,dw-mshc-ciu-div = <3>;
155         samsung,dw-mshc-sdr-timing = <0 4>;
156         samsung,dw-mshc-ddr-timing = <0 2>;
157         pinctrl-names = "default";
158         pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_wp &sd2_bus1 &sd2_bus4>;
159         bus-width = <4>;
160         cap-sd-highspeed;
161         max-frequency = <200000000>;
162         vmmc-supply = <&ldo19_reg>;
163         vqmmc-supply = <&ldo13_reg>;
164         sd-uhs-sdr50;
165         sd-uhs-sdr104;
166         sd-uhs-ddr50;
167     };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php