This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC3301: CC3301EN - SDIO communication Issue with AM6231 Sitara Processor.

Part Number: CC3301

Tool/software:

Hi TI Experts,

We are currently working with a gateway project in which the main processor is AM6231 and the BLE-Wi-Fi chipset is CC3301ENJARSBR.
When in the booting mode the processor identifies the Wi-fi chipset without any issues, but after the successful booting when we try to initialize the W-Fi chipset (root@am62xx-art:~# ifconfig wlan0 up) the board will stop working and become unresponsive to the console commands, Attached console messages and schematic diagram. Please check.

Few other details are 

1) Using the XDS110 debugger and simplelink wi-fi tool box, we were able to successfully communicate with the chip and run the test tool, no issues found.
2) The Co-existance lines REQ,Grant & Priority are connected to a different BLE chipset.
3) cc33xx-nvs.bin is not using in our setup 
4) We probed SDIO lines and Clock signal, everything seems to be okay.
5) Tried removing the series termination resistors and shorted directly but no use. (33R)

Schematic : /cfs-file/__key/communityserver-discussions-components-files/968/06_5F00_Artemis_5F00_WiFi.pdf
Error- Console : /cfs-file/__key/communityserver-discussions-components-files/968/7411.Error.txt

Hope you will reply soon.

Thanks,
Deepak D.

  • Hi Deepak,

    Two questions: Could you please share your devicetree? Which CC33xx SDK are you using?

  • Hi Sabeeh,

    I am working on the software part. please find the below information for the device tree details

    
    &main_pmx0 {
    
    	wlan_en_pins_default: wlan-en-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x01a4, PIN_OUTPUT, 7) /* (B20) MCASP0_ACLKX.GPIO1_11 */
    		>;
    	};
    
    
        main_mmc2_wifi_pins_default: main-mmc2-pins-default {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x120, PIN_INPUT, 0) /* (C24) MMC2_CMD */
    			AM62X_IOPAD(0x118, PIN_INPUT, 0) /* (D25) MMC2_CLK */
    			AM62X_IOPAD(0x114, PIN_INPUT, 0) /* (B24) MMC2_DAT0 */
    			AM62X_IOPAD(0x110, PIN_INPUT, 0) /* (C25) MMC2_DAT1 */
    			AM62X_IOPAD(0x10c, PIN_INPUT, 0) /* (E23) MMC2_DAT2 */
    			AM62X_IOPAD(0x108, PIN_INPUT, 0) /* (D24) MMC2_DAT3 */
    			AM62X_IOPAD(0x11c, PIN_INPUT, 0) /* (#N/A) MMC2_CLKB */
    		>;
    	};
    
    
        wifible_pins_default: wifible-default-pins {
    		pinctrl-single,pins = <
    			AM62X_IOPAD(0x00d8, PIN_INPUT, 4) /* (V21) VOUT0_DATA8.UART6_RXD */
    			AM62X_IOPAD(0x00dc, PIN_OUTPUT, 4) /* (W21) VOUT0_DATA9.UART6_TXD */
    			AM62X_IOPAD(0x00e4, PIN_INPUT, 4) /* (AA23) VOUT0_DATA11.UART6_CTSn */
    			AM62X_IOPAD(0x00e0, PIN_OUTPUT, 4) /* (V20) VOUT0_DATA10.UART6_RTSn */
    		>;
    	};
    
    };
    
    
    
    wlan_en: fixedregulator {
        compatible = "regulator-fixed";
        regulator-name = "wlan_en";
        regulator-min-microvolt = <1800000>;
        regulator-max-microvolt = <1800000>;
        enable-active-high;
        gpios = <&main_gpio1 11 GPIO_ACTIVE_HIGH>;
        pinctrl-names = "default";
        pinctrl-0 = <&wlan_en_pins_default>;
    };
    
    
    
    &sdhci2 {
    	status = "okay";
    	vmmc-supply = <&wlan_en>;
    	pinctrl-names = "default";
    	pinctrl-0 = <&main_mmc2_wifi_pins_default>;
    	bus-width = <4>;
    	non-removable;
    	ti,fails-without-test-cd;
    	cap-power-off-card;
    	keep-power-in-suspend;
    
    	#address-cells = <1>;
    	#size-cells = <0>;
    	wlcore: wlcore@2 {
    		compatible = "ti,cc33xx";
    		reg = <2>;
    	};
    
    };
    
    
    
    &main_uart6 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&wifible_pins_default>;
    
    	bluetooth {
    		compatible = "ti,cc33xx-bt";
    		cc33xx-supply = <&wlan_en>;
    		max-speed = <115200>;
    	};
    };

    We are using both WIFI( using sdio) and BLE( using uart) functionality with shared interrupt method mentioned in the cc33xx document. The BLE part is working perfectly. But WiFi is showing error while trying to up the interface (kernel crash while using the command ifconfig wlan0 up).
    In current scenario the module is powered on, firmware loading is working and ble functionality also working. but we cant able to bring with waln0 interface up.
    Please find the complete error details while using ifconfig wlan0 up command
    wifi_ifconfig_wlan0_up_errlog.txt
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.134764] wlcore: mac80211 start
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.134802] wlcore: mac80211 add interface type 2 mac 10:ca:bf:d8:dc:3c
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.134825] wlcore: allocating hw queue base: 0
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.134834] wlcore: cmd roles enabled: bitmap before: 0, ret=0
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.134844] wlcore: cmd role enable, role type 0, addr = 10:ca:bf:d8:dc:3c
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.135409] wlcore: Reading control info
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.135490] wlcore: Processing message type 2, len 5
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.135524] wlcore: CMD# 17, len=20
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.135534] wlcore: complete role_id = 0
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.135544] wlcore: acx sleep auth 2
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.135553] wlcore: cmd configure (9), TSFL bc77209
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.136179] wlcore: Reading control info
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.136259] wlcore: Processing message type 2, len 4
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.136287] wlcore: CMD# 27, len=20
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.136300] wlcore: acx group address tbl
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.136306] wlcore: cmd configure (7), TSFL bc7750b
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.136702] wlcore: Reading control info
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.136781] wlcore: Processing message type 2, len 4
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.136808] wlcore: CMD# 27, len=140
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.136819] wlcore: acx beacon filter table
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.136828] wlcore: cmd configure (18), TSFL bc77715
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.137242] wlcore: Reading control info
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.137321] wlcore: Processing message type 2, len 4
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.137349] wlcore: CMD# 27, len=120
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.137360] wlcore: acx beacon filter opt enable=0
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.137368] wlcore: cmd configure (17), TSFL bc77931
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.137727] wlcore: Reading control info
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.137806] wlcore: Processing message type 2, len 4
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.137833] wlcore: CMD# 27, len=20
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.137844] wlcore: acx slot
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.137850] wlcore: cmd configure (5), TSFL bc77b15
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.138377] wlcore: Reading control info
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.138455] wlcore: Processing message type 2, len 4
    Mar  9 12:37:56 am62xx-art kern.debug kernel: [  211.138483] wlcore: CMD# 27, len=20
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.138594] ------------[ cut here ]------------
    Mar  9 12:37:56 am62xx-art kern.crit kernel: [  211.143211] kernel BUG at drivers/net/wireless/ti/cc33xx/init.c:294!
    Mar  9 12:37:56 am62xx-art kern.emerg kernel: [  211.149560] Internal error: Oops - BUG: 00000000f2000800 [#1] PREEMPT SMP
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.156341] Modules linked in: ipv6 cc33xx cc33xx_sdio btti_uart
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.162371] CPU: 0 PID: 495 Comm: ifconfig Not tainted 6.1.83-ti-gc1c2f1971fbf #1
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.169849] Hardware name: Texas Instruments AM625 SK (DT)
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.175326] pstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.182283] pc : cc33xx_init_vif_specific+0x284/0x2bc [cc33xx]
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.188207] lr : cc33xx_init_vif_specific+0xb0/0x2bc [cc33xx]
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.194016] sp : ffff80000956b900
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.197324] x29: ffff80000956b970 x28: ffff000008259000 x27: 0000000000000000
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.204465] x26: 0000000000000000 x25: ffff0000083deb90 x24: ffff0000083de040
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.211606] x23: 0000000000000000 x22: 0000000000000002 x21: ffff0000083e98f8
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.218746] x20: ffff0000083e9d00 x19: ffff0000083e98f8 x18: ffffffffffffffff
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.225886] x17: 0000000000000000 x16: 0000000000000000 x15: ffff80000912abb3
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.233024] x14: 0000000000000000 x13: ffff800009010bc0 x12: 0000000000001a0a
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.240164] x11: 00000000000008ae x10: ffff800009068bc0 x9 : ffff800009010bc0
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.247305] x8 : 00000000ffffefff x7 : ffff800009068bc0 x6 : 0000000000000000
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.254443] x5 : ffff000037db8b60 x4 : ffff000037dc30b0 x3 : 0000000000649800
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.261583] x2 : 0000000000000000 x1 : 00000000000000ff x0 : 0000000000000064
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.268724] Call trace:
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.271166]  cc33xx_init_vif_specific+0x284/0x2bc [cc33xx]
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.276716]  cc33xx_op_add_interface+0x390/0x634 [cc33xx]
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.282176]  drv_add_interface+0x38/0x8c
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.286108]  ieee80211_do_open+0x578/0x824
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.290208]  ieee80211_open+0x60/0xac
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.293871]  __dev_open+0xf4/0x1e0
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.297280]  __dev_change_flags+0x198/0x210
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.301465]  dev_change_flags+0x24/0x64
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.305303]  devinet_ioctl+0x524/0x6ec
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.309056]  inet_ioctl+0x1e4/0x1f4
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.312547]  sock_do_ioctl+0x4c/0x100
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.316216]  sock_ioctl+0x244/0x354
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.319706]  __arm64_sys_ioctl+0xa8/0xf0
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.323637]  invoke_syscall+0x48/0x114
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.327390]  el0_svc_common.constprop.0+0x44/0xfc
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.332095]  do_el0_svc+0x20/0x30
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.335410]  el0_svc+0x28/0xa0
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.338467]  el0t_64_sync_handler+0xbc/0x140
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.342736]  el0t_64_sync+0x18c/0x190
    Mar  9 12:37:56 am62xx-art kern.emerg kernel: [  211.346407] Code: b9074b00 17ffffd5 d4210000 17ffff6e (d4210000) 
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.352493] ---[ end trace 0000000000000000 ]---
    Mar  9 12:37:56 am62xx-art kern.info kernel: [  211.357104] note: ifconfig[495] exited with irqs disabled
    Mar  9 12:37:56 am62xx-art kern.info kernel: [  211.362670] note: ifconfig[495] exited with preempt_count 1
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.374506] ------------[ cut here ]------------
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.380294] WARNING: CPU: 0 PID: 0 at kernel/context_tracking.c:128 ct_kernel_exit.constprop.0+0x98/0xa0
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.389779] Modules linked in: ipv6 cc33xx cc33xx_sdio btti_uart
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.395799] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G      D            6.1.83-ti-gc1c2f1971fbf #1
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.404658] Hardware name: Texas Instruments AM625 SK (DT)
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.410133] pstate: 200000c5 (nzCv daIF -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.417085] pc : ct_kernel_exit.constprop.0+0x98/0xa0
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.422131] lr : ct_idle_enter+0x10/0x20
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.426048] sp : ffff800008ff3d40
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.429354] x29: ffff800008ff3d40 x28: 0000000081e47290 x27: 0000000081000000
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.436486] x26: ffff800009002140 x25: 0000000000000000 x24: 0000000000000000
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.443618] x23: ffff800008ff9af4 x22: ffff800008edfbf8 x21: ffff800008ff99e0
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.450751] x20: ffff800008ff9ae8 x19: ffff000037dbd660 x18: 0000000000000000
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.457883] x17: 0000000000000000 x16: 0000000000000000 x15: 00000ba0d0f34274
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.465015] x14: 00000000000002a4 x13: 00000000000002a4 x12: 0000000000000000
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.472147] x11: 0000000000000001 x10: 00000000000009b0 x9 : ffff800008ff3ce0
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.479279] x8 : ffff800009002b50 x7 : 0000000000000000 x6 : 0000002beb5f5e7a
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.486411] x5 : 4000000000000002 x4 : ffff80002eedf000 x3 : ffff800008ff3d40
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.493543] x2 : 4000000000000000 x1 : ffff800008ede660 x0 : ffff800008ede660
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.500676] Call trace:
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.503116]  ct_kernel_exit.constprop.0+0x98/0xa0
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.507815]  ct_idle_enter+0x10/0x20
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.511385]  default_idle_call+0x2c/0x6c
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.515309]  do_idle+0x248/0x2c0
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.518539]  cpu_startup_entry+0x34/0x40
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.522460]  kernel_init+0x0/0x130
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.525857]  arch_post_acpi_subsys_init+0x0/0x18
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.530472]  start_kernel+0x650/0x694
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.534130]  __primary_switched+0xbc/0xc4
    Mar  9 12:37:56 am62xx-art kern.warn kernel: [  211.538140] ---[ end trace 0000000000000000 ]---
    
    
    SDK version: 1.0.0.7
  • Hi Jomon,

    Thanks for the logs and device tree. Devicetree seems okay. 

    Can you confirm that you are using the patches provided in the CC33xx SDK? The patches in cc33xx/patches/cc33xx_kernel.patch ?

    I have seen a similar issue but this was done if incorrect kernel patch was applied.