Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision | Next revisionBoth sides next revision | ||
| toh:tp-link:tl-mr3420:deep.mmc.hack [2018/07/01 14:58] – added some info deoptim | toh:tp-link:tl-mr3420:deep.mmc.hack [2018/07/02 07:56] – minor addings/changes deoptim | ||
|---|---|---|---|
| Line 521: | Line 521: | ||
| </ | </ | ||
| - | \\ | ||
| \\ | \\ | ||
| == Switching GPIO0 to CS1 on AR71XX SoC: == | == Switching GPIO0 to CS1 on AR71XX SoC: == | ||
| Line 530: | Line 529: | ||
| </ | </ | ||
| </ | </ | ||
| + | \\ | ||
| == Switching GPIO0 to CS1 on AR724X SoC: == | == Switching GPIO0 to CS1 on AR724X SoC: == | ||
| <hidden Instruction for old Openwrt (including LEDE project)> | <hidden Instruction for old Openwrt (including LEDE project)> | ||
| Line 566: | Line 565: | ||
| </ | </ | ||
| **Note:** Already used in the example above. | **Note:** Already used in the example above. | ||
| + | \\ | ||
| == Turn off UART and switching GPIO9(Rx) to CS1 on AR933X SoC: == | == Turn off UART and switching GPIO9(Rx) to CS1 on AR933X SoC: == | ||
| <hidden Instruction for old Openwrt (including LEDE project)> | <hidden Instruction for old Openwrt (including LEDE project)> | ||
| Line 575: | Line 575: | ||
| </ | </ | ||
| </ | </ | ||
| + | \\ | ||
| == Configure GPIO11 to CS1 on AR934X SoC: == | == Configure GPIO11 to CS1 on AR934X SoC: == | ||
| <hidden Instruction for old Openwrt (including LEDE project)> | <hidden Instruction for old Openwrt (including LEDE project)> | ||
| Line 733: | Line 733: | ||
| </ | </ | ||
| - | // We could use GPIO to IRQ event as card detection (implemented in '' | + | <hidden Patch for Openwrt (4.14+, ath79 platform, dts files)>< |
| + | diff --git a/ | ||
| + | index 3846d811ac..d99bafcb2b 100644 | ||
| + | --- a/ | ||
| + | +++ b/ | ||
| + | @@ -22,13 +22,18 @@ | ||
| + | | ||
| + | | ||
| + | | ||
| + | - | ||
| + | qss { | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | + mmc { | ||
| + | + label = " | ||
| + | + linux, | ||
| + | + gpios = <& | ||
| + | + debounce-interval = < | ||
| + | + }; | ||
| + | }; | ||
| + | |||
| + | | ||
| + | @@ -48,7 +53,12 @@ | ||
| + | |||
| + | & | ||
| + | | ||
| + | - num-cs = < | ||
| + | + num-cs = < | ||
| + | + /* | ||
| + | + * Where first parameter <0> is default CS0 pin for flash | ||
| + | + * and second parameter is GPIO Number for sdcard. | ||
| + | + */ | ||
| + | + cs-gpios = <0>, <& | ||
| + | |||
| + | | ||
| + | | ||
| + | @@ -80,6 +90,30 @@ | ||
| + | | ||
| + | | ||
| + | }; | ||
| + | + | ||
| + | + sdcard@0 { | ||
| + | + compatible = " | ||
| + | + reg = < | ||
| + | + /* | ||
| + | + * If you need to use GPIO18 as Card Detect and | ||
| + | + * IRQ trigger (as standard implementation) - just | ||
| + | + * uncomment line below (but don't forget delete | ||
| + | + * the equivalent gpio-key). We don't use this | ||
| + | + * property because it doesn' | ||
| + | + * SD Card. | ||
| + | + */ | ||
| + | + //gpios = <& | ||
| + | + /* | ||
| + | + * By default, Card Detect use " | ||
| + | + * Using the " | ||
| + | + * CD line is active high, i.e. it is high, when a | ||
| + | + * card is inserted. | ||
| + | + * (uncomment line below to enable this option) | ||
| + | + */ | ||
| + | + // | ||
| + | + spi-max-frequency = < | ||
| + | + voltage-ranges = <3200 3400>; | ||
| + | + }; | ||
| + | }; | ||
| + | |||
| + | & | ||
| + | |||
| + | </ | ||
| + | // We could use GPIO to IRQ event as card detection (implemented in '' | ||
| Or FIXME // | Or FIXME // | ||
| The solution was found without the use of IRQ trigger: | The solution was found without the use of IRQ trigger: | ||
| **After build and compiling** the firmware, we just added additional button with the name **'' | **After build and compiling** the firmware, we just added additional button with the name **'' | ||
| - | Next, you need to [[docs: | + | Next, you need to [[docs: |
| <code bash> | <code bash> | ||
| uci add system button | uci add system button | ||
| - | uci set system.@button[-1].button=mmc | + | uci set system.@button[-1].button=BTN_0 |
| uci set system.@button[-1].action=pressed | uci set system.@button[-1].action=pressed | ||
| uci set system.@button[-1].handler=' | uci set system.@button[-1].handler=' | ||
| uci add system button | uci add system button | ||
| - | uci set system.@button[-1].button=mmc | + | uci set system.@button[-1].button=BTN_0 |
| uci set system.@button[-1].action=released | uci set system.@button[-1].action=released | ||
| uci set system.@button[-1].handler=' | uci set system.@button[-1].handler=' | ||