首先克隆github的项目并不需要有github的账户,如果系统是ubuntu等常见的linux系统,一般连git都是预安装好的。比如在ubuntu中输入如下命令,就可以克隆lk2nd项目了:
sudo git clone https://github.com/msm8916-mainline/lk2nd
博主遇到的问题是给红米6pro刷机时遇到了触屏失效的bug,官方给出的解决方法是去修改lk2nd中的对应参数。说是这个dts文件中的参数导致了触屏失灵,触摸屏不灵涉及到两个参数:
-"goodix,gt917d"
-"edt,edt-ft5406"
或者把对应值都修改为前者,或者都修改为后者。注意红米6pro需要同时修改两个文件,分别是:
lk2nd/lk2nd/device/dts/msm8953/msm8953-xiaomi-common.dts
lk2nd/lk2nd/device/dts/msm8953/msm8953-xiaomi-daisy.dts
https://github.com/msm8916-mainline/lk2nd/blob/main/lk2nd/device/dts/msm8953/msm8953-xiaomi-common.dts#L48-L59
修改完毕后需要本地编译,编译命令是下面这条,直接运行命令会收到一条错误,因为没有安装必要的支持:
sudo make TOOLCHAIN_PREFIX=arm-none-eabi- lk2nd-msm8953
于是又百度了需要安装的支持项:
sudo apt install gcc-arm-none-eabi device-tree-compiler libfdt-dev python3
汇报一下结果,lk2nd是成功修改了,然而屏幕还是无法正常使用。
最后发现其实并不是触屏型号的问题,而是触屏与屏幕没有匹配好,postmarketOS相关页仅提示了这么一句,超出能力范围,只能坐等新版本了。
如果您的替换显示器与goodix触摸控制器没有校准好,请安装device-xiaomi-daisy-fake-goodixPMOS。