杜比 在刷了n次固件之后我貌似已经定位到破坏天创者笔记本固件的元凶了,原厂代码中有一行 *(int *)(0x80000e0010010444) |= 0x10;
这一行在驱动初始化和从休眠中恢复的时候都会调用。我不知道这一行原本的目的到底是修改哪个寄存器,但这应该是龙芯工程师在调试的时候加上去的,然后发布最终代码的时候不小心没删掉。因为不同的系统中物理地址空间中的io映射是不一样的,而这个地址在天创者笔记本上正好对应的是固件映射在物理地址空间中的页面(我升级了16G内存和无线网卡,没升级的机器可能不对应这个页面),所以这行代码就破坏了天创者笔记本的固件。这一点经过我刷了n多次固件后证实,只要执行这一行代码,固件必然挂掉。
@yetist 我已经push了相关的fix(就是直接把这行删掉,我大不清楚龙芯工程师原本的意图是什么,不过去掉了貌似没啥影响)到我的github repo。我正在打包中,马上上传prebuilt packages。