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:AM62x EVM 上的蓝牙 HCI 连接问题-内核严重错误

Guru**** 2362840 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1504757/processor-sdk-am62x-issue-with-bluetooth-hci-attach-on-am62x-evm---kernel-panic

器件型号:PROCESSOR-SDK-AM62X
Thread:WL1837中讨论的其他器件

工具/软件:

您好、

   我目前正在使用 AM62x EVM 并使用 WL1837模块进行蓝牙通信。 配置系统并尝试使用以下命令启动蓝牙 HCI 接口后:


hciattach ttyS4 Texas -s 115200
系统成功识别芯片并加载固件、但我遇到内核错误。 错误跟踪表明在蓝牙栈与系统交互时发生了故障、尤其是在 put_pid 函数执行期间。 以下是错误消息的相关部分:

[218.945016]无法处理虚拟地址 ffff00102f38de08的内核分页请求
[218.952985]存储器中止信息:
[218.955768] ESR = 0x0000000096005
...
[219.236921]--[结束跟踪000000000000 ]-----
我已经验证了蓝牙协议栈的配置、并确保在内核配置期间正确启用 RFCOMM (make menuconfig)。 尽管如此、问题仍然存在、导致尝试加载蓝牙 HCI 驱动程序时出现内核错误。

如果您能帮助解决此问题、我将不胜感激。 如果您能提供有关为解决此问题而需要进行的任何内核或配置调整的指导、将会很有帮助。

期待您的回应和支持

        

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:~#

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Vaishnavi:

    您能否发布您所做的 DTS 修改(如果有)?  您是否在使用最新的 am62x 板?

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