[PATCH 5/5] ARM: dts: exynos5250-snow: Enable wifi power-on

Arend van Spriel arend at broadcom.com
Wed Jan 28 06:03:36 PST 2015


On 01/28/15 11:10, Javier Martinez Canillas wrote:
> The Snow board has a MMC/SDIO wifi chip that is always powered but it
> needs a power sequence involving a reset (active low) and an enable
> (active high) pins. Both pins are marked as active low since the MMC
> simple power sequence driver asserts the pins prior to the card power
> up procedure and de-asserts the pins after the card has been powered.
>
> So the reset line will be left de-asserted and the enable pin will be
> left asserted.
>
> The chip also needs an external 32kHz reference clock to be operational
> that is by the MAX77686 PMIC clock.
>
> Add a simple MMC power sequence provider for the wifi MMC/SDIO slot.
>
> Signed-off-by: Javier Martinez Canillas<javier.martinez at collabora.co.uk>
> ---
>   arch/arm/boot/dts/exynos5250-snow.dts | 25 ++++++++++++++++++++++++-
>   1 file changed, 24 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm/boot/dts/exynos5250-snow.dts b/arch/arm/boot/dts/exynos5250-snow.dts
> index b9aeec430527..0f7971ba8238 100644
> --- a/arch/arm/boot/dts/exynos5250-snow.dts
> +++ b/arch/arm/boot/dts/exynos5250-snow.dts
> @@ -229,6 +229,13 @@
>   		power-supply =<&fet6>;
>   		backlight =<&backlight>;
>   	};
> +
> +	mmc3_pwrseq: mmc3_pwrseq {
> +		reset-gpios =<&gpx0 2 GPIO_ACTIVE_LOW>, /* WIFI_RSTn */
> +			<&gpx0 1 GPIO_ACTIVE_LOW>; /* WIFI_EN */
> +		clocks =<&max77686 MAX77686_CLK_PMIC>;
> +		clock-names = "ext_clock";
> +	};
>   };
>
>   &dp {
> @@ -531,17 +538,33 @@
>   	status = "okay";
>   	num-slots =<1>;
>   	broken-cd;
> +	cap-sdio-irq;

This seems like an unrelated change, right?

Regards,
Arend

>   	card-detect-delay =<200>;
>   	samsung,dw-mshc-ciu-div =<3>;
>   	samsung,dw-mshc-sdr-timing =<2 3>;
>   	samsung,dw-mshc-ddr-timing =<1 2>;
>   	pinctrl-names = "default";
> -	pinctrl-0 =<&sd3_clk&sd3_cmd&sd3_bus4>;
> +	pinctrl-0 =<&sd3_clk&sd3_cmd&sd3_bus4&wifi_en&wifi_rst>;
>   	bus-width =<4>;
>   	cap-sd-highspeed;
> +	mmc-pwrseq =<&mmc3_pwrseq>;
>   };
>
>   &pinctrl_0 {
> +	wifi_en: wifi-en {
> +		samsung,pins = "gpx0-1";
> +		samsung,pin-function =<1>;
> +		samsung,pin-pud =<0>;
> +		samsung,pin-drv =<0>;
> +	};
> +
> +	wifi_rst: wifi-rst {
> +		samsung,pins = "gpx0-2";
> +		samsung,pin-function =<1>;
> +		samsung,pin-pud =<0>;
> +		samsung,pin-drv =<0>;
> +	};
> +
>   	power_key_irq: power-key-irq {
>   		samsung,pins = "gpx1-3";
>   		samsung,pin-function =<0xf>;




More information about the linux-arm-kernel mailing list