aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
diff options
context:
space:
mode:
authorEugene Konev <ejka@openwrt.org>2007-03-18 14:18:56 +0000
committerEugene Konev <ejka@openwrt.org>2007-03-18 14:18:56 +0000
commit3ac290db65f1535a0dbcb681c6529674525b758a (patch)
tree3d02e6fd304a8e04f14fb918073d74907c709e58 /target/linux
parent33d6f026e744bab2d8a853b69ea2a61fc76b1161 (diff)
downloadupstream-3ac290db65f1535a0dbcb681c6529674525b758a.tar.gz
upstream-3ac290db65f1535a0dbcb681c6529674525b758a.tar.bz2
upstream-3ac290db65f1535a0dbcb681c6529674525b758a.zip
ar7-2.4 cleanup
- Switch to generic init scripts (/sbin/mount_root, /bin/firstboot, /etc/preinit), failsafe part moved to /etc/preinit.arch. This should fix #1449 with an added benefit of using mini_fo. - Switch to generic /etc/config/network. - ar7 flashmap: change "OpenWrt" to "rootfs_data", move ar7_mtd_cleanup out of .exit. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@6604 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux')
-rwxr-xr-xtarget/linux/ar7-2.4/base-files/default/bin/firstboot89
-rw-r--r--target/linux/ar7-2.4/base-files/default/etc/config/network14
-rwxr-xr-xtarget/linux/ar7-2.4/base-files/default/etc/preinit11
-rwxr-xr-xtarget/linux/ar7-2.4/base-files/default/etc/preinit.arch5
-rwxr-xr-xtarget/linux/ar7-2.4/base-files/default/sbin/mount_root28
-rw-r--r--target/linux/ar7-2.4/patches/001-flash_map.patch6
6 files changed, 8 insertions, 145 deletions
diff --git a/target/linux/ar7-2.4/base-files/default/bin/firstboot b/target/linux/ar7-2.4/base-files/default/bin/firstboot
deleted file mode 100755
index 774bbc754b..0000000000
--- a/target/linux/ar7-2.4/base-files/default/bin/firstboot
+++ /dev/null
@@ -1,89 +0,0 @@
-#!/bin/sh
-# Copyright (C) 2006 OpenWrt.org
-
-rom=$(awk '/squashfs/ {print $2}' /proc/mounts)
-jffs=$(awk '/jffs2/ {print $2}' /proc/mounts)
-
-dupe() { # <new_root> <old_root>
- cd $1
- echo -n "creating directories... "
- {
- cd $2
- find . -xdev -type d
- echo "./dev ./jffs ./mnt ./proc ./tmp ./sys"
- # xdev skips mounted directories
- cd $1
- } | xargs mkdir -p
- echo "done"
-
- echo -n "setting up symlinks... "
- for file in $(cd $2; find . -xdev -type f;); do
- case "$file" in
- ./rom/note) ;; #nothing
- ./etc/config*|\
- ./etc/resolv.conf|\
- ./usr/lib/ipkg/info) cp -af $2/$file $file;;
- *) ln -sf /rom/${file#./*} $file;;
- esac
- done
- for file in $(cd $2; find . -xdev -type l;); do
- cp -af $2/${file#./*} $file
- done
- echo "done"
-}
-
-pivot() { # <new_root> <old_root>
- mount -o move /proc $1/proc && \
- pivot_root $1 $1$2 && {
- mount -o move $2/dev /dev
- mount -o move $2/tmp /tmp
- mount -o move $2/sys /sys
- return 0
- }
-}
-
-mountdp() { # <device> <mount_point> <ignored> <fs>
- dev=$1; mnt=$2; shift 2; opt=$*
- mount $dev $mnt $opt
- dupe $mnt $rom
- pivot $mnt /rom
-}
-
-ramoverlay() {
- mkdir -p /tmp/root
- mountdp /tmp/root /mnt -o bind
-}
-
-[ "${0##*/}" = "firstboot" ] && {
- [ -z "$rom" ] && {
- echo "You do not have a squashfs partition; aborting"
- echo "(firstboot cannot be run on jffs2 based firmwares)"
- exit 1
- }
-
- [ "$1" = "switch2jffs" ] && {
- mtd erase OpenWrt
- mount -o remount,ro none / # try to avoid fs changing while copying
- mount -o bind / /mnt
- mount /dev/mtdblock/4 /rom/jffs -t jffs2
- echo -n "copying files ... "
- cp -a /mnt/* /rom/jffs
- umount /mnt
- echo "done"
- pivot /rom /mnt
- mount -o move /mnt /tmp/root
- pivot /jffs /rom
- exit 0
- }
-
- # script run manually
- [ \! -z "$jffs" ] && {
- echo "firstboot has already been run"
- echo "jffs2 partition is mounted, only resetting files"
- dupe $jffs $rom
- exit 0
- }
-
- mtd erase OpenWrt
- mountdp /dev/mtdblock/4 /jffs -t jffs2
-}
diff --git a/target/linux/ar7-2.4/base-files/default/etc/config/network b/target/linux/ar7-2.4/base-files/default/etc/config/network
deleted file mode 100644
index 911134bb0d..0000000000
--- a/target/linux/ar7-2.4/base-files/default/etc/config/network
+++ /dev/null
@@ -1,14 +0,0 @@
-# Network configuration file
-
-config interface loopback
- option ifname lo
- option proto static
- option ipaddr 127.0.0.1
- option netmask 255.0.0.0
-
-config interface lan
- option ifname eth0
- option proto static
- option ipaddr 192.168.1.1
- option netmask 255.255.255.0
-
diff --git a/target/linux/ar7-2.4/base-files/default/etc/preinit b/target/linux/ar7-2.4/base-files/default/etc/preinit
deleted file mode 100755
index 5b676ca3ac..0000000000
--- a/target/linux/ar7-2.4/base-files/default/etc/preinit
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/bin/sh
-export PATH=/bin:/sbin:/usr/bin:/usr/sbin
-mount none /proc -t proc
-
-[ -f /etc/preinit.arch ] && . /etc/preinit.arch
-[ -z "$FAILSAFE" ] || {
- echo /bin/true > /proc/sys/kernel/hotplug
- telnetd -l /bin/login <> /dev/null 2>&1
-}
-mount_root ${FAILSAFE:+failsafe}
-exec /sbin/init
diff --git a/target/linux/ar7-2.4/base-files/default/etc/preinit.arch b/target/linux/ar7-2.4/base-files/default/etc/preinit.arch
new file mode 100755
index 0000000000..965a1af611
--- /dev/null
+++ b/target/linux/ar7-2.4/base-files/default/etc/preinit.arch
@@ -0,0 +1,5 @@
+#!/bin/sh
+[ -z "$FAILSAFE" ] || {
+ echo /bin/true > /proc/sys/kernel/hotplug
+ telnetd -l /bin/login <> /dev/null 2>&1
+}
diff --git a/target/linux/ar7-2.4/base-files/default/sbin/mount_root b/target/linux/ar7-2.4/base-files/default/sbin/mount_root
deleted file mode 100755
index 6b90bdc9cc..0000000000
--- a/target/linux/ar7-2.4/base-files/default/sbin/mount_root
+++ /dev/null
@@ -1,28 +0,0 @@
-#!/bin/sh
-size=$(awk '/Mem:/ {l=5242880;print((s=$2/2)<l)?$2-l:s}' /proc/meminfo)
-mount none /tmp -t tmpfs -o size=$size
-
-if [ "$1" != "failsafe" ]; then
- mtd unlock linux
- mount | grep jffs2 >&-
- if [ $? = 0 ] ; then
- if [ $(cat /proc/mtd | wc -l) = 6 ]; then
- mtd erase OpenWrt
- else
- mount -o remount,rw /dev/root /
- fi
- else
- . /bin/firstboot
- echo "switching to jffs2"
- mount /dev/mtdblock/4 /jffs -t jffs2
- pivot /jffs /rom || {
- echo "jffs2 unusable; using ramdisk"
- ramoverlay
- }
- fi
-fi
-
-mount none /tmp -t tmpfs -o remount,nosuid,nodev,mode=1777
-mkdir -p /dev/pts
-mount none /dev/pts -t devpts
-mount -t sysfs none /sys 2>&-
diff --git a/target/linux/ar7-2.4/patches/001-flash_map.patch b/target/linux/ar7-2.4/patches/001-flash_map.patch
index f04929c7b9..bd07805c6c 100644
--- a/target/linux/ar7-2.4/patches/001-flash_map.patch
+++ b/target/linux/ar7-2.4/patches/001-flash_map.patch
@@ -26,7 +26,7 @@ diff -urN linux.old/drivers/mtd/maps/ar7-flash.c linux.dev/drivers/mtd/maps/ar7-
+extern char *prom_getenv(char *name);
+
+static int create_mtd_partitions(void);
-+static void __exit ar7_mtd_cleanup(void);
++static void ar7_mtd_cleanup(void);
+
+#define MAX_NUM_PARTITIONS 5
+static struct mtd_partition ar7_partinfo[MAX_NUM_PARTITIONS];
@@ -234,7 +234,7 @@ diff -urN linux.old/drivers/mtd/maps/ar7-flash.c linux.dev/drivers/mtd/maps/ar7-
+
+ ar7_partinfo[p - 2].size = newoffset - rootfs_start;
+
-+ ar7_partinfo[p].name = strdup("OpenWrt");
++ ar7_partinfo[p].name = strdup("rootfs_data");
+ ar7_partinfo[p].offset = newoffset;
+ ar7_partinfo[p].size = config_offset - newoffset;
+ ar7_partinfo[p++].mask_flags = 0;
@@ -249,7 +249,7 @@ diff -urN linux.old/drivers/mtd/maps/ar7-flash.c linux.dev/drivers/mtd/maps/ar7-
+ return p;
+}
+
-+static void __exit ar7_mtd_cleanup(void)
++static void ar7_mtd_cleanup(void)
+{
+ if (ar7_mtd_info) {
+ del_mtd_partitions(ar7_mtd_info);