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.

PROCESSOR-SDK-AM62X: Issue with Bluetooth HCI Attach on AM62x EVM - Kernel Panic

Part Number: PROCESSOR-SDK-AM62X
Other Parts Discussed in Thread: WL1837

Tool/software:

Hi ,

      I am currently working with the AM62x EVM and using the WL1837 module for Bluetooth communication. After configuring the system and attempting to initiate the Bluetooth HCI interface using the following command:


hciattach ttyS4 texas -s 115200
The system successfully recognizes the chip and loads the firmware, but I am encountering a kernel panic. The error trace suggests a fault occurring when the Bluetooth stack interacts with the system, particularly during the put_pid function execution. Below is the relevant part of the error message:

[ 218.945016] Unable to handle kernel paging request at virtual address ffff00102f38de08
[ 218.952985] Mem abort info:
[ 218.955768] ESR = 0x0000000096000005
...
[ 219.236921] ---[ end trace 0000000000000000 ]---
I have verified the configuration of the Bluetooth stack and ensured the proper enabling of rfcomm during kernel configuration (make menuconfig). Despite this, the issue persists, leading to a kernel panic upon attempting to load the Bluetooth HCI driver.

I would appreciate your assistance in troubleshooting this issue. It would be helpful if you could provide guidance on any kernel or configuration adjustments I may need to make to resolve this problem.

Looking forward to your response and support

               

root@am62xx-evm:~# hciattach ttyS4 texas -s 115200
Found a Texas Instruments' chip!
Firmware file : /lib/firmware/ti-connectivity/TIInit_11.8.32.bts
Loaded BTS script version 1
texas: changing baud rate to 3000000, flow control to 1
[  217.910182] Bluetooth: HCI UART driver ver 2.3
[  217.914683] Bluetooth: HCI UART protocol H4 registered
[  217.919933] Bluetooth: HCI UART protocol LL registered
[  217.925451] Bluetooth: HCI UART protocol Broadcom registered
[  217.931251] Bluetooth: HCI UART protocol QCA registered
[  217.936594] Bluetooth: HCI UART protocol Marvell registered
[  218.152443] Bluetooth: MGMT ver 1.22
[  218.171682] af_alg: Unknown symbol alloc_pages (err -2)
[  218.177851] kauditd_printk_skb: 5 callbacks suppressed
[  218.177866] audit: type=1334 audit(1745299998.234:34): prog-id=24 op=LOAD
[  218.189865] audit: type=1334 audit(1745299998.238:35): prog-id=25 op=LOAD
[  218.196778] audit: type=1334 audit(1745299998.246:36): prog-id=26 op=LOAD
[  218.945016] Unable to handle kernel paging request at virtual address ffff00102f38de08
[  218.952985] Mem abort info:
[  218.955768]   ESR = 0x0000000096000005
[  218.959524]   EC = 0x25: DABT (current EL), IL = 32 bits
[  218.964836]   SET = 0, FnV = 0
[  218.967892]   EA = 0, S1PTW = 0
[  218.971031]   FSC = 0x05: level 1 translation fault
[  218.975905] Data abort info:
[  218.978782]   ISV = 0, ISS = 0x00000005, ISS2 = 0x00000000
[  218.984262]   CM = 0, WnR = 0, TnD = 0, TagAccess = 0
[  218.989311]   GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0
[  218.994616] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000082fb7000
[  219.001311] [ffff00102f38de08] pgd=18000000f7ff8003, p4d=18000000f7ff8003, pud=0000000000000000
[  219.010011] Internal error: Oops: 0000000096000005 [#1] PREEMPT SMP
[  219.016266] Modules linked in: hci_uart btqca btbcm overlay wl18xx wlcore mac80211 libarc4 bluetooth cfg80211 rpmsg_ctrl rpmsg_char ecdh_generic irq_pruss_intc pru_rproc ecc rfkill cc33xx_sdio crct10dif_ce snd_soc_simple_card snd_soc_simple_card_utils wlcore_sdio rti_wdt k3_j72xx_bandgap ti_k3_r5_remoteproc ti_k3_m4_remoteproc rtc_ti_k3 snd_soc_davinci_mcasp sa2ul snd_soc_ti_udma authenc snd_soc_tlv320aic3x_i2c pruss at24 mcrc64 snd_soc_ti_edma snd_soc_ti_sdma snd_soc_tlv320aic3x tps6598x typec backlight ipv6
[  219.061383] CPU: 1 PID: 1029 Comm: hciattach Not tainted 6.6.32-g98ba5d44ea48 #2
[  219.068765] Hardware name: Texas Instruments AM625 SK (DT)
[  219.074236] pstate: 40000005 (nZcv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[  219.081184] pc : put_pid.part.0+0x1c/0xac
[  219.085199] lr : put_pid+0x14/0x24
[  219.088594] sp : ffff800082c63c80
[  219.091895] x29: ffff800082c63c80 x28: ffff00002f48d580 x27: 0000000000000000
[  219.099019] x26: 0000000000000000 x25: 0000000000000000 x24: 0000000000000000
[  219.106143] x23: ffff0000004d68e0 x22: ffff800079653800 x21: ffff80007966f150
[  219.113266] x20: ffff0000037772c8 x19: ffff000003777000 x18: 0000000000000000
[  219.120390] x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000000000
[  219.127513] x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000
[  219.134636] x11: 0000000000000000 x10: 0000000000000000 x9 : 0000000000000000
[  219.141759] x8 : ffff000005a255b4 x7 : 0000000000000140 x6 : ffff000003777144
[  219.148882] x5 : 0000000000000024 x4 : 0000000000000000 x3 : 0000000000000001
[  219.156005] x2 : 0000000000000000 x1 : ffff00002f48dda0 x0 : ffff00102f38dda0
[  219.163129] Call trace:
[  219.165565]  put_pid.part.0+0x1c/0xac
[  219.169221]  put_pid+0x14/0x24
[  219.172269]  __sk_destruct+0xdc/0x224
[  219.175925]  sk_destruct+0x50/0x60
[  219.179317]  __sk_free+0x74/0x120
[  219.182623]  sk_free+0x64/0x88
[  219.185668]  hci_sock_release+0x54/0x260 [bluetooth]
[  219.190723]  __sock_release+0x40/0xb4
[  219.194379]  sock_close+0x18/0x28
[  219.197686]  __fput+0xb4/0x274
[  219.200736]  __fput_sync+0x50/0x5c
[  219.204130]  __arm64_sys_close+0x38/0x7c
[  219.208043]  invoke_syscall+0x48/0x114
[  219.211785]  el0_svc_common.constprop.0+0xc0/0xe0
[  219.216479]  do_el0_svc+0x1c/0x28
[  219.219784]  el0_svc+0x2c/0x84
[  219.222835]  el0t_64_sync_handler+0x120/0x12c
[  219.227182]  el0t_64_sync+0x190/0x194
[  219.230841] Code: 910003fd f9000bf3 b9400400 8b001020 (f9403413)
[  219.236921] ---[ end trace 0000000000000000 ]---

  • root@am62xx-evm:~#
    root@am62xx-evm:~#
    root@am62xx-evm:~# iw wlan0 link
    Not connected.
    root@am62xx-evm:~#
    root@am62xx-evm:~#
    root@am62xx-evm:~# iw wlan0 link
    Not connected
    
    root@am62xx-evm:~# ifconfig
    eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
            inet 192.168.0.40  netmask 255.255.255.0  broadcast 192.168.0.255
            inet6 2406:b400:b4:8169:1e63:49ff:fe18:84f1  prefixlen 64  scopeid 0x0<global>
            inet6 fe80::1e63:49ff:fe18:84f1  prefixlen 64  scopeid 0x20<link>
            ether 1c:63:49:18:84:f1  txqueuelen 1000  (Ethernet)
            RX packets 538  bytes 58576 (57.2 KiB)
            RX errors 0  dropped 1  overruns 0  frame 0
            TX packets 113  bytes 13838 (13.5 KiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    eth1: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
            ether 3e:a2:4c:bc:be:1c  txqueuelen 1000  (Ethernet)
            RX packets 0  bytes 0 (0.0 B)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 0  bytes 0 (0.0 B)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
            inet 127.0.0.1  netmask 255.0.0.0
            inet6 ::1  prefixlen 128  scopeid 0x10<host>
            loop  txqueuelen 1000  (Local Loopback)
            RX packets 18  bytes 2186 (2.1 KiB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 18  bytes 2186 (2.1 KiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    wlan0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
            ether 90:48:46:2e:69:5e  txqueuelen 1000  (Ethernet)
            RX packets 0  bytes 0 (0.0 B)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 0  bytes 0 (0.0 B)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    root@am62xx-evm:~#

  • Hi Vaishnavi,

    Could you please post the DTS modifications you have made, if any? Are you using the latest am62x board?

    Link: https://www.ti.com/tool/SK-AM62B-P1