This commit adds uSD support for Cubieboard7 board based on Actions Semi S700 SoC. SD0 is connected to uSD slot. Since there is no PMIC support added yet, fixed regulator has been used as a regulator node. Signed-off-by: Amit Singh Tomar <amittomer25@xxxxxxxxx> --- Changes since v1: * No change. Changes since RFC: * No change. --- arch/arm64/boot/dts/actions/s700-cubieboard7.dts | 41 ++++++++++++++++++++++++ arch/arm64/boot/dts/actions/s700.dtsi | 1 + 2 files changed, 42 insertions(+) diff --git a/arch/arm64/boot/dts/actions/s700-cubieboard7.dts b/arch/arm64/boot/dts/actions/s700-cubieboard7.dts index 63e375cd9eb4..ec117eb12f3a 100644 --- a/arch/arm64/boot/dts/actions/s700-cubieboard7.dts +++ b/arch/arm64/boot/dts/actions/s700-cubieboard7.dts @@ -13,6 +13,7 @@ aliases { serial3 = &uart3; + mmc0 = &mmc0; }; chosen { @@ -28,6 +29,23 @@ device_type = "memory"; reg = <0x1 0xe0000000 0x0 0x0>; }; + + /* Fixed regulator used in the absence of PMIC */ + vcc_3v1: vcc-3v1 { + compatible = "regulator-fixed"; + regulator-name = "fixed-3.1V"; + regulator-min-microvolt = <3100000>; + regulator-max-microvolt = <3100000>; + }; + + /* Fixed regulator used in the absence of PMIC */ + sd_vcc: sd-vcc { + compatible = "regulator-fixed"; + regulator-name = "fixed-3.1V"; + regulator-min-microvolt = <3100000>; + regulator-max-microvolt = <3100000>; + regulator-always-on; + }; }; &i2c0 { @@ -81,6 +99,14 @@ bias-pull-up; }; }; + + mmc0_default: mmc0_default { + pinmux { + groups = "sd0_d0_mfp", "sd0_d1_mfp", "sd0_d2_d3_mfp", + "sd0_cmd_mfp", "sd0_clk_mfp"; + function = "sd0"; + }; + }; }; &timer { @@ -90,3 +116,18 @@ &uart3 { status = "okay"; }; + +/* uSD */ +&mmc0 { + status = "okay"; + pinctrl-names = "default"; + pinctrl-0 = <&mmc0_default>; + cd-gpios = <&pinctrl 120 GPIO_ACTIVE_LOW>; + no-sdio; + no-mmc; + no-1-8-v; + bus-width = <4>; + vmmc-supply = <&sd_vcc>; + vqmmc-supply = <&sd_vcc>; +}; + diff --git a/arch/arm64/boot/dts/actions/s700.dtsi b/arch/arm64/boot/dts/actions/s700.dtsi index 0d3ff315b00e..18700aeb8d2b 100644 --- a/arch/arm64/boot/dts/actions/s700.dtsi +++ b/arch/arm64/boot/dts/actions/s700.dtsi @@ -4,6 +4,7 @@ */ #include <dt-bindings/clock/actions,s700-cmu.h> +#include <dt-bindings/gpio/gpio.h> #include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/reset/actions,s700-reset.h> -- 2.7.4