QCN镜像制作

QCN镜像制作

 

1、制作MODEM工程版镜像

所谓工程版modem镜像就是用于制作QCN镜像的modem镜像NON-HLOS.bin。

1.1查找bulid_id

在modem_proc/build/ms/build_cfg.xml文件中查找bulid_id。如我们的项目是8998平台,但我们编译脚本compile_tools/Scripts/(本人没有找到)中是按照8998平台来编译的,如下图:

                

 

所以我们按照chip_name为8909来查找build_id。我们在build_cfg.xml 中找到相应chip_name 8909 对应的bulid_id为FAAAANVZ, 如图(2):

     

                              图(2)

 

注意:bulid_id还可以在modem_proc\build\ms\build_Xlog中找到,如图(3)

    

                             图(3)

 

1.2修改文件

根据bulid_id FAAAANVZ,在modem_proc/build/ms/目录下找到相应的custxxxxxxq.h(其中xxxxxx就是 FAAAANVZ,即文件custfaaaanvzq.h)。修改该custxxxxxx.h,在其中添加如下代码:

      #define FEATURE_EFS_ENABLE_FACTORY_IMAGE_SECURITY_HOLE

 

1.3编译镜像

修改后,按照正常的modem编译流程,编译modem,在\common\build\bin\asic_xxx中生成的NON-HLOS.bin就是我们需要的工程版的镜像。

./build_p660.sh modem

cd common/build/

python update_common_info.py

生成的image在路径: common/build/bin/asic/NON-HLOS.bin

 

2、下载工程镜像

做如下操作:

用fastboot命令烧录工程版modem镜像到手机中去。然后删除QCN相关分区。之后用QPST Software Download下载新发布的QCN。

           fastboot erase modem

           fastboot erase modemst1

           fastboot erase modemst2

           fastboot erase fsg

           fastboot flash modem NON-HLOS.bin

           fastboot reboot

        

                           图(4)

 

3、制作QCN镜像

3.1删除mmgsdi文件夹

手机工作在工厂模式,通过USB连接到电脑。打开QPST工具下面附带的QPST EFS Explorer软件,然后看到mmgsdi文件夹,把他删除,如下图(5):

 

                                 图(5)

3.2生成fs_image.tar.gz文件

Windows上安装perl工具软件。注意要在非加密状态下安装ActivePerl,安装完后重启电脑。

复制modem_proc\core\storage\tools到windows路径下,如我放在F:\下。

用cmd命令行cd到tools路径下,执行如下图(6)的命令perl efsreadimage.pl -z。切记QPST Server要保持在运行情况下,即EFS Explorer不要退出,执行命令。看到如图(6)Extracting Image :DONE!提示后,在tools文件夹下会生成fs_image.tar.gz文件。

 

                                图(6)

3.3生成fs_image.tar.gz.mbn文件

把fs_image.tar.gz拷贝到Ubuntu系统中modem_proc/core/storage/tools/qdst目录下。

打Ubuntu终端,cd到modem_proc/core/storage/tools/qdst目录下:

    cd modem_proc/core/storage/tools/qdst/

确保openssl已安装。

执行命令:

python QDSTMBN.py fs_image.tar.gz

该命令会生成fs_image.tar.gz.mbn,如下图(7)。看到“QDSTMBN:       fs_image.tar.gz.mbn created”提示,表示生成成功。

    注意:有的电脑可能openssl没有安装,这样这个文件就不能成功。

 

                             图(7)

3.4 生成QCN镜像fs_image.tar.gz.mbn.img

把上面生成的fs_image.tar.gz.mbn 拷贝到modem_proc/core/bsp/efs_image_header/tools中:

    cp fs_image.tar.gz.mbn ../../../bsp/efs_image_header/tools/

然后把modem_proc/build/ms/bin/build_id/efs_image_meta.bin复制到文件夹modem_proc/core/bsp/efs_image_header/tools/中:

    cd ../../../bsp/efs_image_header/tools/

    cp ../../../../build/ms/bin/FAAAANYZ/efs_image_meta.bin ./

然后执行:

    python efs_image_create.py efs_image_meta.bin fs_image.tar.gz.mbn 

在modem_proc/core/bsp/efs_image_header/tools/中会生成fs_image.tar.gz.mbn.img。这样我们的生成合成镜像的工作就完成了。

接下来就可以下载我们合成的镜像

 

4、下载QCN镜像

4.1 Fastboot下载

先擦除QCN相关分区,然后下载镜像,相关命令如下:

fastboot erase modemst1

fastboot erase modemst2

fastboot erase fsg

fastboot flash fsg fs_image.tar.gz.mbn.img

4.2高通工具下载(EMMC Software Download app)

需要先编辑一下下载脚本。修改rawprogram_unsparse.xml 中fsg、modemst1、modemst2相关分区需要烧录的文件名,添加fs_image.tar.gz.mbn.img,如下图(8)所示

 

                               图(8)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值