Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1371751
  • 博文数量: 478
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 4833
  • 用 户 组: 普通用户
  • 注册时间: 2014-06-28 11:12
文章分类

全部博文(478)

文章存档

2019年(1)

2018年(27)

2017年(21)

2016年(171)

2015年(258)

我的朋友

分类: Android平台

2017-08-26 14:28:39

[DESCRIPTION]
 
 Android M 版本升级lk 、 preloader 方法。 
 
[SOLUTION]
 
M版本有些平台是默认升级lk和preloader,这些平台有6755,6750,6797等。
有些平台需要修改一些代码来实现。这些平台有6735,6580,6737等。
note:
修改代码等情况,可能导致平台的划分不一定准确,请一定仔细阅读下面所有的内容。
 
判断是否默认升级:
查看MTXXXX_Android_scatter.txt文件。搜索关键字:
is_upgradable
 
一.存在is_upgradable关键字
比如:
- partition_index: SYS19
partition_name: lk
file_name: lk.bin
is_download: true
type: NORMAL_ROM
linear_start_addr: 0xa900000
physical_start_addr: 0xa900000
partition_size: 0x100000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: UPDATE
is_upgradable: true
empty_boot_needed: true
reserve: 0x00
 
is_upgradable的值决定是否升级对应分区,true表示升级,false表示不升级。这种情况下lk和preloader是默认升级的,不需要修改文件。但是如果修改了分区表等情况,可能会改变默认的设置,所以这一步一定要确定:preloader,lk和lk2三个分区的is_upgradable都是true,如果为false,请参考FAQ18188修改分区表OTA_Update字段。
 
二.不存在is_upgradable关键字
修改方法:
 1、Full OTA update:
      修改build/core/makefile
      修改前:
             $(hide) ./device/mediatek/build/releasetools/mt_ota_preprocess.py $(zip_root) $(PRODUCT_OUT) $(PRODUCT_OUT)/ota_update_list.txt 
 
       修改后: 
             $(hide) MTK_LOADER_UPDATE=yes MTK_PRELOADER_OTA_BACKUP=no ./device/mediatek/build/releasetools/mt_ota_preprocess.py $(zip_root) $(PRODUCT_OUT) $(PRODUCT_OUT)/ota_update_list.txt
 
 2、Incremental OTA update:
      编译差分升级包的命令加上如下蓝色部分:

      ./build/tools/releasetools/ota_from_target_files  -s ./device/mediatek/build/releasetools/mt_ota_from_target_files  --block -k -i V2_org.zip V4_new.zip   V2_4.zip


阅读(1955) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~