- 博客(9)
- 收藏
- 关注
原创 SPI通信流程
而阻塞的地方就在传输完成后中断处理这里,也就是gpi_handle_irq这里,传输很快就完成了,但中断处理等待了很久,而SPI那边只能等250ms,250ms内没有收到事件过来,SPI驱动这边就报告timeout,驱动这边除非是把250ms改长,要么就是系统去优化减少高负载场景中断处理等待时间。因为方向搞错了,也是折腾了比较久,最后还是回归本质,每一步加log看,具体哪一步骤花费时间多导致超时。spi通信报TX timeout。
2026-01-10 09:25:20
216
原创 高通Uart通信问题记录
振荡循环开始,循环链条:1. 终端输出 `\r\n` 到 stdout2. stdout 连接到 cat 进程3. cat 从终端收到 `\r\n`4. cat 将 `\r\n` 写入 /dev/ttyHS3(发送到串口TX)5. 由于硬件回环,TX数据立即被RX接收6. cat 从 /dev/ttyHS3 读到 `\r\n`7. cat 将 `\r\n` 输出到终端 stdout8. 回到第1步,形成无限循环。0d 0a的来源:不是你的数据,是终端显示机制自动添加的格式控制符。
2026-01-09 19:11:47
742
原创 UEFI阶段uart通信
最近有几个类似的需求,修改过程遇到了一些问题,咨询了供应商搞好了学到了点东西记录一下。需求主要是在abl阶段让模块和外设能通过uart通信,速度有快(一般2~3M)有慢(115200)。实现过程也不复杂,其实就和常用tlmm这些类似,主要是一些细节要注意下。
2025-02-22 14:49:35
450
原创 高通平台FFBM模式反复重启
将adbd和相关模块压缩到capex,并在首次启动时压缩到data分区,这与FFBM不需要挂载data分区的设计相冲突,因此导致无法找到相关模块,此时设备就会反复重启。高通文档中明确说了:从Android 14(U)开始,不再支持FFBM(Fast Factory Boot Mode)。可以通过修改代码去正常使用FFBM,高通说是不推荐,改的话建议是在factory版本吧apex关掉,正常版本还是打开。主要是把apex关掉就可以了,实测有效,关闭之后不再反复重启。
2024-12-12 11:05:52
1051
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
2