(507芯片)问一下,想尝试新建一个分区,然后修改了一下sys_partition.fex文件,具体如下
;---------------------------------------------------------------------------------------------------
; 说明: 脚本中的字符串区分大小写,用户可以修改"="后面的数值,但是不要修改前面的字符串
;---------------------------------------------------------------------------------------------------
;---------------------------------------------------------------------------------------------------
; 固件下载参数配置
;---------------------------------------------------------------------------------------------------
;***************************************************************************************************
; mbr的大小, 以Kbyte为单位
;***************************************************************************************************
[mbr]
size = 16384
;***************************************************************************************************
; 分区配置
;
;
; 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、为了安全和效率考虑,分区大小最好保证为16M字节的整数倍
;***************************************************************************************************
[partition_start]
;------------------------------>mmcblk0p1/nand0p1
[partition]
name = boot-resource
size = 65536
downloadfile = "boot-resource.fex"
user_type = 0x8000
;------------------------------>mmcblk0p2/nand0p2
[partition]
name = env
size = 32768
downloadfile = "env.fex"
user_type = 0x8000
;------------------------------>mmcblk0p3/nand0p3
[partition]
name = boot
size = 131072
downloadfile = "boot.fex"
user_type = 0x8000
;------------------------------>mmcblk0p4/nand0p4
[partition]
name = rootfs
size = 4194304
downloadfile = "rootfs.fex"
user_type = 0x8000
;------------------------------>mmcblk0p5/nand0p5
[partition]
name = rootfsbak
size = 4194304
user_type = 0x8000
;------------------------------>mmcblk0p6/nand0p6
[partition]
name = recovery
size = 231072
;downloadfile = "recovery.fex"
user_type = 0x8000
;------------------------------>mmcblk0p7/nand0p7
[partition]
name = private
size = 32768
ro = 0
user_type = 0x8000
;------------------------------>mmcblk0p8/nand0p8
[partition]
name = test
size = 4194304
user_type = 0x8000
;------------------------------>mmcblk0p9/nand0p9
;------------------------------>UDISK
[partition]
name = UDISK
user_type = 0x8100
然后执行打包编译也提示成功,
BuildImg 0
Dragon execute image.cfg SUCCESS !
但是烧录到板子上,分区也出来了,但有另外一个错误,
[02.831]Starting kernel ...
[02.834][mmc]: mmc exit start
[02.852][mmc]: mmc 2 exit ok
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.9.170 (root@ubuntu) (gcc version 5.3.1 20160412 (Linaro GCC 5.3-2016.05) ) #2 SMP PREEMPT Fri Sep 16 19:19:55 PDT 2022
[ 0.000000] Boot CPU: AArch64 Processor [410fd034]
[ 0.000000] bootconsole [earlycon0] enabled
[/init]: getty is ttyS0
[/init]: RootDevice is "/dev/mmcblk0p4" , GPT_SUPPORT=1
[/init]: Try to load EMMC ...
e2fsck 1.42.12 (29-Aug-2014)
The filesystem size (according to the superblock) is 1572864 blocks
The physical size of the device is 524288 blocks
Either the superblock or the partition table is likely to be corrupt!
Abort? yes
mount: mounting /dev/mmcblk0p4 on /mnt failed: Invalid argument
[/init]: Failed to mount /dev/mmcblk0p4!
我也尝试在uboot里面去设置一下
env set mmc_root /dev/mmcblk0p4
saveenv,但是没有效果,这个该怎么处理呢?另外还有一个问题就是我能给新加的这个分区在制作的时候加密上吗?访问改分区的时候需要密码才给访问。这个怎么实现?