3,304
社区成员




1, 首先是对设备进行完全断电(断开电源和type-C). 重新烧写确认不是设备长时间处于9008 导致的.
2, 查看QFIL的烧机的log, 如果你看到以下的log:
2024-06-03 14:45:48.626 Start Download
2024-06-03 14:45:48.626 Program Path:F:\Projects\rom\SmartVision80-factory-321.299.299.0002-m\ufs\xbl_s_devprg_ns.melf
2024-06-03 14:45:48.627 *** Working Folder:D:\Users\yl0996\AppData\Roaming\Qualcomm\QFIL\COMPORT_16
2024-06-03 14:45:48.656 Binary build date: Jun 25 2019 @ 03:16:15
2024-06-03 14:45:48.657 QSAHARASERVER CALLED LIKE THIS: 'D:\Program Files (x86)\Qualcomm\QPST\bin\QSaharaServer.ex'Current working dir: D:\Users\yl0996\AppData\Roaming\Qualcomm\QFIL\COMPORT_16
2024-06-03 14:45:48.657 Sahara mappings:
2024-06-03 14:45:48.658 2: amss.mbn
2024-06-03 14:45:48.658 6: apps.mbn
2024-06-03 14:45:48.659 8: dsp1.mbn
2024-06-03 14:45:48.659 10: dbl.mbn
2024-06-03 14:45:48.659 11: osbl.mbn
2024-06-03 14:45:48.661 12: dsp2.mbn
2024-06-03 14:45:48.661 16: efs1.mbn
2024-06-03 14:45:48.662 17: efs2.mbn
2024-06-03 14:45:48.662 20: efs3.mbn
2024-06-03 14:45:48.663 21: sbl1.mbn
2024-06-03 14:45:48.664 22: sbl2.mbn
2024-06-03 14:45:48.664 23: rpm.mbn
2024-06-03 14:45:48.664 25: tz.mbn
2024-06-03 14:45:48.665 28: dsp3.mbn
2024-06-03 14:45:48.665 29: acdb.mbn
2024-06-03 14:45:48.665 30: wdt.mbn
2024-06-03 14:45:48.666 31: mba.mbn
2024-06-03 14:45:48.666 13: F:\Projects\rom\SmartVision80-factory-321.299.299.0002-m\ufs\xbl_s_devprg_ns.melf
2024-06-03 14:45:48.666
2024-06-03 14:45:48.667 14:45:48: ERROR: function: sahara_rx_data:286 Command packet length 1702240364 too large to fit
2024-06-03 14:45:48.667
2024-06-03 14:45:48.667 14:45:48: ERROR: function: sahara_main:982 Sahara protocol error
2024-06-03 14:45:48.668
2024-06-03 14:45:48.668 14:45:48: ERROR: function: main:320 Uploading Image using Sahara protocol failed
2024-06-03 14:45:48.668
2024-06-03 14:45:48.669
2024-06-03 14:45:48.669 Download Fail:Sahara Fail:QSaharaServer Fail:Process fail
2024-06-03 14:45:48.669 Finish Download
从这个log中可以看出: ' Command packet length 1702240364 too large to fit'
是对应的固件中的对应镜像过大了, 设备分区表规定的大小, 所以就会导致qfil的烧机失败.
解决方法为:
我们在build镜像的时候, 会指定分区镜像的大小, 将其修改为小于分区表规定分区的大小的size, 从而我们打出来的镜像包可以使用qifl重新烧写这个固件.