Message ID | 20210825094055.642941-1-claudiu.beznea@microchip.com |
---|---|
State | New |
Headers | show |
Series | [v4] ARM: dts: at91: sama5d27_wlsom1: add wifi device | expand |
On 25/08/2021 at 11:40, Claudiu Beznea wrote: > From: Eugen Hristev <eugen.hristev@microchip.com> > > SAMA5D27 WLSOM1 boards has a WILC3000 device soldered. Add proper > device tree nodes for this. > > [eugen.hristev: original author of this code] > Signed-off-by: Eugen Hristev <eugen.hristev@microchip.com> > [nicolas.ferre: original author of this code] > Signed-off-by: Nicolas Ferre <nicolas.ferre@microchip.com> > [claudiu.beznea: adapt such that make dtbs_check is happy, remove status > for wifi_pwrseq and wifi nodes] > Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com> Thanks Claudiu for having handled this work! I queue it in at91-dt for 5.16. Best regards, Nicolas > --- > > Changes in v4: > - keep only this patch as the rest from series were applied on mmc tree > - remove status="okay" on wifi node and pwrseq node > - adapt to remove all warnings thown by make dtbs_check > > arch/arm/boot/dts/at91-sama5d27_wlsom1.dtsi | 70 +++++++++++++++++++++ > 1 file changed, 70 insertions(+) > > diff --git a/arch/arm/boot/dts/at91-sama5d27_wlsom1.dtsi b/arch/arm/boot/dts/at91-sama5d27_wlsom1.dtsi > index 025a78310e3a..21c86171e462 100644 > --- a/arch/arm/boot/dts/at91-sama5d27_wlsom1.dtsi > +++ b/arch/arm/boot/dts/at91-sama5d27_wlsom1.dtsi > @@ -30,6 +30,14 @@ main_xtal { > clock-frequency = <24000000>; > }; > }; > + > + wifi_pwrseq: wifi_pwrseq { > + compatible = "mmc-pwrseq-wilc1000"; > + reset-gpios = <&pioA PIN_PA27 GPIO_ACTIVE_HIGH>; > + powerdown-gpios = <&pioA PIN_PA29 GPIO_ACTIVE_HIGH>; > + pinctrl-0 = <&pinctrl_wilc_pwrseq>; > + pinctrl-names = "default"; > + }; > }; > > &flx1 { > @@ -310,5 +318,67 @@ pinctrl_qspi1_default: qspi1_default { > <PIN_PB10__QSPI1_IO3>; > bias-pull-up; > }; > + > + pinctrl_sdmmc1_default: sdmmc1_default { > + cmd-data { > + pinmux = <PIN_PA28__SDMMC1_CMD>, > + <PIN_PA18__SDMMC1_DAT0>, > + <PIN_PA19__SDMMC1_DAT1>, > + <PIN_PA20__SDMMC1_DAT2>, > + <PIN_PA21__SDMMC1_DAT3>; > + bias-disable; > + }; > + > + conf-ck { > + pinmux = <PIN_PA22__SDMMC1_CK>; > + bias-disable; > + }; > + }; > + > + pinctrl_wilc_default: wilc_default { > + conf-irq { > + pinmux = <PIN_PB25__GPIO>; > + bias-disable; > + }; > + }; > + > + pinctrl_wilc_pwrseq: wilc_pwrseq { > + conf-ce-nrst { > + pinmux = <PIN_PA27__GPIO>, > + <PIN_PA29__GPIO>; > + bias-disable; > + }; > + > + conf-rtcclk { > + pinmux = <PIN_PB13__PCK1>; > + bias-disable; > + }; > + }; > +}; > + > +&sdmmc1 { > + #address-cells = <1>; > + #size-cells = <0>; > + bus-width = <4>; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_sdmmc1_default>; > + mmc-pwrseq = <&wifi_pwrseq>; > + no-1-8-v; > + non-removable; > + bus-width = <4>; > + status = "okay"; > + > + wilc: wifi@0 { > + reg = <0>; > + compatible = "microchip,wilc1000"; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_wilc_default>; > + clocks = <&pmc PMC_TYPE_SYSTEM 9>; > + clock-names = "rtc"; > + interrupts = <PIN_PB25 IRQ_TYPE_NONE>; > + interrupt-parent = <&pioA>; > + assigned-clocks = <&pmc PMC_TYPE_SYSTEM 9>; > + assigned-clock-rates = <32768>; > + }; > }; > > -- Nicolas Ferre
diff --git a/arch/arm/boot/dts/at91-sama5d27_wlsom1.dtsi b/arch/arm/boot/dts/at91-sama5d27_wlsom1.dtsi index 025a78310e3a..21c86171e462 100644 --- a/arch/arm/boot/dts/at91-sama5d27_wlsom1.dtsi +++ b/arch/arm/boot/dts/at91-sama5d27_wlsom1.dtsi @@ -30,6 +30,14 @@ main_xtal { clock-frequency = <24000000>; }; }; + + wifi_pwrseq: wifi_pwrseq { + compatible = "mmc-pwrseq-wilc1000"; + reset-gpios = <&pioA PIN_PA27 GPIO_ACTIVE_HIGH>; + powerdown-gpios = <&pioA PIN_PA29 GPIO_ACTIVE_HIGH>; + pinctrl-0 = <&pinctrl_wilc_pwrseq>; + pinctrl-names = "default"; + }; }; &flx1 { @@ -310,5 +318,67 @@ pinctrl_qspi1_default: qspi1_default { <PIN_PB10__QSPI1_IO3>; bias-pull-up; }; + + pinctrl_sdmmc1_default: sdmmc1_default { + cmd-data { + pinmux = <PIN_PA28__SDMMC1_CMD>, + <PIN_PA18__SDMMC1_DAT0>, + <PIN_PA19__SDMMC1_DAT1>, + <PIN_PA20__SDMMC1_DAT2>, + <PIN_PA21__SDMMC1_DAT3>; + bias-disable; + }; + + conf-ck { + pinmux = <PIN_PA22__SDMMC1_CK>; + bias-disable; + }; + }; + + pinctrl_wilc_default: wilc_default { + conf-irq { + pinmux = <PIN_PB25__GPIO>; + bias-disable; + }; + }; + + pinctrl_wilc_pwrseq: wilc_pwrseq { + conf-ce-nrst { + pinmux = <PIN_PA27__GPIO>, + <PIN_PA29__GPIO>; + bias-disable; + }; + + conf-rtcclk { + pinmux = <PIN_PB13__PCK1>; + bias-disable; + }; + }; +}; + +&sdmmc1 { + #address-cells = <1>; + #size-cells = <0>; + bus-width = <4>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_sdmmc1_default>; + mmc-pwrseq = <&wifi_pwrseq>; + no-1-8-v; + non-removable; + bus-width = <4>; + status = "okay"; + + wilc: wifi@0 { + reg = <0>; + compatible = "microchip,wilc1000"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_wilc_default>; + clocks = <&pmc PMC_TYPE_SYSTEM 9>; + clock-names = "rtc"; + interrupts = <PIN_PB25 IRQ_TYPE_NONE>; + interrupt-parent = <&pioA>; + assigned-clocks = <&pmc PMC_TYPE_SYSTEM 9>; + assigned-clock-rates = <32768>; + }; };