T113 (tina) 如何编译打包spi nand flash 固件
-
有没有大佬能指点一下!!!让我少走点弯路 [抱拳]
目前的思路是在sys_config.fex 把 storage_type 改为5
然后分区表不知道怎么改,用的是128M的spi falsh
接着就是pack -
-
在sys_config.fex 把 storage_type 改为5
分区表修改:
打包编译固件后通过phoenixsuit下载固件到板子上
运行起来可以看到uboot的bootlogo
然后就运行不起来了
报错如下:
有没有大佬能指点一下 -
bootargs里修改mtd设备,或者用ubi
在env.cfg里
-
@yuzukitsuru 在 T113 (tina) 如何编译打包spi nand flash 固件 中说:
bootargs里修改mtd设备,或者用ubi
在env.cfg里
大佬,能说详细点吗?没弄过你说的,有点懵逼
-
大佬,请问一下怎么把文件系统改成squashfs呢?在menuconfig找不到
-
@jr_online
Target Images --->
[*] squashfs ---> -
@yuzukitsuru 在 T113 (tina) 如何编译打包spi nand flash 固件 中说:
@jr_online
Target Images --->
[*] squashfs --->可以了,谢谢大佬[抱拳]
-
@jr_online 你好,我边也是Nand启动,现在遇到的问题和你一样,你这个env.cfg怎么修改的呢
-
@lansecd 在 T113 (tina) 如何编译打包spi nand flash 固件 中说:
@jr_online 你好,我边也是Nand启动,现在遇到的问题和你一样,你这个env.cfg怎么修改的呢
rootfstype=squashfs
bootcmd=run setargs_nand boot_normal -
@jr_online 这两个地方和你的一样,还是没有跑起来
[ 2.345411] hub 2-0:1.0: USB hub found [ 2.349659] hub 2-0:1.0: 1 port detected [ 2.357934] cfg80211: Loading compiled-in X.509 certificates for regulatory database [ 2.369727] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7' [ 2.377228] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2 [ 2.380544] clk: Not disabling unused clocks [ 2.386918] cfg80211: failed to load regulatory.db [ 2.391717] ALSA device list: [ 2.400452] #0: audiocodec [ 2.403812] alloc_fd: slot 0 not NULL! [ 2.408372] /dev/root: Can't open blockdev [ 2.413024] VFS: Cannot open root device "ubiblock0_5" or unknown-block(0,0): error -6 [ 2.421929] Please append a correct "root=" boot option; here are the available partitions: [ 2.431306] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) [ 2.440572] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.4.61 #108 [ 2.447397] Hardware name: Generic DT based system [ 2.452786] [<c010e248>] (unwind_backtrace) from [<c010a870>] (show_stack+0x10/0x14) [ 2.461472] [<c010a870>] (show_stack) from [<c07600a0>] (dump_stack+0x7c/0x98) [ 2.469573] [<c07600a0>] (dump_stack) from [<c011956c>] (panic+0x104/0x3d8) [ 2.477380] [<c011956c>] (panic) from [<c0b01270>] (mount_block_root+0x254/0x2fc) [ 2.485771] [<c0b01270>] (mount_block_root) from [<c0b014d0>] (prepare_namespace+0x138/0x178) [ 2.495329] [<c0b014d0>] (prepare_namespace) from [<c07745a0>] (kernel_init+0x8/0x10c) [ 2.504206] [<c07745a0>] (kernel_init) from [<c01010e8>] (ret_from_fork+0x14/0x2c) [ 2.512688] Exception stack(0xc7825fb0 to 0xc7825ff8) [ 2.518348] 5fa0: 00000000 00000000 00000000 00000000 [ 2.527514] 5fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 [ 2.536680] 5fe0: 00000000 00000000 00000000 00000000 00000013 00000000 [ 2.544098] CPU1: stopping [ 2.547131] CPU: 1 PID: 0 Comm: swapper/1 Not tainted 5.4.61 #108 [ 2.553956] Hardware name: Generic DT based system [ 2.559329] [<c010e248>] (unwind_backtrace) from [<c010a870>] (show_stack+0x10/0x14) [ 2.568011] [<c010a870>] (show_stack) from [<c07600a0>] (dump_stack+0x7c/0x98) [ 2.576108] [<c07600a0>] (dump_stack) from [<c010c648>] (handle_IPI+0xcc/0x168) [ 2.584305] [<c010c648>] (handle_IPI) from [<c033849c>] (gic_handle_irq+0x70/0x78) [ 2.592793] [<c033849c>] (gic_handle_irq) from [<c01021cc>] (__irq_svc+0x6c/0xa8) [ 2.601177] Exception stack(0xc7865f80 to 0xc7865fc8) [ 2.606838] 5f80: 0000063c c7ecb4f4 00000000 c0114b40 00000002 c7864000 c0c04e28 c0c04e64 [ 2.616006] 5fa0: 4000406a 410fc075 00000000 00000000 c0c627d0 c7865fd0 c0107f94 c0107f84 [ 2.625169] 5fc0: 60000113 ffffffff [ 2.629080] [<c01021cc>] (__irq_svc) from [<c0107f84>] (arch_cpu_idle+0x1c/0x38) [ 2.637373] [<c0107f84>] (arch_cpu_idle) from [<c013de94>] (do_idle+0xd0/0x120) [ 2.645568] [<c013de94>] (do_idle) from [<c013e180>] (cpu_startup_entry+0x18/0x20) [ 2.654054] [<c013e180>] (cpu_startup_entry) from [<40102bec>] (0x40102bec) [ 2.661872] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) ]---
-
@lansecd 在 T113 (tina) 如何编译打包spi nand flash 固件 中说:
@jr_online 这两个地方和你的一样,还是没有跑起来
[ 2.345411] hub 2-0:1.0: USB hub found [ 2.349659] hub 2-0:1.0: 1 port detected [ 2.357934] cfg80211: Loading compiled-in X.509 certificates for regulatory database [ 2.369727] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7' [ 2.377228] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2 [ 2.380544] clk: Not disabling unused clocks [ 2.386918] cfg80211: failed to load regulatory.db [ 2.391717] ALSA device list: [ 2.400452] #0: audiocodec [ 2.403812] alloc_fd: slot 0 not NULL! [ 2.408372] /dev/root: Can't open blockdev [ 2.413024] VFS: Cannot open root device "ubiblock0_5" or unknown-block(0,0): error -6 [ 2.421929] Please append a correct "root=" boot option; here are the available partitions: [ 2.431306] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) [ 2.440572] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.4.61 #108 [ 2.447397] Hardware name: Generic DT based system [ 2.452786] [<c010e248>] (unwind_backtrace) from [<c010a870>] (show_stack+0x10/0x14) [ 2.461472] [<c010a870>] (show_stack) from [<c07600a0>] (dump_stack+0x7c/0x98) [ 2.469573] [<c07600a0>] (dump_stack) from [<c011956c>] (panic+0x104/0x3d8) [ 2.477380] [<c011956c>] (panic) from [<c0b01270>] (mount_block_root+0x254/0x2fc) [ 2.485771] [<c0b01270>] (mount_block_root) from [<c0b014d0>] (prepare_namespace+0x138/0x178) [ 2.495329] [<c0b014d0>] (prepare_namespace) from [<c07745a0>] (kernel_init+0x8/0x10c) [ 2.504206] [<c07745a0>] (kernel_init) from [<c01010e8>] (ret_from_fork+0x14/0x2c) [ 2.512688] Exception stack(0xc7825fb0 to 0xc7825ff8) [ 2.518348] 5fa0: 00000000 00000000 00000000 00000000 [ 2.527514] 5fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 [ 2.536680] 5fe0: 00000000 00000000 00000000 00000000 00000013 00000000 [ 2.544098] CPU1: stopping [ 2.547131] CPU: 1 PID: 0 Comm: swapper/1 Not tainted 5.4.61 #108 [ 2.553956] Hardware name: Generic DT based system [ 2.559329] [<c010e248>] (unwind_backtrace) from [<c010a870>] (show_stack+0x10/0x14) [ 2.568011] [<c010a870>] (show_stack) from [<c07600a0>] (dump_stack+0x7c/0x98) [ 2.576108] [<c07600a0>] (dump_stack) from [<c010c648>] (handle_IPI+0xcc/0x168) [ 2.584305] [<c010c648>] (handle_IPI) from [<c033849c>] (gic_handle_irq+0x70/0x78) [ 2.592793] [<c033849c>] (gic_handle_irq) from [<c01021cc>] (__irq_svc+0x6c/0xa8) [ 2.601177] Exception stack(0xc7865f80 to 0xc7865fc8) [ 2.606838] 5f80: 0000063c c7ecb4f4 00000000 c0114b40 00000002 c7864000 c0c04e28 c0c04e64 [ 2.616006] 5fa0: 4000406a 410fc075 00000000 00000000 c0c627d0 c7865fd0 c0107f94 c0107f84 [ 2.625169] 5fc0: 60000113 ffffffff [ 2.629080] [<c01021cc>] (__irq_svc) from [<c0107f84>] (arch_cpu_idle+0x1c/0x38) [ 2.637373] [<c0107f84>] (arch_cpu_idle) from [<c013de94>] (do_idle+0xd0/0x120) [ 2.645568] [<c013de94>] (do_idle) from [<c013e180>] (cpu_startup_entry+0x18/0x20) [ 2.654054] [<c013e180>] (cpu_startup_entry) from [<40102bec>] (0x40102bec) [ 2.661872] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) ]---
那你有没有按照大佬的提议更改menuconfig
-
@jr_online 也按大佬的来了
-
@lansecd 在 T113 (tina) 如何编译打包spi nand flash 固件 中说:
@jr_online 也按大佬的来了
那有没有在sys_config.fex 把 storage_type 改为5呢?
-
@jr_online 打开squashfs的同时,关闭ext4
-
此回复已被删除! -
@jr_online 在 T113 (tina) 如何编译打包spi nand flash 固件 中说:
@yuzukitsuru 在 T113 (tina) 如何编译打包spi nand flash 固件 中说:
@jr_online
Target Images --->
[*] squashfs --->可以了,谢谢大佬[抱拳]
亲,我按照帖子步骤设置了,但是打包有误,是哪里有问题呢?
-
@jr_online 在 T113 (tina) 如何编译打包spi nand flash 固件 中说:
@lansecd 在 T113 (tina) 如何编译打包spi nand flash 固件 中说:
@jr_online 你好,我边也是Nand启动,现在遇到的问题和你一样,你这个env.cfg怎么修改的呢
rootfstype=squashfs
bootcmd=run setargs_nand boot_normal
亲,我按照帖子步骤设置了,但是打包有错误提示,是哪里没配置正确呢? -
@jr_online 在 T113 (tina) 如何编译打包spi nand flash 固件 中说:
@lansecd 在 T113 (tina) 如何编译打包spi nand flash 固件 中说:
@jr_online 你好,我边也是Nand启动,现在遇到的问题和你一样,你这个env.cfg怎么修改的呢
rootfstype=squashfs
bootcmd=run setargs_nand boot_normal
亲,我按照帖子步骤配置后打包有错误提示,是哪里没设置对呢?
请大神指导一下,多谢…………!
-
@justyu666 参考一下这分区表试试?
;--------------------------------------------------------------------------------------------------- ; 说明: 脚本中的字符串区分大小写,用户可以修改"="后面的数值,但是不要修改前面的字符串 ;--------------------------------------------------------------------------------------------------- ;--------------------------------------------------------------------------------------------------- ; 固件下载参数配置 ;--------------------------------------------------------------------------------------------------- ;*************************************************************************************************** ; mbr的大小, 以Kbyte为单位 ;*************************************************************************************************** [mbr] size = 252 ;*************************************************************************************************** ; 分区配置 ; ; ; partition 定义范例: ; [partition] ; //表示是一个分区 ; name = USERFS2 ; //分区名称 ; size = 16384 ; //分区大小 单位: 扇区.分区表示个数最多2^31 * 512 = 2T ; downloadfile = "123.fex" ; //下载文件的路径和名称,可以使用相对路径,相对是指相对于image.cfg文件所在分区。也可以使用绝对路径 ; keydata = 1 ; //私有数据分区,重新量产数据将不丢失 ; encrypt = 1 ; //采用加密方式烧录,将提供数据加密,但损失烧录速度 ; user_type = ? ; //私有用法 ; verify = 1 ; //要求量产完成后校验是否正确 ; ; 注:1、name唯一, 不允许同名 ; 2、name最大12个字符 ; 3、size = 0, 将创建一个无大小的空分区 ; 4、align to logical block size(504 sectors), leb size = 2*(1 nand phy block size - 1 phy page size) ;*************************************************************************************************** [partition_start] [partition] name = boot-resource size = 7000 downloadfile = "boot-resource.fex" user_type = 0x8000 [partition] name = env size = 504 downloadfile = "env.fex" user_type = 0x8000 [partition] name = env-redund size = 504 downloadfile = "env.fex" user_type = 0x8000 [partition] name = boot size = 12600 downloadfile = "boot.fex" user_type = 0x8000 [partition] name = rootfs size = 102400 downloadfile = "rootfs.fex" user_type = 0x8000
-
@jr_online 好的,谢谢
-
@jr_online 亲,我按照您的分区表改后仍然无法打包,是还要改哪里呢?分区表的 mbr size 改了 252,但是打包提示还是 16384,如下图
麻烦指导一下,谢谢! -
@justyu666 在 T113 (tina) 如何编译打包spi nand flash 固件 中说:
@jr_online 亲,我按照您的分区表改后仍然无法打包,是还要改哪里呢?分区表的 mbr size 改了 252,但是打包提示还是 16384,如下图
麻烦指导一下,谢谢!指导算不上,我也是半吊子,你把我上面的分区表复制替换你的分区表试试,总觉得是你的name = boot-resour有问题?不应该是boot-resource咩?不知道跟这个有没有关系
-
@justyu666 首先有好几份这个sys_partition.fex文件。pack所使用的是~/out/sys_partition.fex,修改这一份才有效。如果你修改的是devices目录下的,那就需要编译一下,再pack,同理,你直接改out,编译后就会变成device目录的那份了。然后就是device目录也有很多分,甚至t113-s3里面,也有好几份,至少我的SDK是,确认一下它参与编译的是哪一份。像你这样打包还是修改前的参数,大部分就是改错文件了
Copyright © 2023 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号