aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/x86/base-files
diff options
context:
space:
mode:
authorblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-10-05 10:12:53 +0000
committerblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-10-05 10:12:53 +0000
commit5c105d9f3fd086aff195d3849dcf847d6b0bd927 (patch)
tree1229a11f725bfa58aa7c57a76898553bb5f6654a /target/linux/x86/base-files
downloadopenwrt-5c105d9f3fd086aff195d3849dcf847d6b0bd927.tar.gz
openwrt-5c105d9f3fd086aff195d3849dcf847d6b0bd927.zip
branch Attitude Adjustment
git-svn-id: svn://svn.openwrt.org/openwrt/branches/attitude_adjustment@33625 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/x86/base-files')
-rw-r--r--target/linux/x86/base-files/etc/defconfig/net4801/network16
-rw-r--r--target/linux/x86/base-files/etc/defconfig/net4826/network12
-rwxr-xr-xtarget/linux/x86/base-files/etc/init.d/defconfig20
-rw-r--r--target/linux/x86/base-files/lib/preinit/15_essential_fs_x868
-rw-r--r--target/linux/x86/base-files/lib/preinit/45_failsafe_x8613
-rw-r--r--target/linux/x86/base-files/lib/preinit/89_move_config22
-rwxr-xr-xtarget/linux/x86/base-files/lib/soekris.sh19
-rw-r--r--target/linux/x86/base-files/lib/upgrade/platform.sh50
8 files changed, 160 insertions, 0 deletions
diff --git a/target/linux/x86/base-files/etc/defconfig/net4801/network b/target/linux/x86/base-files/etc/defconfig/net4801/network
new file mode 100644
index 000000000..ff7b42d87
--- /dev/null
+++ b/target/linux/x86/base-files/etc/defconfig/net4801/network
@@ -0,0 +1,16 @@
+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 eth1
+ option type bridge
+ option proto static
+ option ipaddr 192.168.1.1
+ option netmask 255.255.255.0
+
+config interface wan
+ option ifname eth0
+ option proto dhcp
diff --git a/target/linux/x86/base-files/etc/defconfig/net4826/network b/target/linux/x86/base-files/etc/defconfig/net4826/network
new file mode 100644
index 000000000..7c9fb6363
--- /dev/null
+++ b/target/linux/x86/base-files/etc/defconfig/net4826/network
@@ -0,0 +1,12 @@
+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 type bridge
+ option proto static
+ option ipaddr 192.168.1.1
+ option netmask 255.255.255.0
diff --git a/target/linux/x86/base-files/etc/init.d/defconfig b/target/linux/x86/base-files/etc/init.d/defconfig
new file mode 100755
index 000000000..4b4f28f20
--- /dev/null
+++ b/target/linux/x86/base-files/etc/init.d/defconfig
@@ -0,0 +1,20 @@
+#!/bin/sh /etc/rc.common
+#
+# Copyright (C) 2010 Thinktube Inc.
+#
+
+START=05
+
+start() {
+ . /lib/soekris.sh
+
+ local board=$(net48xx_board_name)
+
+ [ ! -d /etc/defconfig/$board ] && board="net4826"
+
+ for f in $( ls /etc/defconfig/$board ); do
+ if [ ! -e /etc/config/$f ]; then
+ cp /etc/defconfig/$board/$f /etc/config/
+ fi
+ done
+}
diff --git a/target/linux/x86/base-files/lib/preinit/15_essential_fs_x86 b/target/linux/x86/base-files/lib/preinit/15_essential_fs_x86
new file mode 100644
index 000000000..ba22849d1
--- /dev/null
+++ b/target/linux/x86/base-files/lib/preinit/15_essential_fs_x86
@@ -0,0 +1,8 @@
+#!/bin/sh
+# Copyright (C) 2006-2010 OpenWrt.org
+# Copyright (C) 2010 Vertical Communications
+
+do_mount_procfs() {
+ mount -t proc none /proc
+}
+
diff --git a/target/linux/x86/base-files/lib/preinit/45_failsafe_x86 b/target/linux/x86/base-files/lib/preinit/45_failsafe_x86
new file mode 100644
index 000000000..2ca039cbd
--- /dev/null
+++ b/target/linux/x86/base-files/lib/preinit/45_failsafe_x86
@@ -0,0 +1,13 @@
+#!/bin/sh
+# Copyright (C) 2006-2010 OpenWrt.org
+# Copyright (C) 2010 Vertical Communications
+
+failsafe_wait() {
+ FAILSAFE=
+ grep -q 'failsafe=' /proc/cmdline && FAILSAFE=true && export FAILSAFE
+ if [ "$FAILSAFE" != "true" ]; then
+ preinit_net_echo "Please press button now to enter failsafe"
+ fs_wait_for_key f 'to enter failsafe mode' $fs_failsafe_wait_timeout && FAILSAFE=true && export FAILSAFE
+ fi
+}
+
diff --git a/target/linux/x86/base-files/lib/preinit/89_move_config b/target/linux/x86/base-files/lib/preinit/89_move_config
new file mode 100644
index 000000000..ba337e10e
--- /dev/null
+++ b/target/linux/x86/base-files/lib/preinit/89_move_config
@@ -0,0 +1,22 @@
+#!/bin/sh
+# Copyright (C) 2012 OpenWrt.org
+
+move_config() {
+ local rootfsdev
+ local rootfstype
+
+ rootfstype="$(awk 'BEGIN { RS=" "; FS="="; } ($1 == "rootfstype") { print $2 }' < /proc/cmdline)"
+ case "$rootfstype" in
+ squashfs|jffs2)
+ rootfsdev="$(awk 'BEGIN { RS=" "; FS="="; } ($1 == "block2mtd.block2mtd") { print substr($2,1,index($2, ",")-1) }' < /proc/cmdline)";;
+ ext4)
+ rootfsdev="$(awk 'BEGIN { RS=" "; FS="="; } ($1 == "root") { print $2 }' < /proc/cmdline)";;
+ esac
+
+ mount -t ext4 -o rw,noatime "${rootfsdev%[0-9]}1" /mnt
+ mv -f /mnt/sysupgrade.tgz /
+ umount /mnt
+}
+
+boot_hook_add preinit_main move_config
+
diff --git a/target/linux/x86/base-files/lib/soekris.sh b/target/linux/x86/base-files/lib/soekris.sh
new file mode 100755
index 000000000..e416ad396
--- /dev/null
+++ b/target/linux/x86/base-files/lib/soekris.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+
+net48xx_board_name () {
+ local name
+ local pci=`wc -l /proc/bus/pci/devices`
+
+ case "$pci" in
+ *"8"*)
+ name="net4826"
+ ;;
+ *1[0-4]*)
+ name="net4801"
+ ;;
+ *)
+ name="net4826"
+ ;;
+ esac
+ echo $name
+}
diff --git a/target/linux/x86/base-files/lib/upgrade/platform.sh b/target/linux/x86/base-files/lib/upgrade/platform.sh
new file mode 100644
index 000000000..dc4790ba3
--- /dev/null
+++ b/target/linux/x86/base-files/lib/upgrade/platform.sh
@@ -0,0 +1,50 @@
+USE_REFRESH=1
+
+x86_get_rootfs() {
+ local rootfsdev
+ local rootfstype
+
+ rootfstype="$(awk 'BEGIN { RS=" "; FS="="; } ($1 == "rootfstype") { print $2 }' < /proc/cmdline)"
+ case "$rootfstype" in
+ squashfs|jffs2)
+ rootfsdev="$(awk 'BEGIN { RS=" "; FS="="; } ($1 == "block2mtd.block2mtd") { print substr($2,1,index($2, ",")-1) }' < /proc/cmdline)";;
+ ext4)
+ rootfsdev="$(awk 'BEGIN { RS=" "; FS="="; } ($1 == "root") { print $2 }' < /proc/cmdline)";;
+ esac
+
+ echo "$rootfstype:$rootfsdev"
+}
+
+platform_check_image() {
+ [ "$ARGC" -gt 1 ] && return 1
+
+ case "$(get_magic_word "$1")" in
+ eb48) return 0;;
+ *)
+ echo "Invalid image type"
+ return 1
+ ;;
+ esac
+}
+
+platform_refresh_partitions() {
+ return 0
+}
+
+platform_copy_config() {
+ local rootfs="$(x86_get_rootfs)"
+ local rootfsdev="${rootfs##*:}"
+
+ mount -t ext4 -o rw,noatime "${rootfsdev%[0-9]}1" /mnt
+ cp -af "$CONF_TAR" /mnt/
+ umount /mnt
+}
+
+platform_do_upgrade() {
+ local rootfs="$(x86_get_rootfs)"
+ local rootfsdev="${rootfs##*:}"
+
+ sync
+ [ -b ${rootfsdev%[0-9]} ] && get_image "$@" | dd of=${rootfsdev%[0-9]} bs=4096 conv=fsync
+ sleep 1
+}