OTA篇(1)AB系统

news2024/12/26 17:54:06

制作升级包:

一、整包升级包制作

以tina4.0 A133 b3版型为例

在/target/allwinner/a133-b6/swupdate或者

target/allwinner/generic/swupdate/目录添加如下文件

1.非安全固件

sw-subimgs-ab.cfg

swota_file_list=(
target/allwinner/generic/swupdate/sw-description-ab:sw-description
out/${TARGET_BOARD}/uboot.img:uboot
out/${TARGET_BOARD}/boot0.img:boot0
out/${TARGET_BOARD}/boot.img:kernel
out/${TARGET_BOARD}/rootfs.img:rootfs
)

 升级指令:swupdate_pack_swu -ab

2.安全固件

sw-subimgs-ab-secure.cfg

swota_file_list=(
target/allwinner/generic/swupdate/sw-description-ab:sw-description
out/${TARGET_BOARD}/image/rootfs.fex:rootfs
out/${TARGET_BOARD}/image/toc1.fex:uboot
out/${TARGET_BOARD}/image/toc0.fex:boot0
out/${TARGET_BOARD}/image/boot.fex:kernel
)

升级指令:swupdate_pack_swu -ab-secure

制作成功log:
~/Tina$:swupdate_pack_swu -ab-secure
记录了128+0 的读入
记录了128+0 的写出
65536 bytes (66 kB, 64 KiB) copied, 0.00795961 s, 8.2 MB/s
记录了2048+0 的读入
记录了2048+0 的写出
1048576 bytes (1.0 MB, 1.0 MiB) copied, 0.0114947 s, 91.2 MB/s
####/home/**/Tina/target/allwinner/a133-b6/swupdate/sw-subimgs-ab-secure.cfg####
target/allwinner/generic/swupdate/sw-description-ab:sw-description
out/a133-b6/image/rootfs.fex:rootfs
out/a133-b6/image/toc1.fex:uboot
out/a133-b6/image/toc0.fex:boot0
out/a133-b6/image/boot.fex:kernel

-------------------- config --------------------
subimgs config by: /home/**/Tina/target/allwinner/a133-b6/swupdate/sw-subimgs-ab-secure.cfg
out dir: /home/**/Tina/out/a133-b6/swupdate
-------------------- do copy --------------------
-------------------- do sha256 --------------------
-------------------- do sign --------------------
-------------------- do md5sum --------------------
6f6c07549e1a85a1d7fc4ef676f63186  sw-description
68a2c0f6952487732e2d7f03743b870e  rootfs
8e9be0b89b1188c2141d334ec1ab33bd  uboot
cfee1d1698e9de3aead374bf01bf8805  boot0
b8641a699c88b35b3629c53d6a033c5d  kernel
-------------------- do cpio --------------------
sw-description
rootfs
uboot
boot0
kernel
cpio_item_md5
120241 块
-------------------- out file in --------------------


Tina/out/a133-b6/swupdate/tina-a133-b6-ab-secure.swu

59M     /home/**/Tina/out/a133-b6/swupdate/tina-a133-b6-ab-secure.swu

3.注意制作失败案例

swupdate_pack_swu -ab

###storage type error###


###cannot choose boot0, please config storage_type in sys_config ###

记录了2048+0 的读入
记录了2048+0 的写出
1048576 bytes (1.0 MB, 1.0 MiB) copied, 0.0196256 s, 53.4 MB/s

说明sys_config.fex没指定具体的storage_type

sys_config.fex文件改 storage_type     = 1即可

二、差分包升级包制作

.fw_printenv命令

root@TinaLinux:/# fw_printenv
bootdelay=0
bootcmd=run setargs_nand boot_normal
earlyprintk=sunxi-uart,0x05000000
initcall_debug=0
console=ttyS0,1500000
nand_root=/dev/nandd
mmc_root=/dev/mmcblk0p6
init=/sbin/init
rdinit=/rdinit
loglevel=8
cma=32M
mac=
wifi_mac=
bt_mac=
specialstr=
keybox_list=rpmb_key,dm_crypt_key
trace_buf_size=64M
trace_event=sched_wakeup,sched_switch,sched_blocked_reason,sched_cpu_hotplug,block,ext4
trace_enable=0
setargs_nand=setenv bootargs console=${console} root=${nand_root} rootwait init=${init} rdinit=${rdinit} loglevel=${loglevel}  earlyprintk=${earlyprintk} initcall_debug=${initcall_debug}  loglevel=${logleve
l} partitions=${partitions} cma=${cma} gpt=1 rootfstype=ext4
setargs_mmc=setenv bootargs console=${console} root=${mmc_root} rootwait init=${init} rdinit=${rdinit} loglevel=${loglevel} earlyprintk=${earlyprintk} initcall_debug=${initcall_debug} loglevel=${loglevel} p
artitions=${partitions} cma=${cma} gpt=1 rootfstype=ext4
boot_normal=sunxi_flash read 45000000 ${boot_partition};bootm 45000000
boot_recovery=sunxi_flash read 45000000 recovery;bootm 45000000
boot_fastboot=fastboot
boot_partition=bootB
root_partition=rootfsB
systemAB_next=B
swu_next=reboot

手动切换到B系统

fw_setenv boot_partition bootB
fw_setenv root_partition rootfsB

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2235261.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

移远通信推出八款天线新品,覆盖5G、4G、Wi-Fi和LoRa领域

近日,全球领先的物联网整体解决方案供应商移远通信宣布,再次推出八款高性能天线新品,进一步丰富其天线产品阵容,更好地满足全球客户对高品质天线的更多需求。具体包括5G超宽带天线YECT005W1A和YECT004W1A、5G天线YECT028W1A、4G天…

AI时代,中国高端厨居生活还能怎样进化?

每次走进厨房,看到安静待在角落的各式各样厨电和琳琅满目的食材,想想刚从职场卸甲归来,却还要和这些东西斗智斗勇,都忍不住来上一句:要是有魔法就好了。 有了魔法就能像《哈利波特》里的韦斯莱夫人一样,只…

【HTML】——VSCode 基本使用入门和常见操作

阿华代码,不是逆风,就是我疯 你们的点赞收藏是我前进最大的动力!! 希望本文内容能够帮助到你!! 目录 零:HTML开发工具VSCode的使用 1:创建项目 2:创建格式模板&#x…

ssm057学生公寓管理中心系统的设计与实现+jsp(论文+源码)_kaic

毕 业 设 计(论 文) 题目:学生公寓管理中心系统设计与实现 摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本学生公寓管理…

WAL日志

1.WAL概述 PG WAL(Write-Ahead Logging)日志是PostgreSQL数据库中的一种重要机制,用于保证数据库的完整性和数据恢复。 1.1定义与功能 WAL日志是PostgreSQL的持久性技术,它将所有对数据库的修改操作(如INSERT、UPDA…

算法练习:1658. 将 x 减到 0 的最小操作数

题目链接:1658. 将 x 减到 0 的最小操作数 这道题目的意思就是,给定一个整数数组,和一个x,只能从数组最左边或者最右边进行删除,使得x恰好等于0,并且要操作次数最少的情况,否则返回-1. 这道题直…

51c大模型~合集17

我自己的原文哦~ https://blog.51cto.com/whaosoft/11599989 #关于大模型「越狱」的多种方式 此项目是由伊利诺伊大学香槟分校(UIUC)的汪浩瀚教授主导,汇集了多名intern的共同努力而成。长久以来,这个跨学科的团队一直在前沿科…

Vue前端开发之自定义动画样式

在上一小节中,我们介绍了动画的实现源于6个类别样式,它们的名称默认前缀是一个“v”字母或者指定的名称,如“sc”,其实,也可以不使用这些固定的类别样式,开发者可以自定义任意的类别样式,供动画…

数据库SQL学习笔记

第 1 章 绪论 1.1 数据库系统概述 1.1.1 四个基本概念 数据库系统(DBS) 定义:是指在计算机系统中引入数据库后的系统构成 构成:数据库,数据库管理系统(及其开发工具),应用系统,数据库管理员…

前端好用的网站分享——CSS(持续更新中)

1.CSS Scan 点击进入CSS Scan CSS盒子阴影大全 2.渐变背景 点击进入color.oulu 3.CSS简化压缩 点击进入toptal 4.CSS可视化 点击进入CSS可视化 这个强推,话不多说,看图! 5.Marko 点击进入Marko 有很多按钮样式 6.getwaves 点击进入getwaves 生…

云集电商:如何通过 OceanBase 实现降本 87.5%|OceanBase案例

云集电商,一家聚焦于社交电商的电商公司,专注于‘精选’理念,致力于为会员提供超高性价比的全品类精选商品,以“批发价”让亿万消费者买到质量可靠的商品。面对近年来外部环境的变化,公司对成本控制提出了更高要求&…

软考高级架构 - 8.3 - ATAM方法架构评估实践 - 超详细讲解+精简总结

总结: ATAM时评估架构的质量属性方法,帮助权衡和识别风险,分为四个阶段。 阶段1——演示 介绍ATAM方法,介绍软件商业目标和关键需求,详细介绍要被评估的架构。 阶段2——调查和分析 深入分析系统架构,评估…

Redis - Hash 哈希

一、基本认识 ⼏乎所有的主流编程语⾔都提供了哈希(hash)类型,它们的叫法可能是哈希、字典、关联数 组、映射。在Redis中,哈希类型是指值本⾝⼜是⼀个键值对结构,形如key"key",value{{ field1, v…

C++上机实验|多态性编程练习

1.实验目的 (1)理解多态性的概念。 (2)掌握如何用虚函数实现动态联编 (3)掌握如何利用虚基类。 2.实验内容 设计一个飞机类 plane,由它派生出歼击机类fighter和轰炸机类 bomber,歼击机类fighter 和轰炸机类bomber 又共同派生出歼轰机(多用途战斗机)。利用虚函数和虚基类描述…

岛屿数量 广搜版BFS C#

和之前的卡码网深搜版是一道题 力扣第200题 99. 岛屿数量 题目描述 给定一个由 1(陆地)和 0(水)组成的矩阵,你需要计算岛屿的数量。岛屿由水平方向或垂直方向上相邻的陆地连接而成,并且四周都是水域。…

动态规划 之 路径问题 算法专题

一. 不同路径 不同路径 状态表示 dp[i][j] 表示走到[i][j]位置, 有几种不同的路径状态转移方程 以离[i][j] 最近的位置划分问题 1.从[i - 1][j] 到[i][j], 到[i][j]位置的不同路径数 就是和 到[i - 1][j]位置的不同路径数相同, 即dp[i][j] dp[i - 1][j] 2.从[i][j - 1] 到[i…

别名路径联想设置

如何使用/进行路径提示? 找到jsconfig.json文件,如何项目中没有的话,自行创建 {"compilerOptions": {"paths": {"/*": ["./src/*"]}},"exclude": ["node_modules", "dis…

40V耐压 降压恒压芯片 SL3061替换XL4301 支持2.5A电流 内置MOS管

一、基本性能参数对比 二、替换可行性分析 耐压能力:SL3061的耐压能力为40V,而XL4301的工作电压范围为8V至40V,最大耐压可能更高(达到45V)。在多数应用场景下,SL3061的耐压能力应能满足需求,但…

字节青训-小D的 abc 变换问题

问题描述 小D拿到了一个仅由 "abc" 三种字母组成的字符串。她每次操作会对所有字符同时进行以下变换: 将 a 变成 bc将 b 变成 ca将 c 变成 ab 小D将重复该操作 k 次。你的任务是输出经过 k 次变换后,得到的最终字符串。 例如:对于初…

设计模式09-行为型模式2(状态模式/策略模式/Java)

5.4 状态模式 5.4.1 状态模式的定义 1.模式动机:有些对象具有多种状态,这些状态在某些情况下能够相互转换,对象在不同的状态下将具有不同的行为,将拥有状态的对象中和状态的行为分离。 2.模式定义:允许一个对象在其…