CC3351MOD: Driver probing fails with Error : -12 on imx95 with kernel 6.6

Part Number: CC3351MOD


Hi All,

We are currently working on IMX95 to integrate with CC33xx module.

Details: 

Linux Kernel : 6.6

CC33XX Mod with 6.6 patches from TI, to Integrate on IMX95.

SDIO lines are also probed. 

---

Required dts and Kernel config changes are built and loaded the image on the IMX95, here is the below screen with the observations:

Corocare_cc33xx_Info.png

Here are the SDIO lines info: 

cc3351_sdio_clk.pngSDIO+CMD+CC3351.pngSDIO+DATA0+CC3351.png

Please analyse the inputs given and let us know the further proceeding on this topic.

Thanks,

Satya.

 

 

  • Hi Satya,

    Can you share your DTS?

  • Here are the dts and the Kernel Configs used:

    wlan_en: regulator-100 {
    compatible = "regulator-fixed";
    regulator-name = "wlan_en";
    regulator-min-microvolt = <1800000>;
    regulator-max-microvolt = <1800000>;
    gpios = <&gpio3 23 GPIO_ACTIVE_HIGH>;
    enable-active-high;
    regulator-always-on;
    startup-delay-us = <100>;
    off-on-delay-us = <12000>;
    };

    &usdhc2 {
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
    fsl,cd-gpio-wakeup-disable;
    bus-width = <4>;
    keep-power-in-suspend;
    enable-sdio-wakeup;
    cap-power-off-card;
    vmmc-supply = <&wlan_en>;
    non-removable;
    wakeup-source;
    #address-cells = <1>;
    #size-cells = <0>;
    status = "okay";

    wlcore: wlcore@0 {
    compatible = "ti,cc33xx";
    reg = <2>;
    interrupt-parent = <&gpio3>;
    interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
    };
    };

    --

    -CONFIG_WL18XX=m
    -CONFIG_WLCORE_SDIO=m
    +CONFIG_WLCORE=n
    +CONFIG_WL18XX=n
    +CONFIG_WLCORE_SDIO=n
    +CONFIG_CC33XX=m
    +CONFIG_CC33XX_SDIO=m
    +CONFIG_CC33XX_SPI=m
    +CONFIG_NL80211_TESTMODE=y
    +CONFIG_MAC80211_DEBUGFS=y
    +CONFIG_BT_DEBUGFS=y
    +CONFIG_BT_TI_UART=m
    +CONFIG_BT_TI=n
    +CONFIG_BT_TI_SDIO=n

  • Also attaching the cc33xx driver compiled with 6.6 support patches for kernel 6.6. 

    3443.cc33xx_6.6.tar

  • Let’s continue posting all updates here. However, I noticed another link associated with the same issue but with a different number. Could you please delete the other ticket titled (1580830) and ensure all future updates are posted here?

  • Hi Satya,

    A few suggestions on the DTS:

    1. Can we temporarily disable 'wakeup-source' and 'enable-sdio-wakeup'? I'm not sure how imx handle these flags but we can re-enable them afterwards once things are working.

    2. I see that the IRQ type is LEVEL_LOW. Do you have an inverter on the IRQ line from the CC33xx's WL_IRQ pin to the MPU? If there is no inverter and you have a direct connection on your board, then please use LEVEL_HIGH.