OSDN Git Service

ARM: dts: ux500: Push VMMCI down to each tree
authorLinus Walleij <linus.walleij@linaro.org>
Sat, 19 Dec 2020 20:31:55 +0000 (21:31 +0100)
committerLinus Walleij <linus.walleij@linaro.org>
Wed, 13 Jan 2021 12:12:20 +0000 (13:12 +0100)
The setting of VMMCI differs so much between different
boards that we need to handle it on a per-board basis
rather that complicating things by overriding stuff from
the included DTSI:s. Push it down into top-level tree
instead.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
arch/arm/boot/dts/ste-href.dtsi
arch/arm/boot/dts/ste-href520-tvk.dts
arch/arm/boot/dts/ste-hrefprev60-stuib.dts
arch/arm/boot/dts/ste-hrefprev60-tvk.dts
arch/arm/boot/dts/ste-hrefprev60.dtsi
arch/arm/boot/dts/ste-hrefv60plus-stuib.dts
arch/arm/boot/dts/ste-hrefv60plus-tvk.dts
arch/arm/boot/dts/ste-hrefv60plus.dtsi

index ff47cbf..8c03124 100644 (file)
                        status = "okay";
                };
 
-               /* ST6G3244ME level translator for 1.8/2.9 V */
-               vmmci: regulator-gpio {
-                       compatible = "regulator-gpio";
-
-                       regulator-min-microvolt = <1800000>;
-                       regulator-max-microvolt = <2900000>;
-                       regulator-name = "mmci-reg";
-                       regulator-type = "voltage";
-
-                       startup-delay-us = <100>;
-
-                       states = <1800000 0x1
-                                 2900000 0x0>;
-               };
-
                // External Micro SD slot
                sdi0_per1@80126000 {
                        arm,primecell-periphid = <0x10480180>;
index f8c0c1e..a036a03 100644 (file)
        model = "ST-Ericsson HREF520 and TVK1281618 UIB";
        compatible = "st-ericsson,href520", "st-ericsson,u8500";
 
-       soc {
-               vmmci: regulator-gpio {
-                       gpios = <&gpio0 5 GPIO_ACTIVE_HIGH>;
-                       enable-gpio = <&gpio2 14 GPIO_ACTIVE_HIGH>;
-                       enable-active-high;
+
+       /* ST6G3244ME level translator for 1.8/2.9 V */
+       vmmci: regulator-gpio {
+               compatible = "regulator-gpio";
+
+               regulator-min-microvolt = <1800000>;
+               regulator-max-microvolt = <2900000>;
+               regulator-name = "mmci-reg";
+               regulator-type = "voltage";
+
+               startup-delay-us = <100>;
+
+               states = <1800000 0x1
+                         2900000 0x0>;
+
+               gpios = <&gpio0 5 GPIO_ACTIVE_HIGH>;
+               enable-gpio = <&gpio2 14 GPIO_ACTIVE_HIGH>;
+               enable-active-high;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&vmmci_default_mode>;
+       };
+};
+
+&pinctrl {
+       vmmci {
+               vmmci_default_mode: vmmc_default {
+                       /* VMMCI level-shifter enable */
+                       default_href520_cfg1 {
+                               pins = "GPIO78_F4";
+                               ste,config = <&gpio_out_hi>;
+                       };
+                       /* VMMCI level-shifter voltage select */
+                       default_href520_cfg2 {
+                               pins = "GPIO5_AG6";
+                               ste,config = <&gpio_out_hi>;
+                       };
                };
        };
 };
index 8ce6b72..dfc9332 100644 (file)
        model = "ST-Ericsson HREF (pre-v60) and ST UIB";
        compatible = "st-ericsson,mop500", "st-ericsson,u8500";
 
+       /* ST6G3244ME level translator for 1.8/2.9 V */
+       vmmci: regulator-gpio {
+               compatible = "regulator-gpio";
+
+               regulator-min-microvolt = <1800000>;
+               regulator-max-microvolt = <2900000>;
+               regulator-name = "mmci-reg";
+               regulator-type = "voltage";
+
+               startup-delay-us = <100>;
+
+               states = <1800000 0x1
+                         2900000 0x0>;
+
+               gpios = <&tc3589x_gpio 18 GPIO_ACTIVE_HIGH>;
+               enable-gpio = <&tc3589x_gpio 17 GPIO_ACTIVE_HIGH>;
+               enable-active-high;
+       };
+
        soc {
                /* Reset line for the BU21013 touchscreen */
                i2c@80110000 {
index 142f547..4e6e443 100644 (file)
 / {
        model = "ST-Ericsson HREF (pre-v60) and TVK1281618 UIB";
        compatible = "st-ericsson,mop500", "st-ericsson,u8500";
+
+       /* ST6G3244ME level translator for 1.8/2.9 V */
+       vmmci: regulator-gpio {
+               compatible = "regulator-gpio";
+
+               regulator-min-microvolt = <1800000>;
+               regulator-max-microvolt = <2900000>;
+               regulator-name = "mmci-reg";
+               regulator-type = "voltage";
+
+               startup-delay-us = <100>;
+
+               states = <1800000 0x1
+                         2900000 0x0>;
+
+               gpios = <&tc3589x_gpio 18 GPIO_ACTIVE_HIGH>;
+               enable-gpio = <&tc3589x_gpio 17 GPIO_ACTIVE_HIGH>;
+               enable-active-high;
+       };
 };
index 115495d..931998d 100644 (file)
                        cd-gpios  = <&tc3589x_gpio 3 GPIO_ACTIVE_HIGH>;
                };
 
-               vmmci: regulator-gpio {
-                       gpios = <&tc3589x_gpio 18 GPIO_ACTIVE_HIGH>;
-                       enable-gpio = <&tc3589x_gpio 17 GPIO_ACTIVE_HIGH>;
-                       enable-active-high;
-               };
-
                pinctrl {
                        /* Set this up using hogs */
                        pinctrl-names = "default";
index 1316886..52c56ed 100644 (file)
        model = "ST-Ericsson HREF (v60+) and ST UIB";
        compatible = "st-ericsson,hrefv60+", "st-ericsson,u8500";
 
+       /* ST6G3244ME level translator for 1.8/2.9 V */
+       vmmci: regulator-gpio {
+               compatible = "regulator-gpio";
+
+               regulator-min-microvolt = <1800000>;
+               regulator-max-microvolt = <2900000>;
+               regulator-name = "mmci-reg";
+               regulator-type = "voltage";
+
+               startup-delay-us = <100>;
+
+               states = <1800000 0x1
+                         2900000 0x0>;
+
+               gpios = <&gpio0 5 GPIO_ACTIVE_HIGH>;
+               enable-gpio = <&gpio5 9 GPIO_ACTIVE_HIGH>;
+               enable-active-high;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&vmmci_default_mode>;
+       };
+
        soc {
                /* Reset line for the BU21013 touchscreen */
                i2c@80110000 {
                };
        };
 };
+
+&pinctrl {
+       vmmci {
+               vmmci_default_mode: vmmc_default {
+                       /* VMMCI level-shifter enable */
+                       default_hrefv60_cfg2 {
+                               pins = "GPIO169_D22";
+                               ste,config = <&gpio_out_hi>;
+                       };
+                       /* VMMCI level-shifter voltage select */
+                       default_hrefv60_cfg3 {
+                               pins = "GPIO5_AG6";
+                               ste,config = <&gpio_out_hi>;
+                       };
+               };
+       };
+};
index 5d4b824..9c2d2ee 100644 (file)
 / {
        model = "ST-Ericsson HREF (v60+) and TVK1281618 UIB";
        compatible = "st-ericsson,hrefv60+", "st-ericsson,u8500";
+
+       /* ST6G3244ME level translator for 1.8/2.9 V */
+       vmmci: regulator-gpio {
+               compatible = "regulator-gpio";
+
+               regulator-min-microvolt = <1800000>;
+               regulator-max-microvolt = <2900000>;
+               regulator-name = "mmci-reg";
+               regulator-type = "voltage";
+
+               startup-delay-us = <100>;
+
+               states = <1800000 0x1
+                         2900000 0x0>;
+
+               gpios = <&gpio0 5 GPIO_ACTIVE_HIGH>;
+               enable-gpio = <&gpio5 9 GPIO_ACTIVE_HIGH>;
+               enable-active-high;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&vmmci_default_mode>;
+       };
+};
+
+&pinctrl {
+       vmmci {
+               vmmci_default_mode: vmmc_default {
+                       /* VMMCI level-shifter enable */
+                       default_hrefv60_cfg2 {
+                               pins = "GPIO169_D22";
+                               ste,config = <&gpio_out_hi>;
+                       };
+                       /* VMMCI level-shifter voltage select */
+                       default_hrefv60_cfg3 {
+                               pins = "GPIO5_AG6";
+                               ste,config = <&gpio_out_hi>;
+                       };
+               };
+       };
 };
index ee0bf00..05ea12e 100644 (file)
                        cd-gpios  = <&gpio2 31 GPIO_ACTIVE_HIGH>; // 95
                };
 
-               vmmci: regulator-gpio {
-                       gpios = <&gpio0 5 GPIO_ACTIVE_HIGH>;
-                       enable-gpio = <&gpio5 9 GPIO_ACTIVE_HIGH>;
-                       enable-active-high;
-               };
-
                pinctrl {
                        /*
                         * Set this up using hogs, as time goes by and as seems fit, these
                                                pins = "GPIO95_E8";
                                                ste,config = <&gpio_in_pu>;
                                        };
-                                       /* VMMCI level-shifter enable */
-                                       default_hrefv60_cfg2 {
-                                               pins = "GPIO169_D22";
-                                               ste,config = <&gpio_out_hi>;
-                                       };
-                                       /* VMMCI level-shifter voltage select */
-                                       default_hrefv60_cfg3 {
-                                               pins = "GPIO5_AG6";
-                                               ste,config = <&gpio_out_hi>;
-                                       };
                                };
                        };
                        ipgpio {