[PATCH V4 12/14] arm64: dts: imx8mm-evk: Enable usdhc1 to support wifi

Marco Felsch m.felsch at pengutronix.de
Fri Nov 11 03:48:11 PST 2022


On 22-11-11, Sherry Sun wrote:
> 
> 
> > -----Original Message-----
> > From: Marco Felsch <m.felsch at pengutronix.de>
> > Sent: 2022年11月11日 17:30
> > To: Sherry Sun <sherry.sun at nxp.com>
> > Cc: Peng Fan <peng.fan at nxp.com>; Peng Fan (OSS)
> > <peng.fan at oss.nxp.com>; shawnguo at kernel.org; s.hauer at pengutronix.de;
> > linux-kernel at vger.kernel.org; kernel at pengutronix.de; festevam at gmail.com;
> > linux-arm-kernel at lists.infradead.org; dl-linux-imx <linux-imx at nxp.com>
> > Subject: Re: [PATCH V4 12/14] arm64: dts: imx8mm-evk: Enable usdhc1 to
> > support wifi
> > 
> > On 22-11-11, Sherry Sun wrote:
> > >
> > >
> > > > -----Original Message-----
> > > > From: Peng Fan <peng.fan at nxp.com>
> > > > Sent: 2022年11月11日 17:08
> > > > To: Marco Felsch <m.felsch at pengutronix.de>; Peng Fan (OSS)
> > > > <peng.fan at oss.nxp.com>
> > > > Cc: shawnguo at kernel.org; s.hauer at pengutronix.de; linux-
> > > > kernel at vger.kernel.org; Sherry Sun <sherry.sun at nxp.com>;
> > > > kernel at pengutronix.de; festevam at gmail.com; linux-arm-
> > > > kernel at lists.infradead.org; dl-linux-imx <linux-imx at nxp.com>
> > > > Subject: RE: [PATCH V4 12/14] arm64: dts: imx8mm-evk: Enable usdhc1
> > > > to support wifi
> > > >
> > > > Sherry,
> > > >
> > > > > Subject: Re: [PATCH V4 12/14] arm64: dts: imx8mm-evk: Enable
> > > > > usdhc1 to support wifi
> > > > >
> > > > > Hi Peng,
> > > > >
> > > > > On 22-11-11, Peng Fan (OSS) wrote:
> > > > > > From: Sherry Sun <sherry.sun at nxp.com>
> > > > > >
> > > > > > Enable usdhc1 which is used for wifi.
> > > > > >
> > > > > > Signed-off-by: Sherry Sun <sherry.sun at nxp.com>
> > > > > > Signed-off-by: Peng Fan <peng.fan at nxp.com>
> > > > > > ---
> > > > > >  arch/arm64/boot/dts/freescale/imx8mm-evk.dts  | 27
> > > > > > +++++++++++++ arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi |
> > 39
> > > > > +++++++++++++++++++
> > > > > >  2 files changed, 66 insertions(+)
> > > > > >
> > > > > > diff --git a/arch/arm64/boot/dts/freescale/imx8mm-evk.dts
> > > > > > b/arch/arm64/boot/dts/freescale/imx8mm-evk.dts
> > > > > > index a2b24d4d4e3e..7b80f144327d 100644
> > > > > > --- a/arch/arm64/boot/dts/freescale/imx8mm-evk.dts
> > > > > > +++ b/arch/arm64/boot/dts/freescale/imx8mm-evk.dts
> > > > > > @@ -15,6 +15,13 @@ / {
> > > > > >  	aliases {
> > > > > >  		spi0 = &flexspi;
> > > > > >  	};
> > > > > > +
> > > > > > +	usdhc1_pwrseq: usdhc1_pwrseq {
> > > > > > +		compatible = "mmc-pwrseq-simple";
> > > > > > +		pinctrl-names = "default";
> > > > > > +		pinctrl-0 = <&pinctrl_usdhc1_gpio>;
> > > > > > +		reset-gpios = <&gpio2 10 GPIO_ACTIVE_LOW>;
> > > > > > +	};
> > > > > >  };
> > > > > >
> > > > > >  &ddrc {
> > > > > > @@ -53,6 +60,19 @@ flash at 0 {
> > > > > >  	};
> > > > > >  };
> > > > > >
> > > > > > +&usdhc1 {
> > > > > > +	pinctrl-names = "default", "state_100mhz", "state_200mhz";
> > > > > > +	pinctrl-0 = <&pinctrl_usdhc1>, <&pinctrl_wlan>;
> > > > > > +	pinctrl-1 = <&pinctrl_usdhc1_100mhz>, <&pinctrl_wlan>;
> > > > > > +	pinctrl-2 = <&pinctrl_usdhc1_200mhz>, <&pinctrl_wlan>;
> > > > > > +	bus-width = <4>;
> > > > > > +	keep-power-in-suspend;
> > > > > > +	mmc-pwrseq = <&usdhc1_pwrseq>;
> > > > > > +	non-removable;
> > > > > > +	wakeup-source;
> > > > > > +	status = "okay";
> > > > > > +};
> > > > > > +
> > > > > >  &usdhc3 {
> > > > > >  	assigned-clocks = <&clk IMX8MM_CLK_USDHC3_ROOT>;
> > > > > >  	assigned-clock-rates = <400000000>; @@ -125,4 +145,11 @@
> > > > > > MX8MM_IOMUXC_NAND_CLE_USDHC3_DATA7
> > > > > 0x1d6
> > > > > >  			MX8MM_IOMUXC_NAND_CE1_B_USDHC3_STROBE
> > > > > 0x196
> > > > > >  		>;
> > > > > >  	};
> > > > > > +
> > > > > > +	pinctrl_wlan: wlangrp {
> > > > > > +		fsl,pins = <
> > > > > > +
> > > > > 	MX8MM_IOMUXC_GPIO1_IO00_ANAMIX_REF_CLK_32K
> > > > > 	0x141
> > > > > > +			MX8MM_IOMUXC_SD1_DATA7_GPIO2_IO9
> > > > > 	0x159
> > > > > > +		>;
> > > > > > +	};
> > > > >
> > > > > Out of curiousity, this is not shareable with the other ddr4 evk?
> > > > [Peng Fan]
> > > >
> > > > Could you please help answer?
> > > >
> > >
> > > Hi Peng, I suggest to remove the pinctrl_wlan configure here, it should be
> > added along with the wifi wowlan subnode later.
> > 
> > Does this apply to the imx8mn-evk patch as well?
> > 
> > Also if the usdhc1 is used only for WLAN and this patch series don't add the
> > WLAN subnode, we could remove this patch and the imx8mn-evk usdhc1
> > patch completely till you have a complete patchset adding the full WLAN
> > support.
> > 
> 
> Hi Marco, actually here enable usdhc1 can support the wifi basic
> function, so this patch is ok to enable wifi on 8mm, same for 8mn.

Okay, thanks for the clarification.

> But pinctrl_wlan is used to support the out-of-band WoWLAN feature,
> needs to be used with wifi child dts node, which looks like the
> following code.
> 
> So I suggest to add the pinctrl_wlan along with the wifi_wake_host
> child node later to support the wifi WoWLAN function. Here only need
> to enable the usdhc1 to support wifi basic function, no need to add
> pinctrl_wlan.

+1 from my side. @Peng can you drop the pinctrl_wlan from this patch and
from the mx8mn patch as well?

Regards,
  Marco

> &usdhc1 {
>     pinctrl-names = "default", "state_100mhz", "state_200mhz";
>     pinctrl-0 = <&pinctrl_usdhc1>, <&pinctrl_wlan>;
>     pinctrl-1 = <&pinctrl_usdhc1_100mhz>, <&pinctrl_wlan>;
>     pinctrl-2 = <&pinctrl_usdhc1_200mhz>, <&pinctrl_wlan>;
>     bus-width = <4>;
>     keep-power-in-suspend;
>     non-removable;
>     wakeup-source;
>     mmc-pwrseq = <&usdhc1_pwrseq>;
>     status = "okay";
> 
>     wifi_wake_host {
>         compatible = "nxp,wifi-wake-host";
>         interrupt-parent = <&gpio2>;
>         interrupts = <9 IRQ_TYPE_LEVEL_LOW>;
>         interrupt-names = "host-wake";
>     };
> };
> 
> Best Regards
> Sherry



More information about the linux-arm-kernel mailing list