Hi,
I found the Wi-Fi device tree default setting for PCIe interface in "imx8mq-evk.dts".
If I want to use SDIO interface for Wi-Fi, I need to modify device tree in "imx8mq-evk.dts", right ?
&gpio5 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_wifi_reset>;
wl-reg-on-hog {
gpio-hog;
gpios = <29 GPIO_ACTIVE_HIGH>;
output-high;
};
};
&pcie1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_pcie1>;
reset-gpio = <&gpio5 12 GPIO_ACTIVE_LOW>;
clocks = <&clk IMX8MQ_CLK_PCIE2_ROOT>,
<&clk IMX8MQ_CLK_PCIE2_AUX>,
<&clk IMX8MQ_CLK_PCIE2_PHY>,
<&pcie0_refclk>;
clock-names = "pcie", "pcie_aux", "pcie_phy", "pcie_bus";
vpcie-supply = <®_pcie1>;
vph-supply = <&vgen5_reg>;
status = "okay";
wifi_wake_host {
compatible = "nxp,wifi-wake-host";
interrupt-parent = <&gpio5>;
interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
interrupt-names = "host-wake";
};
};
pinctrl_wifi_reset: wifiresetgrp {
fsl,pins = <
MX8MQ_IOMUXC_UART4_TXD_GPIO5_IO29 0x16
>;
};
Can I follow this SDIO device tree in "imx8mq-evk-usdhc2-m2.dts" to modify "imx8mq-evk.dts"?
// SPDX-License-Identifier: (GPL-2.0 OR MIT)
/*
* Copyright 2020 NXP
*/
#include "imx8mq-evk.dts"
/ {
modem_reset: modem-reset {
reset-gpios = <&gpio3 5 GPIO_ACTIVE_HIGH>;
};
usdhc2_pwrseq: usdhc2_pwrseq {
compatible = "mmc-pwrseq-simple";
reset-gpios = <&gpio5 10 GPIO_ACTIVE_LOW>;
};
};
&pinctrl_usdhc2 {
fsl,pins = <
MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK 0x83
MX8MQ_IOMUXC_SD2_CMD_USDHC2_CMD 0xc3
MX8MQ_IOMUXC_SD2_DATA0_USDHC2_DATA0 0xc3
MX8MQ_IOMUXC_SD2_DATA1_USDHC2_DATA1 0xc3
MX8MQ_IOMUXC_SD2_DATA2_USDHC2_DATA2 0xc3
MX8MQ_IOMUXC_SD2_DATA3_USDHC2_DATA3 0xc3
MX8MQ_IOMUXC_GPIO1_IO04_GPIO1_IO4 0x49
MX8MQ_IOMUXC_ECSPI2_SCLK_GPIO5_IO10 0x46
MX8MQ_IOMUXC_SD2_WP_GPIO2_IO20 0x41
>;
};
&pinctrl_usdhc2_100mhz {
fsl,pins = <
MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK 0x85
MX8MQ_IOMUXC_SD2_CMD_USDHC2_CMD 0xc5
MX8MQ_IOMUXC_SD2_DATA0_USDHC2_DATA0 0xc5
MX8MQ_IOMUXC_SD2_DATA1_USDHC2_DATA1 0xc5
MX8MQ_IOMUXC_SD2_DATA2_USDHC2_DATA2 0xc5
MX8MQ_IOMUXC_SD2_DATA3_USDHC2_DATA3 0xc5
MX8MQ_IOMUXC_GPIO1_IO04_GPIO1_IO4 0x49
MX8MQ_IOMUXC_ECSPI2_SCLK_GPIO5_IO10 0x46
MX8MQ_IOMUXC_SD2_WP_GPIO2_IO20 0x41
>;
};
&pinctrl_usdhc2_200mhz {
fsl,pins = <
MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK 0x87
MX8MQ_IOMUXC_SD2_CMD_USDHC2_CMD 0xc7
MX8MQ_IOMUXC_SD2_DATA0_USDHC2_DATA0 0xc7
MX8MQ_IOMUXC_SD2_DATA1_USDHC2_DATA1 0xc7
MX8MQ_IOMUXC_SD2_DATA2_USDHC2_DATA2 0xc7
MX8MQ_IOMUXC_SD2_DATA3_USDHC2_DATA3 0xc7
MX8MQ_IOMUXC_GPIO1_IO04_GPIO1_IO4 0x49
MX8MQ_IOMUXC_ECSPI2_SCLK_GPIO5_IO10 0x46
MX8MQ_IOMUXC_SD2_WP_GPIO2_IO20 0x41
>;
};
®_pcie1{
status = "disabled";
};
&pcie0{
status = "disabled";
};
&pcie1{
status = "disabled";
/delete-node/ wifi_wake_host;
};
&usdhc2 {
pinctrl-assert-gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>;
/delete-property/ cd-gpios;
keep-power-in-suspend;
non-removable;
wakeup-source;
fsl,sdio-async-interrupt-enabled;
mmc-pwrseq = <&usdhc2_pwrseq>;
wifi_wake_host {
compatible = "nxp,wifi-wake-host";
interrupt-parent = <&gpio2>;
interrupts = <20 IRQ_TYPE_LEVEL_LOW>;
interrupt-names = "host-wake";
};
};
&gpio5 {
/delete-node/ wl-reg-on-hog; /* disable the on-board wifi */
};
Regards,
Derek Lin
Hi @JorgeCas ,
When I load the driver use this command :
$ modprobe moal mod_para=nxp/wifi_mod_para.conf
Then there are no mesg about parameter setting and sdiouart8987 combo firmware loading, only appeared this mesg:
Do you know what happened this?
Thanks & Regards,
Derek Lin