mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2025-04-21 12:27:27 +03:00
add preinit modularization work by Daniel Dickinson (cshore)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19331 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
@@ -1,25 +1,26 @@
|
||||
#!/bin/sh
|
||||
# Copyright (C) 2006 OpenWrt.org
|
||||
. /etc/functions.sh
|
||||
# Copyright (C) 2006-2010 OpenWrt.org
|
||||
# Copyright (C) 2010 Vertical Communications
|
||||
|
||||
jffs2_ready () {
|
||||
mtdpart="$(find_mtd_part rootfs_data)"
|
||||
magic=$(hexdump $mtdpart -n 4 -e '4/1 "%02x"')
|
||||
[ "$magic" != "deadc0de" ]
|
||||
# Initialize hook variables et by pulling in from preinit
|
||||
|
||||
preinit_essential_hook=
|
||||
preinit_main_hook=
|
||||
failsafe_hook=
|
||||
initramfs_hook=
|
||||
preinit_mount_root=
|
||||
|
||||
. /lib/functions/boot.sh
|
||||
|
||||
for pi_source_file in /lib/preinit/*; do
|
||||
. $pi_source_file
|
||||
done
|
||||
|
||||
# Override function that doesn't apply to use of mount_root as a command rather
|
||||
# than as part of preinit
|
||||
|
||||
preinit_echo() {
|
||||
echo "$@"
|
||||
}
|
||||
|
||||
grep rootfs_data /proc/mtd >/dev/null 2>/dev/null && {
|
||||
. /sbin/firstboot
|
||||
mtd unlock rootfs_data
|
||||
jffs2_ready && {
|
||||
echo "switching to jffs2"
|
||||
mount "$(find_mtd_part rootfs_data)" /jffs -t jffs2 && \
|
||||
fopivot /jffs /rom
|
||||
} || {
|
||||
echo "jffs2 not ready yet; using ramdisk"
|
||||
ramoverlay
|
||||
}
|
||||
} || {
|
||||
mtd unlock rootfs
|
||||
mount -o remount,rw /dev/root /
|
||||
}
|
||||
boot_run_hook mount_root
|
||||
|
||||
Reference in New Issue
Block a user