summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--conf/machine/wrt54.conf2
-rw-r--r--packages/modutils/files/wrt54/modules4
-rw-r--r--packages/netbase/netbase/wrt54/interfaces12
-rw-r--r--packages/wrt/wrt-init.bb7
-rw-r--r--packages/wrt/wrt-init/finished0
-rw-r--r--packages/wrt/wrt-init/wrtboot24
-rw-r--r--packages/wrt/wrt-init/wrtvlans0
7 files changed, 43 insertions, 6 deletions
diff --git a/conf/machine/wrt54.conf b/conf/machine/wrt54.conf
index 54e769a746..2d6e0f9d17 100644
--- a/conf/machine/wrt54.conf
+++ b/conf/machine/wrt54.conf
@@ -9,7 +9,7 @@ IPKG_ARCHS = "all mipsel ${MACHINE}"
SERIAL_CONSOLE = "tts/0"
BOOTSTRAP_EXTRA_DEPENDS += "virtual/kernel wrt-utils wrt-init loader"
-BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-wl kernel-module-et kernel-module-wlcompat"
+BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-wl kernel-module-et kernel-module-wlcompat kernel-module-diag"
BOOTSTRAP_EXTRA_RDEPENDS += "wrt-init wrt-utils"
BOOTSTRAP_EXTRA_RRECOMMENDS += ""
diff --git a/packages/modutils/files/wrt54/modules b/packages/modutils/files/wrt54/modules
index e69de29bb2..78f651a83d 100644
--- a/packages/modutils/files/wrt54/modules
+++ b/packages/modutils/files/wrt54/modules
@@ -0,0 +1,4 @@
+et
+wl
+wlcompat
+diag
diff --git a/packages/netbase/netbase/wrt54/interfaces b/packages/netbase/netbase/wrt54/interfaces
index 5925aa0294..8b2852ac51 100644
--- a/packages/netbase/netbase/wrt54/interfaces
+++ b/packages/netbase/netbase/wrt54/interfaces
@@ -4,16 +4,20 @@
auto lo
iface lo inet loopback
-# ethernet interface
-auto eth0
-iface eth0 inet static
+# the 4 LAN ports
+auto vlan0
+iface vlan0 inet static
address 192.168.1.1
netmask 255.255.255.0
+# WAN port
+auto vlan1
+iface vlan1 inet dhcp
+
# wireless interface
auto eth1
iface eth1 inet static
wireless_mode master
wireless_essid wrt
- address 192.168.0.1
+ address 10.0.0.1
netmask 255.255.255.0
diff --git a/packages/wrt/wrt-init.bb b/packages/wrt/wrt-init.bb
index bbb19f8c58..bae51c6816 100644
--- a/packages/wrt/wrt-init.bb
+++ b/packages/wrt/wrt-init.bb
@@ -2,15 +2,20 @@ DESCRIPTION = "wrt init scripts"
SECTION = "base"
LICENSE = "GPL"
-SRC_URI = "file://mount file://wrtboot"
+SRC_URI = "file://mount file://wrtboot file://wrtvlans file://finished"
do_install() {
install -d ${D}${sysconfdir}/rcS.d \
+ ${D}${sysconfdir}/rc2.d \
${D}${sysconfdir}/init.d
install -m 0755 ${WORKDIR}/mount ${D}${sysconfdir}/init.d
install -m 0755 ${WORKDIR}/wrtboot ${D}${sysconfdir}/init.d
+ install -m 0755 ${WORKDIR}/wrtvlans ${D}${sysconfdir}/init.d
+ install -m 0755 ${WORKDIR}/finished ${D}${sysconfdir}/init.d
ln -s ../init.d/mount ${D}${sysconfdir}/rcS.d/S05mount
ln -s ../init.d/wrtboot ${D}${sysconfdir}/rcS.d/S10wrtboot
+ ln -s ../init.d/wrtvlans ${D}${sysconfdir}/rcS.d/S30wrtvlans
+ ln -s ../init.d/finished ${D}${sysconfdir}/rc2.d/S99finished
}
diff --git a/packages/wrt/wrt-init/finished b/packages/wrt/wrt-init/finished
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/wrt/wrt-init/finished
diff --git a/packages/wrt/wrt-init/wrtboot b/packages/wrt/wrt-init/wrtboot
index e69de29bb2..c03d53f9bc 100644
--- a/packages/wrt/wrt-init/wrtboot
+++ b/packages/wrt/wrt-init/wrtboot
@@ -0,0 +1,24 @@
+#!/bin/sh
+
+echo "S" > /proc/jffs2_bbc
+
+[ "$(nvram get il0macaddr)" = "00:90:4c:5f:00:2a" ] && {
+ # if default wifi mac, set two higher than the lan mac
+ nvram set il0macaddr=$(nvram get et0macaddr|
+ awk '{OFS=FS=":";for(x=7,y=2;--x;){$x=sprintf("%02x",(y+="0x"$x)%256);y/=256}print}')
+}
+
+# set up the vlan*ports variables for the asus wl-500g deluxe
+# if they don't already exist
+[ "$(nvram get boardtype)" = "bcm95365r" ] && \
+[ "$(nvram get boardnum)" = "45" ] && {
+ [ -z "$(nvram get vlan0ports)" ] && \
+ [ -z "$(nvram get vlan1ports)" ] && {
+ nvram set vlan0ports="1 2 3 4 5*"
+ nvram set vlan1ports="0 5"
+ }
+}
+
+# well this is not really WRT specific
+HOSTNAME=`cat /etc/hostname`
+echo ${HOSTNAME}>/proc/sys/kernel/hostname
diff --git a/packages/wrt/wrt-init/wrtvlans b/packages/wrt/wrt-init/wrtvlans
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/wrt/wrt-init/wrtvlans