rb532: remove leftover patches from an even older kernel version

SVN-Revision: 15446
v19.07.3_mercusys_ac12_duma
Felix Fietkau 15 years ago
parent dcfa07d142
commit 7fc886584f

@ -1,103 +0,0 @@
Index: linux-2.6.23.17/arch/mips/Kconfig
===================================================================
--- linux-2.6.23.17.orig/arch/mips/Kconfig
+++ linux-2.6.23.17/arch/mips/Kconfig
@@ -595,6 +595,20 @@ config WR_PPMC
This enables support for the Wind River MIPS32 4KC PPMC evaluation
board, which is based on GT64120 bridge chip.
+config MIKROTIK_RB500
+ bool "Support for RB5xx boards"
+ select HW_HAS_PCI
+ select IRQ_CPU
+ select SYS_HAS_CPU_MIPS32_R1
+ select SYS_SUPPORTS_LITTLE_ENDIAN
+ select SYS_SUPPORTS_32BIT_KERNEL
+ select SWAP_IO_SPACE
+ select DMA_NONCOHERENT
+ select GENERIC_GPIO
+ help
+ Support the Mikrotik(tm) Routerboard 500 series,
+ such as the RB532.
+
endchoice
source "arch/mips/au1000/Kconfig"
@@ -829,6 +843,7 @@ config MIPS_L1_CACHE_SHIFT
default "4" if MACH_DECSTATION
default "7" if SGI_IP27 || SNI_RM
default "4" if PMC_MSP4200_EVAL
+ default "4" if MIKROTIK_RB500
default "5"
config HAVE_STD_PC_SERIAL_PORT
Index: linux-2.6.23.17/arch/mips/Makefile
===================================================================
--- linux-2.6.23.17.orig/arch/mips/Makefile
+++ linux-2.6.23.17/arch/mips/Makefile
@@ -300,6 +300,13 @@ load-$(CONFIG_LEMOTE_FULONG) +=0xfffffff
cflags-$(CONFIG_LEMOTE_FULONG) += -Iinclude/asm-mips/mach-lemote
#
+# Routerboard 532 board
+#
+core-$(CONFIG_MIKROTIK_RB500) += arch/mips/rb500/
+cflags-$(CONFIG_MIKROTIK_RB500) += -Iinclude/asm-mips/rc32434
+load-$(CONFIG_MIKROTIK_RB500) += 0xffffffff80101000
+
+#
# For all MIPS, Inc. eval boards
#
core-$(CONFIG_MIPS_BOARDS_GEN) += arch/mips/mips-boards/generic/
Index: linux-2.6.23.17/arch/mips/pci/Makefile
===================================================================
--- linux-2.6.23.17.orig/arch/mips/pci/Makefile
+++ linux-2.6.23.17/arch/mips/pci/Makefile
@@ -46,3 +46,4 @@ obj-$(CONFIG_TOSHIBA_RBTX4938) += fixup-
obj-$(CONFIG_VICTOR_MPC30X) += fixup-mpc30x.o
obj-$(CONFIG_ZAO_CAPCELLA) += fixup-capcella.o
obj-$(CONFIG_WR_PPMC) += fixup-wrppmc.o
+obj-$(CONFIG_MIKROTIK_RB500) += pci-rc32434.o ops-rc32434.o fixup-rb500.o
Index: linux-2.6.23.17/drivers/pci/Makefile
===================================================================
--- linux-2.6.23.17.orig/drivers/pci/Makefile
+++ linux-2.6.23.17/drivers/pci/Makefile
@@ -32,6 +32,7 @@ obj-$(CONFIG_PPC32) += setup-irq.o
obj-$(CONFIG_PPC64) += setup-bus.o
obj-$(CONFIG_MIPS) += setup-bus.o setup-irq.o
obj-$(CONFIG_X86_VISWS) += setup-irq.o
+obj-$(CONFIG_MIKROTIK_RB500) += setup-irq.o
#
# ACPI Related PCI FW Functions
Index: linux-2.6.23.17/include/asm-mips/bootinfo.h
===================================================================
--- linux-2.6.23.17.orig/include/asm-mips/bootinfo.h
+++ linux-2.6.23.17/include/asm-mips/bootinfo.h
@@ -208,6 +208,11 @@
#define MACH_GROUP_WINDRIVER 28 /* Windriver boards */
#define MACH_WRPPMC 1
+
+#define MACH_GROUP_MIKROTIK 29 /* Mikrotik Boards */
+#define MACH_MIKROTIK_RB532 0 /* Mikrotik RouterBoard 532 */
+#define MACH_MIKROTIK_RB532A 1 /* Mikrotik RouterBoard 532A */
+
#define CL_SIZE COMMAND_LINE_SIZE
const char *get_system_type(void);
Index: linux-2.6.23.17/include/asm-mips/cpu.h
===================================================================
--- linux-2.6.23.17.orig/include/asm-mips/cpu.h
+++ linux-2.6.23.17/include/asm-mips/cpu.h
@@ -217,8 +217,9 @@
#define CPU_R14000 64
#define CPU_LOONGSON1 65
#define CPU_LOONGSON2 66
+#define CPU_RC32300 67
-#define CPU_LAST 66
+#define CPU_LAST 67
/*
* ISA Level encodings

@ -1,31 +0,0 @@
Index: linux-2.6.23.17/drivers/net/Kconfig
===================================================================
--- linux-2.6.23.17.orig/drivers/net/Kconfig
+++ linux-2.6.23.17/drivers/net/Kconfig
@@ -348,6 +348,13 @@ config AX88796
AX88796 driver, using platform bus to provide
chip detection and resources
+config KORINA
+ tristate "Korina Local Ethernet support"
+ depends on NET_ETHERNET && ( IDT_EB434 || MIKROTIK_RB500)
+ help
+ IDT RC32434 has one local ethernet port. Say Y here to enable it.
+ To compile this driver as a module, choose M here.
+
config MACE
tristate "MACE (Power Mac ethernet) support"
depends on PPC_PMAC && PPC32
Index: linux-2.6.23.17/drivers/net/Makefile
===================================================================
--- linux-2.6.23.17.orig/drivers/net/Makefile
+++ linux-2.6.23.17/drivers/net/Makefile
@@ -25,6 +25,8 @@ ucc_geth_driver-objs := ucc_geth.o ucc_g
#
obj-$(CONFIG_PLIP) += plip.o
+obj-$(CONFIG_KORINA) += korina.o
+
obj-$(CONFIG_ROADRUNNER) += rrunner.o
obj-$(CONFIG_HAPPYMEAL) += sunhme.o

@ -1,31 +0,0 @@
Index: linux-2.6.23.17/drivers/block/Kconfig
===================================================================
--- linux-2.6.23.17.orig/drivers/block/Kconfig
+++ linux-2.6.23.17/drivers/block/Kconfig
@@ -426,6 +426,14 @@ config SUNVDC
Support for virtual disk devices as a client under Sun
Logical Domains.
+config BLK_DEV_CF_MIPS
+ bool "CF slot of RB532 board"
+ depends on MIKROTIK_RB500
+ default y
+ help
+ The Routerboard 532 has a CF slot on it. Enable the special block
+ device driver for it.
+
source "drivers/s390/block/Kconfig"
config XILINX_SYSACE
Index: linux-2.6.23.17/drivers/block/Makefile
===================================================================
--- linux-2.6.23.17.orig/drivers/block/Makefile
+++ linux-2.6.23.17/drivers/block/Makefile
@@ -21,6 +21,7 @@ obj-$(CONFIG_BLK_DEV_DAC960) += DAC960.o
obj-$(CONFIG_XILINX_SYSACE) += xsysace.o
obj-$(CONFIG_CDROM_PKTCDVD) += pktcdvd.o
obj-$(CONFIG_SUNVDC) += sunvdc.o
+obj-$(CONFIG_BLK_DEV_CF_MIPS) += rb500/
obj-$(CONFIG_BLK_DEV_UMEM) += umem.o
obj-$(CONFIG_BLK_DEV_NBD) += nbd.o

@ -1,15 +0,0 @@
Index: linux-2.6.23.17/arch/mips/kernel/head.S
===================================================================
--- linux-2.6.23.17.orig/arch/mips/kernel/head.S
+++ linux-2.6.23.17/arch/mips/kernel/head.S
@@ -132,6 +132,10 @@
j kernel_entry
nop
+
+EXPORT(_image_cmdline)
+ .ascii "CMDLINE:"
+
#ifndef CONFIG_NO_EXCEPT_FILL
/*
* Reserved space for exception handlers.

@ -1,15 +0,0 @@
Index: linux-2.6.23.17/arch/mips/pci/pci.c
===================================================================
--- linux-2.6.23.17.orig/arch/mips/pci/pci.c
+++ linux-2.6.23.17/arch/mips/pci/pci.c
@@ -64,8 +64,10 @@ pcibios_align_resource(void *data, struc
/*
* Put everything into 0x00-0xff region modulo 0x400
*/
+#ifndef CONFIG_MIKROTIK_RB500
if (start & 0x300)
start = (start + 0x3ff) & ~0x3ff;
+#endif
} else if (res->flags & IORESOURCE_MEM) {
/* Make sure we start at our min on all hoses */
if (start < PCIBIOS_MIN_MEM + hose->mem_resource->start)

@ -1,18 +0,0 @@
Index: linux-2.6.23.17/drivers/serial/8250.c
===================================================================
--- linux-2.6.23.17.orig/drivers/serial/8250.c
+++ linux-2.6.23.17/drivers/serial/8250.c
@@ -433,6 +433,13 @@ serial_out(struct uart_8250_port *up, in
default:
outb(value, up->port.iobase + offset);
}
+
+#if defined(CONFIG_IDT_EB434) || defined(CONFIG_MIKROTIK_RB500)
+ __SLOW_DOWN_IO;
+ __SLOW_DOWN_IO;
+ __SLOW_DOWN_IO;
+ __SLOW_DOWN_IO;
+#endif
}
static void

@ -1,100 +0,0 @@
Index: linux-2.6.23.17/drivers/net/via-rhine.c
===================================================================
--- linux-2.6.23.17.orig/drivers/net/via-rhine.c
+++ linux-2.6.23.17/drivers/net/via-rhine.c
@@ -33,6 +33,8 @@
#define DRV_VERSION "1.4.3"
#define DRV_RELDATE "2007-03-06"
+#define PKT_ALIGN 1
+
/* A few user-configurable values.
These may be modified when a driver module is loaded. */
@@ -40,6 +42,7 @@
static int debug = 1; /* 1 normal messages, 0 quiet .. 7 verbose. */
static int max_interrupt_work = 20;
+#ifndef PKT_ALIGN
/* Set the copy breakpoint for the copy-only-tiny-frames scheme.
Setting to > 1518 effectively disables this feature. */
#if defined(__alpha__) || defined(__arm__) || defined(__hppa__) \
@@ -49,6 +52,7 @@ static int rx_copybreak = 1518;
#else
static int rx_copybreak;
#endif
+#endif /* PKT_ALIGN */
/* Work-around for broken BIOSes: they are unable to get the chip back out of
power state D3 so PXE booting fails. bootparam(7): via-rhine.avoid_D3=1 */
@@ -111,6 +115,7 @@ static const int multicast_filter_limit
#include <asm/io.h>
#include <asm/irq.h>
#include <asm/uaccess.h>
+#include <asm/unaligned.h>
#include <linux/dmi.h>
/* These identify the driver base version and may not be removed. */
@@ -130,12 +135,14 @@ MODULE_LICENSE("GPL");
module_param(max_interrupt_work, int, 0);
module_param(debug, int, 0);
-module_param(rx_copybreak, int, 0);
module_param(avoid_D3, bool, 0);
MODULE_PARM_DESC(max_interrupt_work, "VIA Rhine maximum events handled per interrupt");
MODULE_PARM_DESC(debug, "VIA Rhine debug level (0-7)");
-MODULE_PARM_DESC(rx_copybreak, "VIA Rhine copy breakpoint for copy-only-tiny-frames");
MODULE_PARM_DESC(avoid_D3, "Avoid power state D3 (work-around for broken BIOSes)");
+#ifndef PKT_ALIGN
+module_param(rx_copybreak, int, 0);
+MODULE_PARM_DESC(rx_copybreak, "VIA Rhine copy breakpoint for copy-only-tiny-frames");
+#endif
/*
Theory of Operation
@@ -927,7 +934,7 @@ static void alloc_rbufs(struct net_devic
/* Fill in the Rx buffers. Handle allocation failure gracefully. */
for (i = 0; i < RX_RING_SIZE; i++) {
- struct sk_buff *skb = dev_alloc_skb(rp->rx_buf_sz);
+ struct sk_buff *skb = dev_alloc_skb(rp->rx_buf_sz + 4);
rp->rx_skbuff[i] = skb;
if (skb == NULL)
break;
@@ -1484,7 +1491,9 @@ static int rhine_rx(struct net_device *d
struct sk_buff *skb;
/* Length should omit the CRC */
int pkt_len = data_size - 4;
-
+#ifdef PKT_ALIGN
+ int i;
+#else
/* Check if the packet is long enough to accept without
copying to a minimally-sized skbuff. */
if (pkt_len < rx_copybreak &&
@@ -1503,7 +1512,9 @@ static int rhine_rx(struct net_device *d
rp->rx_skbuff_dma[entry],
rp->rx_buf_sz,
PCI_DMA_FROMDEVICE);
- } else {
+ } else
+#endif
+ {
skb = rp->rx_skbuff[entry];
if (skb == NULL) {
printk(KERN_ERR "%s: Inconsistent Rx "
@@ -1517,6 +1528,14 @@ static int rhine_rx(struct net_device *d
rp->rx_skbuff_dma[entry],
rp->rx_buf_sz,
PCI_DMA_FROMDEVICE);
+#ifdef PKT_ALIGN
+ /* align the data to the ip header - should be faster than copying the entire packet */
+ for (i = pkt_len - (pkt_len % 4); i >= 0; i -= 4) {
+ put_unaligned(*((u32 *) (skb->data + i)), (u32 *) (skb->data + i + 2));
+ }
+ skb->data += 2;
+ skb->tail += 2;
+#endif
}
skb->protocol = eth_type_trans(skb, dev);
#ifdef CONFIG_VIA_RHINE_NAPI

@ -1,29 +0,0 @@
Index: linux-2.6.23.17/drivers/leds/Kconfig
===================================================================
--- linux-2.6.23.17.orig/drivers/leds/Kconfig
+++ linux-2.6.23.17/drivers/leds/Kconfig
@@ -107,6 +107,12 @@ config LEDS_GPIO
outputs. To be useful the particular board must have LEDs
and they must be connected to the GPIO lines.
+config LEDS_RB500
+ tristate "LED Support for RB5xx boards"
+ depends LEDS_CLASS && MIKROTIK_RB500
+ help
+ This option enables support for the yellow user LED on RB5xx boards.
+
comment "LED Triggers"
config LEDS_TRIGGERS
Index: linux-2.6.23.17/drivers/leds/Makefile
===================================================================
--- linux-2.6.23.17.orig/drivers/leds/Makefile
+++ linux-2.6.23.17/drivers/leds/Makefile
@@ -18,6 +18,7 @@ obj-$(CONFIG_LEDS_ALIX) += leds-alix.o
obj-$(CONFIG_LEDS_H1940) += leds-h1940.o
obj-$(CONFIG_LEDS_COBALT) += leds-cobalt.o
obj-$(CONFIG_LEDS_GPIO) += leds-gpio.o
+obj-$(CONFIG_LEDS_RB500) += leds-rb500.o
# LED Triggers
obj-$(CONFIG_LEDS_TRIGGER_TIMER) += ledtrig-timer.o

@ -1,46 +0,0 @@
Index: linux-2.6.23.17/arch/mips/kernel/time.c
===================================================================
--- linux-2.6.23.17.orig/arch/mips/kernel/time.c
+++ linux-2.6.23.17/arch/mips/kernel/time.c
@@ -479,3 +479,5 @@ EXPORT_SYMBOL(rtc_lock);
EXPORT_SYMBOL(to_tm);
EXPORT_SYMBOL(rtc_mips_set_time);
EXPORT_SYMBOL(rtc_mips_get_time);
+EXPORT_SYMBOL(mips_hpt_frequency);
+
Index: linux-2.6.23.17/drivers/char/watchdog/Kconfig
===================================================================
--- linux-2.6.23.17.orig/drivers/char/watchdog/Kconfig
+++ linux-2.6.23.17/drivers/char/watchdog/Kconfig
@@ -647,6 +647,19 @@ config WATCHDOG_RTAS
To compile this driver as a module, choose M here. The module
will be called wdrtas.
+config RC32434_WDT
+ tristate "IDT Interprise 79RC32434 SoC hardware watchdog"
+ depends on WATCHDOG && MIKROTIK_RB500
+ help
+ This is a driver for hardware watchdog integrated in IDT Interprise
+ 79RC32434 SoC. This watchdog simply watches your kernel to make sure
+ it doesn't freeze, and if it does, it reboots your computer after a
+ certain amount of time.
+
+ To compile this driver as a module, choose M here: the module will be
+ called rc32434_wdt.
+
+
# S390 Architecture
config ZVM_WATCHDOG
Index: linux-2.6.23.17/drivers/char/watchdog/Makefile
===================================================================
--- linux-2.6.23.17.orig/drivers/char/watchdog/Makefile
+++ linux-2.6.23.17/drivers/char/watchdog/Makefile
@@ -90,6 +90,7 @@ obj-$(CONFIG_SBC_EPX_C3_WATCHDOG) += sbc
obj-$(CONFIG_INDYDOG) += indydog.o
obj-$(CONFIG_WDT_MTX1) += mtx-1_wdt.o
obj-$(CONFIG_WDT_RM9K_GPI) += rm9k_wdt.o
+obj-$(CONFIG_RC32434_WDT) += rc32434_wdt.o
# PARISC Architecture
Loading…
Cancel
Save