aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFlorian Fainelli <florian@openwrt.org>2008-08-05 13:42:36 +0000
committerFlorian Fainelli <florian@openwrt.org>2008-08-05 13:42:36 +0000
commit1b0318158d9b80b773f643454dc1aed9a1926deb (patch)
tree90654f50005ec1ad778c86fb8f381400e5d558f5
parent027a7939f17e50432db03c3ea354c3d40c9de614 (diff)
downloadupstream-1b0318158d9b80b773f643454dc1aed9a1926deb.tar.gz
upstream-1b0318158d9b80b773f643454dc1aed9a1926deb.tar.bz2
upstream-1b0318158d9b80b773f643454dc1aed9a1926deb.zip
Reinstate rdc bootability and force it to use init=/etc/preinit, thus the remove the hackish SetInitramfs actions
SVN-Revision: 12136
-rw-r--r--package/kernel/modules/network.mk1
-rw-r--r--target/linux/rdc/Makefile12
-rw-r--r--target/linux/rdc/base-files/etc/config/network19
-rw-r--r--target/linux/rdc/config-2.6.2424
-rw-r--r--target/linux/rdc/files/drivers/net/r6040.c2
-rw-r--r--target/linux/rdc/patches-2.6.24/005-cmdline_setup.patch10
6 files changed, 40 insertions, 28 deletions
diff --git a/package/kernel/modules/network.mk b/package/kernel/modules/network.mk
index 5face2175b..c546d638ed 100644
--- a/package/kernel/modules/network.mk
+++ b/package/kernel/modules/network.mk
@@ -558,6 +558,7 @@ define KernelPackage/r6040
DEPENDS:=@TARGET_rdc
KCONFIG:=CONFIG_R6040
FILES:=$(LINUX_DIR)/drivers/net/r6040.$(LINUX_KMOD_SUFFIX)
+ AUTOLOAD:=$(call AutoLoad,99,r6040)
endef
define KernelPackage/r6040/description
diff --git a/target/linux/rdc/Makefile b/target/linux/rdc/Makefile
index 89fab7149b..d56bac0107 100644
--- a/target/linux/rdc/Makefile
+++ b/target/linux/rdc/Makefile
@@ -20,16 +20,4 @@ define Target/Description
(e.g. Airlink101 AR525W, Linksys WRT54R, Sitecom WL-153)
endef
-ifeq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y)
- define Kernel/SetInitramfs
- echo "r6040 parent=wlan0" > $(TARGET_DIR)/etc/modules.d/99-r6040
- $(RM) $(TARGET_DIR)/sbin/init
- ln -s /etc/preinit $(TARGET_DIR)/sbin/init
- sed -i 's,exec /sbin/init,exec /bin/busybox init,g' $(TARGET_DIR)/etc/preinit
- sed -i 's,/sbin/init,/bin/busybox init,g' $(TARGET_DIR)/init
- mv $(TARGET_DIR)/init $(TARGET_DIR)/linuxrc
- sed -i 's,eth0,eth1,g' $(TARGET_DIR)/etc/config/network
- endef
-endif
-
$(eval $(call BuildTarget))
diff --git a/target/linux/rdc/base-files/etc/config/network b/target/linux/rdc/base-files/etc/config/network
new file mode 100644
index 0000000000..4e55afd9b1
--- /dev/null
+++ b/target/linux/rdc/base-files/etc/config/network
@@ -0,0 +1,19 @@
+# Copyright (C) 2008 OpenWrt.org
+
+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/rdc/config-2.6.24 b/target/linux/rdc/config-2.6.24
index 7ee25b558a..a033d5d366 100644
--- a/target/linux/rdc/config-2.6.24
+++ b/target/linux/rdc/config-2.6.24
@@ -23,10 +23,12 @@ CONFIG_BITREVERSE=y
CONFIG_BLK_DEV_IDE=m
CONFIG_BLK_DEV_IDEDISK=m
# CONFIG_BLK_DEV_IDEDMA is not set
-# CONFIG_BLK_DEV_PLATFORM is not set
+CONFIG_BLK_DEV_RAM=y
+CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
+CONFIG_BLK_DEV_RAM_COUNT=16
+CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_BOUNCE=y
# CONFIG_BROADCOM_PHY is not set
-# CONFIG_BT_HCIUART_LL is not set
CONFIG_CLOCKSOURCE_WATCHDOG=y
# CONFIG_COMPAT_VDSO is not set
# CONFIG_CPU5_WDT is not set
@@ -70,7 +72,6 @@ CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HIBERNATION_UP_POSSIBLE=y
CONFIG_HID=m
-# CONFIG_HIDRAW is not set
CONFIG_HID_SUPPORT=y
# CONFIG_HIGHMEM4G is not set
# CONFIG_HIGHMEM64G is not set
@@ -107,6 +108,7 @@ CONFIG_IDE_ARCH_OBSOLETE_INIT=y
# CONFIG_IDE_PROC_FS is not set
CONFIG_INITRAMFS_SOURCE=""
CONFIG_INPUT=m
+# CONFIG_INPUT_GPIO_BUTTONS is not set
CONFIG_INPUT_MISC=y
CONFIG_INPUT_YEALINK=m
CONFIG_INSTRUMENTATION=y
@@ -121,7 +123,6 @@ CONFIG_KEXEC=y
CONFIG_KTIME_SCALAR=y
# CONFIG_KVM is not set
CONFIG_LBD=y
-# CONFIG_LEDS_ALIX is not set
CONFIG_LEDS_GPIO=y
# CONFIG_LGUEST is not set
CONFIG_LSF=y
@@ -216,7 +217,7 @@ CONFIG_MTD_RDC3210_SIZE=0x400000
# CONFIG_NET_VENDOR_3COM is not set
CONFIG_NLS_ISO8859_2=m
CONFIG_NOHIGHMEM=y
-# CONFIG_NO_HZ is not set
+CONFIG_NO_HZ=y
CONFIG_NR_QUICK=1
# CONFIG_NSC_GPIO is not set
CONFIG_NVRAM=y
@@ -224,14 +225,13 @@ CONFIG_PAGE_OFFSET=0xC0000000
# CONFIG_PARAVIRT_GUEST is not set
CONFIG_PATA_ARTOP=m
# CONFIG_PATA_CS5536 is not set
-# CONFIG_PATA_NS87415 is not set
# CONFIG_PC8736x_GPIO is not set
# CONFIG_PC87413_WDT is not set
CONFIG_PCCARD=m
CONFIG_PCCARD_NONSTATIC=m
+CONFIG_PCI=y
# CONFIG_PCIEPORTBUS is not set
# CONFIG_PCIPCWATCHDOG is not set
-CONFIG_PCI=y
CONFIG_PCI_BIOS=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_DOMAINS=y
@@ -257,19 +257,16 @@ CONFIG_RWSEM_XCHGADD_ALGORITHM=y
# CONFIG_SC1200_WDT is not set
# CONFIG_SC520_WDT is not set
CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
-# CONFIG_SCSI_LOWLEVEL_PCMCIA is not set
# CONFIG_SCSI_MULTI_LUN is not set
CONFIG_SCSI_WAIT_SCAN=m
# CONFIG_SCx200 is not set
# CONFIG_SCx200_ACB is not set
CONFIG_SEMAPHORE_SLEEPERS=y
-# CONFIG_SENSORS_FSCHMD is not set
# CONFIG_SERIAL_8250_EXTENDED is not set
CONFIG_SLABINFO=y
# CONFIG_SMP is not set
# CONFIG_SMSC37B787_WDT is not set
# CONFIG_SMSC_PHY is not set
-# CONFIG_SND_CS5530 is not set
CONFIG_SOFT_WATCHDOG=m
# CONFIG_SONYPI is not set
# CONFIG_SPARSEMEM_STATIC is not set
@@ -277,18 +274,17 @@ CONFIG_SOFT_WATCHDOG=m
CONFIG_SSB_POSSIBLE=y
CONFIG_SYSVIPC_SYSCTL=y
# CONFIG_TELCLOCK is not set
-# CONFIG_TICK_ONESHOT is not set
+CONFIG_TICK_ONESHOT=y
# CONFIG_TOSHIBA is not set
CONFIG_UID16=y
-# CONFIG_USBPCWATCHDOG is not set
CONFIG_USB=m
+# CONFIG_USBPCWATCHDOG is not set
CONFIG_USB_EHCI_HCD=m
# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
CONFIG_USB_OHCI_HCD=m
CONFIG_USB_PWC=m
# CONFIG_USB_PWC_DEBUG is not set
-# CONFIG_USB_R8A66597_HCD is not set
# CONFIG_USB_SERIAL_CH341 is not set
# CONFIG_USB_SERIAL_OTI6858 is not set
# CONFIG_USB_UHCI_HCD is not set
@@ -298,9 +294,7 @@ CONFIG_V4L_USB_DRIVERS=y
# CONFIG_VIA_RHINE is not set
CONFIG_VIDEO_CAPTURE_DRIVERS=y
CONFIG_VIDEO_CPIA2=m
-# CONFIG_VIDEO_TCM825X is not set
CONFIG_VIDEO_V4L1=y
-# CONFIG_VIDEO_VP27SMPX is not set
CONFIG_VIRTUALIZATION=y
# CONFIG_VM86 is not set
# CONFIG_VMSPLIT_1G is not set
diff --git a/target/linux/rdc/files/drivers/net/r6040.c b/target/linux/rdc/files/drivers/net/r6040.c
index 2703db457e..29e731d81f 100644
--- a/target/linux/rdc/files/drivers/net/r6040.c
+++ b/target/linux/rdc/files/drivers/net/r6040.c
@@ -243,7 +243,7 @@ struct r6040_private {
};
struct net_device *parent_dev;
-static char *parent;
+static char *parent = "wlan0";
module_param(parent, charp, 0444);
MODULE_PARM_DESC(parent, "Parent network device name to get the MAC address from");
diff --git a/target/linux/rdc/patches-2.6.24/005-cmdline_setup.patch b/target/linux/rdc/patches-2.6.24/005-cmdline_setup.patch
new file mode 100644
index 0000000000..007477e836
--- /dev/null
+++ b/target/linux/rdc/patches-2.6.24/005-cmdline_setup.patch
@@ -0,0 +1,10 @@
+--- linux-2.6.24.7/arch/x86/kernel/setup_32.c 2008-05-07 01:22:34.000000000 +0200
++++ linux-2.6.24.7.new/arch/x86/kernel/setup_32.c 2008-08-05 14:54:58.000000000 +0200
+@@ -609,6 +609,7 @@
+ print_memory_map("user");
+ }
+
++ strcat(boot_command_line, " init=/etc/preinit");
+ strlcpy(command_line, boot_command_line, COMMAND_LINE_SIZE);
+ *cmdline_p = command_line;
+