在MSM8916随身WiFi上玩转Linux - part2 新设备
Table of contents
动机¶
哎呀,剁手了,又买了一个随身WiFi想刷机。不过这次不再是 UFI001C_MB_V01
而是
UFI_16_V3
。刷机流程稍有不同。后面又整了台 UFI003
,看过发现和 UFI001C
一样。
刷机流程¶
备份¶
首先是 备份备份备份!
比较友好的是,该款版型的系统原生开启高通调试接口,备份基带QCN无需ROOT。老规矩,上 QPST。
其次是全盘eMMC备份。这里使用 Qualcomm Premium Tool 中备份Block0的功能。
fastboot刷机¶
下面尝试进入fastboot刷机。哎?怎么刷不进去?
% fastboot flash partition gpt_both0.bin
Sending 'partition' (33 KB) OKAY [ 0.005s]
Writing 'partition' FAILED (remote: 'failed to write partition,please contact vendor')
fastboot: error: Command failed
看样子fastboot做了限制加了锁。经过一番研究,发现在MSM8916平台上fastboot在 aboot
(appsboot/lk1st) 分
区,而刷GNU/Linux正好也要更新这个分区,干脆直接用 Qualcomm Premium Tool 把
该写的 aboot
分区通过9008提前写入。看上去不错,fastboot被替换掉了。
然后看情况稍微修改一下 Debian 的刷机脚本,不过好像不改也行。总之就是自己准备好备份,然后相应刷就行。
接下来的步骤和前一篇文章基本一致。
补充¶
LED怎么不亮¶
emm这块板子的LED是用
我完完全全地被骗了,这就是三个普通的GPIO LED,只不过其中有一个直接连到了PMIC
上。另外,这板子上的红灯居然是常亮的,只和电源是否接通有关系(看板子估计是因为用一个电阻替换了应有的三脚管);蓝色LED结果是个绿
的,我猜都是为了省经费。aw2013
控制的,是 i2c6
下面挂的一颗LED控制器。需要相应地修改设备树。
apt-key 的代替方案¶
read https://www.linuxuprising.com/2021/01/apt-key-is-deprecated-how-to-add.html
修改appsboot¶
Clone lk2nd,修改相关配置并编译。原来的aboot是给 UFI001C_MB_V01
用的,这里hack一下给 UFI_16_V3
用。其实也就
修改了一下相关LED的引脚定义,顺带改一下product名称,没别的了。
后记¶
经过这次曲折的研究,我意外学习了一些设备树和驱动的概念。感觉设备树这个设计很神 奇啊,本来分散的硬件通过设备树的描述就可以当成一个整体了;驱动集成到内核也把硬 件细节封装了起来;原本的芯片像是通过外围设备组成了一个更大的芯片。以后看情况再 补充学习一下。