From 0dbf3171f89fc5f92a2f81dac0d5464bd143b692 Mon Sep 17 00:00:00 2001
From: guowenxue <guowenxue@gmail.com>
Date: Fri, 21 Aug 2020 12:12:27 +0800
Subject: [PATCH] update rootfs build shell script, fix fl2440 ubifs boot bugs
---
linux-bsp/build.sh | 33 +++++++++------------------------
1 files changed, 9 insertions(+), 24 deletions(-)
diff --git a/linux-bsp/build.sh b/linux-bsp/build.sh
index 1e9efae..32e93e3 100755
--- a/linux-bsp/build.sh
+++ b/linux-bsp/build.sh
@@ -23,7 +23,6 @@
TARBALL_FTP=ftp://master.iot-yun.club/src/
-
ROOTFS_SRC=rootfs
ROOTFS_IMG=rootfs-${BOARD}.ubi
@@ -105,25 +104,7 @@
tar -xjf ${PACK_PATH}/${SRC_DIR}.tar.bz2
cd ${SRC_DIR}
- # Copy u-boot logo file
- echo ${SRC_DIR} | grep "u-boot" > /dev/null
- if [ $? == 0 ] ; then
- LOGO_FILE=logo-uboot.bmp
- if [ -f ${PATCH_PATH}/${LOGO_FILE} ] ; then
- cp -f ${PATCH_PATH}/${LOGO_FILE} tools/logos/logo.bmp
- fi
- fi
-
- # Copy linux kernel logo file
- echo ${SRC_DIR} | grep "linux" > /dev/null
- if [ $? == 0 ] ; then
- LOGO_FILE=logo-kernel.ppm
- if [ -f ${PATCH_PATH}/${LOGO_FILE} ] ; then
- cp -f ${PATCH_PATH}/${LOGO_FILE} drivers/video/logo/logo_linux_clut224.ppm
- fi
- fi
-
- # patch for Jelliesv2
+ # do patch
if [ -f ${PATCH_PATH}/${SRC_DIR}-${PATCH_SUFIX} ] ; then
show_banner "| patch for ${SRC_DIR} |"
@@ -152,19 +133,23 @@
ubinize_cfg=ubinize.cfg
ubimg_tmp=ubi.img
-
# Rootfs partition size
- partition_size=40 # MiB
+ partition_size=80 # MiB
# K9F2G08: Nandflash 1 block=64 pages, 1 page = 2048
BLOCK_PAGES=64
PAGE_SIZE=2048
+ SUBPAGE_SIZE=512
# Logic Erase Block Size: UBI requires 2 minimum I/O units out of each Physical Erase Block (PEB) for overhead:
# 1 for maintaining erase count information, and 1 for maintaining the Volume ID information.
+ #
+ # In FL2440 Linux-3.0 kernel only need 1 PEB, or kernel will throw error:
+ # UBIFS error (pid 1): validate_sb: LEB size mismatch: 126976 in superblock, 129024 real
PEB_SIZE=`expr $PAGE_SIZE \* $BLOCK_PAGES`
- LEB_SIZE=`expr $PEB_SIZE - 2 \* $PAGE_SIZE `
+ LEB_SIZE=`expr $PEB_SIZE - 1 \* $PAGE_SIZE `
+
#UBI reserves 4 blocks space for management and bad PEB handling operations
# 2 PEBs are used to store the UBI volume table
@@ -190,7 +175,7 @@
#cat $ubinize_cfg
set -x
- ubinize -o ${ROOTFS_IMG} -m ${PAGE_SIZE} -p ${PEB_SIZE} $ubinize_cfg
+ ubinize -o ${ROOTFS_IMG} -m ${PAGE_SIZE} -p ${PEB_SIZE} -s ${SUBPAGE_SIZE} $ubinize_cfg
set +x
rm -f $ubimg_tmp $ubinize_cfg
--
Gitblit v1.9.1