summaryrefslogtreecommitdiff
path: root/target/linux/ar7/patches-2.6.23
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/ar7/patches-2.6.23')
-rw-r--r--target/linux/ar7/patches-2.6.23/100-board_support.patch94
-rw-r--r--target/linux/ar7/patches-2.6.23/110-flash.patch43
-rw-r--r--target/linux/ar7/patches-2.6.23/120-gpio_chrdev.patch32
-rw-r--r--target/linux/ar7/patches-2.6.23/130-vlynq.patch21
-rw-r--r--target/linux/ar7/patches-2.6.23/140-watchdog.patch29
-rw-r--r--target/linux/ar7/patches-2.6.23/200-ethernet_driver.patch32
-rw-r--r--target/linux/ar7/patches-2.6.23/210-phy_fixed.patch93
-rw-r--r--target/linux/ar7/patches-2.6.23/500-serial_kludge.patch57
8 files changed, 0 insertions, 401 deletions
diff --git a/target/linux/ar7/patches-2.6.23/100-board_support.patch b/target/linux/ar7/patches-2.6.23/100-board_support.patch
deleted file mode 100644
index 681a1a9843..0000000000
--- a/target/linux/ar7/patches-2.6.23/100-board_support.patch
+++ /dev/null
@@ -1,94 +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
-@@ -15,6 +15,22 @@ choice
- prompt "System type"
- default SGI_IP22
-
-+config AR7
-+ bool "Texas Instruments AR7"
-+ select BOOT_ELF32
-+ select DMA_NONCOHERENT
-+ select IRQ_CPU
-+ select NO_EXCEPT_FILL
-+ select SWAP_IO_SPACE
-+ select SYS_HAS_CPU_MIPS32_R1
-+ select SYS_HAS_EARLY_PRINTK
-+ select SYS_SUPPORTS_32BIT_KERNEL
-+ select SYS_SUPPORTS_KGDB
-+ select SYS_SUPPORTS_LITTLE_ENDIAN
-+ select SYS_SUPPORTS_BIG_ENDIAN
-+ select GENERIC_GPIO
-+ select GENERIC_HARDIRQS_NO__DO_IRQ
-+
- config MACH_ALCHEMY
- bool "Alchemy processor based machines"
-
-Index: linux-2.6.23.17/arch/mips/kernel/traps.c
-===================================================================
---- linux-2.6.23.17.orig/arch/mips/kernel/traps.c
-+++ linux-2.6.23.17/arch/mips/kernel/traps.c
-@@ -1075,10 +1075,23 @@ void *set_except_vector(int n, void *add
-
- exception_handlers[n] = handler;
- if (n == 0 && cpu_has_divec) {
-- *(volatile u32 *)(ebase + 0x200) = 0x08000000 |
-- (0x03ffffff & (handler >> 2));
-- flush_icache_range(ebase + 0x200, ebase + 0x204);
-- }
-+ if ((handler ^ (ebase + 4)) & 0xfc000000) {
-+ /* lui k0, 0x0000 */
-+ *(u32 *)(ebase + 0x200) = 0x3c1a0000 | (handler >> 16);
-+ /* ori k0, 0x0000 */
-+ *(u32 *)(ebase + 0x204) =
-+ 0x375a0000 | (handler & 0xffff);
-+ /* jr k0 */
-+ *(u32 *)(ebase + 0x208) = 0x03400008;
-+ /* nop */
-+ *(u32 *)(ebase + 0x20C) = 0x00000000;
-+ flush_icache_range(ebase + 0x200, ebase + 0x210);
-+ } else {
-+ *(volatile u32 *)(ebase + 0x200) =
-+ 0x08000000 | (0x03ffffff & (handler >> 2));
-+ flush_icache_range(ebase + 0x200, ebase + 0x204);
-+ }
-+ }
- return (void *)old_handler;
- }
-
-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
-@@ -161,6 +161,13 @@ libs-$(CONFIG_SIBYTE_CFE) += arch/mips/s
- #
-
- #
-+# Texas Instruments AR7
-+#
-+core-$(CONFIG_AR7) += arch/mips/ar7/
-+cflags-$(CONFIG_AR7) += -Iinclude/asm-mips/ar7
-+load-$(CONFIG_AR7) += 0xffffffff94100000
-+
-+#
- # Acer PICA 61, Mips Magnum 4000 and Olivetti M700.
- #
- core-$(CONFIG_MACH_JAZZ) += arch/mips/jazz/
-Index: linux-2.6.23.17/include/asm-mips/page.h
-===================================================================
---- linux-2.6.23.17.orig/include/asm-mips/page.h
-+++ linux-2.6.23.17/include/asm-mips/page.h
-@@ -184,8 +184,10 @@ typedef struct { unsigned long pgprot; }
- #define VM_DATA_DEFAULT_FLAGS (VM_READ | VM_WRITE | VM_EXEC | \
- VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC)
-
--#define UNCAC_ADDR(addr) ((addr) - PAGE_OFFSET + UNCAC_BASE)
--#define CAC_ADDR(addr) ((addr) - UNCAC_BASE + PAGE_OFFSET)
-+#define UNCAC_ADDR(addr) ((addr) - PAGE_OFFSET + UNCAC_BASE + \
-+ PHYS_OFFSET)
-+#define CAC_ADDR(addr) ((addr) - UNCAC_BASE + PAGE_OFFSET - \
-+ PHYS_OFFSET)
-
- #include <asm-generic/memory_model.h>
- #include <asm-generic/page.h>
diff --git a/target/linux/ar7/patches-2.6.23/110-flash.patch b/target/linux/ar7/patches-2.6.23/110-flash.patch
deleted file mode 100644
index fa6010814c..0000000000
--- a/target/linux/ar7/patches-2.6.23/110-flash.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Index: linux-2.6.23.17/drivers/mtd/Kconfig
-===================================================================
---- linux-2.6.23.17.orig/drivers/mtd/Kconfig
-+++ linux-2.6.23.17/drivers/mtd/Kconfig
-@@ -160,6 +160,12 @@ config MTD_AFS_PARTS
- for your particular device. It won't happen automatically. The
- 'armflash' map driver (CONFIG_MTD_ARMFLASH) does this, for example.
-
-+config MTD_AR7_PARTS
-+ tristate "TI AR7 partitioning support"
-+ depends on MTD_PARTITIONS
-+ ---help---
-+ TI AR7 partitioning support
-+
- comment "User Modules And Translation Layers"
-
- config MTD_CHAR
-Index: linux-2.6.23.17/drivers/mtd/Makefile
-===================================================================
---- linux-2.6.23.17.orig/drivers/mtd/Makefile
-+++ linux-2.6.23.17/drivers/mtd/Makefile
-@@ -11,6 +11,7 @@ obj-$(CONFIG_MTD_CONCAT) += mtdconcat.o
- obj-$(CONFIG_MTD_REDBOOT_PARTS) += redboot.o
- obj-$(CONFIG_MTD_CMDLINE_PARTS) += cmdlinepart.o
- obj-$(CONFIG_MTD_AFS_PARTS) += afs.o
-+obj-$(CONFIG_MTD_AR7_PARTS) += ar7part.o
-
- # 'Users' - code which presents functionality to userspace.
- obj-$(CONFIG_MTD_CHAR) += mtdchar.o
-Index: linux-2.6.23.17/drivers/mtd/maps/physmap.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/mtd/maps/physmap.c
-+++ linux-2.6.23.17/drivers/mtd/maps/physmap.c
-@@ -74,7 +74,8 @@ static int physmap_flash_remove(struct p
-
- static const char *rom_probe_types[] = { "cfi_probe", "jedec_probe", "map_rom", NULL };
- #ifdef CONFIG_MTD_PARTITIONS
--static const char *part_probe_types[] = { "cmdlinepart", "RedBoot", NULL };
-+static const char *part_probe_types[] = {"cmdlinepart", "RedBoot",
-+ "ar7part", NULL };
- #endif
-
- static int physmap_flash_probe(struct platform_device *dev)
diff --git a/target/linux/ar7/patches-2.6.23/120-gpio_chrdev.patch b/target/linux/ar7/patches-2.6.23/120-gpio_chrdev.patch
deleted file mode 100644
index a61f3e0dbf..0000000000
--- a/target/linux/ar7/patches-2.6.23/120-gpio_chrdev.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Index: linux-2.6.23.17/drivers/char/Kconfig
-===================================================================
---- linux-2.6.23.17.orig/drivers/char/Kconfig
-+++ linux-2.6.23.17/drivers/char/Kconfig
-@@ -928,6 +928,15 @@ config MWAVE
- To compile this driver as a module, choose M here: the
- module will be called mwave.
-
-+config AR7_GPIO
-+ tristate "TI AR7 GPIO Support"
-+ depends on AR7
-+ help
-+ Give userspace access to the GPIO pins on the Texas Instruments AR7
-+ processors.
-+
-+ If compiled as a module, it will be called ar7_gpio.
-+
- config SCx200_GPIO
- tristate "NatSemi SCx200 GPIO Support"
- depends on SCx200
-Index: linux-2.6.23.17/drivers/char/Makefile
-===================================================================
---- linux-2.6.23.17.orig/drivers/char/Makefile
-+++ linux-2.6.23.17/drivers/char/Makefile
-@@ -89,6 +89,7 @@ obj-$(CONFIG_COBALT_LCD) += lcd.o
- obj-$(CONFIG_PPDEV) += ppdev.o
- obj-$(CONFIG_NWBUTTON) += nwbutton.o
- obj-$(CONFIG_NWFLASH) += nwflash.o
-+obj-$(CONFIG_AR7_GPIO) += ar7_gpio.o
- obj-$(CONFIG_SCx200_GPIO) += scx200_gpio.o
- obj-$(CONFIG_PC8736x_GPIO) += pc8736x_gpio.o
- obj-$(CONFIG_NSC_GPIO) += nsc_gpio.o
diff --git a/target/linux/ar7/patches-2.6.23/130-vlynq.patch b/target/linux/ar7/patches-2.6.23/130-vlynq.patch
deleted file mode 100644
index 8f7e94b344..0000000000
--- a/target/linux/ar7/patches-2.6.23/130-vlynq.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-Index: linux-2.6.23.17/drivers/Kconfig
-===================================================================
---- linux-2.6.23.17.orig/drivers/Kconfig
-+++ linux-2.6.23.17/drivers/Kconfig
-@@ -93,4 +93,6 @@ source "drivers/kvm/Kconfig"
- source "drivers/uio/Kconfig"
-
- source "drivers/lguest/Kconfig"
-+
-+source "drivers/vlynq/Kconfig"
- endmenu
-Index: linux-2.6.23.17/drivers/Makefile
-===================================================================
---- linux-2.6.23.17.orig/drivers/Makefile
-+++ linux-2.6.23.17/drivers/Makefile
-@@ -89,4 +89,5 @@ obj-$(CONFIG_DMA_ENGINE) += dma/
- obj-$(CONFIG_HID) += hid/
- obj-$(CONFIG_PPC_PS3) += ps3/
- obj-$(CONFIG_OF) += of/
-+obj-$(CONFIG_VLYNQ) += vlynq/
- obj-$(CONFIG_GPIO_DEVICE) += gpio/
diff --git a/target/linux/ar7/patches-2.6.23/140-watchdog.patch b/target/linux/ar7/patches-2.6.23/140-watchdog.patch
deleted file mode 100644
index 09a8ad5b9b..0000000000
--- a/target/linux/ar7/patches-2.6.23/140-watchdog.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-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
-@@ -583,6 +583,12 @@ config SBC_EPX_C3_WATCHDOG
-
- # MIPS Architecture
-
-+config AR7_WDT
-+ tristate "TI AR7 Watchdog Timer"
-+ depends on WATCHDOG && AR7
-+ help
-+ Hardware driver for the TI AR7 Watchdog Timer.
-+
- config INDYDOG
- tristate "Indy/I2 Hardware Watchdog"
- depends on SGI_IP22
-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
-@@ -87,6 +87,7 @@ obj-$(CONFIG_SBC_EPX_C3_WATCHDOG) += sbc
- # M68KNOMMU Architecture
-
- # MIPS Architecture
-+obj-$(CONFIG_AR7_WDT) += ar7_wdt.o
- obj-$(CONFIG_INDYDOG) += indydog.o
- obj-$(CONFIG_WDT_MTX1) += mtx-1_wdt.o
- obj-$(CONFIG_WDT_RM9K_GPI) += rm9k_wdt.o
diff --git a/target/linux/ar7/patches-2.6.23/200-ethernet_driver.patch b/target/linux/ar7/patches-2.6.23/200-ethernet_driver.patch
deleted file mode 100644
index 0f13204a76..0000000000
--- a/target/linux/ar7/patches-2.6.23/200-ethernet_driver.patch
+++ /dev/null
@@ -1,32 +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
-@@ -1965,6 +1965,15 @@ config SC92031
- To compile this driver as a module, choose M here: the module
- will be called sc92031. This is recommended.
-
-+config CPMAC
-+ tristate "TI AR7 CPMAC Ethernet support (EXPERIMENTAL)"
-+ depends on NET_ETHERNET && EXPERIMENTAL && AR7
-+ select PHYLIB
-+ select FIXED_PHY
-+ select FIXED_MII_100_FDX
-+ help
-+ TI AR7 CPMAC Ethernet support
-+
- config NET_POCKET
- bool "Pocket and portable adapters"
- depends on PARPORT
-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
-@@ -156,6 +156,7 @@ obj-$(CONFIG_8139CP) += 8139cp.o
- obj-$(CONFIG_8139TOO) += 8139too.o
- obj-$(CONFIG_ZNET) += znet.o
- obj-$(CONFIG_LAN_SAA9730) += saa9730.o
-+obj-$(CONFIG_CPMAC) += cpmac.o
- obj-$(CONFIG_DEPCA) += depca.o
- obj-$(CONFIG_EWRK3) += ewrk3.o
- obj-$(CONFIG_ATP) += atp.o
diff --git a/target/linux/ar7/patches-2.6.23/210-phy_fixed.patch b/target/linux/ar7/patches-2.6.23/210-phy_fixed.patch
deleted file mode 100644
index 24040786c0..0000000000
--- a/target/linux/ar7/patches-2.6.23/210-phy_fixed.patch
+++ /dev/null
@@ -1,93 +0,0 @@
-Index: linux-2.6.23.17/drivers/net/phy/fixed.c
-===================================================================
---- linux-2.6.23.17.orig/drivers/net/phy/fixed.c
-+++ linux-2.6.23.17/drivers/net/phy/fixed.c
-@@ -189,6 +189,19 @@ static struct phy_driver fixed_mdio_driv
- .driver = { .owner = THIS_MODULE,},
- };
-
-+static void fixed_mdio_release (struct device * dev)
-+{
-+ struct phy_device *phydev = container_of(dev, struct phy_device, dev);
-+ struct mii_bus *bus = phydev->bus;
-+ struct fixed_info *fixed = bus->priv;
-+
-+ kfree(phydev);
-+ kfree(bus->dev);
-+ kfree(bus);
-+ kfree(fixed->regs);
-+ kfree(fixed);
-+}
-+
- /*-----------------------------------------------------------------------------
- * This func is used to create all the necessary stuff, bind
- * the fixed phy driver and register all it on the mdio_bus_type.
-@@ -224,6 +237,12 @@ static int fixed_mdio_register_device(in
- }
-
- fixed->regs = kzalloc(MII_REGS_NUM*sizeof(int), GFP_KERNEL);
-+ if (NULL == fixed->regs) {
-+ kfree(dev);
-+ kfree(new_bus);
-+ kfree(fixed);
-+ return -ENOMEM;
-+ }
- fixed->regs_num = MII_REGS_NUM;
- fixed->phy_status.speed = speed;
- fixed->phy_status.duplex = duplex;
-@@ -252,8 +271,11 @@ static int fixed_mdio_register_device(in
- fixed->phydev = phydev;
-
- if(NULL == phydev) {
-- err = -ENOMEM;
-- goto device_create_fail;
-+ kfree(dev);
-+ kfree(new_bus);
-+ kfree(fixed->regs);
-+ kfree(fixed);
-+ return -ENOMEM;
- }
-
- phydev->irq = PHY_IGNORE_INTERRUPT;
-@@ -265,8 +287,33 @@ static int fixed_mdio_register_device(in
- else
- snprintf(phydev->dev.bus_id, BUS_ID_SIZE,
- "fixed@%d:%d", speed, duplex);
-+
- phydev->bus = new_bus;
-
-+#if 1
-+ phydev->dev.driver = &fixed_mdio_driver.driver;
-+ phydev->dev.release = fixed_mdio_release;
-+
-+ err = phydev->dev.driver->probe(&phydev->dev);
-+ if(err < 0) {
-+ printk(KERN_ERR "Phy %s: problems with fixed driver\n",
-+ phydev->dev.bus_id);
-+ kfree(phydev);
-+ kfree(dev);
-+ kfree(new_bus);
-+ kfree(fixed->regs);
-+ kfree(fixed);
-+ return err;
-+ }
-+
-+ err = device_register(&phydev->dev);
-+ if(err) {
-+ printk(KERN_ERR "Phy %s failed to register\n",
-+ phydev->dev.bus_id);
-+ }
-+
-+ return 0;
-+#else
- err = device_register(&phydev->dev);
- if(err) {
- printk(KERN_ERR "Phy %s failed to register\n",
-@@ -303,6 +350,7 @@ device_create_fail:
- kfree(fixed);
-
- return err;
-+#endif
- }
- #endif
-
diff --git a/target/linux/ar7/patches-2.6.23/500-serial_kludge.patch b/target/linux/ar7/patches-2.6.23/500-serial_kludge.patch
deleted file mode 100644
index f695d2a8e4..0000000000
--- a/target/linux/ar7/patches-2.6.23/500-serial_kludge.patch
+++ /dev/null
@@ -1,57 +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
-@@ -267,6 +267,13 @@ static const struct serial8250_config ua
- .fcr = UART_FCR_ENABLE_FIFO | UART_FCR_R_TRIG_10,
- .flags = UART_CAP_FIFO,
- },
-+ [PORT_AR7] = {
-+ .name = "TI-AR7",
-+ .fifo_size = 16,
-+ .tx_loadsz = 16,
-+ .fcr = UART_FCR_ENABLE_FIFO | UART_FCR_R_TRIG_00,
-+ .flags = UART_CAP_FIFO | UART_CAP_AFE,
-+ },
- };
-
- #if defined (CONFIG_SERIAL_8250_AU1X00)
-@@ -2455,7 +2462,11 @@ static void serial8250_console_putchar(s
- {
- struct uart_8250_port *up = (struct uart_8250_port *)port;
-
-+#ifdef CONFIG_AR7
-+ wait_for_xmitr(up, BOTH_EMPTY);
-+#else
- wait_for_xmitr(up, UART_LSR_THRE);
-+#endif
- serial_out(up, UART_TX, ch);
- }
-
-Index: linux-2.6.23.17/include/linux/serial_core.h
-===================================================================
---- linux-2.6.23.17.orig/include/linux/serial_core.h
-+++ linux-2.6.23.17/include/linux/serial_core.h
-@@ -40,6 +40,7 @@
- #define PORT_NS16550A 14
- #define PORT_XSCALE 15
- #define PORT_RM9000 16 /* PMC-Sierra RM9xxx internal UART */
-+#define PORT_AR7 16
- #define PORT_MAX_8250 16 /* max port ID */
-
- /*
-Index: linux-2.6.23.17/include/linux/serialP.h
-===================================================================
---- linux-2.6.23.17.orig/include/linux/serialP.h
-+++ linux-2.6.23.17/include/linux/serialP.h
-@@ -135,6 +135,10 @@ struct rs_multiport_struct {
- * the interrupt line _up_ instead of down, so if we register the IRQ
- * while the UART is in that state, we die in an IRQ storm. */
- #define ALPHA_KLUDGE_MCR (UART_MCR_OUT2)
-+#elif defined(CONFIG_AR7)
-+/* This is how it is set up by bootloader... */
-+#define ALPHA_KLUDGE_MCR (UART_MCR_OUT2 | UART_MCR_OUT1 \
-+ | UART_MCR_RTS | UART_MCR_DTR)
- #else
- #define ALPHA_KLUDGE_MCR 0
- #endif