Hi.
We are using a custom carrier board that runs on Xavier NX. The carrier board has a QCA9377 based wifi chipset interfaced through SDIO.
As per our observations, we see the following events to happen during SDIO controller initialization
register_list (610 Bytes)
:
- MMC driver starts initialisation.
- Driver then starts tuning the SDIO controller.
- At the end of tuning process, to indicate that tuning was successful SAMPLING_CLK_SEL bit of SDMMC_AUTO_CMD12_ERR_STATUS_0 register must be set. In our case, we find it to be 0 indicating a failure.
The attched file register_list contains the list of registers and their values that are written to during this process. Please do review the list and advise us to make the tuning successful.
I have attached the device tree entry for SDIO controller below:
sdhci_wifi: sdhci@3440000{
compatible = “nvidia,tegra194-sdhci”;
dma-coherent;
max-clk-limit = <50000000>;
bus-width = <0x4>;
cap-mmc-highspeed;
cap-sd-highspeed;
sd-uhs-sdr104;
sd-uhs-sdr50;
sd-uhs-sdr25;
sd-uhs-sdr12;
mmc-ddr-1_8v;
mmc-hs200-1_8v;
only-1-8-v;
non-removable;
nvidia,disable-rtpm;
nvidia,vqmmc-always-on;
status = “okay”;
/delete-property/ cd-inverted ;
};
Thanks.