aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/x86/rdc
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/x86/rdc')
-rw-r--r--target/linux/x86/rdc/base-files/etc/config/network26
-rw-r--r--target/linux/x86/rdc/base-files/etc/diag.sh17
-rw-r--r--target/linux/x86/rdc/base-files/lib/preinit/05_set_ether_mac_rdc36
-rw-r--r--target/linux/x86/rdc/base-files/lib/upgrade/platform.sh10
-rw-r--r--target/linux/x86/rdc/config-default65
-rw-r--r--target/linux/x86/rdc/profiles/ar525w.mk12
-rw-r--r--target/linux/x86/rdc/profiles/bifferboard.mk13
-rw-r--r--target/linux/x86/rdc/profiles/r8610.mk14
-rw-r--r--target/linux/x86/rdc/profiles/sitecom.mk12
-rw-r--r--target/linux/x86/rdc/target.mk13
10 files changed, 218 insertions, 0 deletions
diff --git a/target/linux/x86/rdc/base-files/etc/config/network b/target/linux/x86/rdc/base-files/etc/config/network
new file mode 100644
index 0000000..69627f7
--- /dev/null
+++ b/target/linux/x86/rdc/base-files/etc/config/network
@@ -0,0 +1,26 @@
+# Copyright (C) 2009 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
+ option ip6assign 60
+
+config interface wan
+ option ifname eth0
+ option proto dhcp
+
+config interface wan6
+ option ifname eth0
+ option proto dhcpv6
+
+config globals globals
+ option ula_prefix auto
diff --git a/target/linux/x86/rdc/base-files/etc/diag.sh b/target/linux/x86/rdc/base-files/etc/diag.sh
new file mode 100644
index 0000000..03796d7
--- /dev/null
+++ b/target/linux/x86/rdc/base-files/etc/diag.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+# Copyright (C) 2007-2013 OpenWrt.org
+
+. /lib/functions/leds.sh
+
+status_led="rdc321x:dmz"
+
+set_state() {
+ case "$1" in
+ preinit)
+ status_led_on
+ ;;
+ done)
+ status_led_off
+ ;;
+ esac
+}
diff --git a/target/linux/x86/rdc/base-files/lib/preinit/05_set_ether_mac_rdc b/target/linux/x86/rdc/base-files/lib/preinit/05_set_ether_mac_rdc
new file mode 100644
index 0000000..0518766
--- /dev/null
+++ b/target/linux/x86/rdc/base-files/lib/preinit/05_set_ether_mac_rdc
@@ -0,0 +1,36 @@
+#!/bin/sh
+# Copyright (C) 2009-2012 OpenWrt.org
+
+. /lib/functions.sh
+
+r6040_module() {
+ insmod libphy
+ insmod swconfig
+ insmod ip17xx
+ sleep 1
+ insmod r6040
+}
+
+set_ether_mac() {
+ kernel=$(grep firmware /proc/mtd | awk -F: '{print $1}')
+ [ -n "$kernel" ] && hdr=$(dd if=/dev/$kernel count=4 bs=1 2> /dev/null)
+ [ "$hdr" = "CSYS" ] && config=$(find_mtd_part config)
+ if [ -n "$config" ]; then
+ mac0=$(hexdump -n 6 -e '6/1 ":%X"' -s 24583 $config | cut -c2-)
+ [ "$mac0" = "FF:FF:FF:FF:FF:FF" -o "$mac0" = "0:0:0:0:0:0" ] && unset mac0
+ mac1=$(hexdump -n 6 -e '6/1 ":%X"' -s 24589 $config | cut -c2-)
+ [ "$mac1" = "FF:FF:FF:FF:FF:FF" -o "$mac1" = "0:0:0:0:0:0" ] && unset mac1
+ fi
+ if [ -n "$mac0" ]; then
+ logger -t kernel -p user.info "r6040: Setting MAC for eth0 to $mac0"
+ ifconfig eth0 hw ether "$mac0"
+ fi
+ if [ -n "$mac1" ]; then
+ logger -t kernel -p user.info "r6040: Setting MAC for eth1 to $mac1"
+ ifconfig eth1 hw ether "$mac1"
+ fi
+}
+
+boot_hook_add preinit_main r6040_module
+boot_hook_add preinit_main set_ether_mac
+
diff --git a/target/linux/x86/rdc/base-files/lib/upgrade/platform.sh b/target/linux/x86/rdc/base-files/lib/upgrade/platform.sh
new file mode 100644
index 0000000..6348a69
--- /dev/null
+++ b/target/linux/x86/rdc/base-files/lib/upgrade/platform.sh
@@ -0,0 +1,10 @@
+PART_NAME=firmware
+
+platform_check_image() {
+ [ "$(get_magic_word $(find_mtd_part firmware))" -eq "$(get_magic_word "$1")" ] && return 0
+
+ echo "Invalid image type. Please use an appropriate .bin file"
+ return 1
+}
+
+# use default for platform_do_upgrade()
diff --git a/target/linux/x86/rdc/config-default b/target/linux/x86/rdc/config-default
new file mode 100644
index 0000000..34007ac
--- /dev/null
+++ b/target/linux/x86/rdc/config-default
@@ -0,0 +1,65 @@
+CONFIG_ARCH_RANDOM=y
+CONFIG_ARCH_REQUIRE_GPIOLIB=y
+# CONFIG_ARPD is not set
+# CONFIG_BASE_FULL is not set
+CONFIG_BASE_SMALL=1
+# CONFIG_BLK_DEV_INITRD is not set
+CONFIG_BLK_DEV_RAM=y
+CONFIG_BLK_DEV_RAM_COUNT=16
+CONFIG_BLK_DEV_RAM_SIZE=4096
+CONFIG_BRIDGE=m
+CONFIG_CC_OPTIMIZE_FOR_SIZE=y
+CONFIG_CMDLINE="console=uart,io,0x3f8 rootfstype=squashfs,jffs2"
+CONFIG_CMDLINE_BOOL=y
+# CONFIG_CMDLINE_OVERRIDE is not set
+# CONFIG_COMPAT_VDSO is not set
+# CONFIG_CPU_SUP_AMD is not set
+# CONFIG_CPU_SUP_CENTAUR is not set
+# CONFIG_CPU_SUP_CYRIX_32 is not set
+# CONFIG_CPU_SUP_INTEL is not set
+# CONFIG_CPU_SUP_TRANSMETA_32 is not set
+# CONFIG_CPU_SUP_UMC_32 is not set
+CONFIG_DEBUG_BUGVERBOSE=y
+# CONFIG_EARLY_PRINTK is not set
+# CONFIG_FIRMWARE_MEMMAP is not set
+CONFIG_GPIOLIB=y
+CONFIG_GPIO_RDC321X=y
+CONFIG_GPIO_SYSFS=y
+# CONFIG_HPET_TIMER is not set
+CONFIG_HZ=250
+# CONFIG_HZ_100 is not set
+CONFIG_HZ_250=y
+# CONFIG_IP_MROUTE is not set
+CONFIG_IRQ_DOMAIN=y
+# CONFIG_JFFS2_SUMMARY is not set
+CONFIG_LEDS_GPIO=y
+# CONFIG_LEDS_TRIGGER_NETDEV is not set
+# CONFIG_LEDS_TRIGGER_TIMER is not set
+CONFIG_LLC=m
+CONFIG_MFD_CORE=y
+CONFIG_MFD_RDC321X=y
+CONFIG_MODULE_FORCE_UNLOAD=y
+# CONFIG_MTRR is not set
+CONFIG_NLS=y
+CONFIG_PCI_DISABLE_COMMON_QUIRKS=y
+# CONFIG_PCI_QUIRKS is not set
+CONFIG_PHYSICAL_START=0x100000
+CONFIG_PROCESSOR_SELECT=y
+CONFIG_RDC321X_WDT=m
+# CONFIG_SCx200 is not set
+# CONFIG_SHMEM is not set
+CONFIG_STP=m
+CONFIG_VLAN_8021Q=m
+# CONFIG_VM86 is not set
+CONFIG_X86_EXTENDED_PLATFORM=y
+# CONFIG_X86_GENERIC is not set
+CONFIG_X86_INTERNODE_CACHE_SHIFT=4
+CONFIG_X86_L1_CACHE_SHIFT=4
+# CONFIG_X86_MCE is not set
+# CONFIG_X86_PLATFORM_DEVICES is not set
+# CONFIG_X86_PPRO_FENCE is not set
+CONFIG_X86_RDC321X=y
+CONFIG_X86_REBOOTFIXUPS=y
+# CONFIG_X86_UP_APIC is not set
+# CONFIG_X86_VERBOSE_BOOTUP is not set
+# CONFIG_X86_WANT_INTEL_MID is not set
diff --git a/target/linux/x86/rdc/profiles/ar525w.mk b/target/linux/x86/rdc/profiles/ar525w.mk
new file mode 100644
index 0000000..d38cb1f
--- /dev/null
+++ b/target/linux/x86/rdc/profiles/ar525w.mk
@@ -0,0 +1,12 @@
+#
+# Copyright (C) 2010 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+define Profile/ar525w
+ NAME:=Airlink AR525W
+ PACKAGES:=kmod-rt61-pci kmod-switch-ip17xx swconfig
+endef
+$(eval $(call Profile,ar525w))
diff --git a/target/linux/x86/rdc/profiles/bifferboard.mk b/target/linux/x86/rdc/profiles/bifferboard.mk
new file mode 100644
index 0000000..35fea45
--- /dev/null
+++ b/target/linux/x86/rdc/profiles/bifferboard.mk
@@ -0,0 +1,13 @@
+#
+# Copyright (C) 2010 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+define Profile/bifferboard
+ NAME:=Bifferboard
+ PACKAGES:=kmod-usb-core kmod-usb-ohci kmod-usb2 \
+ kmod-usb-storage kmod-scsi-core kmod-fs-ext4
+endef
+$(eval $(call Profile,bifferboard))
diff --git a/target/linux/x86/rdc/profiles/r8610.mk b/target/linux/x86/rdc/profiles/r8610.mk
new file mode 100644
index 0000000..d5f8c0a
--- /dev/null
+++ b/target/linux/x86/rdc/profiles/r8610.mk
@@ -0,0 +1,14 @@
+#
+# Copyright (C) 2010 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+define Profile/r8610
+ NAME:=RDC R8610 Evaluation Board
+ PACKAGES:=kmod-usb-core kmod-usb-ohci kmod-usb2 \
+ kmod-hwmon-core kmod-hwmon-w83627hf kmod-ide-core kmod-ide-it821x \
+ kmod-rtc-core kmod-rtc-m48t86 kmod-fs-ext4
+endef
+$(eval $(call Profile,r8610))
diff --git a/target/linux/x86/rdc/profiles/sitecom.mk b/target/linux/x86/rdc/profiles/sitecom.mk
new file mode 100644
index 0000000..e3b2981
--- /dev/null
+++ b/target/linux/x86/rdc/profiles/sitecom.mk
@@ -0,0 +1,12 @@
+#
+# Copyright (C) 2010 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+define Profile/sitecom
+ NAME:=Devices from Sitecom (WL-153, DC-230)
+ PACKAGES:=kmod-rt61-pci kmod-usb-core kmod-usb-ohci kmod-usb2
+endef
+$(eval $(call Profile,sitecom))
diff --git a/target/linux/x86/rdc/target.mk b/target/linux/x86/rdc/target.mk
new file mode 100644
index 0000000..9b03b15
--- /dev/null
+++ b/target/linux/x86/rdc/target.mk
@@ -0,0 +1,13 @@
+BOARDNAME:=RDC R-321x
+FEATURES:=squashfs pci usb gpio pcmcia
+MAINTAINER:=Florian Fainelli <florian@openwrt.org>
+FEATURES += broken
+
+DEFAULT_PACKAGES += kmod-llc kmod-stp kmod-bridge kmod-8021q \
+ wpad-mini kmod-libphy kmod-r6040 kmod-input-core \
+ kmod-input-polldev kmod-button-hotplug kmod-rdc321x-wdt
+
+define Target/Description
+ Build firmware images for RDC321x based routers
+ (e.g. Airlink101 AR525W, Linksys WRT54GR, Sitecom WL-153)
+endef