Re: [PATCH 2/2] ARM: dts: omap3-igep0030: Use MMC pwrseq to init SDIO WiFi

From: Enric Balletbo Serra
Date: Fri Dec 04 2015 - 09:37:20 EST


2015-12-03 19:02 GMT+01:00 Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>:
> When the WiFi support was added to the IGEP0030 board, the MMC subsystem
> did not provide a mechanism to define power sequence providers. So a DT
> hack was used to toggle the WiFi chip reset and power down pins by using
> fake fixed regulators whose enable GPIO was the GPIOs connected to these
> pins.
>
> But now the simple MMC power sequence provider can be used for this and
> the workaround removed.
>
> Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
>
> ---
>
> arch/arm/boot/dts/omap3-igep0030.dts | 24 ++++++++----------------
> 1 file changed, 8 insertions(+), 16 deletions(-)
>
> diff --git a/arch/arm/boot/dts/omap3-igep0030.dts b/arch/arm/boot/dts/omap3-igep0030.dts
> index 468608dab30a..55b0cc4f5ee5 100644
> --- a/arch/arm/boot/dts/omap3-igep0030.dts
> +++ b/arch/arm/boot/dts/omap3-igep0030.dts
> @@ -15,25 +15,17 @@
> model = "IGEP COM MODULE Rev. E (TI OMAP AM/DM37x)";
> compatible = "isee,omap3-igep0030", "ti,omap36xx", "ti,omap3";
>
> - /* Regulator to trigger the WIFI_PDN signal of the Wifi module */
> - lbee1usjyc_pdn: lbee1usjyc_pdn {
> + vmmcsdio_fixed: fixedregulator-mmcsdio {
> compatible = "regulator-fixed";
> - regulator-name = "regulator-lbee1usjyc-pdn";
> + regulator-name = "vmmcsdio_fixed";
> regulator-min-microvolt = <3300000>;
> regulator-max-microvolt = <3300000>;
> - gpio = <&gpio5 10 GPIO_ACTIVE_HIGH>; /* gpio_138 - WIFI_PDN */
> - startup-delay-us = <10000>;
> - enable-active-high;
> };
>
> - /* Regulator to trigger the RESET_N_W signal of the Wifi module */
> - lbee1usjyc_reset_n_w: lbee1usjyc_reset_n_w {
> - compatible = "regulator-fixed";
> - regulator-name = "regulator-lbee1usjyc-reset-n-w";
> - regulator-min-microvolt = <3300000>;
> - regulator-max-microvolt = <3300000>;
> - gpio = <&gpio5 11 GPIO_ACTIVE_HIGH>; /* gpio_139 - RESET_N_W */
> - enable-active-high;
> + mmc2_pwrseq: mmc2_pwrseq {
> + compatible = "mmc-pwrseq-simple";
> + reset-gpios = <&gpio5 11 GPIO_ACTIVE_LOW>, /* gpio_139 - RESET_N_W */
> + <&gpio5 10 GPIO_ACTIVE_LOW>; /* gpio_138 - WIFI_PDN */
> };
> };
>
> @@ -62,8 +54,8 @@
> &mmc2 {
> pinctrl-names = "default";
> pinctrl-0 = <&mmc2_pins &lbee1usjyc_pins>;
> - vmmc-supply = <&lbee1usjyc_pdn>;
> - vmmc_aux-supply = <&lbee1usjyc_reset_n_w>;
> + vmmc-supply = <&vmmcsdio_fixed>;
> + mmc-pwrseq = <&mmc2_pwrseq>;
> bus-width = <4>;
> non-removable;
> };
> --
> 2.4.3
>

Acked-by: Enric Balletbo Serra <enric.balletbo@xxxxxxxxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/