arm64: dts: meson: fix mmc pin bias
authorJerome Brunet <jbrunet@baylibre.com>
Thu, 18 Apr 2019 12:27:11 +0000 (14:27 +0200)
committerKevin Hilman <khilman@baylibre.com>
Tue, 21 May 2019 17:58:40 +0000 (10:58 -0700)
Clk pin does not require bias, data strobe should be pulled low.
The rest of the pin (data and cmd) are pulled up.

Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
Signed-off-by: Kevin Hilman <khilman@baylibre.com>
arch/arm64/boot/dts/amlogic/meson-axg-s400.dts
arch/arm64/boot/dts/amlogic/meson-axg.dtsi
arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi
arch/arm64/boot/dts/amlogic/meson-gxl.dtsi

index 75fe1a2c49d0a4b1e6db30040f79808f87769464..4cd2d595182282bffd73670110fa8e895a65fe41 100644 (file)
 
 /* emmc storage */
 &sd_emmc_c {
-       status = "disabled";
-       pinctrl-0 = <&emmc_pins>;
+       status = "okay";
+       pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>;
        pinctrl-1 = <&emmc_clk_gate_pins>;
        pinctrl-names = "default", "clk-gate";
 
index 34704fecf7566be1c326be41a58d5e02a24855f6..38169c85e91f1547f2e71ab32f85a032a5da20bb 100644 (file)
                                };
 
                                emmc_pins: emmc {
-                                       mux {
+                                       mux-0 {
                                                groups = "emmc_nand_d0",
                                                         "emmc_nand_d1",
                                                         "emmc_nand_d2",
                                                         "emmc_nand_d5",
                                                         "emmc_nand_d6",
                                                         "emmc_nand_d7",
-                                                        "emmc_clk",
-                                                        "emmc_cmd",
-                                                        "emmc_ds";
+                                                        "emmc_cmd";
+                                               function = "emmc";
+                                               bias-pull-up;
+                                       };
+
+                                       mux-1 {
+                                               groups = "emmc_clk";
                                                function = "emmc";
                                                bias-disable;
                                        };
                                };
 
+                               emmc_ds_pins: emmc_ds {
+                                       mux {
+                                               groups = "emmc_ds";
+                                               function = "emmc";
+                                               bias-pull-down;
+                                       };
+                               };
+
                                emmc_clk_gate_pins: emmc_clk_gate {
                                        mux {
                                                groups = "BOOT_8";
                                };
 
                                sdio_pins: sdio {
-                                       mux {
+                                       mux-0 {
                                                groups = "sdio_d0",
                                                         "sdio_d1",
                                                         "sdio_d2",
                                                         "sdio_d3",
-                                                        "sdio_cmd",
-                                                        "sdio_clk";
+                                                        "sdio_cmd";
+                                               function = "sdio";
+                                               bias-pull-up;
+                                       };
+
+                                       mux-1 {
+                                               groups = "sdio_clk";
                                                function = "sdio";
                                                bias-disable;
                                        };
index a60d3652beee1ad2791087860825e054b80fc78b..f734faaf7b78afd783769c44c965926f76feef8e 100644 (file)
                };
 
                emmc_pins: emmc {
-                       mux {
+                       mux-0 {
                                groups = "emmc_nand_d07",
-                                      "emmc_cmd",
-                                      "emmc_clk";
+                                      "emmc_cmd";
+                               function = "emmc";
+                               bias-pull-up;
+                       };
+
+                       mux-1 {
+                               groups = "emmc_clk";
                                function = "emmc";
                                bias-disable;
                        };
                        mux {
                                groups = "emmc_ds";
                                function = "emmc";
-                               bias-disable;
+                               bias-pull-down;
                        };
                };
 
                };
 
                sdcard_pins: sdcard {
-                       mux {
+                       mux-0 {
                                groups = "sdcard_d0",
                                       "sdcard_d1",
                                       "sdcard_d2",
                                       "sdcard_d3",
-                                      "sdcard_cmd",
-                                      "sdcard_clk";
+                                      "sdcard_cmd";
+                               function = "sdcard";
+                               bias-pull-up;
+                       };
+
+                       mux-1 {
+                               groups = "sdcard_clk";
                                function = "sdcard";
                                bias-disable;
                        };
                };
 
                sdio_pins: sdio {
-                       mux {
+                       mux-0 {
                                groups = "sdio_d0",
                                       "sdio_d1",
                                       "sdio_d2",
                                       "sdio_d3",
-                                      "sdio_cmd",
-                                      "sdio_clk";
+                                      "sdio_cmd";
+                               function = "sdio";
+                               bias-pull-up;
+                       };
+
+                       mux-1 {
+                               groups = "sdio_clk";
                                function = "sdio";
                                bias-disable;
                        };
index 3093ae421b177c863600884aa6506858f6353dc1..c959456bacc667ca6f7c27741aaf894806c744a0 100644 (file)
                };
 
                emmc_pins: emmc {
-                       mux {
+                       mux-0 {
                                groups = "emmc_nand_d07",
-                                      "emmc_cmd",
-                                      "emmc_clk";
+                                      "emmc_cmd";
+                               function = "emmc";
+                               bias-pull-up;
+                       };
+
+                       mux-1 {
+                               groups = "emmc_clk";
                                function = "emmc";
                                bias-disable;
                        };
                        mux {
                                groups = "emmc_ds";
                                function = "emmc";
-                               bias-disable;
+                               bias-pull-down;
                        };
                };
 
                };
 
                sdcard_pins: sdcard {
-                       mux {
+                       mux-0 {
                                groups = "sdcard_d0",
                                       "sdcard_d1",
                                       "sdcard_d2",
                                       "sdcard_d3",
-                                      "sdcard_cmd",
-                                      "sdcard_clk";
+                                      "sdcard_cmd";
+                               function = "sdcard";
+                               bias-pull-up;
+                       };
+
+                       mux-1 {
+                               groups = "sdcard_clk";
                                function = "sdcard";
                                bias-disable;
                        };
                };
 
                sdio_pins: sdio {
-                       mux {
+                       mux-0 {
                                groups = "sdio_d0",
                                       "sdio_d1",
                                       "sdio_d2",
                                       "sdio_d3",
-                                      "sdio_cmd",
-                                      "sdio_clk";
+                                      "sdio_cmd";
+                               function = "sdio";
+                               bias-pull-up;
+                       };
+
+                       mux-1 {
+                               groups = "sdio_clk";
                                function = "sdio";
                                bias-disable;
                        };