summaryrefslogtreecommitdiffstats
path: root/target/linux/adm5120
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/adm5120')
-rw-r--r--target/linux/adm5120/Makefile2
-rw-r--r--target/linux/adm5120/base-files/etc/config/network12
-rwxr-xr-xtarget/linux/adm5120/base-files/etc/diag.sh36
-rw-r--r--target/linux/adm5120/base-files/etc/inittab5
-rw-r--r--target/linux/adm5120/config-3.8 (renamed from target/linux/adm5120/config-3.3)41
-rw-r--r--target/linux/adm5120/files/arch/mips/adm5120/common/platform.c24
-rw-r--r--target/linux/adm5120/files/arch/mips/adm5120/compex/compex.c4
-rw-r--r--target/linux/adm5120/files/arch/mips/adm5120/edimax/br-61xx.c4
-rw-r--r--target/linux/adm5120/files/arch/mips/adm5120/generic/eb-214a.c3
-rw-r--r--target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-11x.c1
-rw-r--r--target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-133.c1
-rw-r--r--target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-133c.c1
-rw-r--r--target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-150.c6
-rw-r--r--target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-153.c5
-rw-r--r--target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-192.c1
-rw-r--r--target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-1xx.c1
-rw-r--r--target/linux/adm5120/files/arch/mips/adm5120/motorola/pmugw.c4
-rw-r--r--target/linux/adm5120/files/arch/mips/adm5120/zyxel/p-33x.c4
-rw-r--r--target/linux/adm5120/files/arch/mips/include/asm/mach-adm5120/adm5120_platform.h1
-rw-r--r--target/linux/adm5120/files/drivers/ata/pata_rb153_cf.c6
-rw-r--r--target/linux/adm5120/files/drivers/mtd/trxsplit.c3
-rw-r--r--target/linux/adm5120/files/drivers/net/adm5120sw.c2
-rw-r--r--target/linux/adm5120/files/drivers/usb/host/adm5120-drv.c2
-rw-r--r--target/linux/adm5120/files/drivers/usb/host/adm5120-hcd.c1
-rw-r--r--target/linux/adm5120/patches-3.3/201-amba_bus_hacks.patch13
-rw-r--r--target/linux/adm5120/patches-3.8/001-adm5120.patch (renamed from target/linux/adm5120/patches-3.3/001-adm5120.patch)5
-rw-r--r--target/linux/adm5120/patches-3.8/002-adm5120_flash.patch (renamed from target/linux/adm5120/patches-3.3/002-adm5120_flash.patch)6
-rw-r--r--target/linux/adm5120/patches-3.8/003-adm5120_switch.patch (renamed from target/linux/adm5120/patches-3.3/003-adm5120_switch.patch)4
-rw-r--r--target/linux/adm5120/patches-3.8/005-adm5120_usb.patch (renamed from target/linux/adm5120/patches-3.3/005-adm5120_usb.patch)6
-rw-r--r--target/linux/adm5120/patches-3.8/007-adm5120_pci.patch (renamed from target/linux/adm5120/patches-3.3/007-adm5120_pci.patch)14
-rw-r--r--target/linux/adm5120/patches-3.8/009-adm5120_leds_switch_trigger.patch (renamed from target/linux/adm5120/patches-3.3/009-adm5120_leds_switch_trigger.patch)4
-rw-r--r--target/linux/adm5120/patches-3.8/101-cfi_fixup_macronix_bootloc.patch (renamed from target/linux/adm5120/patches-3.3/101-cfi_fixup_macronix_bootloc.patch)6
-rw-r--r--target/linux/adm5120/patches-3.8/102-jedec_pmc_39lvxxx_chips.patch (renamed from target/linux/adm5120/patches-3.3/102-jedec_pmc_39lvxxx_chips.patch)0
-rw-r--r--target/linux/adm5120/patches-3.8/103-mtd_trxsplit.patch (renamed from target/linux/adm5120/patches-3.3/103-mtd_trxsplit.patch)4
-rw-r--r--target/linux/adm5120/patches-3.8/120-rb153_cf_driver.patch (renamed from target/linux/adm5120/patches-3.3/120-rb153_cf_driver.patch)4
-rw-r--r--target/linux/adm5120/patches-3.8/200-amba_pl010_hacks.patch (renamed from target/linux/adm5120/patches-3.3/200-amba_pl010_hacks.patch)83
-rw-r--r--target/linux/adm5120/patches-3.8/203-gpio_leds_brightness.patch (renamed from target/linux/adm5120/patches-3.3/203-gpio_leds_brightness.patch)2
-rw-r--r--target/linux/adm5120/patches-3.8/310-adm5120_wdt.patch (renamed from target/linux/adm5120/patches-3.3/310-adm5120_wdt.patch)2
-rwxr-xr-xtarget/linux/adm5120/rb1xx/base-files/sbin/wget2nand2
-rw-r--r--target/linux/adm5120/rb1xx/config-3.8 (renamed from target/linux/adm5120/rb1xx/config-3.3)2
-rw-r--r--target/linux/adm5120/router_be/config-3.8 (renamed from target/linux/adm5120/router_be/config-3.3)2
-rw-r--r--target/linux/adm5120/router_le/config-3.8 (renamed from target/linux/adm5120/router_le/config-3.3)0
42 files changed, 111 insertions, 218 deletions
diff --git a/target/linux/adm5120/Makefile b/target/linux/adm5120/Makefile
index 273a28093..e8c101d77 100644
--- a/target/linux/adm5120/Makefile
+++ b/target/linux/adm5120/Makefile
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
BOARD:=adm5120
BOARDNAME:=Infineon/ADMtek ADM5120
-LINUX_VERSION:=3.3.8
+LINUX_VERSION:=3.8.12
SUBTARGETS:=router_le router_be rb1xx
INITRAMFS_EXTRA_FILES:=
diff --git a/target/linux/adm5120/base-files/etc/config/network b/target/linux/adm5120/base-files/etc/config/network
index df2f20105..9c52c0e39 100644
--- a/target/linux/adm5120/base-files/etc/config/network
+++ b/target/linux/adm5120/base-files/etc/config/network
@@ -19,9 +19,21 @@ config interface lan
option proto static
option ipaddr 192.168.1.1
option netmask 255.255.255.0
+ option ip6assign 60
#### WAN configuration
config interface wan
option ifname "eth1"
option proto dhcp
+
+
+#### WAN6 configuration
+config interface wan6
+ option ifname "@wan"
+ option proto dhcpv6
+
+
+#### Network global configuration
+config globals globals
+ option ula_prefix auto
diff --git a/target/linux/adm5120/base-files/etc/diag.sh b/target/linux/adm5120/base-files/etc/diag.sh
index 3a66dfc87..dede589ce 100755
--- a/target/linux/adm5120/base-files/etc/diag.sh
+++ b/target/linux/adm5120/base-files/etc/diag.sh
@@ -1,45 +1,17 @@
#!/bin/sh
-#
-# Copyright (C) 2007 OpenWrt.org
-#
-#
+# Copyright (C) 2007-2013 OpenWrt.org
+. /lib/functions/leds.sh
. /lib/adm5120.sh
-led_set_attr() {
- [ -f "/sys/class/leds/$1/$2" ] && echo "$3" > "/sys/class/leds/$1/$2"
-}
-
-status_led_set_timer() {
- led_set_attr $status_led "trigger" "timer"
- led_set_attr $status_led "delay_on" "$1"
- led_set_attr $status_led "delay_off" "$2"
-}
-
-status_led_set_morse() {
- led_set_attr $status_led "trigger" "morse"
- led_set_attr $status_led "delay" "$1"
- led_set_attr $status_led "message" "$2"
-}
-
-status_led_on() {
- led_set_attr $status_led "trigger" "none"
- led_set_attr $status_led "brightness" 255
-}
-
-status_led_off() {
- led_set_attr $status_led "trigger" "none"
- led_set_attr $status_led "brightness" 0
-}
-
set_state() {
case "$1" in
preinit)
insmod leds-gpio
- status_led_set_timer 200 200
+ status_led_blink_preinit
;;
failsafe)
- status_led_set_timer 50 50
+ status_led_blink_failsafe
;;
done)
status_led_on
diff --git a/target/linux/adm5120/base-files/etc/inittab b/target/linux/adm5120/base-files/etc/inittab
new file mode 100644
index 000000000..9f7c0aee3
--- /dev/null
+++ b/target/linux/adm5120/base-files/etc/inittab
@@ -0,0 +1,5 @@
+::sysinit:/etc/init.d/rcS S boot
+::shutdown:/etc/init.d/rcS K shutdown
+tts/0::askfirst:/bin/ash --login
+ttyAM0::askfirst:/bin/ash --login
+tty1::askfirst:/bin/ash --login
diff --git a/target/linux/adm5120/config-3.3 b/target/linux/adm5120/config-3.8
index 18739367b..b6157d853 100644
--- a/target/linux/adm5120/config-3.3
+++ b/target/linux/adm5120/config-3.8
@@ -34,45 +34,33 @@ CONFIG_ADM5120_SOC_BGA=y
CONFIG_ADM5120_WDT=y
CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y
CONFIG_ARCH_DISCARD_MEMBLOCK=y
+CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y
+CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y
CONFIG_ARCH_HIBERNATION_POSSIBLE=y
CONFIG_ARCH_REQUIRE_GPIOLIB=y
CONFIG_ARCH_SUSPEND_POSSIBLE=y
+CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
CONFIG_ARM_AMBA=y
# CONFIG_ARM_SP805_WATCHDOG is not set
CONFIG_ATA=m
-CONFIG_BCMA_POSSIBLE=y
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_CEVT_R4K=y
CONFIG_CEVT_R4K_LIB=y
-CONFIG_CMDLINE="console=ttyS0,115200 rootfstype=squashfs,jffs2"
+CONFIG_CMDLINE="console=ttyAM0,115200 rootfstype=squashfs,jffs2"
CONFIG_CMDLINE_BOOL=y
# CONFIG_CMDLINE_OVERRIDE is not set
# CONFIG_CPU_BIG_ENDIAN is not set
+CONFIG_CPU_GENERIC_DUMP_TLB=y
CONFIG_CPU_HAS_PREFETCH=y
CONFIG_CPU_HAS_SYNC=y
CONFIG_CPU_LITTLE_ENDIAN=y
CONFIG_CPU_MIPS32=y
CONFIG_CPU_MIPS32_R1=y
CONFIG_CPU_MIPSR1=y
+CONFIG_CPU_R4K_CACHE_TLB=y
+CONFIG_CPU_R4K_FPU=y
CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y
CONFIG_CPU_SUPPORTS_HIGHMEM=y
-CONFIG_CRYPTO=m
-CONFIG_CRYPTO_AEAD2=m
-CONFIG_CRYPTO_AES=m
-CONFIG_CRYPTO_ALGAPI=m
-CONFIG_CRYPTO_ALGAPI2=m
-CONFIG_CRYPTO_ARC4=m
-CONFIG_CRYPTO_BLKCIPHER=m
-CONFIG_CRYPTO_BLKCIPHER2=m
-CONFIG_CRYPTO_ECB=m
-CONFIG_CRYPTO_HASH=m
-CONFIG_CRYPTO_HASH2=m
-CONFIG_CRYPTO_MANAGER=m
-CONFIG_CRYPTO_MANAGER2=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
-CONFIG_CRYPTO_PCOMP2=m
-CONFIG_CRYPTO_RNG2=m
-CONFIG_CRYPTO_WORKQUEUE=m
CONFIG_CSRC_R4K=y
CONFIG_CSRC_R4K_LIB=y
CONFIG_DECOMPRESS_LZMA=y
@@ -84,10 +72,11 @@ CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_GENERIC_CMOS_UPDATE=y
CONFIG_GENERIC_GPIO=y
+CONFIG_GENERIC_IO=y
CONFIG_GENERIC_IRQ_SHOW=y
CONFIG_GENERIC_PCI_IOMAP=y
+CONFIG_GENERIC_SMP_IDLE_THREAD=y
CONFIG_GPIOLIB=y
-# CONFIG_GPIO_PL061 is not set
CONFIG_GPIO_SYSFS=y
CONFIG_HARDWARE_WATCHPOINTS=y
CONFIG_HAS_DMA=y
@@ -95,7 +84,9 @@ CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAVE_ARCH_JUMP_LABEL=y
CONFIG_HAVE_ARCH_KGDB=y
+CONFIG_HAVE_CLK=y
CONFIG_HAVE_C_RECORDMCOUNT=y
+CONFIG_HAVE_DEBUG_KMEMLEAK=y
CONFIG_HAVE_DMA_API_DEBUG=y
CONFIG_HAVE_DMA_ATTRS=y
CONFIG_HAVE_DYNAMIC_FTRACE=y
@@ -109,10 +100,10 @@ CONFIG_HAVE_IDE=y
CONFIG_HAVE_IRQ_WORK=y
CONFIG_HAVE_MEMBLOCK=y
CONFIG_HAVE_MEMBLOCK_NODE_MAP=y
+CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
CONFIG_HAVE_OPROFILE=y
CONFIG_HAVE_PERF_EVENTS=y
CONFIG_HID=m
-CONFIG_HID_SUPPORT=y
CONFIG_HOSTAP=m
CONFIG_HOSTAP_FIRMWARE=y
# CONFIG_HOSTAP_FIRMWARE_NVRAM is not set
@@ -142,6 +133,7 @@ CONFIG_MIPS=y
CONFIG_MIPS_L1_CACHE_SHIFT=5
CONFIG_MIPS_MACHINE=y
CONFIG_MIPS_MT_DISABLED=y
+CONFIG_MODULES_USE_ELF_REL=y
CONFIG_MTD_ADM5120=y
CONFIG_MTD_CFI_FIXUP_MACRONIX_BOOTLOC=y
# CONFIG_MTD_CFI_INTELEXT is not set
@@ -168,7 +160,6 @@ CONFIG_SCSI_MOD=m
CONFIG_SERIAL_AMBA_PL010=y
CONFIG_SERIAL_AMBA_PL010_CONSOLE=y
CONFIG_SERIAL_AMBA_PL010_NUMPORTS=2
-CONFIG_SERIAL_AMBA_PL010_PORTNAME="ttyS"
# CONFIG_SERIAL_AMBA_PL011 is not set
CONFIG_SERIO=y
CONFIG_SERIO_SERPORT=y
@@ -180,15 +171,19 @@ CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y
CONFIG_SYS_SUPPORTS_ARBIT_HZ=y
CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y
CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y
+CONFIG_TICK_CPU_ACCOUNTING=y
+CONFIG_UIDGID_CONVERTED=y
CONFIG_USB=m
CONFIG_USB_ADM5120_HCD=m
CONFIG_USB_ARCH_HAS_XHCI=y
CONFIG_USB_COMMON=m
CONFIG_USB_EHCI_HCD=m
+# CONFIG_USB_EHCI_HCD_PLATFORM is not set
# 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_OHCI_HCD_PLATFORM is not set
CONFIG_USB_SUPPORT=y
# CONFIG_USB_UHCI_HCD is not set
-CONFIG_XZ_DEC=y
+CONFIG_WATCHDOG_CORE=y
CONFIG_ZONE_DMA_FLAG=0
diff --git a/target/linux/adm5120/files/arch/mips/adm5120/common/platform.c b/target/linux/adm5120/files/arch/mips/adm5120/common/platform.c
index 809d77b8a..bdbfbcbae 100644
--- a/target/linux/adm5120/files/arch/mips/adm5120/common/platform.c
+++ b/target/linux/adm5120/files/arch/mips/adm5120/common/platform.c
@@ -200,7 +200,7 @@ struct amba_device adm5120_uart0_device = {
.end = ADM5120_UART0_BASE + ADM5120_UART_SIZE - 1,
.flags = IORESOURCE_MEM,
},
- .irq = { ADM5120_IRQ_UART0, -1 },
+ .irq = { ADM5120_IRQ_UART0, 0 },
.periphid = 0x0041010,
};
@@ -218,7 +218,7 @@ struct amba_device adm5120_uart1_device = {
.end = ADM5120_UART1_BASE + ADM5120_UART_SIZE - 1,
.flags = IORESOURCE_MEM,
},
- .irq = { ADM5120_IRQ_UART1, -1 },
+ .irq = { ADM5120_IRQ_UART1, 0 },
.periphid = 0x0041010,
};
@@ -312,26 +312,6 @@ void __init adm5120_add_device_gpio_leds(unsigned num_leds,
}
/*
- * GPIO device
- */
-static struct resource adm5120_gpio_resource[] __initdata = {
- {
- .start = 0x3fffff,
- },
-};
-
-void __init adm5120_add_device_gpio(u32 disable_mask)
-{
- if (adm5120_package_pqfp())
- disable_mask |= 0xf0;
-
- adm5120_gpio_resource[0].start &= ~disable_mask;
- platform_device_register_simple("GPIODEV", -1,
- adm5120_gpio_resource,
- ARRAY_SIZE(adm5120_gpio_resource));
-}
-
-/*
* NAND flash
*/
struct resource adm5120_nand_resources[] = {
diff --git a/target/linux/adm5120/files/arch/mips/adm5120/compex/compex.c b/target/linux/adm5120/files/arch/mips/adm5120/compex/compex.c
index c14655ada..814acfb0c 100644
--- a/target/linux/adm5120/files/arch/mips/adm5120/compex/compex.c
+++ b/target/linux/adm5120/files/arch/mips/adm5120/compex/compex.c
@@ -13,8 +13,6 @@
#include <asm/mach-adm5120/prom/myloader.h>
-#define COMPEX_GPIO_DEV_MASK (1 << ADM5120_GPIO_PIN5)
-
static void switch_bank_gpio5(unsigned bank)
{
switch (bank) {
@@ -58,7 +56,5 @@ void __init compex_generic_setup(void)
adm5120_add_device_uart(0);
adm5120_add_device_uart(1);
- adm5120_add_device_gpio(COMPEX_GPIO_DEV_MASK);
-
compex_mac_setup();
}
diff --git a/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-61xx.c b/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-61xx.c
index cc64ccba2..62a1cee38 100644
--- a/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-61xx.c
+++ b/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-61xx.c
@@ -13,8 +13,6 @@
#include <prom/admboot.h>
-#define BR61XX_GPIO_DEV_MASK 0
-
#define BR61XX_CONFIG_OFFSET 0x8000
#define BR61XX_CONFIG_SIZE 0x1000
@@ -73,8 +71,6 @@ void __init br61xx_generic_setup(void)
adm5120_flash0_data.parts = br61xx_partitions;
adm5120_add_device_flash(0);
- adm5120_add_device_gpio(BR61XX_GPIO_DEV_MASK);
-
adm5120_add_device_uart(0);
adm5120_add_device_uart(1);
diff --git a/target/linux/adm5120/files/arch/mips/adm5120/generic/eb-214a.c b/target/linux/adm5120/files/arch/mips/adm5120/generic/eb-214a.c
index c62c147c5..cf491a1ef 100644
--- a/target/linux/adm5120/files/arch/mips/adm5120/generic/eb-214a.c
+++ b/target/linux/adm5120/files/arch/mips/adm5120/generic/eb-214a.c
@@ -25,7 +25,6 @@
#include <asm/mach-adm5120/adm5120_defs.h>
-#define EB214A_GPIO_DEV_MASK 0
#define EB214A_CONFIG_OFFSET 0x4000
#define EB214A_KEYS_POLL_INTERVAL 20
@@ -99,8 +98,6 @@ static void __init eb214a_setup(void)
adm5120_flash0_data.parts = eb214a_partitions;
adm5120_add_device_flash(0);
- adm5120_add_device_gpio(EB214A_GPIO_DEV_MASK);
-
adm5120_add_device_uart(0);
/* adm5120_add_device_uart(1); */
diff --git a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-11x.c b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-11x.c
index 30625c920..fd768d8ef 100644
--- a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-11x.c
+++ b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-11x.c
@@ -27,7 +27,6 @@ static void __init rb11x_setup(void)
rb1xx_add_device_nand();
adm5120_add_device_switch(1, rb11x_vlans);
- adm5120_add_device_gpio(0);
adm5120_add_device_gpio_leds(ARRAY_SIZE(rb11x_gpio_leds),
rb11x_gpio_leds);
}
diff --git a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-133.c b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-133.c
index 4d8fae011..23c57820c 100644
--- a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-133.c
+++ b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-133.c
@@ -32,7 +32,6 @@ static void __init rb133_setup(void)
rb1xx_add_device_nand();
adm5120_add_device_switch(3, rb133_vlans);
- adm5120_add_device_gpio(0);
adm5120_add_device_gpio_leds(ARRAY_SIZE(rb133_gpio_leds),
rb133_gpio_leds);
}
diff --git a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-133c.c b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-133c.c
index 11924c132..25bab70c0 100644
--- a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-133c.c
+++ b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-133c.c
@@ -28,7 +28,6 @@ static void __init rb133c_setup(void)
rb1xx_add_device_nand();
adm5120_add_device_switch(1, rb133c_vlans);
- adm5120_add_device_gpio(0);
adm5120_add_device_gpio_leds(ARRAY_SIZE(rb133c_gpio_leds),
rb133c_gpio_leds);
}
diff --git a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-150.c b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-150.c
index af9525635..96a8c1b87 100644
--- a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-150.c
+++ b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-150.c
@@ -20,11 +20,6 @@
#define RB150_GPIO_NAND_ALE ADM5120_GPIO_P3L2
#define RB150_GPIO_RESET_BUTTON ADM5120_GPIO_PIN1 /* FIXME */
-#define RB150_GPIO_DEV_MASK (1 << RB150_GPIO_NAND_READY \
- | 1 << RB150_GPIO_NAND_NCE \
- | 1 << RB150_GPIO_NAND_CLE \
- | 1 << RB150_GPIO_NAND_ALE)
-
#define RB150_NAND_DELAY 100
#define RB150_NAND_WRITE(v) \
@@ -127,7 +122,6 @@ static void __init rb150_setup(void)
rb1xx_generic_setup();
rb150_add_device_nand();
- adm5120_add_device_gpio(RB150_GPIO_DEV_MASK);
adm5120_add_device_gpio_leds(ARRAY_SIZE(rb150_gpio_leds),
rb150_gpio_leds);
adm5120_add_device_switch(5, rb150_vlans);
diff --git a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-153.c b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-153.c
index b2ebdc7c1..845668495 100644
--- a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-153.c
+++ b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-153.c
@@ -11,10 +11,6 @@
#include "rb-1xx.h"
-#define RB153_GPIO_DEV_MASK (1 << ADM5120_GPIO_PIN0 \
- | 1 << ADM5120_GPIO_PIN3 \
- | 1 << ADM5120_GPIO_PIN4)
-
static struct resource rb153_cf_resources[] __initdata = {
{
.name = "cf_membase",
@@ -65,7 +61,6 @@ static void __init rb153_setup(void)
rb1xx_add_device_nand();
rb153_add_device_cf();
- adm5120_add_device_gpio(RB153_GPIO_DEV_MASK);
adm5120_add_device_gpio_leds(ARRAY_SIZE(rb153_gpio_leds),
rb153_gpio_leds);
adm5120_add_device_switch(5, rb153_vlans);
diff --git a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-192.c b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-192.c
index 8cf8941b7..904942139 100644
--- a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-192.c
+++ b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-192.c
@@ -20,7 +20,6 @@ static void __init rb192_setup(void)
rb1xx_generic_setup();
rb1xx_add_device_nand();
- adm5120_add_device_gpio(0);
adm5120_add_device_switch(6, rb192_vlans);
}
diff --git a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-1xx.c b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-1xx.c
index 2ad8c4220..8961115c7 100644
--- a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-1xx.c
+++ b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-1xx.c
@@ -83,7 +83,6 @@ struct platform_nand_data rb1xx_nand_data __initdata = {
.nr_partitions = ARRAY_SIZE(rb1xx_nand_parts),
.partitions = rb1xx_nand_parts,
.chip_delay = RB1XX_NAND_CHIP_DELAY,
- .options = NAND_NO_AUTOINCR,
.chip_fixup = rb1xx_nand_fixup,
},
};
diff --git a/target/linux/adm5120/files/arch/mips/adm5120/motorola/pmugw.c b/target/linux/adm5120/files/arch/mips/adm5120/motorola/pmugw.c
index a706e573c..369892fd1 100644
--- a/target/linux/adm5120/files/arch/mips/adm5120/motorola/pmugw.c
+++ b/target/linux/adm5120/files/arch/mips/adm5120/motorola/pmugw.c
@@ -83,8 +83,8 @@ void __init pmugw_setup(void)
adm5120_flash0_data.nr_parts = ARRAY_SIZE(pmugw_partitions);
adm5120_flash0_data.parts = pmugw_partitions;
- adm5120_add_device_uart(1); /* ttyS0 */
- adm5120_add_device_uart(0); /* ttyS1 */
+ adm5120_add_device_uart(1); /* ttyAM0 */
+ adm5120_add_device_uart(0); /* ttyAM1 */
adm5120_add_device_flash(0);
diff --git a/target/linux/adm5120/files/arch/mips/adm5120/zyxel/p-33x.c b/target/linux/adm5120/files/arch/mips/adm5120/zyxel/p-33x.c
index 7f86cab85..2626cf9ee 100644
--- a/target/linux/adm5120/files/arch/mips/adm5120/zyxel/p-33x.c
+++ b/target/linux/adm5120/files/arch/mips/adm5120/zyxel/p-33x.c
@@ -14,8 +14,6 @@
#include <prom/zynos.h>
#define P33X_GPIO_FLASH_A20 ADM5120_GPIO_PIN5
-#define P33X_GPIO_DEV_MASK (1 << P33X_GPIO_FLASH_A20)
-
static struct mtd_partition p33x_partitions[] = {
{
.name = "bootbase",
@@ -80,8 +78,6 @@ void __init p33x_generic_setup(void)
adm5120_add_device_uart(0);
adm5120_add_device_uart(1);
- adm5120_add_device_gpio(P33X_GPIO_DEV_MASK);
-
adm5120_setup_eth_macs(bootbase_info.mac);
adm5120_add_device_switch(6, p33x_vlans);
diff --git a/target/linux/adm5120/files/arch/mips/include/asm/mach-adm5120/adm5120_platform.h b/target/linux/adm5120/files/arch/mips/include/asm/mach-adm5120/adm5120_platform.h
index 952c7adc8..ed73b5329 100644
--- a/target/linux/adm5120/files/arch/mips/include/asm/mach-adm5120/adm5120_platform.h
+++ b/target/linux/adm5120/files/arch/mips/include/asm/mach-adm5120/adm5120_platform.h
@@ -66,7 +66,6 @@ extern void adm5120_add_device_usb(void) __init;
extern void adm5120_add_device_uart(unsigned id) __init;
extern void adm5120_add_device_nand(struct platform_nand_data *pdata) __init;
extern void adm5120_add_device_switch(unsigned num_ports, u8 *vlan_map) __init;
-extern void adm5120_add_device_gpio(u32 disable_mask) __init;
extern void adm5120_register_gpio_buttons(int id,
unsigned poll_interval,
unsigned nbuttons,
diff --git a/target/linux/adm5120/files/drivers/ata/pata_rb153_cf.c b/target/linux/adm5120/files/drivers/ata/pata_rb153_cf.c
index 71f8ad6b8..92a4d1390 100644
--- a/target/linux/adm5120/files/drivers/ata/pata_rb153_cf.c
+++ b/target/linux/adm5120/files/drivers/ata/pata_rb153_cf.c
@@ -148,7 +148,7 @@ static void rb153_pata_setup_port(struct ata_host *ah)
ap->ioaddr.data_addr = info->iobase + RB153_CF_REG_DATA;
}
-static __devinit int rb153_pata_driver_probe(struct platform_device *pdev)
+static int rb153_pata_driver_probe(struct platform_device *pdev)
{
unsigned int irq;
int gpio;
@@ -222,7 +222,7 @@ err_free_gpio:
return ret;
}
-static __devexit int rb153_pata_driver_remove(struct platform_device *pdev)
+static int rb153_pata_driver_remove(struct platform_device *pdev)
{
struct ata_host *ah = platform_get_drvdata(pdev);
struct rb153_cf_info *info = ah->private_data;
@@ -235,7 +235,7 @@ static __devexit int rb153_pata_driver_remove(struct platform_device *pdev)
static struct platform_driver rb153_pata_platform_driver = {
.probe = rb153_pata_driver_probe,
- .remove = __devexit_p(rb153_pata_driver_remove),
+ .remove = rb153_pata_driver_remove,
.driver = {
.name = DRV_NAME,
.owner = THIS_MODULE,
diff --git a/target/linux/adm5120/files/drivers/mtd/trxsplit.c b/target/linux/adm5120/files/drivers/mtd/trxsplit.c
index 6f60264ac..76cbdc749 100644
--- a/target/linux/adm5120/files/drivers/mtd/trxsplit.c
+++ b/target/linux/adm5120/files/drivers/mtd/trxsplit.c
@@ -53,8 +53,7 @@ static int trxsplit_checktrx(struct mtd_info *mtd, unsigned long offset)
size_t retlen;
int err;
- err = mtd->read(mtd, offset, sizeof(trx_hdr), &retlen,
- (void *)&trx_hdr);
+ err = mtd_read(mtd, offset, sizeof(trx_hdr), &retlen, (void *)&trx_hdr);
if (err) {
printk(KERN_ALERT PFX "unable to read from '%s'\n", mtd->name);
goto err_out;
diff --git a/target/linux/adm5120/files/drivers/net/adm5120sw.c b/target/linux/adm5120/files/drivers/net/adm5120sw.c
index d80a6a3a1..7fbabb00e 100644
--- a/target/linux/adm5120/files/drivers/net/adm5120sw.c
+++ b/target/linux/adm5120/files/drivers/net/adm5120sw.c
@@ -1083,7 +1083,7 @@ static void adm5120_switch_cleanup(void)
adm5120_switch_rx_ring_free();
}
-static int __devinit adm5120_switch_probe(struct platform_device *pdev)
+static int adm5120_switch_probe(struct platform_device *pdev)
{
u32 t;
int i, err;
diff --git a/target/linux/adm5120/files/drivers/usb/host/adm5120-drv.c b/target/linux/adm5120/files/drivers/usb/host/adm5120-drv.c
index 99ea9d530..798fd2208 100644
--- a/target/linux/adm5120/files/drivers/usb/host/adm5120-drv.c
+++ b/target/linux/adm5120/files/drivers/usb/host/adm5120-drv.c
@@ -109,7 +109,7 @@ static void admhc_adm5120_remove(struct usb_hcd *hcd,
usb_put_hcd(hcd);
}
-static int __devinit admhc_adm5120_start(struct usb_hcd *hcd)
+static int admhc_adm5120_start(struct usb_hcd *hcd)
{
struct admhcd *ahcd = hcd_to_admhcd(hcd);
int ret;
diff --git a/target/linux/adm5120/files/drivers/usb/host/adm5120-hcd.c b/target/linux/adm5120/files/drivers/usb/host/adm5120-hcd.c
index 7dfa80448..f721ec1ff 100644
--- a/target/linux/adm5120/files/drivers/usb/host/adm5120-hcd.c
+++ b/target/linux/adm5120/files/drivers/usb/host/adm5120-hcd.c
@@ -39,7 +39,6 @@
#include <linux/io.h>
#include <asm/irq.h>
-#include <asm/system.h>
#include <asm/unaligned.h>
#include <asm/byteorder.h>
diff --git a/target/linux/adm5120/patches-3.3/201-amba_bus_hacks.patch b/target/linux/adm5120/patches-3.3/201-amba_bus_hacks.patch
deleted file mode 100644
index 2364d2a66..000000000
--- a/target/linux/adm5120/patches-3.3/201-amba_bus_hacks.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/drivers/amba/bus.c
-+++ b/drivers/amba/bus.c
-@@ -20,6 +20,10 @@
- #include <asm/irq.h>
- #include <asm/sizes.h>
-
-+#ifndef NO_IRQ
-+#define NO_IRQ (-1)
-+#endif
-+
- #define to_amba_driver(d) container_of(d, struct amba_driver, drv)
-
- static const struct amba_id *
diff --git a/target/linux/adm5120/patches-3.3/001-adm5120.patch b/target/linux/adm5120/patches-3.8/001-adm5120.patch
index edb3979b7..28349ebed 100644
--- a/target/linux/adm5120/patches-3.3/001-adm5120.patch
+++ b/target/linux/adm5120/patches-3.8/001-adm5120.patch
@@ -1,6 +1,6 @@
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
-@@ -39,6 +39,23 @@ choice
+@@ -51,6 +51,24 @@ choice
prompt "System type"
default SGI_IP22
@@ -20,11 +20,12 @@
+ select ARCH_REQUIRE_GPIOLIB
+ select SWAP_IO_SPACE if CPU_BIG_ENDIAN
+ select MIPS_MACHINE
++ select HAVE_CLK
+
config MIPS_ALCHEMY
bool "Alchemy processor based machines"
select 64BIT_PHYS_ADDR
-@@ -813,6 +830,7 @@ config NLM_XLP_BOARD
+@@ -836,6 +854,7 @@ config NLM_XLP_BOARD
endchoice
diff --git a/target/linux/adm5120/patches-3.3/002-adm5120_flash.patch b/target/linux/adm5120/patches-3.8/002-adm5120_flash.patch
index 98b1f2a62..9daeab883 100644
--- a/target/linux/adm5120/patches-3.3/002-adm5120_flash.patch
+++ b/target/linux/adm5120/patches-3.8/002-adm5120_flash.patch
@@ -1,6 +1,6 @@
--- a/drivers/mtd/maps/Kconfig
+++ b/drivers/mtd/maps/Kconfig
-@@ -526,4 +526,8 @@ config MTD_LATCH_ADDR
+@@ -501,4 +501,8 @@ config MTD_LATCH_ADDR
If compiled as a module, it will be called latch-addr-flash.
@@ -11,11 +11,11 @@
endmenu
--- a/drivers/mtd/maps/Makefile
+++ b/drivers/mtd/maps/Makefile
-@@ -38,6 +38,7 @@ obj-$(CONFIG_MTD_SCx200_DOCFLASH)+= scx2
+@@ -37,6 +37,7 @@ obj-$(CONFIG_MTD_SCx200_DOCFLASH)+= scx2
obj-$(CONFIG_MTD_DBOX2) += dbox2-flash.o
obj-$(CONFIG_MTD_SOLUTIONENGINE)+= solutionengine.o
obj-$(CONFIG_MTD_PCI) += pci.o
+obj-$(CONFIG_MTD_ADM5120) += adm5120-flash.o
obj-$(CONFIG_MTD_AUTCPU12) += autcpu12-nvram.o
obj-$(CONFIG_MTD_IMPA7) += impa7.o
- obj-$(CONFIG_MTD_FORTUNET) += fortunet.o
+ obj-$(CONFIG_MTD_UCLINUX) += uclinux.o
diff --git a/target/linux/adm5120/patches-3.3/003-adm5120_switch.patch b/target/linux/adm5120/patches-3.8/003-adm5120_switch.patch
index ef9d692ea..970d3d63e 100644
--- a/target/linux/adm5120/patches-3.3/003-adm5120_switch.patch
+++ b/target/linux/adm5120/patches-3.8/003-adm5120_switch.patch
@@ -1,6 +1,6 @@
--- a/drivers/net/Kconfig
+++ b/drivers/net/Kconfig
-@@ -247,6 +247,10 @@ source "drivers/net/dsa/Kconfig"
+@@ -255,6 +255,10 @@ source "drivers/net/dsa/Kconfig"
source "drivers/net/ethernet/Kconfig"
@@ -13,7 +13,7 @@
source "drivers/net/hippi/Kconfig"
--- a/drivers/net/Makefile
+++ b/drivers/net/Makefile
-@@ -32,6 +32,7 @@ obj-$(CONFIG_CAN) += can/
+@@ -33,6 +33,7 @@ obj-$(CONFIG_CAN) += can/
obj-$(CONFIG_ETRAX_ETHERNET) += cris/
obj-$(CONFIG_NET_DSA) += dsa/
obj-$(CONFIG_ETHERNET) += ethernet/
diff --git a/target/linux/adm5120/patches-3.3/005-adm5120_usb.patch b/target/linux/adm5120/patches-3.8/005-adm5120_usb.patch
index fd809dab1..44777a3c4 100644
--- a/target/linux/adm5120/patches-3.3/005-adm5120_usb.patch
+++ b/target/linux/adm5120/patches-3.8/005-adm5120_usb.patch
@@ -23,11 +23,11 @@
depends on USB
--- a/drivers/usb/host/Makefile
+++ b/drivers/usb/host/Makefile
-@@ -19,6 +19,7 @@ obj-$(CONFIG_USB_WHCI_HCD) += whci/
+@@ -23,6 +23,7 @@ obj-$(CONFIG_USB_WHCI_HCD) += whci/
obj-$(CONFIG_PCI) += pci-quirks.o
+obj-$(CONFIG_USB_ADM5120_HCD) += adm5120-hcd.o
obj-$(CONFIG_USB_EHCI_HCD) += ehci-hcd.o
- obj-$(CONFIG_USB_OXU210HP_HCD) += oxu210hp-hcd.o
- obj-$(CONFIG_USB_ISP116X_HCD) += isp116x-hcd.o
+ obj-$(CONFIG_USB_EHCI_PCI) += ehci-pci.o
+ obj-$(CONFIG_USB_EHCI_HCD_PLATFORM) += ehci-platform.o
diff --git a/target/linux/adm5120/patches-3.3/007-adm5120_pci.patch b/target/linux/adm5120/patches-3.8/007-adm5120_pci.patch
index e757bb50b..2930884d1 100644
--- a/target/linux/adm5120/patches-3.3/007-adm5120_pci.patch
+++ b/target/linux/adm5120/patches-3.8/007-adm5120_pci.patch
@@ -1,16 +1,16 @@
--- a/arch/mips/pci/Makefile
+++ b/arch/mips/pci/Makefile
-@@ -20,6 +20,7 @@ obj-$(CONFIG_BCM63XX) += pci-bcm63xx.o
+@@ -18,6 +18,7 @@ obj-$(CONFIG_PCI_TX4927) += ops-tx4927.o
+ obj-$(CONFIG_BCM47XX) += pci-bcm47xx.o
+ obj-$(CONFIG_BCM63XX) += pci-bcm63xx.o fixup-bcm63xx.o \
ops-bcm63xx.o
- obj-$(CONFIG_MIPS_ALCHEMY) += pci-alchemy.o
- obj-$(CONFIG_SOC_AR724X) += pci-ath724x.o
+obj-$(CONFIG_ADM5120) += pci-adm5120.o
-
- #
- # These are still pretty much in the old state, watch, go blind.
+ obj-$(CONFIG_MIPS_ALCHEMY) += pci-alchemy.o
+ obj-$(CONFIG_SOC_AR71XX) += pci-ar71xx.o
+ obj-$(CONFIG_PCI_AR724X) += pci-ar724x.o
--- a/include/linux/pci_ids.h
+++ b/include/linux/pci_ids.h
-@@ -1803,6 +1803,9 @@
+@@ -1807,6 +1807,9 @@
#define PCI_VENDOR_ID_ESDGMBH 0x12fe
#define PCI_DEVICE_ID_ESDGMBH_CPCIASIO4 0x0111
diff --git a/target/linux/adm5120/patches-3.3/009-adm5120_leds_switch_trigger.patch b/target/linux/adm5120/patches-3.8/009-adm5120_leds_switch_trigger.patch
index 5d896e67a..05c6db0a9 100644
--- a/target/linux/adm5120/patches-3.3/009-adm5120_leds_switch_trigger.patch
+++ b/target/linux/adm5120/patches-3.8/009-adm5120_leds_switch_trigger.patch
@@ -1,6 +1,6 @@
--- a/drivers/leds/Kconfig
+++ b/drivers/leds/Kconfig
-@@ -498,4 +498,12 @@ config LEDS_TRIGGER_USBDEV
+@@ -579,4 +579,12 @@ config LEDS_TRIGGER_USBDEV
This allows LEDs to be controlled by the presence/activity of
an USB device. If unsure, say N.
@@ -15,7 +15,7 @@
endif # NEW_LEDS
--- a/drivers/leds/Makefile
+++ b/drivers/leds/Makefile
-@@ -60,3 +60,4 @@ obj-$(CONFIG_LEDS_TRIGGER_DEFAULT_ON) +=
+@@ -68,3 +68,4 @@ obj-$(CONFIG_LEDS_TRIGGER_TRANSIENT) +=
obj-$(CONFIG_LEDS_TRIGGER_MORSE) += ledtrig-morse.o
obj-$(CONFIG_LEDS_TRIGGER_NETDEV) += ledtrig-netdev.o
obj-$(CONFIG_LEDS_TRIGGER_USBDEV) += ledtrig-usbdev.o
diff --git a/target/linux/adm5120/patches-3.3/101-cfi_fixup_macronix_bootloc.patch b/target/linux/adm5120/patches-3.8/101-cfi_fixup_macronix_bootloc.patch
index 12f914a2a..46ec7b668 100644
--- a/target/linux/adm5120/patches-3.3/101-cfi_fixup_macronix_bootloc.patch
+++ b/target/linux/adm5120/patches-3.8/101-cfi_fixup_macronix_bootloc.patch
@@ -13,7 +13,7 @@
static int cfi_amdstd_read (struct mtd_info *, loff_t, size_t, size_t *, u_char *);
static int cfi_amdstd_write_words(struct mtd_info *, loff_t, size_t, size_t *, const u_char *);
static int cfi_amdstd_write_buffers(struct mtd_info *, loff_t, size_t, size_t *, const u_char *);
-@@ -342,6 +348,41 @@ static struct cfi_fixup cfi_nopri_fixup_
+@@ -358,6 +364,41 @@ static struct cfi_fixup cfi_nopri_fixup_
{ 0, 0, NULL }
};
@@ -55,7 +55,7 @@
static struct cfi_fixup cfi_fixup_table[] = {
{ CFI_MFR_ATMEL, CFI_ID_ANY, fixup_convert_atmel_pri },
#ifdef AMD_BOOTLOC_BUG
-@@ -383,6 +424,9 @@ static struct cfi_fixup fixup_table[] =
+@@ -400,6 +441,9 @@ static struct cfi_fixup fixup_table[] =
*/
{ CFI_MFR_ANY, CFI_ID_ANY, fixup_use_erase_chip },
{ CFI_MFR_ATMEL, AT49BV6416, fixup_use_atmel_lock },
@@ -67,7 +67,7 @@
--- a/drivers/mtd/chips/Kconfig
+++ b/drivers/mtd/chips/Kconfig
-@@ -196,6 +196,14 @@ config MTD_CFI_AMDSTD
+@@ -189,6 +189,14 @@ config MTD_CFI_AMDSTD
provides support for one of those command sets, used on chips
including the AMD Am29LV320.
diff --git a/target/linux/adm5120/patches-3.3/102-jedec_pmc_39lvxxx_chips.patch b/target/linux/adm5120/patches-3.8/102-jedec_pmc_39lvxxx_chips.patch
index 00148fa60..00148fa60 100644
--- a/target/linux/adm5120/patches-3.3/102-jedec_pmc_39lvxxx_chips.patch
+++ b/target/linux/adm5120/patches-3.8/102-jedec_pmc_39lvxxx_chips.patch
diff --git a/target/linux/adm5120/patches-3.3/103-mtd_trxsplit.patch b/target/linux/adm5120/patches-3.8/103-mtd_trxsplit.patch
index 421dcaa62..08fecd8e9 100644
--- a/target/linux/adm5120/patches-3.3/103-mtd_trxsplit.patch
+++ b/target/linux/adm5120/patches-3.8/103-mtd_trxsplit.patch
@@ -13,9 +13,9 @@
---help---
--- a/drivers/mtd/Makefile
+++ b/drivers/mtd/Makefile
-@@ -13,6 +13,7 @@ obj-$(CONFIG_MTD_AFS_PARTS) += afs.o
- obj-$(CONFIG_MTD_AR7_PARTS) += ar7part.o
+@@ -14,6 +14,7 @@ obj-$(CONFIG_MTD_AR7_PARTS) += ar7part.o
obj-$(CONFIG_MTD_BCM63XX_PARTS) += bcm63xxpart.o
+ obj-$(CONFIG_MTD_BCM47XX_PARTS) += bcm47xxpart.o
obj-$(CONFIG_MTD_MYLOADER_PARTS) += myloader.o
+obj-$(CONFIG_MTD_TRXSPLIT) += trxsplit.o
diff --git a/target/linux/adm5120/patches-3.3/120-rb153_cf_driver.patch b/target/linux/adm5120/patches-3.8/120-rb153_cf_driver.patch
index cc2caf5a3..337455486 100644
--- a/target/linux/adm5120/patches-3.3/120-rb153_cf_driver.patch
+++ b/target/linux/adm5120/patches-3.8/120-rb153_cf_driver.patch
@@ -1,6 +1,6 @@
--- a/drivers/ata/Makefile
+++ b/drivers/ata/Makefile
-@@ -88,6 +88,7 @@ obj-$(CONFIG_PATA_PCMCIA) += pata_pcmcia
+@@ -90,6 +90,7 @@ obj-$(CONFIG_PATA_PCMCIA) += pata_pcmcia
obj-$(CONFIG_PATA_PALMLD) += pata_palmld.o
obj-$(CONFIG_PATA_PLATFORM) += pata_platform.o
obj-$(CONFIG_PATA_OF_PLATFORM) += pata_of_platform.o
@@ -10,7 +10,7 @@
obj-$(CONFIG_PATA_SAMSUNG_CF) += pata_samsung_cf.o
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
-@@ -835,6 +835,15 @@ config PATA_QDI
+@@ -852,6 +852,15 @@ config PATA_QDI
help
Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
diff --git a/target/linux/adm5120/patches-3.3/200-amba_pl010_hacks.patch b/target/linux/adm5120/patches-3.8/200-amba_pl010_hacks.patch
index 3c4ea35a1..7f319d807 100644
--- a/target/linux/adm5120/patches-3.3/200-amba_pl010_hacks.patch
+++ b/target/linux/adm5120/patches-3.8/200-amba_pl010_hacks.patch
@@ -1,6 +1,6 @@
--- a/drivers/tty/serial/amba-pl010.c
+++ b/drivers/tty/serial/amba-pl010.c
-@@ -49,11 +49,10 @@
+@@ -49,11 +49,9 @@
#include <asm/io.h>
@@ -10,11 +10,10 @@
#define SERIAL_AMBA_MINOR 16
-#define SERIAL_AMBA_NR UART_NR
+#define SERIAL_AMBA_NR CONFIG_SERIAL_AMBA_PL010_NUMPORTS
-+#define SERIAL_AMBA_NAME CONFIG_SERIAL_AMBA_PL010_PORTNAME
#define AMBA_ISR_PASS_LIMIT 256
-@@ -79,9 +78,9 @@ static void pl010_stop_tx(struct uart_po
+@@ -79,9 +77,9 @@ static void pl010_stop_tx(struct uart_po
struct uart_amba_port *uap = (struct uart_amba_port *)port;
unsigned int cr;
@@ -26,7 +25,7 @@
}
static void pl010_start_tx(struct uart_port *port)
-@@ -89,9 +88,9 @@ static void pl010_start_tx(struct uart_p
+@@ -89,9 +87,9 @@ static void pl010_start_tx(struct uart_p
struct uart_amba_port *uap = (struct uart_amba_port *)port;
unsigned int cr;
@@ -38,7 +37,7 @@
}
static void pl010_stop_rx(struct uart_port *port)
-@@ -99,9 +98,9 @@ static void pl010_stop_rx(struct uart_po
+@@ -99,9 +97,9 @@ static void pl010_stop_rx(struct uart_po
struct uart_amba_port *uap = (struct uart_amba_port *)port;
unsigned int cr;
@@ -50,7 +49,7 @@
}
static void pl010_enable_ms(struct uart_port *port)
-@@ -109,9 +108,9 @@ static void pl010_enable_ms(struct uart_
+@@ -109,9 +107,9 @@ static void pl010_enable_ms(struct uart_
struct uart_amba_port *uap = (struct uart_amba_port *)port;
unsigned int cr;
@@ -62,7 +61,7 @@
}
static void pl010_rx_chars(struct uart_amba_port *uap)
-@@ -119,9 +118,9 @@ static void pl010_rx_chars(struct uart_a
+@@ -119,9 +117,9 @@ static void pl010_rx_chars(struct uart_a
struct tty_struct *tty = uap->port.state->port.tty;
unsigned int status, ch, flag, rsr, max_count = 256;
@@ -74,7 +73,7 @@
flag = TTY_NORMAL;
uap->port.icount.rx++;
-@@ -130,9 +129,9 @@ static void pl010_rx_chars(struct uart_a
+@@ -130,9 +128,9 @@ static void pl010_rx_chars(struct uart_a
* Note that the error handling code is
* out of the main execution path
*/
@@ -86,7 +85,7 @@
if (rsr & UART01x_RSR_BE) {
rsr &= ~(UART01x_RSR_FE | UART01x_RSR_PE);
-@@ -162,7 +161,7 @@ static void pl010_rx_chars(struct uart_a
+@@ -162,7 +160,7 @@ static void pl010_rx_chars(struct uart_a
uart_insert_char(&uap->port, rsr, UART01x_RSR_OE, ch, flag);
ignore_char:
@@ -95,7 +94,7 @@
}
spin_unlock(&uap->port.lock);
tty_flip_buffer_push(tty);
-@@ -175,7 +174,7 @@ static void pl010_tx_chars(struct uart_a
+@@ -175,7 +173,7 @@ static void pl010_tx_chars(struct uart_a
int count;
if (uap->port.x_char) {
@@ -104,7 +103,7 @@
uap->port.icount.tx++;
uap->port.x_char = 0;
return;
-@@ -187,7 +186,7 @@ static void pl010_tx_chars(struct uart_a
+@@ -187,7 +185,7 @@ static void pl010_tx_chars(struct uart_a
count = uap->port.fifosize >> 1;
do {
@@ -113,7 +112,7 @@
xmit->tail = (xmit->tail + 1) & (UART_XMIT_SIZE - 1);
uap->port.icount.tx++;
if (uart_circ_empty(xmit))
-@@ -205,9 +204,9 @@ static void pl010_modem_status(struct ua
+@@ -205,9 +203,9 @@ static void pl010_modem_status(struct ua
{
unsigned int status, delta;
@@ -125,7 +124,7 @@
delta = status ^ uap->old_status;
uap->old_status = status;
-@@ -235,7 +234,7 @@ static irqreturn_t pl010_int(int irq, vo
+@@ -235,7 +233,7 @@ static irqreturn_t pl010_int(int irq, vo
spin_lock(&uap->port.lock);
@@ -134,7 +133,7 @@
if (status) {
do {
if (status & (UART010_IIR_RTIS | UART010_IIR_RIS))
-@@ -248,7 +247,7 @@ static irqreturn_t pl010_int(int irq, vo
+@@ -248,7 +246,7 @@ static irqreturn_t pl010_int(int irq, vo
if (pass_counter-- == 0)
break;
@@ -143,7 +142,7 @@
} while (status & (UART010_IIR_RTIS | UART010_IIR_RIS |
UART010_IIR_TIS));
handled = 1;
-@@ -262,7 +261,7 @@ static irqreturn_t pl010_int(int irq, vo
+@@ -262,7 +260,7 @@ static irqreturn_t pl010_int(int irq, vo
static unsigned int pl010_tx_empty(struct uart_port *port)
{
struct uart_amba_port *uap = (struct uart_amba_port *)port;
@@ -152,7 +151,7 @@
return status & UART01x_FR_BUSY ? 0 : TIOCSER_TEMT;
}
-@@ -272,7 +271,7 @@ static unsigned int pl010_get_mctrl(stru
+@@ -272,7 +270,7 @@ static unsigned int pl010_get_mctrl(stru
unsigned int result = 0;
unsigned int status;
@@ -161,7 +160,7 @@
if (status & UART01x_FR_DCD)
result |= TIOCM_CAR;
if (status & UART01x_FR_DSR)
-@@ -298,12 +297,12 @@ static void pl010_break_ctl(struct uart_
+@@ -298,12 +296,12 @@ static void pl010_break_ctl(struct uart_
unsigned int lcr_h;
spin_lock_irqsave(&uap->port.lock, flags);
@@ -176,7 +175,7 @@
spin_unlock_irqrestore(&uap->port.lock, flags);
}
-@@ -335,12 +334,12 @@ static int pl010_startup(struct uart_por
+@@ -331,12 +329,12 @@ static int pl010_startup(struct uart_por
/*
* initialise the old status of the modem signals
*/
@@ -191,7 +190,7 @@
uap->port.membase + UART010_CR);
return 0;
-@@ -365,10 +364,10 @@ static void pl010_shutdown(struct uart_p
+@@ -359,10 +357,10 @@ static void pl010_shutdown(struct uart_p
/*
* disable all interrupts, disable the port
*/
@@ -204,7 +203,7 @@
~(UART01x_LCRH_BRK | UART01x_LCRH_FEN),
uap->port.membase + UART010_LCRH);
-@@ -391,7 +390,7 @@ pl010_set_termios(struct uart_port *port
+@@ -384,7 +382,7 @@ pl010_set_termios(struct uart_port *port
/*
* Ask the core to calculate the divisor for us.
*/
@@ -213,7 +212,7 @@
quot = uart_get_divisor(port, baud);
switch (termios->c_cflag & CSIZE) {
-@@ -454,25 +453,25 @@ pl010_set_termios(struct uart_port *port
+@@ -447,25 +445,25 @@ pl010_set_termios(struct uart_port *port
uap->port.ignore_status_mask |= UART_DUMMY_RSR_RX;
/* first, disable everything */
@@ -245,7 +244,7 @@
spin_unlock_irqrestore(&uap->port.lock, flags);
}
-@@ -554,7 +553,7 @@ static struct uart_ops amba_pl010_pops =
+@@ -547,7 +545,7 @@ static struct uart_ops amba_pl010_pops =
.verify_port = pl010_verify_port,
};
@@ -254,7 +253,7 @@
#ifdef CONFIG_SERIAL_AMBA_PL010_CONSOLE
-@@ -564,10 +563,10 @@ static void pl010_console_putchar(struct
+@@ -557,10 +555,10 @@ static void pl010_console_putchar(struct
unsigned int status;
do {
@@ -267,7 +266,7 @@
}
static void
-@@ -581,8 +580,8 @@ pl010_console_write(struct console *co,
+@@ -574,8 +572,8 @@ pl010_console_write(struct console *co,
/*
* First save the CR then disable the interrupts
*/
@@ -278,7 +277,7 @@
uart_console_write(&uap->port, s, count, pl010_console_putchar);
-@@ -591,10 +590,10 @@ pl010_console_write(struct console *co,
+@@ -584,10 +582,10 @@ pl010_console_write(struct console *co,
* and restore the TCR
*/
do {
@@ -291,7 +290,7 @@
clk_disable(uap->clk);
}
-@@ -603,9 +602,9 @@ static void __init
+@@ -596,9 +594,9 @@ static void __init
pl010_console_get_options(struct uart_amba_port *uap, int *baud,
int *parity, int *bits)
{
@@ -303,7 +302,7 @@
*parity = 'n';
if (lcr_h & UART01x_LCRH_PEN) {
-@@ -620,8 +619,8 @@ pl010_console_get_options(struct uart_am
+@@ -613,8 +611,8 @@ pl010_console_get_options(struct uart_am
else
*bits = 8;
@@ -314,7 +313,7 @@
*baud = uap->port.uartclk / (16 * (quot + 1));
}
}
-@@ -640,7 +639,7 @@ static int __init pl010_console_setup(st
+@@ -633,7 +631,7 @@ static int __init pl010_console_setup(st
* if so, search for the first available port that does have
* console support.
*/
@@ -323,23 +322,8 @@
co->index = 0;
uap = amba_ports[co->index];
if (!uap)
-@@ -662,7 +661,7 @@ static int __init pl010_console_setup(st
-
- static struct uart_driver amba_reg;
- static struct console amba_console = {
-- .name = "ttyAM",
-+ .name = SERIAL_AMBA_NAME,
- .write = pl010_console_write,
- .device = uart_console_device,
- .setup = pl010_console_setup,
-@@ -678,11 +677,11 @@ static struct console amba_console = {
-
- static struct uart_driver amba_reg = {
- .owner = THIS_MODULE,
-- .driver_name = "ttyAM",
-- .dev_name = "ttyAM",
-+ .driver_name = SERIAL_AMBA_NAME,
-+ .dev_name = SERIAL_AMBA_NAME,
+@@ -675,7 +673,7 @@ static struct uart_driver amba_reg = {
+ .dev_name = "ttyAM",
.major = SERIAL_AMBA_MAJOR,
.minor = SERIAL_AMBA_MINOR,
- .nr = UART_NR,
@@ -349,7 +333,7 @@
--- a/drivers/tty/serial/Kconfig
+++ b/drivers/tty/serial/Kconfig
-@@ -16,10 +16,25 @@ config SERIAL_AMBA_PL010
+@@ -16,10 +16,18 @@ config SERIAL_AMBA_PL010
help
This selects the ARM(R) AMBA(R) PrimeCell PL010 UART. If you have
an Integrator/AP or Integrator/PP2 platform, or if you have a
@@ -366,13 +350,6 @@
+ Set this to the number of serial ports you want the AMBA PL010 driver
+ to support.
+
-+config SERIAL_AMBA_PL010_PORTNAME
-+ string "Name of the AMBA PL010 serial ports"
-+ depends on SERIAL_AMBA_PL010
-+ default "ttyAM"
-+ ---help---
-+ ::: To be written :::
-+
config SERIAL_AMBA_PL010_CONSOLE
bool "Support for console on AMBA serial port"
depends on SERIAL_AMBA_PL010=y
diff --git a/target/linux/adm5120/patches-3.3/203-gpio_leds_brightness.patch b/target/linux/adm5120/patches-3.8/203-gpio_leds_brightness.patch
index 5345022da..ac16e9b6d 100644
--- a/target/linux/adm5120/patches-3.3/203-gpio_leds_brightness.patch
+++ b/target/linux/adm5120/patches-3.8/203-gpio_leds_brightness.patch
@@ -1,6 +1,6 @@
--- a/drivers/leds/leds-gpio.c
+++ b/drivers/leds/leds-gpio.c
-@@ -55,13 +55,17 @@ static void gpio_led_set(struct led_clas
+@@ -56,13 +56,17 @@ static void gpio_led_set(struct led_clas
container_of(led_cdev, struct gpio_led_data, cdev);
int level;
diff --git a/target/linux/adm5120/patches-3.3/310-adm5120_wdt.patch b/target/linux/adm5120/patches-3.8/310-adm5120_wdt.patch
index ca537ecb7..56f345e76 100644
--- a/target/linux/adm5120/patches-3.3/310-adm5120_wdt.patch
+++ b/target/linux/adm5120/patches-3.8/310-adm5120_wdt.patch
@@ -1,6 +1,6 @@
--- a/drivers/watchdog/Kconfig
+++ b/drivers/watchdog/Kconfig
-@@ -943,6 +943,18 @@ config RC32434_WDT
+@@ -985,6 +985,18 @@ config RC32434_WDT
To compile this driver as a module, choose M here: the
module will be called rc32434_wdt.
diff --git a/target/linux/adm5120/rb1xx/base-files/sbin/wget2nand b/target/linux/adm5120/rb1xx/base-files/sbin/wget2nand
index 6cd8d6fbd..f7e0a092c 100755
--- a/target/linux/adm5120/rb1xx/base-files/sbin/wget2nand
+++ b/target/linux/adm5120/rb1xx/base-files/sbin/wget2nand
@@ -6,7 +6,7 @@
# Licence GPL V2
# Author david.goodenough@linkchoose.co.uk
# Based on cf2nand from RB532 support
-. /etc/functions.sh
+. /lib/functions.sh
[ -d /tmp/wget2nand-rootfs ] && {
echo "/tmp/wget2nand-rootfs already exists"
diff --git a/target/linux/adm5120/rb1xx/config-3.3 b/target/linux/adm5120/rb1xx/config-3.8
index fc173cc21..69c545c50 100644
--- a/target/linux/adm5120/rb1xx/config-3.3
+++ b/target/linux/adm5120/rb1xx/config-3.8
@@ -27,7 +27,7 @@ CONFIG_ADM5120_MACH_RB_192=y
CONFIG_ADM5120_OEM_MIKROTIK=y
# CONFIG_ADM5120_OEM_MOTOROLA is not set
# CONFIG_ADM5120_OEM_OSBRIDGE is not set
-CONFIG_CMDLINE="console=ttyS0,115200 rootfstype=yaffs2"
+CONFIG_CMDLINE="console=ttyAM0,115200 rootfstype=yaffs2"
# CONFIG_JFFS2_FS is not set
# CONFIG_MTD_MYLOADER_PARTS is not set
CONFIG_MTD_NAND=y
diff --git a/target/linux/adm5120/router_be/config-3.3 b/target/linux/adm5120/router_be/config-3.8
index 97025375d..c3b9e369d 100644
--- a/target/linux/adm5120/router_be/config-3.3
+++ b/target/linux/adm5120/router_be/config-3.8
@@ -1,4 +1,3 @@
-# CONFIG_ADM5120_MACH_5GXI is not set
CONFIG_ADM5120_MACH_P_334WT=y
CONFIG_ADM5120_MACH_P_335=y
# CONFIG_ADM5120_OEM_CELLVISION is not set
@@ -6,7 +5,6 @@ CONFIG_ADM5120_MACH_P_335=y
# CONFIG_ADM5120_OEM_EDIMAX is not set
# CONFIG_ADM5120_OEM_GENERIC is not set
# CONFIG_ADM5120_OEM_INFINEON is not set
-# CONFIG_ADM5120_OEM_MIKROTIK is not set
# CONFIG_ADM5120_OEM_MOTOROLA is not set
# CONFIG_ADM5120_OEM_OSBRIDGE is not set
CONFIG_ADM5120_OEM_ZYXEL=y
diff --git a/target/linux/adm5120/router_le/config-3.3 b/target/linux/adm5120/router_le/config-3.8
index e69de29bb..e69de29bb 100644
--- a/target/linux/adm5120/router_le/config-3.3
+++ b/target/linux/adm5120/router_le/config-3.8