change ota package path
This commit is contained in:
parent
0fde37e681
commit
2eec57d66f
@ -22,14 +22,9 @@ BR2_TARGET_USERFS1_NAME="system"
|
|||||||
BR2_TARGET_USERFS1_TYPE_UBIFS=y
|
BR2_TARGET_USERFS1_TYPE_UBIFS=y
|
||||||
BR2_TARGET_USERFS1_OVERLAY="target/$(LUBAN_CHIP_NAME)/$(LUBAN_BOARD_NAME)/system"
|
BR2_TARGET_USERFS1_OVERLAY="target/$(LUBAN_CHIP_NAME)/$(LUBAN_BOARD_NAME)/system"
|
||||||
BR2_TARGET_USERFS2=y
|
BR2_TARGET_USERFS2=y
|
||||||
BR2_TARGET_USERFS2_NAME="ota"
|
BR2_TARGET_USERFS2_NAME="data"
|
||||||
BR2_TARGET_USERFS2_TYPE_UBIFS=y
|
BR2_TARGET_USERFS2_TYPE_UBIFS=y
|
||||||
BR2_TARGET_USERFS2_OVERLAY="target/$(LUBAN_CHIP_NAME)/$(LUBAN_BOARD_NAME)/ota"
|
BR2_TARGET_USERFS2_OVERLAY="target/$(LUBAN_CHIP_NAME)/$(LUBAN_BOARD_NAME)/data"
|
||||||
BR2_TARGET_USERFS2_UBIFS_MAX_SIZE=0x03200000
|
|
||||||
BR2_TARGET_USERFS3=y
|
|
||||||
BR2_TARGET_USERFS3_NAME="data"
|
|
||||||
BR2_TARGET_USERFS3_TYPE_UBIFS=y
|
|
||||||
BR2_TARGET_USERFS3_OVERLAY="target/$(LUBAN_CHIP_NAME)/$(LUBAN_BOARD_NAME)/data"
|
|
||||||
BR2_GENERATE_BURNER_IMAGE=y
|
BR2_GENERATE_BURNER_IMAGE=y
|
||||||
BR2_GENERATE_IMAGE_AUTO_CALCULATE_SIZE=y
|
BR2_GENERATE_IMAGE_AUTO_CALCULATE_SIZE=y
|
||||||
BR2_PACKAGE_OPENSBI_FW_TEXT_BASE=0x47FE0000
|
BR2_PACKAGE_OPENSBI_FW_TEXT_BASE=0x47FE0000
|
||||||
|
|||||||
Binary file not shown.
@ -22,7 +22,6 @@
|
|||||||
"size": "-",
|
"size": "-",
|
||||||
"ubi": { // Volume in UBI device
|
"ubi": { // Volume in UBI device
|
||||||
"system": { "size": "8m" },
|
"system": { "size": "8m" },
|
||||||
"ota": { "size": "55m" },
|
|
||||||
"data": { "size": "-" },
|
"data": { "size": "-" },
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@ -115,11 +114,6 @@
|
|||||||
"attr": ["ubi", "optional"],
|
"attr": ["ubi", "optional"],
|
||||||
"part": ["ubisystem:data"]
|
"part": ["ubisystem:data"]
|
||||||
},
|
},
|
||||||
"ota": {
|
|
||||||
"file": "ota*.ubifs",
|
|
||||||
"attr": ["ubi", "optional"],
|
|
||||||
"part": ["ubisystem:ota"]
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
"pre-process": { // Pre-proccess to generate image components from raw data
|
"pre-process": { // Pre-proccess to generate image components from raw data
|
||||||
|
|||||||
@ -1,24 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
#
|
|
||||||
# Auto-mount OTA volume to /mnt/ota at boot
|
|
||||||
#
|
|
||||||
|
|
||||||
case "$1" in
|
|
||||||
start)
|
|
||||||
[ -x /etc/swupdate_main ] && /etc/swupdate_main start
|
|
||||||
;;
|
|
||||||
stop)
|
|
||||||
[ -x /etc/swupdate_main ] && /etc/swupdate_main stop
|
|
||||||
;;
|
|
||||||
restart|reload)
|
|
||||||
[ -x /etc/swupdate_main ] && /etc/swupdate_main stop
|
|
||||||
[ -x /etc/swupdate_main ] && /etc/swupdate_main start
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Usage: $0 {start|stop|restart}"
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
exit 0
|
|
||||||
|
|
||||||
@ -1 +1 @@
|
|||||||
demo128_nand-ota-marker=2026-04-27_v1
|
demo128_nand-ota-marker=2026-04-27_v9999
|
||||||
|
|||||||
@ -3,40 +3,12 @@
|
|||||||
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
start)
|
start)
|
||||||
echo -n "Starting swupdate... "
|
echo "swupdate_main: /data should already be mounted by S01ubivol"
|
||||||
# obtain ubisystem mtd number
|
mountpoint -q /data && echo "/data is ready" || \
|
||||||
|
echo "Warning: /data is NOT mounted"
|
||||||
param=$(cat /proc/mtd | grep "ubisystem")
|
|
||||||
mtd_param=$(echo "$param" | awk -F ':' '{print $1}')
|
|
||||||
mtd_num=$(echo "$mtd_param" | awk -F 'mtd' '{print $2}')
|
|
||||||
echo "ubisystem mtd number is $mtd_num"
|
|
||||||
|
|
||||||
# ubisystem might already be attached (EEXIST). Don't fail in that case.
|
|
||||||
if [ ! -e /dev/ubi1 ]; then
|
|
||||||
ubiattach /dev/ubi_ctrl -m $mtd_num
|
|
||||||
else
|
|
||||||
cur_mtd_num=$(cat /sys/class/ubi/ubi1/mtd_num 2>/dev/null)
|
|
||||||
if [ "x$cur_mtd_num" != "x$mtd_num" ]; then
|
|
||||||
ubiattach /dev/ubi_ctrl -m $mtd_num
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# obtain the ota part device node
|
|
||||||
|
|
||||||
param=$(grep -H -r "ota" /sys/class/ubi/* | sed 1q)
|
|
||||||
ubi_param=$(echo "$param" | awk -F '/name:ota' '{print $1}')
|
|
||||||
ubi_param=$(echo "$ubi_param" | awk -F '/sys/class/ubi/' '{print $2}')
|
|
||||||
ubi_param=$(echo "$ubi_param" | awk -F '/' '{print $2}')
|
|
||||||
echo "ota part device node is /dev/$ubi_param"
|
|
||||||
|
|
||||||
if [ -c "/dev/$ubi_param" ]; then
|
|
||||||
mkdir -p /mnt/ota
|
|
||||||
mount -t ubifs /dev/$ubi_param /mnt/ota
|
|
||||||
fi
|
|
||||||
;;
|
;;
|
||||||
stop)
|
stop)
|
||||||
echo -n "Stopping swupdate... "
|
echo "swupdate_main: nothing to do (/data is managed by S01ubivol)"
|
||||||
umount /mnt/ota
|
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
|||||||
@ -1,42 +1,58 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
# Run the swupdate daemon
|
# Run the swupdate daemon (recovery side, second stage of OTA)
|
||||||
|
|
||||||
|
attach_ubi_by_name()
|
||||||
|
{
|
||||||
|
want="$1"
|
||||||
|
mtdline=$(grep "\"$want\"" /proc/mtd)
|
||||||
|
[ -z "$mtdline" ] && {
|
||||||
|
echo "S91: cannot find mtd partition '$want'"
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
mtd_num=$(echo "$mtdline" | sed -e 's/^mtd//' -e 's/:.*//')
|
||||||
|
echo "S91: '$want' is on mtd${mtd_num}"
|
||||||
|
|
||||||
|
# If some ubi device is already on this mtd, do nothing.
|
||||||
|
for u in /sys/class/ubi/ubi[0-9]*; do
|
||||||
|
[ -e "$u/mtd_num" ] || continue
|
||||||
|
cur=$(cat "$u/mtd_num" 2>/dev/null)
|
||||||
|
[ "x$cur" = "x$mtd_num" ] && {
|
||||||
|
echo "S91: $u already attached to mtd${mtd_num}"
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
done
|
||||||
|
ubiattach /dev/ubi_ctrl -m "$mtd_num" 2>&1
|
||||||
|
}
|
||||||
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
start)
|
start)
|
||||||
echo -n "Starting swupdate... "
|
echo "S91: starting OTA second stage"
|
||||||
# obtain ubisystem mtd number
|
|
||||||
param=$(cat /proc/mtd | grep "ubisystem")
|
|
||||||
mtd_param=$(echo "$param" | awk -F ':' '{print $1}')
|
|
||||||
mtd_num=$(echo "$mtd_param" | awk -F 'mtd' '{print $2}')
|
|
||||||
|
|
||||||
echo "ubisystem mtd number is $mtd_num"
|
# Attach both UBI devices so swupdate can write to:
|
||||||
# ubisystem might already be attached (EEXIST). Don't fail in that case.
|
# /dev/mtdX (logo, kernel, recovery)
|
||||||
if [ ! -e /dev/ubi1 ]; then
|
# ubi0:rootfs (ubiroot)
|
||||||
ubiattach /dev/ubi_ctrl -m $mtd_num
|
# ubi1:data (ubisystem) -- holds the .swu package
|
||||||
else
|
attach_ubi_by_name "ubiroot"
|
||||||
cur_mtd_num=$(cat /sys/class/ubi/ubi1/mtd_num 2>/dev/null)
|
attach_ubi_by_name "ubisystem"
|
||||||
if [ "x$cur_mtd_num" != "x$mtd_num" ]; then
|
|
||||||
ubiattach /dev/ubi_ctrl -m $mtd_num
|
# Mount ubi*:data so we can read the .swu placed there by main system.
|
||||||
|
mkdir -p /data
|
||||||
|
if ! mountpoint -q /data; then
|
||||||
|
# Try ubi0 then ubi1 — depending on attach order data may be on either.
|
||||||
|
for d in /dev/ubi1 /dev/ubi0; do
|
||||||
|
[ -e "$d" ] || continue
|
||||||
|
idx=$(echo "$d" | sed 's|.*ubi||')
|
||||||
|
if mount -t ubifs "ubi${idx}:data" /data 2>/dev/null; then
|
||||||
|
echo "S91: mounted ubi${idx}:data on /data"
|
||||||
|
break
|
||||||
fi
|
fi
|
||||||
|
done
|
||||||
|
mountpoint -q /data || echo "S91: WARNING /data not mounted"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# obtain the ota part device node
|
exec /usr/lib/swupdate/swupdate_cmd.sh
|
||||||
param=$(grep -H -r "ota" /sys/class/ubi/* | sed 1q)
|
|
||||||
ubi_param=$(echo "$param" | awk -F '/name:ota' '{print $1}')
|
|
||||||
ubi_param=$(echo "$ubi_param" | awk -F '/sys/class/ubi/' '{print $2}')
|
|
||||||
ubi_param=$(echo "$ubi_param" | awk -F '/' '{print $2}')
|
|
||||||
|
|
||||||
echo "ota part device node is /dev/$ubi_param"
|
|
||||||
|
|
||||||
if [ -c "/dev/$ubi_param" ]; then
|
|
||||||
mkdir -p /mnt/ota
|
|
||||||
mount -t ubifs /dev/$ubi_param /mnt/ota
|
|
||||||
fi
|
|
||||||
|
|
||||||
/usr/lib/swupdate/swupdate_cmd.sh
|
|
||||||
;;
|
;;
|
||||||
stop)
|
stop)
|
||||||
echo -n "Stopping swupdate... "
|
umount /data 2>/dev/null
|
||||||
umount /mnt/ota
|
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user