起因:
最近在折腾去年在并夕夕买的斐讯 N1,在刷入 Armbian 系统后,使用自带的 DTB 发现负载一直居高不下,
解决方法为替换其他大佬编译的低负载 DTB。然而我刷入了在恩山论坛下载的 meson-gxl-s905d-phicomm-n1-xiangsm.dtb 发现内存从 2GB 缩水到 800M 左右了,可能因为我刷入的镜像是最新的,而这个 DTB 是旧版的原因吧,然而又找不到适合的 DTB,于是我想能不能自己来编译呢?
分析 DTB:
左边为原镜像的高负载 DTB,右边为旧版的低负载 DTB。
在继续查看了几个旧版本的原 DTB 和低负载 DTB 进行对比后发现,是 212 行进行了注释,所以可以肯定就是这行代码解决高负载问题。
编译低负载 DTB:
反编译固件自带的 DTB 文件 dtc -I dtb -O dts -o n1.dts /boot/dtb/amlogic/meson-gxl-s905d-phicomm-n1.dtb
编辑反编译出的 n1.dts 文件,并修改关键代码 nano n1.dts
当然也可以选择使用 SFTP 工具下载到本地再编辑,我也是这么干的,(//▽//)。
将修改后的 DTS 文件编译回 DTB:
dtc -I dts -O dtb -o n1.dtb n1.dts
结果:
开机后负载会逐渐下降,甚至归零。