Hi,
I have a custom board with Linux v2.6 running perfectly. I am updating Linux (Yocto-thud) and I will configure another SDIO wifi module. I tried communication with the 2 SDIO WIFI modules, but it´s not detected.
I changed the dts:
&esdhc2 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_esdhc2>;
#address-cells = <0x1>;
#size-cells = <0x0>;
status = "okay";
esdhc@1 {
compatible = "silabs,wfx-sdio,fsl,imx25-esdhc";
reg = <1>;
pinctrl-names = "default";
};
};
...
pinctrl_esdhc2: esdhc2grp {
fsl,pins = <
MX25_PAD_CSI_D6__SDHC2_CMD 0x80000000
MX25_PAD_CSI_D7__ESDHC2_CLK 0x80000000
MX25_PAD_CSI_MCLK__SDHC2_DAT0 0x80000000
MX25_PAD_CSI_VSYNC__ESDHC2_DAT1 0x80000000
MX25_PAD_CSI_HSYNC__SDHC2_DAT2 0x80000000
MX25_PAD_CSI_PIXCLK__SDHC2_DAT3 0x80000000
>;
};
At startup is displayed:
...
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
sdhci-pltfm: SDHCI platform and OF driver helper
sdhci-esdhc-imx 53fb4000.esdhc: Got CD GPIO
sdhci-esdhc-imx 53fb4000.esdhc: Got WP GPIO
mmc0 bounce up to 128 segments into one, max segment size 65536 bytes
mmc0: SDHCI controller on 53fb4000.esdhc [53fb4000.esdhc] using DMA
mmc1 bounce up to 128 segments into one, max segment size 65536 bytes
mmc1: SDHCI controller on 53fb8000.esdhc [53fb8000.esdhc] using DMA
mmc0: new high speed SDHC card at address aaaa
mmcblk0: mmc0:aaaa SS08G 7.40 GiB
mmcblk0: p1
...
The message "mmc1: new high speed SDIO card at address ..." is not displayed
I checked the communication with mmc:
echo 1 > /sys/kernel/debug/tracing/events/mmc/mmc_request_done/enable
echo 'cmd_opcode != 53' > /sys/kernel/debug/tracing/events/mmc/mmc_request_done/filter
cat /sys/kernel/debug/tracing/trace_pipe | grep mmc1 > log.txt &
echo 53fb8000.esdhc > /sys/bus/platform/drivers/sdhci-esdhc-imx/unbind
sleep 2
echo 53fb8000.esdhc > /sys/bus/platform/drivers/sdhci-esdhc-imx/bind
All commands (except 0x00) return cmd_err = -110. Checking in a logic analyzer, I see the commands sent in the 400's, 300's, 200's and 100's KHz. I tried several changes to the dts, but no sucess.
Any idea how to debug or resolve this problem?
After a long time, I returned to this project.
I fixed a power problem and the Linux detects SDIO:
mmc1: new high speed SDIO card at address fffd
But there is no communication;
wfx: loading out-of-tree module taints kernel.
wfx: Silicon Labs WFX_2.2.1
wfx-sdio mmc1:0001:1: bad hardware revision number: 4
I tried a redpine´s module and it didn´t work either:
rsi_91x: rsi_probe: ***** 9116 Module *****
rsi_91x: rsi_hal_device_init: oper_mode = 1, coex_mode = 1
rsi_91x: rsi_load_firmware: REGOUT read timedout
rsi_91x: rsi_load_firmware: Soft boot loader not present
rsi_91x: rsi_hal_device_init: Failed to load TA instructions
rsi_91x: rsi_probe: Failed in device init
rsi_91x: set_clr_tx_intention,356: Wait event failed
rsi_91x: rsi_tx_scheduler_thread,560: Failed to get tx_access
rsi_91x: rsi_probe: Failed in probe...Exiting
RSI-SDIO WLAN: probe of mmc1:fffd:1 failed with error 1
All drivers were compiled into the 4.20 kernel.
I lowered the clock speed to 12, 8 and 4 Mhz and didn´t work.
If I connected a SDIO Card it worked perfectly. I can write/read files with no problems.
I tried connect this 2 modules on another custom board (with i.MX6) and it worked.
How Can I solve this?
Hi Renato
nxp does not support i.mx25 in latest linux bsps, in general one can try to debug it
using description of emmc/sd drivers in Linux Documentation
https://www.nxp.com/support/developer-resources/run-time-software/i.mx-developer-resources/i.mx-6ser...
Other reason may be that for used wifi module there is no driver for that linux version
(one can ask it from module vendor).
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi, Igor,
Thanks for answering. I´ll try to debug it.
About the driver, I installed it. Acording to vendor, I need to see the message "mmc1: new high speed SDIO card at address ..." in dmesg.