Commit | Line | Data |
---|---|---|
c91eab4b TA |
1 | * Synopsis Designware Mobile Storage Host Controller |
2 | ||
3 | The Synopsis designware mobile storage host controller is used to interface | |
4 | a SoC with storage medium such as eMMC or SD/MMC cards. This file documents | |
5 | differences between the core mmc properties described by mmc.txt and the | |
6 | properties used by the Synopsis Designware Mobile Storage Host Controller. | |
7 | ||
8 | Required Properties: | |
9 | ||
10 | * compatible: should be | |
11 | - snps,dw-mshc: for controllers compliant with synopsis dw-mshc. | |
12 | * #address-cells: should be 1. | |
13 | * #size-cells: should be 0. | |
14 | ||
15 | # Slots: The slot specific information are contained within child-nodes with | |
16 | each child-node representing a supported slot. There should be atleast one | |
17 | child node representing a card slot. The name of the child node representing | |
18 | the slot is recommended to be slot@n where n is the unique number of the slot | |
19 | connnected to the controller. The following are optional properties which | |
20 | can be included in the slot child node. | |
21 | ||
22 | * reg: specifies the physical slot number. The valid values of this | |
23 | property is 0 to (num-slots -1), where num-slots is the value | |
24 | specified by the num-slots property. | |
25 | ||
26 | * bus-width: as documented in mmc core bindings. | |
27 | ||
28 | * wp-gpios: specifies the write protect gpio line. The format of the | |
29 | gpio specifier depends on the gpio controller. If the write-protect | |
30 | line is not available, this property is optional. | |
31 | ||
32 | Optional properties: | |
33 | ||
34 | * num-slots: specifies the number of slots supported by the controller. | |
35 | The number of physical slots actually used could be equal or less than the | |
36 | value specified by num-slots. If this property is not specified, the value | |
37 | of num-slot property is assumed to be 1. | |
38 | ||
39 | * fifo-depth: The maximum size of the tx/rx fifo's. If this property is not | |
40 | specified, the default value of the fifo size is determined from the | |
41 | controller registers. | |
42 | ||
43 | * card-detect-delay: Delay in milli-seconds before detecting card after card | |
44 | insert event. The default value is 0. | |
45 | ||
46 | * supports-highspeed: Enables support for high speed cards (upto 50MHz) | |
47 | ||
48 | * broken-cd: as documented in mmc core bindings. | |
49 | ||
50 | Aliases: | |
51 | ||
52 | - All the MSHC controller nodes should be represented in the aliases node using | |
53 | the following format 'mshc{n}' where n is a unique number for the alias. | |
54 | ||
55 | Example: | |
56 | ||
57 | The MSHC controller node can be split into two portions, SoC specific and | |
58 | board specific portions as listed below. | |
59 | ||
60 | dwmmc0@12200000 { | |
61 | compatible = "snps,dw-mshc"; | |
62 | reg = <0x12200000 0x1000>; | |
63 | interrupts = <0 75 0>; | |
64 | #address-cells = <1>; | |
65 | #size-cells = <0>; | |
66 | }; | |
67 | ||
68 | dwmmc0@12200000 { | |
69 | num-slots = <1>; | |
70 | supports-highspeed; | |
71 | broken-cd; | |
72 | fifo-depth = <0x80>; | |
73 | card-detect-delay = <200>; | |
74 | ||
75 | slot@0 { | |
76 | reg = <0>; | |
77 | bus-width = <8>; | |
78 | }; | |
79 | }; |