forked from Minki/linux
a70aaa64da
The "disable-wp" property is used to specify that a given SD card slot doesn't have a concept of write protect. This eliminates the need for special case code for SD slots that should never be write protected (like a micro SD slot or a dev board). The dw_mmc driver is special in needing to specify "disable-wp" because the lack of a "wp-gpios" property means to use the special purpose write protect line. On some other mmc devices the lack of "wp-gpios" means that write protect should be disabled. Signed-off-by: Doug Anderson <dianders@chromium.org> Acked-by: Seungwon Jeon <tgih.jun@samsung.com> Acked-by: Will Newton <will.newton@imgtec.com> Acked-by: Olof Johansson <olof@lixom.net> Signed-off-by: Chris Ball <cjb@laptop.org>
88 lines
3.1 KiB
Plaintext
88 lines
3.1 KiB
Plaintext
* Synopsis Designware Mobile Storage Host Controller
|
|
|
|
The Synopsis designware mobile storage host controller is used to interface
|
|
a SoC with storage medium such as eMMC or SD/MMC cards. This file documents
|
|
differences between the core mmc properties described by mmc.txt and the
|
|
properties used by the Synopsis Designware Mobile Storage Host Controller.
|
|
|
|
Required Properties:
|
|
|
|
* compatible: should be
|
|
- snps,dw-mshc: for controllers compliant with synopsis dw-mshc.
|
|
* #address-cells: should be 1.
|
|
* #size-cells: should be 0.
|
|
|
|
# Slots: The slot specific information are contained within child-nodes with
|
|
each child-node representing a supported slot. There should be atleast one
|
|
child node representing a card slot. The name of the child node representing
|
|
the slot is recommended to be slot@n where n is the unique number of the slot
|
|
connnected to the controller. The following are optional properties which
|
|
can be included in the slot child node.
|
|
|
|
* reg: specifies the physical slot number. The valid values of this
|
|
property is 0 to (num-slots -1), where num-slots is the value
|
|
specified by the num-slots property.
|
|
|
|
* bus-width: as documented in mmc core bindings.
|
|
|
|
* wp-gpios: specifies the write protect gpio line. The format of the
|
|
gpio specifier depends on the gpio controller. If a GPIO is not used
|
|
for write-protect, this property is optional.
|
|
|
|
* disable-wp: If the wp-gpios property isn't present then (by default)
|
|
we'd assume that the write protect is hooked up directly to the
|
|
controller's special purpose write protect line (accessible via
|
|
the WRTPRT register). However, it's possible that we simply don't
|
|
want write protect. In that case specify 'disable-wp'.
|
|
NOTE: This property is not required for slots known to always
|
|
connect to eMMC or SDIO cards.
|
|
|
|
Optional properties:
|
|
|
|
* num-slots: specifies the number of slots supported by the controller.
|
|
The number of physical slots actually used could be equal or less than the
|
|
value specified by num-slots. If this property is not specified, the value
|
|
of num-slot property is assumed to be 1.
|
|
|
|
* fifo-depth: The maximum size of the tx/rx fifo's. If this property is not
|
|
specified, the default value of the fifo size is determined from the
|
|
controller registers.
|
|
|
|
* card-detect-delay: Delay in milli-seconds before detecting card after card
|
|
insert event. The default value is 0.
|
|
|
|
* supports-highspeed: Enables support for high speed cards (upto 50MHz)
|
|
|
|
* broken-cd: as documented in mmc core bindings.
|
|
|
|
Aliases:
|
|
|
|
- All the MSHC controller nodes should be represented in the aliases node using
|
|
the following format 'mshc{n}' where n is a unique number for the alias.
|
|
|
|
Example:
|
|
|
|
The MSHC controller node can be split into two portions, SoC specific and
|
|
board specific portions as listed below.
|
|
|
|
dwmmc0@12200000 {
|
|
compatible = "snps,dw-mshc";
|
|
reg = <0x12200000 0x1000>;
|
|
interrupts = <0 75 0>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
};
|
|
|
|
dwmmc0@12200000 {
|
|
num-slots = <1>;
|
|
supports-highspeed;
|
|
broken-cd;
|
|
fifo-depth = <0x80>;
|
|
card-detect-delay = <200>;
|
|
|
|
slot@0 {
|
|
reg = <0>;
|
|
bus-width = <8>;
|
|
};
|
|
};
|