同学,别退出呀,我可是全网最牛逼的 Android 蓝牙分析博主,我写了上百篇蓝牙文章,请点击下面了解本专栏,进入本博主主页看看再走呗,一定不会让你后悔的,记得一定要去看主页置顶文章哦。
一、概述
作为蓝牙开发者,我们处理了解蓝牙framework、协议栈之外,还是要了解下蓝牙驱动流程的,因为在处理蓝牙开关打开失败等问题上,需要从log从查看蓝牙驱动是否打开,那么本文就分析下蓝牙驱动流程。
二、案例分析和源码分析
当固件发生问题,就会走下面这个流程,我们一般需要熟悉这个流程,抓取到有效日志,提交给平台方;接下来就是追踪到固件等等一些处理函数中了,
stp_btm_init_trigger_assert_timer
如果蓝牙芯片发生 assert exception,
流程大概会是
1. trigger assert
2. coredump flow 手机路径:data/vendor/connsyslog/
代码路径:vendor/mediatek/proprietary/hardware/connectivity/combo_tool/src/stp_dump/stp_dump.c
#define COMBO_T32_DIR "/data/vendor/connsyslog/"
3. connsys chip reset
贵公司上传的:
/bt-tombstone/log_kmsg 里面已经有第二阶段的 core