Commit | Line | Data |
---|---|---|
cd1b00eb TA |
1 | * Samsung's SDHCI Controller device tree bindings |
2 | ||
3 | Samsung's SDHCI controller is used as a connectivity interface with external | |
4 | MMC, SD and eMMC storage mediums. This file documents differences between the | |
5 | core mmc properties described by mmc.txt and the properties used by the | |
6 | Samsung implmentation of the SDHCI controller. | |
7 | ||
8 | Note: The mmc core bindings documentation states that if none of the core | |
9 | card-detect bindings are used, then the standard sdhci card detect mechanism | |
10 | is used. The Samsung's SDHCI controller bindings extends this as listed below. | |
11 | ||
12 | [A] The property "samsung,cd-pinmux-gpio" can be used as stated in the | |
13 | "Optional Board Specific Properties" section below. | |
14 | ||
15 | [B] If core card-detect bindings and "samsung,cd-pinmux-gpio" property | |
16 | is not specified, it is assumed that there is no card detection | |
17 | mechanism used. | |
18 | ||
19 | Required SoC Specific Properties: | |
20 | - compatible: should be one of the following | |
21 | - "samsung,s3c6410-sdhci": For controllers compatible with s3c6410 sdhci | |
22 | controller. | |
23 | - "samsung,exynos4210-sdhci": For controllers compatible with Exynos4 sdhci | |
24 | controller. | |
25 | ||
26 | Required Board Specific Properties: | |
27 | - gpios: Should specify the gpios used for clock, command and data lines. The | |
28 | gpio specifier format depends on the gpio controller. | |
29 | ||
30 | Optional Board Specific Properties: | |
31 | - samsung,cd-pinmux-gpio: Specifies the card detect line that is routed | |
32 | through a pinmux to the card-detect pin of the card slot. This property | |
33 | should be used only if none of the mmc core card-detect properties are | |
34 | used. | |
35 | ||
36 | Example: | |
37 | sdhci@12530000 { | |
38 | compatible = "samsung,exynos4210-sdhci"; | |
39 | reg = <0x12530000 0x100>; | |
40 | interrupts = <0 75 0>; | |
41 | bus-width = <4>; | |
42 | cd-gpios = <&gpk2 2 2 3 3>; | |
43 | gpios = <&gpk2 0 2 0 3>, /* clock line */ | |
44 | <&gpk2 1 2 0 3>, /* command line */ | |
45 | <&gpk2 3 2 3 3>, /* data line 0 */ | |
46 | <&gpk2 4 2 3 3>, /* data line 1 */ | |
47 | <&gpk2 5 2 3 3>, /* data line 2 */ | |
48 | <&gpk2 6 2 3 3>; /* data line 3 */ | |
49 | }; | |
50 | ||
51 | Note: This example shows both SoC specific and board specific properties | |
52 | in a single device node. The properties can be actually be seperated | |
53 | into SoC specific node and board specific node. |