modify partition

This commit is contained in:
zzh 2026-04-21 14:13:17 +08:00
parent a34ee348b3
commit d021abeaa0
5 changed files with 86 additions and 6 deletions

View File

@ -17,6 +17,14 @@ BR2_SYSTEM_DEFAULT_PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin"
BR2_TARGET_ROOTFS_UBI=y
BR2_TARGET_ROOTFS_UBIFS_MAX_SIZE=0x4000000
BR2_TARGET_ROOTFS_UBIFS_OPTS="-F"
BR2_TARGET_USERFS1=y
BR2_TARGET_USERFS1_NAME="system"
BR2_TARGET_USERFS1_TYPE_UBIFS=y
BR2_TARGET_USERFS1_OVERLAY="target/$(LUBAN_CHIP_NAME)/$(LUBAN_BOARD_NAME)/system"
BR2_TARGET_USERFS2=y
BR2_TARGET_USERFS2_NAME="data"
BR2_TARGET_USERFS2_TYPE_UBIFS=y
BR2_TARGET_USERFS2_OVERLAY="target/$(LUBAN_CHIP_NAME)/$(LUBAN_BOARD_NAME)/data"
BR2_GENERATE_BURNER_IMAGE=y
BR2_GENERATE_IMAGE_AUTO_CALCULATE_SIZE=y
BR2_PACKAGE_OPENSBI_FW_TEXT_BASE=0x47FE0000

View File

@ -63,7 +63,7 @@ set_nand_mtdargs=env delete mtdparts
set_nand_bootargs=run set_nand_mtdargs; \
run set_commonargs; \
setenv bootargs ${bootargs} mtdparts=${MTD} ubi.mtd=${ubi_rootfs_mtd} root=${nand_root} rootfstype=${nand_rootfstype}
setenv bootargs ${bootargs} mtdparts=${MTD} ubi.mtd=${ubi_rootfs_mtd} ubi.mtd=11 root=${nand_root} rootfstype=${nand_rootfstype}
set_nand_bootargs_recovery=run set_nand_mtdargs; \
run set_commonargs_recovery; \

View File

@ -13,7 +13,7 @@
"kernel": { "size": "12m" },
"recovery": { "size": "16m" },
"ubiroot": {
"size": "218m",
"size": "64m",
"ubi": { // Volume in UBI device
"rootfs": { "size": "-" },
},
@ -21,7 +21,8 @@
"ubisystem": {
"size": "-",
"ubi": { // Volume in UBI device
"user": { "size": "-" },
"system": { "size": "8m" },
"data": { "size": "-" },
},
},
}
@ -103,10 +104,15 @@
"attr": ["ubi", "required"],
"part": ["ubiroot:rootfs"]
},
"app": {
"file": "user*.ubifs",
"system": {
"file": "system*.ubifs",
"attr": ["ubi", "optional"],
"part": ["ubisystem:user"]
"part": ["ubisystem:system"]
},
"data": {
"file": "data*.ubifs",
"attr": ["ubi", "optional"],
"part": ["ubisystem:data"]
},
},
},

View File

@ -0,0 +1,11 @@
# <file system> <mount pt> <type> <options> <dump> <pass>
/dev/root / ext2 rw,noauto 0 1
proc /proc proc defaults 0 0
devpts /dev/pts devpts defaults,gid=5,mode=620,ptmxmode=0666 0 0
tmpfs /dev/shm tmpfs mode=0777 0 0
tmpfs /tmp tmpfs mode=1777 0 0
tmpfs /run tmpfs mode=0755,nosuid,nodev 0 0
sysfs /sys sysfs defaults 0 0
ubi1:system /system ubifs ro,defaults 0 0
ubi1:data /data ubifs defaults 0 0

View File

@ -0,0 +1,55 @@
#!/bin/sh
#
# Auto-create and mount UBI volumes for system and data partitions
#
start() {
echo "Initializing UBI volumes..."
# Check if ubi1 device exists
if [ ! -e /dev/ubi1 ]; then
echo "ubi1 device not found, skipping..."
return 0
fi
# Create mount points
mkdir -p /system /data
# Mount system (read-only)
if ! mountpoint -q /system; then
echo "Mounting /system..."
mount -t ubifs -o ro ubi1:system /system 2>/dev/null || echo "Failed to mount /system"
fi
# Mount data (read-write)
if ! mountpoint -q /data; then
echo "Mounting /data..."
mount -t ubifs ubi1:data /data 2>/dev/null || echo "Failed to mount /data"
fi
echo "UBI volumes initialized"
}
stop() {
echo "Unmounting UBI volumes..."
umount /data 2>/dev/null
umount /system 2>/dev/null
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart|reload)
stop
start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0