local -r BOOT_SZ=64
local -r ROOTFS_SZ=3072
- local -r DATA_SZ=512
- local -r MODULE_SZ=20
+ local -r DATA_SZ=1344
+ local -r MODULE_SZ=32
local -r RAMDISK_SZ=8
- local -r RAMDISK_RECOVERY_SZ=12
+ local -r RAMDISK_RECOVERY_SZ=32
local -r INFORM_SZ=8
+ local -r RESERVED1_SZ=64
+ local -r RESERVED2_SZ=128
if [ $sfdisk_new == 1 ]; then
local -r EXTEND_SZ=8
else
- local -r EXTEND_SZ=10
+ local -r EXTEND_SZ=12
fi
- let "USER_SZ = $SIZE_MB - $BOOT_SZ - $ROOTFS_SZ - $DATA_SZ - $MODULE_SZ - $RAMDISK_SZ - $RAMDISK_RECOVERY_SZ - $INFORM_SZ - $EXTEND_SZ"
+ let "USER_SZ = $SIZE_MB - $BOOT_SZ - $ROOTFS_SZ - $DATA_SZ - $MODULE_SZ - $RAMDISK_SZ - $RAMDISK_RECOVERY_SZ - $INFORM_SZ - $EXTEND_SZ - $RESERVED1_SZ - $RESERVED2_SZ"
local -r BOOT=boot
local -r ROOTFS=rootfs
local -r RAMDISK=ramdisk
local -r RAMDISK_RECOVERY=ramdisk-recovery
local -r INFORM=inform
+ local -r RESERVED1=reserved1
+ local -r RESERVED2=reserved2
if [[ $USER_SZ -le 100 ]]
then
echo " "$RAMDISK" " $DISK"7 " $RAMDISK_SZ "MB"
echo " "$RAMDISK_RECOVERY" " $DISK"8 " $RAMDISK_RECOVERY_SZ "MB"
echo " "$INFORM" " $DISK"9 " $INFORM_SZ "MB"
+ echo " "$RESERVED1" " $DISK"10 " $RESERVED1_SZ "MB"
+ echo " "$RESERVED2" " $DISK"11 " $RESERVED2_SZ "MB"
local MOUNT_LIST=`mount | grep $DISK | awk '{print $1}'`
for mnt in $MOUNT_LIST
,${RAMDISK_SZ}MiB,,-
,${RAMDISK_RECOVERY_SZ}MiB,,-
,${INFORM_SZ}MiB,,-
+ ,${RESERVED1_SZ}MiB,,-
+ ,${RESERVED2_SZ}MiB,,-
__EOF__
else
# calculate start positions for alignment for extended partitions
let "RAMDISK_START = $MODULE_START + $MODULE_SZ + 1"
let "RAMDISK_RECOVERY_START = $RAMDISK_START + $RAMDISK_SZ + 1"
let "INFORM_START = $RAMDISK_RECOVERY_START + $RAMDISK_RECOVERY_SZ + 1"
+ let "RESERVED1_START = $INFORM_START + $INFORM_SZ + 1"
+ let "RESERVED2_START = $RESERVED1_START + $RESERVED1_SZ + 1"
sfdisk --in-order --Linux --unit M $DISK <<-__EOF__
4,$BOOT_SZ,0xE,*
$RAMDISK_START,$RAMDISK_SZ,,-
$RAMDISK_RECOVERY_START,$RAMDISK_RECOVERY_SZ,,-
$INFORM_START,$INFORM_SZ,,-
+ $RESERVED1_START,$RESERVED1_SZ,,-
+ $RESERVED2_START,$RESERVED2_SZ,,-
__EOF__
fi
local -r PART9=/dev/`lsblk ${DISK} -o KNAME | grep -G "[a-z]9\$"`
mkfs.ext4 -q ${PART9} -L $INFORM -F
+ local -r PART10=/dev/`lsblk ${DISK} -o KNAME | grep -G "[a-z]10\$"`
+ mkfs.ext4 -q ${PART10} -L $RESERVED1 -F
+
+ local -r PART11=/dev/`lsblk ${DISK} -o KNAME | grep -G "[a-z]11\$"`
+ mkfs.ext4 -q ${PART11} -L $RESERVED2 -F
+
# create "reboot-param.bin" file in inform partition for passing reboot parameter
# It should be done only once upon partition format.
umount ${PART9}
function print_logo () {
echo ""
- echo "Raspberry Pi3 downloader, version 1.4.0"
+ echo "Raspberry Pi downloader, version 2.0.0"
echo ""
}