arm: dts: owl-s500-roseapplepi: Add uSD support
authorCristian Ciocaltea <cristian.ciocaltea@gmail.com>
Tue, 29 Dec 2020 21:17:26 +0000 (23:17 +0200)
committerManivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Thu, 31 Dec 2020 07:35:33 +0000 (13:05 +0530)
Add uSD support for RoseapplePi SBC using a fixed regulator as a
temporary solution until PMIC support becomes available.

Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@gmail.com>
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
arch/arm/boot/dts/owl-s500-roseapplepi.dts

index 800edf5..fe9ae36 100644 (file)
@@ -14,6 +14,7 @@
        model = "Roseapple Pi";
 
        aliases {
+               mmc0 = &mmc0;
                serial2 = &uart2;
        };
 
                device_type = "memory";
                reg = <0x0 0x80000000>; /* 2GB */
        };
+
+       /* 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;
+       };
+};
+
+&pinctrl {
+       mmc0_pins: mmc0-pins {
+               pinmux {
+                       groups = "sd0_d0_mfp", "sd0_d1_mfp", "sd0_d2_d3_mfp",
+                                "sd0_cmd_mfp", "sd0_clk_mfp";
+                       function = "sd0";
+               };
+
+               drv-pinconf {
+                       groups = "sd0_d0_d3_drv", "sd0_cmd_drv", "sd0_clk_drv";
+                       drive-strength = <8>;
+               };
+
+               bias0-pinconf {
+                       pins = "sd0_d0", "sd0_d1", "sd0_d2",
+                              "sd0_d3", "sd0_cmd";
+                       bias-pull-up;
+               };
+
+               bias1-pinconf {
+                       pins = "sd0_clk";
+                       bias-pull-down;
+               };
+       };
+};
+
+/* uSD */
+&mmc0 {
+       status = "okay";
+       pinctrl-names = "default";
+       pinctrl-0 = <&mmc0_pins>;
+       no-sdio;
+       no-mmc;
+       no-1-8-v;
+       cd-gpios = <&pinctrl 117 GPIO_ACTIVE_LOW>;
+       bus-width = <4>;
+       vmmc-supply = <&sd_vcc>;
+       vqmmc-supply = <&sd_vcc>;
 };
 
 &twd_timer {