summaryrefslogtreecommitdiff
path: root/openwrt/target/linux/linux-2.4/patches/generic
diff options
context:
space:
mode:
Diffstat (limited to 'openwrt/target/linux/linux-2.4/patches/generic')
-rw-r--r--openwrt/target/linux/linux-2.4/patches/generic/000-linux_mips.patch4028
-rw-r--r--openwrt/target/linux/linux-2.4/patches/generic/202-pl2303_backport.patch749
-rw-r--r--openwrt/target/linux/linux-2.4/patches/generic/207-gcc_4.0_fixes.patch198
-rw-r--r--openwrt/target/linux/linux-2.4/patches/generic/211-pl2303_bugfixes.patch146
4 files changed, 2572 insertions, 2549 deletions
diff --git a/openwrt/target/linux/linux-2.4/patches/generic/000-linux_mips.patch b/openwrt/target/linux/linux-2.4/patches/generic/000-linux_mips.patch
index e2ebfce285..7fae1eefc6 100644
--- a/openwrt/target/linux/linux-2.4/patches/generic/000-linux_mips.patch
+++ b/openwrt/target/linux/linux-2.4/patches/generic/000-linux_mips.patch
@@ -1,128 +1,6 @@
-diff -Nur linux-2.4.30/Makefile linux-2.4.30-mips/Makefile
---- linux-2.4.30/Makefile 2005-04-04 03:42:20.000000000 +0200
-+++ linux-2.4.30-mips/Makefile 2005-04-05 21:09:54.000000000 +0200
-@@ -5,7 +5,7 @@
-
- KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
-
--ARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ -e s/arm.*/arm/ -e s/sa110/arm/)
-+ARCH = mips
- KERNELPATH=kernel-$(shell echo $(KERNELRELEASE) | sed -e "s/-//g")
-
- CONFIG_SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \
-@@ -462,10 +462,11 @@
- $(MAKE) -C Documentation/DocBook mrproper
-
- distclean: mrproper
-- rm -f core `find . \( -not -type d \) -and \
-- \( -name '*.orig' -o -name '*.rej' -o -name '*~' \
-- -o -name '*.bak' -o -name '#*#' -o -name '.*.orig' \
-- -o -name '.*.rej' -o -name '.SUMS' -o -size 0 \) -type f -print` TAGS tags
-+ find . \( -not -type d \) -and \
-+ \( -name core -o -name '*.orig' -o -name '*.rej' \
-+ -o -name '*~' -o -name '*.bak' -o -name '#*#' \
-+ -o -name '.*.rej' -o -name '.SUMS' -o -size 0 \
-+ -o -name TAGS -o -name tags \) -print | env -i xargs rm -f
-
- backup: mrproper
- cd .. && tar cf - linux/ | gzip -9 > backup.gz
-@@ -492,7 +493,7 @@
- $(MAKE) -C Documentation/DocBook man
-
- sums:
-- find . -type f -print | sort | xargs sum > .SUMS
-+ find . -type f -print | sort | env -i xargs sum > .SUMS
-
- dep-files: scripts/mkdep archdep include/linux/version.h
- rm -f .depend .hdepend
-diff -Nur linux-2.4.30/arch/mips/Makefile linux-2.4.30-mips/arch/mips/Makefile
---- linux-2.4.30/arch/mips/Makefile 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/Makefile 2005-01-30 09:01:26.000000000 +0100
-@@ -211,7 +211,7 @@
- endif
-
- #
--# Au1000 (Alchemy Semi PB1000) eval board
-+# Au1x AMD Alchemy eval boards
- #
- ifdef CONFIG_MIPS_PB1000
- LIBS += arch/mips/au1000/pb1000/pb1000.o \
-@@ -220,9 +220,6 @@
- LOADADDR := 0x80100000
- endif
-
--#
--# Au1100 (Alchemy Semi PB1100) eval board
--#
- ifdef CONFIG_MIPS_PB1100
- LIBS += arch/mips/au1000/pb1100/pb1100.o \
- arch/mips/au1000/common/au1000.o
-@@ -230,9 +227,6 @@
- LOADADDR += 0x80100000
- endif
-
--#
--# Au1500 (Alchemy Semi PB1500) eval board
--#
- ifdef CONFIG_MIPS_PB1500
- LIBS += arch/mips/au1000/pb1500/pb1500.o \
- arch/mips/au1000/common/au1000.o
-@@ -240,9 +234,6 @@
- LOADADDR := 0x80100000
- endif
-
--#
--# Au1x00 (AMD/Alchemy) eval boards
--#
- ifdef CONFIG_MIPS_DB1000
- LIBS += arch/mips/au1000/db1x00/db1x00.o \
- arch/mips/au1000/common/au1000.o
-@@ -313,6 +304,27 @@
- LOADADDR += 0x80100000
- endif
-
-+ifdef CONFIG_MIPS_PB1200
-+LIBS += arch/mips/au1000/pb1200/pb1200.o \
-+ arch/mips/au1000/common/au1000.o
-+SUBDIRS += arch/mips/au1000/pb1200 arch/mips/au1000/common
-+LOADADDR += 0x80100000
-+endif
-+
-+ifdef CONFIG_MIPS_DB1200
-+LIBS += arch/mips/au1000/pb1200/pb1200.o \
-+ arch/mips/au1000/common/au1000.o
-+SUBDIRS += arch/mips/au1000/pb1200 arch/mips/au1000/common
-+LOADADDR += 0x80100000
-+endif
-+
-+ifdef CONFIG_MIPS_FICMMP
-+LIBS += arch/mips/au1000/ficmmp/ficmmp.o \
-+ arch/mips/au1000/common/au1000.o
-+SUBDIRS += arch/mips/au1000/ficmmp arch/mips/au1000/common
-+LOADADDR += 0x80100000
-+endif
-+
-
- #
- # Cogent CSB250
-diff -Nur linux-2.4.30/arch/mips/au1000/common/Makefile linux-2.4.30-mips/arch/mips/au1000/common/Makefile
---- linux-2.4.30/arch/mips/au1000/common/Makefile 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/common/Makefile 2005-01-30 09:01:27.000000000 +0100
-@@ -19,9 +19,9 @@
- export-objs = prom.o clocks.o power.o usbdev.o
-
- obj-y := prom.o int-handler.o irq.o puts.o time.o reset.o cputable.o \
-- au1xxx_irqmap.o clocks.o power.o setup.o sleeper.o dma.o dbdma.o
-+ au1xxx_irqmap.o clocks.o power.o setup.o sleeper.o dma.o dbdma.o gpio.o
-
--export-objs += dma.o dbdma.o
-+export-objs += dma.o dbdma.o gpio.o
-
- obj-$(CONFIG_AU1X00_USB_DEVICE) += usbdev.o
- obj-$(CONFIG_KGDB) += dbg_io.o
-diff -Nur linux-2.4.30/arch/mips/au1000/common/au1xxx_irqmap.c linux-2.4.30-mips/arch/mips/au1000/common/au1xxx_irqmap.c
---- linux-2.4.30/arch/mips/au1000/common/au1xxx_irqmap.c 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/common/au1xxx_irqmap.c 2005-01-30 09:01:27.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/common/au1xxx_irqmap.c linux-2.4.32-rc1.mips/arch/mips/au1000/common/au1xxx_irqmap.c
+--- linux-2.4.32-rc1/arch/mips/au1000/common/au1xxx_irqmap.c 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/common/au1xxx_irqmap.c 2005-01-30 09:01:27.000000000 +0100
@@ -172,14 +172,14 @@
{ AU1550_PSC1_INT, INTC_INT_HIGH_LEVEL, 0},
{ AU1550_PSC2_INT, INTC_INT_HIGH_LEVEL, 0},
@@ -169,9 +47,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/common/au1xxx_irqmap.c linux-2.4.30-mips
{ AU1200_NAND_INT, INTC_INT_RISE_EDGE, 0},
{ AU1200_USB_INT, INTC_INT_HIGH_LEVEL, 0 },
{ AU1200_LCD_INT, INTC_INT_HIGH_LEVEL, 0},
-diff -Nur linux-2.4.30/arch/mips/au1000/common/cputable.c linux-2.4.30-mips/arch/mips/au1000/common/cputable.c
---- linux-2.4.30/arch/mips/au1000/common/cputable.c 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/common/cputable.c 2005-01-30 09:01:27.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/common/cputable.c linux-2.4.32-rc1.mips/arch/mips/au1000/common/cputable.c
+--- linux-2.4.32-rc1/arch/mips/au1000/common/cputable.c 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/common/cputable.c 2005-01-30 09:01:27.000000000 +0100
@@ -39,7 +39,8 @@
{ 0xffffffff, 0x02030203, "Au1100 BD", 0, 1 },
{ 0xffffffff, 0x02030204, "Au1100 BE", 0, 1 },
@@ -182,9 +60,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/common/cputable.c linux-2.4.30-mips/arch
{ 0x00000000, 0x00000000, "Unknown Au1xxx", 1, 0 },
};
-diff -Nur linux-2.4.30/arch/mips/au1000/common/dbdma.c linux-2.4.30-mips/arch/mips/au1000/common/dbdma.c
---- linux-2.4.30/arch/mips/au1000/common/dbdma.c 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/common/dbdma.c 2005-02-08 07:28:37.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/common/dbdma.c linux-2.4.32-rc1.mips/arch/mips/au1000/common/dbdma.c
+--- linux-2.4.32-rc1/arch/mips/au1000/common/dbdma.c 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/common/dbdma.c 2005-02-08 07:28:37.000000000 +0100
@@ -41,6 +41,8 @@
#include <asm/au1xxx_dbdma.h>
#include <asm/system.h>
@@ -763,9 +641,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/common/dbdma.c linux-2.4.30-mips/arch/mi
+
#endif /* defined(CONFIG_SOC_AU1550) || defined(CONFIG_SOC_AU1200) */
-diff -Nur linux-2.4.30/arch/mips/au1000/common/gpio.c linux-2.4.30-mips/arch/mips/au1000/common/gpio.c
---- linux-2.4.30/arch/mips/au1000/common/gpio.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/common/gpio.c 2005-01-30 09:01:27.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/common/gpio.c linux-2.4.32-rc1.mips/arch/mips/au1000/common/gpio.c
+--- linux-2.4.32-rc1/arch/mips/au1000/common/gpio.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/common/gpio.c 2005-01-30 09:01:27.000000000 +0100
@@ -0,0 +1,118 @@
+/*
+ * This program is free software; you can redistribute it and/or modify it
@@ -885,9 +763,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/common/gpio.c linux-2.4.30-mips/arch/mip
+EXPORT_SYMBOL(au1xxx_gpio_tristate);
+EXPORT_SYMBOL(au1xxx_gpio_write);
+EXPORT_SYMBOL(au1xxx_gpio_read);
-diff -Nur linux-2.4.30/arch/mips/au1000/common/irq.c linux-2.4.30-mips/arch/mips/au1000/common/irq.c
---- linux-2.4.30/arch/mips/au1000/common/irq.c 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/common/irq.c 2005-03-13 08:56:57.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/common/irq.c linux-2.4.32-rc1.mips/arch/mips/au1000/common/irq.c
+--- linux-2.4.32-rc1/arch/mips/au1000/common/irq.c 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/common/irq.c 2005-03-13 08:56:57.000000000 +0100
@@ -303,8 +303,30 @@
};
@@ -955,9 +833,24 @@ diff -Nur linux-2.4.30/arch/mips/au1000/common/irq.c linux-2.4.30-mips/arch/mips
}
-diff -Nur linux-2.4.30/arch/mips/au1000/common/pci_fixup.c linux-2.4.30-mips/arch/mips/au1000/common/pci_fixup.c
---- linux-2.4.30/arch/mips/au1000/common/pci_fixup.c 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/common/pci_fixup.c 2004-12-03 09:00:32.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/common/Makefile linux-2.4.32-rc1.mips/arch/mips/au1000/common/Makefile
+--- linux-2.4.32-rc1/arch/mips/au1000/common/Makefile 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/common/Makefile 2005-01-30 09:01:27.000000000 +0100
+@@ -19,9 +19,9 @@
+ export-objs = prom.o clocks.o power.o usbdev.o
+
+ obj-y := prom.o int-handler.o irq.o puts.o time.o reset.o cputable.o \
+- au1xxx_irqmap.o clocks.o power.o setup.o sleeper.o dma.o dbdma.o
++ au1xxx_irqmap.o clocks.o power.o setup.o sleeper.o dma.o dbdma.o gpio.o
+
+-export-objs += dma.o dbdma.o
++export-objs += dma.o dbdma.o gpio.o
+
+ obj-$(CONFIG_AU1X00_USB_DEVICE) += usbdev.o
+ obj-$(CONFIG_KGDB) += dbg_io.o
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/common/pci_fixup.c linux-2.4.32-rc1.mips/arch/mips/au1000/common/pci_fixup.c
+--- linux-2.4.32-rc1/arch/mips/au1000/common/pci_fixup.c 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/common/pci_fixup.c 2004-12-03 09:00:32.000000000 +0100
@@ -75,9 +75,13 @@
#ifdef CONFIG_NONCOHERENT_IO
@@ -974,9 +867,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/common/pci_fixup.c linux-2.4.30-mips/arc
printk("Non-coherent PCI accesses enabled\n");
#endif
-diff -Nur linux-2.4.30/arch/mips/au1000/common/pci_ops.c linux-2.4.30-mips/arch/mips/au1000/common/pci_ops.c
---- linux-2.4.30/arch/mips/au1000/common/pci_ops.c 2004-02-18 14:36:30.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/common/pci_ops.c 2005-02-27 23:14:24.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/common/pci_ops.c linux-2.4.32-rc1.mips/arch/mips/au1000/common/pci_ops.c
+--- linux-2.4.32-rc1/arch/mips/au1000/common/pci_ops.c 2004-02-18 14:36:30.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/common/pci_ops.c 2005-02-27 23:14:24.000000000 +0100
@@ -162,6 +162,7 @@
static int config_access(unsigned char access_type, struct pci_dev *dev,
unsigned char where, u32 * data)
@@ -1018,9 +911,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/common/pci_ops.c linux-2.4.30-mips/arch/
}
#endif
-diff -Nur linux-2.4.30/arch/mips/au1000/common/power.c linux-2.4.30-mips/arch/mips/au1000/common/power.c
---- linux-2.4.30/arch/mips/au1000/common/power.c 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/common/power.c 2005-04-07 02:37:19.000000000 +0200
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/common/power.c linux-2.4.32-rc1.mips/arch/mips/au1000/common/power.c
+--- linux-2.4.32-rc1/arch/mips/au1000/common/power.c 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/common/power.c 2005-04-07 02:37:19.000000000 +0200
@@ -50,7 +50,6 @@
static void calibrate_delay(void);
@@ -1247,9 +1140,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/common/power.c linux-2.4.30-mips/arch/mi
{0}
};
-diff -Nur linux-2.4.30/arch/mips/au1000/common/reset.c linux-2.4.30-mips/arch/mips/au1000/common/reset.c
---- linux-2.4.30/arch/mips/au1000/common/reset.c 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/common/reset.c 2005-03-19 08:17:51.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/common/reset.c linux-2.4.32-rc1.mips/arch/mips/au1000/common/reset.c
+--- linux-2.4.32-rc1/arch/mips/au1000/common/reset.c 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/common/reset.c 2005-03-19 08:17:51.000000000 +0100
@@ -37,8 +37,6 @@
#include <asm/system.h>
#include <asm/au1000.h>
@@ -1330,9 +1223,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/common/reset.c linux-2.4.30-mips/arch/mi
+ /* If board can't power-off, spin forever */
au1000_halt();
}
-diff -Nur linux-2.4.30/arch/mips/au1000/common/setup.c linux-2.4.30-mips/arch/mips/au1000/common/setup.c
---- linux-2.4.30/arch/mips/au1000/common/setup.c 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/common/setup.c 2005-01-30 09:01:27.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/common/setup.c linux-2.4.32-rc1.mips/arch/mips/au1000/common/setup.c
+--- linux-2.4.32-rc1/arch/mips/au1000/common/setup.c 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/common/setup.c 2005-01-30 09:01:27.000000000 +0100
@@ -174,6 +174,40 @@
initrd_end = (unsigned long)&__rd_end;
#endif
@@ -1427,9 +1320,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/common/setup.c linux-2.4.30-mips/arch/mi
if ((ide_ops == NULL) || (ide_ops == &no_ide_ops))
ide_ops = &std_ide_ops;
#endif
-diff -Nur linux-2.4.30/arch/mips/au1000/common/sleeper.S linux-2.4.30-mips/arch/mips/au1000/common/sleeper.S
---- linux-2.4.30/arch/mips/au1000/common/sleeper.S 2004-02-18 14:36:30.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/common/sleeper.S 2005-01-30 09:01:27.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/common/sleeper.S linux-2.4.32-rc1.mips/arch/mips/au1000/common/sleeper.S
+--- linux-2.4.32-rc1/arch/mips/au1000/common/sleeper.S 2004-02-18 14:36:30.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/common/sleeper.S 2005-01-30 09:01:27.000000000 +0100
@@ -15,17 +15,48 @@
#include <asm/addrspace.h>
#include <asm/regdef.h>
@@ -1698,9 +1591,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/common/sleeper.S linux-2.4.30-mips/arch/
+ .set reorder
END(save_and_sleep)
+
-diff -Nur linux-2.4.30/arch/mips/au1000/common/time.c linux-2.4.30-mips/arch/mips/au1000/common/time.c
---- linux-2.4.30/arch/mips/au1000/common/time.c 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/common/time.c 2005-04-08 10:33:17.000000000 +0200
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/common/time.c linux-2.4.32-rc1.mips/arch/mips/au1000/common/time.c
+--- linux-2.4.32-rc1/arch/mips/au1000/common/time.c 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/common/time.c 2005-04-08 10:33:17.000000000 +0200
@@ -50,7 +50,6 @@
#include <linux/mc146818rtc.h>
#include <linux/timex.h>
@@ -1760,24 +1653,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/common/time.c linux-2.4.30-mips/arch/mip
}
#else
-diff -Nur linux-2.4.30/arch/mips/au1000/db1x00/Makefile linux-2.4.30-mips/arch/mips/au1000/db1x00/Makefile
---- linux-2.4.30/arch/mips/au1000/db1x00/Makefile 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/db1x00/Makefile 2005-01-30 09:06:19.000000000 +0100
-@@ -17,4 +17,11 @@
- obj-y := init.o board_setup.o irqmap.o
- obj-$(CONFIG_WM97XX_COMODULE) += mirage_ts.o
-
-+ifdef CONFIG_MIPS_DB1100
-+ifdef CONFIG_MMC
-+obj-y += mmc_support.o
-+export-objs += mmc_support.o
-+endif
-+endif
-+
- include $(TOPDIR)/Rules.make
-diff -Nur linux-2.4.30/arch/mips/au1000/db1x00/board_setup.c linux-2.4.30-mips/arch/mips/au1000/db1x00/board_setup.c
---- linux-2.4.30/arch/mips/au1000/db1x00/board_setup.c 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/db1x00/board_setup.c 2005-03-19 08:17:51.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/db1x00/board_setup.c linux-2.4.32-rc1.mips/arch/mips/au1000/db1x00/board_setup.c
+--- linux-2.4.32-rc1/arch/mips/au1000/db1x00/board_setup.c 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/db1x00/board_setup.c 2005-03-19 08:17:51.000000000 +0100
@@ -46,10 +46,22 @@
#include <asm/au1000.h>
#include <asm/db1x00.h>
@@ -1861,9 +1739,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/db1x00/board_setup.c linux-2.4.30-mips/a
#ifdef CONFIG_MIPS_DB1000
printk("AMD Alchemy Au1000/Db1000 Board\n");
#endif
-diff -Nur linux-2.4.30/arch/mips/au1000/db1x00/irqmap.c linux-2.4.30-mips/arch/mips/au1000/db1x00/irqmap.c
---- linux-2.4.30/arch/mips/au1000/db1x00/irqmap.c 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/db1x00/irqmap.c 2005-01-30 09:06:19.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/db1x00/irqmap.c linux-2.4.32-rc1.mips/arch/mips/au1000/db1x00/irqmap.c
+--- linux-2.4.32-rc1/arch/mips/au1000/db1x00/irqmap.c 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/db1x00/irqmap.c 2005-01-30 09:06:19.000000000 +0100
@@ -53,6 +53,7 @@
#ifdef CONFIG_MIPS_DB1550
{ AU1000_GPIO_3, INTC_INT_LOW_LEVEL, 0 }, // PCMCIA Card 0 IRQ#
@@ -1872,9 +1750,24 @@ diff -Nur linux-2.4.30/arch/mips/au1000/db1x00/irqmap.c linux-2.4.30-mips/arch/m
#else
{ AU1000_GPIO_0, INTC_INT_LOW_LEVEL, 0 }, // PCMCIA Card 0 Fully_Interted#
{ AU1000_GPIO_1, INTC_INT_LOW_LEVEL, 0 }, // PCMCIA Card 0 STSCHG#
-diff -Nur linux-2.4.30/arch/mips/au1000/db1x00/mmc_support.c linux-2.4.30-mips/arch/mips/au1000/db1x00/mmc_support.c
---- linux-2.4.30/arch/mips/au1000/db1x00/mmc_support.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/db1x00/mmc_support.c 2005-01-30 09:07:01.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/db1x00/Makefile linux-2.4.32-rc1.mips/arch/mips/au1000/db1x00/Makefile
+--- linux-2.4.32-rc1/arch/mips/au1000/db1x00/Makefile 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/db1x00/Makefile 2005-01-30 09:06:19.000000000 +0100
+@@ -17,4 +17,11 @@
+ obj-y := init.o board_setup.o irqmap.o
+ obj-$(CONFIG_WM97XX_COMODULE) += mirage_ts.o
+
++ifdef CONFIG_MIPS_DB1100
++ifdef CONFIG_MMC
++obj-y += mmc_support.o
++export-objs += mmc_support.o
++endif
++endif
++
+ include $(TOPDIR)/Rules.make
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/db1x00/mmc_support.c linux-2.4.32-rc1.mips/arch/mips/au1000/db1x00/mmc_support.c
+--- linux-2.4.32-rc1/arch/mips/au1000/db1x00/mmc_support.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/db1x00/mmc_support.c 2005-01-30 09:07:01.000000000 +0100
@@ -0,0 +1,126 @@
+/*
+ * BRIEF MODULE DESCRIPTION
@@ -2002,38 +1895,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/db1x00/mmc_support.c linux-2.4.30-mips/a
+EXPORT_SYMBOL(mmc_power_on);
+EXPORT_SYMBOL(mmc_power_off);
+
-diff -Nur linux-2.4.30/arch/mips/au1000/ficmmp/Makefile linux-2.4.30-mips/arch/mips/au1000/ficmmp/Makefile
---- linux-2.4.30/arch/mips/au1000/ficmmp/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/ficmmp/Makefile 2005-01-30 09:01:27.000000000 +0100
-@@ -0,0 +1,25 @@
-+#
-+# Copyright 2000 MontaVista Software Inc.
-+# Author: MontaVista Software, Inc.
-+# ppopov@mvista.com or source@mvista.com
-+#
-+# Makefile for the Alchemy Semiconductor FIC board.
-+#
-+# Note! Dependencies are done automagically by 'make dep', which also
-+# removes any old dependencies. DON'T put your own dependencies here
-+# unless it's something special (ie not a .c file).
-+#
-+
-+USE_STANDARD_AS_RULE := true
-+
-+O_TARGET := ficmmp.o
-+
-+obj-y := init.o board_setup.o irqmap.o au1200_ibutton.o au1xxx_dock.o
-+
-+ifdef CONFIG_MMC
-+obj-y += mmc_support.o
-+export-objs +=mmc_support.o
-+endif
-+
-+
-+include $(TOPDIR)/Rules.make
-diff -Nur linux-2.4.30/arch/mips/au1000/ficmmp/au1200_ibutton.c linux-2.4.30-mips/arch/mips/au1000/ficmmp/au1200_ibutton.c
---- linux-2.4.30/arch/mips/au1000/ficmmp/au1200_ibutton.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/ficmmp/au1200_ibutton.c 2005-02-03 07:35:29.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/ficmmp/au1200_ibutton.c linux-2.4.32-rc1.mips/arch/mips/au1000/ficmmp/au1200_ibutton.c
+--- linux-2.4.32-rc1/arch/mips/au1000/ficmmp/au1200_ibutton.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/ficmmp/au1200_ibutton.c 2005-02-03 07:35:29.000000000 +0100
@@ -0,0 +1,270 @@
+/* ----------------------------------------------------------------------
+ * mtwilson_keys.c
@@ -2305,9 +2169,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/ficmmp/au1200_ibutton.c linux-2.4.30-mip
+MODULE_AUTHOR( DRIVER_AUTHOR );
+MODULE_DESCRIPTION( DRIVER_DESC );
+MODULE_LICENSE("GPL");
-diff -Nur linux-2.4.30/arch/mips/au1000/ficmmp/au1xxx_dock.c linux-2.4.30-mips/arch/mips/au1000/ficmmp/au1xxx_dock.c
---- linux-2.4.30/arch/mips/au1000/ficmmp/au1xxx_dock.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/ficmmp/au1xxx_dock.c 2005-01-30 09:01:27.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/ficmmp/au1xxx_dock.c linux-2.4.32-rc1.mips/arch/mips/au1000/ficmmp/au1xxx_dock.c
+--- linux-2.4.32-rc1/arch/mips/au1000/ficmmp/au1xxx_dock.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/ficmmp/au1xxx_dock.c 2005-01-30 09:01:27.000000000 +0100
@@ -0,0 +1,261 @@
+/*
+ * Copyright (C) 2003 Metrowerks, All Rights Reserved.
@@ -2570,9 +2434,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/ficmmp/au1xxx_dock.c linux-2.4.30-mips/a
+
+module_init(au1xxx_dock_init);
+module_exit(au1xxx_dock_exit);
-diff -Nur linux-2.4.30/arch/mips/au1000/ficmmp/board_setup.c linux-2.4.30-mips/arch/mips/au1000/ficmmp/board_setup.c
---- linux-2.4.30/arch/mips/au1000/ficmmp/board_setup.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/ficmmp/board_setup.c 2005-03-19 08:17:51.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/ficmmp/board_setup.c linux-2.4.32-rc1.mips/arch/mips/au1000/ficmmp/board_setup.c
+--- linux-2.4.32-rc1/arch/mips/au1000/ficmmp/board_setup.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/ficmmp/board_setup.c 2005-03-19 08:17:51.000000000 +0100
@@ -0,0 +1,226 @@
+/*
+ *
@@ -2800,9 +2664,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/ficmmp/board_setup.c linux-2.4.30-mips/a
+ return 0;
+}
+
-diff -Nur linux-2.4.30/arch/mips/au1000/ficmmp/init.c linux-2.4.30-mips/arch/mips/au1000/ficmmp/init.c
---- linux-2.4.30/arch/mips/au1000/ficmmp/init.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/ficmmp/init.c 2005-01-30 09:01:27.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/ficmmp/init.c linux-2.4.32-rc1.mips/arch/mips/au1000/ficmmp/init.c
+--- linux-2.4.32-rc1/arch/mips/au1000/ficmmp/init.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/ficmmp/init.c 2005-01-30 09:01:27.000000000 +0100
@@ -0,0 +1,76 @@
+/*
+ *
@@ -2880,9 +2744,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/ficmmp/init.c linux-2.4.30-mips/arch/mip
+ return 0;
+}
+
-diff -Nur linux-2.4.30/arch/mips/au1000/ficmmp/irqmap.c linux-2.4.30-mips/arch/mips/au1000/ficmmp/irqmap.c
---- linux-2.4.30/arch/mips/au1000/ficmmp/irqmap.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/ficmmp/irqmap.c 2005-01-30 09:01:27.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/ficmmp/irqmap.c linux-2.4.32-rc1.mips/arch/mips/au1000/ficmmp/irqmap.c
+--- linux-2.4.32-rc1/arch/mips/au1000/ficmmp/irqmap.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/ficmmp/irqmap.c 2005-01-30 09:01:27.000000000 +0100
@@ -0,0 +1,61 @@
+/*
+ * BRIEF MODULE DESCRIPTION
@@ -2945,25 +2809,38 @@ diff -Nur linux-2.4.30/arch/mips/au1000/ficmmp/irqmap.c linux-2.4.30-mips/arch/m
+
+int au1xxx_nr_irqs = sizeof(au1xxx_irq_map)/sizeof(au1xxx_irq_map_t);
+
-diff -Nur linux-2.4.30/arch/mips/au1000/hydrogen3/Makefile linux-2.4.30-mips/arch/mips/au1000/hydrogen3/Makefile
---- linux-2.4.30/arch/mips/au1000/hydrogen3/Makefile 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/hydrogen3/Makefile 2005-02-11 22:09:55.000000000 +0100
-@@ -14,6 +14,11 @@
-
- O_TARGET := hydrogen3.o
-
--obj-y := init.o board_setup.o irqmap.o
-+obj-y := init.o board_setup.o irqmap.o buttons.o
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/ficmmp/Makefile linux-2.4.32-rc1.mips/arch/mips/au1000/ficmmp/Makefile
+--- linux-2.4.32-rc1/arch/mips/au1000/ficmmp/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/ficmmp/Makefile 2005-01-30 09:01:27.000000000 +0100
+@@ -0,0 +1,25 @@
++#
++# Copyright 2000 MontaVista Software Inc.
++# Author: MontaVista Software, Inc.
++# ppopov@mvista.com or source@mvista.com
++#
++# Makefile for the Alchemy Semiconductor FIC board.
++#
++# Note! Dependencies are done automagically by 'make dep', which also
++# removes any old dependencies. DON'T put your own dependencies here
++# unless it's something special (ie not a .c file).
++#
++
++USE_STANDARD_AS_RULE := true
++
++O_TARGET := ficmmp.o
++
++obj-y := init.o board_setup.o irqmap.o au1200_ibutton.o au1xxx_dock.o
+
+ifdef CONFIG_MMC
+obj-y += mmc_support.o
+export-objs +=mmc_support.o
+endif
-
- include $(TOPDIR)/Rules.make
-diff -Nur linux-2.4.30/arch/mips/au1000/hydrogen3/board_setup.c linux-2.4.30-mips/arch/mips/au1000/hydrogen3/board_setup.c
---- linux-2.4.30/arch/mips/au1000/hydrogen3/board_setup.c 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/hydrogen3/board_setup.c 2005-03-19 08:17:51.000000000 +0100
++
++
++include $(TOPDIR)/Rules.make
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/hydrogen3/board_setup.c linux-2.4.32-rc1.mips/arch/mips/au1000/hydrogen3/board_setup.c
+--- linux-2.4.32-rc1/arch/mips/au1000/hydrogen3/board_setup.c 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/hydrogen3/board_setup.c 2005-03-19 08:17:51.000000000 +0100
@@ -51,12 +51,19 @@
{
}
@@ -2984,9 +2861,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/hydrogen3/board_setup.c linux-2.4.30-mip
#ifdef CONFIG_AU1X00_USB_DEVICE
// 2nd USB port is USB device
pin_func = au_readl(SYS_PINFUNC) & (u32)(~0x8000);
-diff -Nur linux-2.4.30/arch/mips/au1000/hydrogen3/buttons.c linux-2.4.30-mips/arch/mips/au1000/hydrogen3/buttons.c
---- linux-2.4.30/arch/mips/au1000/hydrogen3/buttons.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/hydrogen3/buttons.c 2005-02-11 22:09:55.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/hydrogen3/buttons.c linux-2.4.32-rc1.mips/arch/mips/au1000/hydrogen3/buttons.c
+--- linux-2.4.32-rc1/arch/mips/au1000/hydrogen3/buttons.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/hydrogen3/buttons.c 2005-02-11 22:09:55.000000000 +0100
@@ -0,0 +1,308 @@
+/*
+ * Copyright (C) 2003 Metrowerks, All Rights Reserved.
@@ -3296,9 +3173,25 @@ diff -Nur linux-2.4.30/arch/mips/au1000/hydrogen3/buttons.c linux-2.4.30-mips/ar
+
+module_init(hydrogen3_buttons_init);
+module_exit(hydrogen3_buttons_exit);
-diff -Nur linux-2.4.30/arch/mips/au1000/hydrogen3/mmc_support.c linux-2.4.30-mips/arch/mips/au1000/hydrogen3/mmc_support.c
---- linux-2.4.30/arch/mips/au1000/hydrogen3/mmc_support.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/hydrogen3/mmc_support.c 2005-02-02 05:27:06.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/hydrogen3/Makefile linux-2.4.32-rc1.mips/arch/mips/au1000/hydrogen3/Makefile
+--- linux-2.4.32-rc1/arch/mips/au1000/hydrogen3/Makefile 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/hydrogen3/Makefile 2005-02-11 22:09:55.000000000 +0100
+@@ -14,6 +14,11 @@
+
+ O_TARGET := hydrogen3.o
+
+-obj-y := init.o board_setup.o irqmap.o
++obj-y := init.o board_setup.o irqmap.o buttons.o
++
++ifdef CONFIG_MMC
++obj-y += mmc_support.o
++export-objs +=mmc_support.o
++endif
+
+ include $(TOPDIR)/Rules.make
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/hydrogen3/mmc_support.c linux-2.4.32-rc1.mips/arch/mips/au1000/hydrogen3/mmc_support.c
+--- linux-2.4.32-rc1/arch/mips/au1000/hydrogen3/mmc_support.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/hydrogen3/mmc_support.c 2005-02-02 05:27:06.000000000 +0100
@@ -0,0 +1,89 @@
+/*
+ * BRIEF MODULE DESCRIPTION
@@ -3389,9 +3282,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/hydrogen3/mmc_support.c linux-2.4.30-mip
+EXPORT_SYMBOL(mmc_power_on);
+EXPORT_SYMBOL(mmc_power_off);
+
-diff -Nur linux-2.4.30/arch/mips/au1000/mtx-1/board_setup.c linux-2.4.30-mips/arch/mips/au1000/mtx-1/board_setup.c
---- linux-2.4.30/arch/mips/au1000/mtx-1/board_setup.c 2004-02-18 14:36:30.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/mtx-1/board_setup.c 2004-11-26 09:37:16.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/mtx-1/board_setup.c linux-2.4.32-rc1.mips/arch/mips/au1000/mtx-1/board_setup.c
+--- linux-2.4.32-rc1/arch/mips/au1000/mtx-1/board_setup.c 2004-02-18 14:36:30.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/mtx-1/board_setup.c 2004-11-26 09:37:16.000000000 +0100
@@ -48,6 +48,12 @@
extern struct rtc_ops no_rtc_ops;
@@ -3405,9 +3298,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/mtx-1/board_setup.c linux-2.4.30-mips/ar
void __init board_setup(void)
{
rtc_ops = &no_rtc_ops;
-diff -Nur linux-2.4.30/arch/mips/au1000/mtx-1/irqmap.c linux-2.4.30-mips/arch/mips/au1000/mtx-1/irqmap.c
---- linux-2.4.30/arch/mips/au1000/mtx-1/irqmap.c 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/mtx-1/irqmap.c 2004-11-26 09:37:16.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/mtx-1/irqmap.c linux-2.4.32-rc1.mips/arch/mips/au1000/mtx-1/irqmap.c
+--- linux-2.4.32-rc1/arch/mips/au1000/mtx-1/irqmap.c 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/mtx-1/irqmap.c 2004-11-26 09:37:16.000000000 +0100
@@ -72,10 +72,10 @@
* A B C D
*/
@@ -3423,9 +3316,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/mtx-1/irqmap.c linux-2.4.30-mips/arch/mi
};
const long min_idsel = 0, max_idsel = 3, irqs_per_slot = 4;
return PCI_IRQ_TABLE_LOOKUP;
-diff -Nur linux-2.4.30/arch/mips/au1000/pb1000/board_setup.c linux-2.4.30-mips/arch/mips/au1000/pb1000/board_setup.c
---- linux-2.4.30/arch/mips/au1000/pb1000/board_setup.c 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/pb1000/board_setup.c 2005-03-19 08:17:51.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/pb1000/board_setup.c linux-2.4.32-rc1.mips/arch/mips/au1000/pb1000/board_setup.c
+--- linux-2.4.32-rc1/arch/mips/au1000/pb1000/board_setup.c 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/pb1000/board_setup.c 2005-03-19 08:17:51.000000000 +0100
@@ -58,6 +58,10 @@
{
}
@@ -3437,23 +3330,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/pb1000/board_setup.c linux-2.4.30-mips/a
void __init board_setup(void)
{
u32 pin_func, static_cfg0;
-diff -Nur linux-2.4.30/arch/mips/au1000/pb1100/Makefile linux-2.4.30-mips/arch/mips/au1000/pb1100/Makefile
---- linux-2.4.30/arch/mips/au1000/pb1100/Makefile 2003-08-25 13:44:39.000000000 +0200
-+++ linux-2.4.30-mips/arch/mips/au1000/pb1100/Makefile 2005-01-30 09:10:29.000000000 +0100
-@@ -16,4 +16,10 @@
-
- obj-y := init.o board_setup.o irqmap.o
-
-+
-+ifdef CONFIG_MMC
-+obj-y += mmc_support.o
-+export-objs += mmc_support.o
-+endif
-+
- include $(TOPDIR)/Rules.make
-diff -Nur linux-2.4.30/arch/mips/au1000/pb1100/board_setup.c linux-2.4.30-mips/arch/mips/au1000/pb1100/board_setup.c
---- linux-2.4.30/arch/mips/au1000/pb1100/board_setup.c 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/pb1100/board_setup.c 2005-03-19 08:17:51.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/pb1100/board_setup.c linux-2.4.32-rc1.mips/arch/mips/au1000/pb1100/board_setup.c
+--- linux-2.4.32-rc1/arch/mips/au1000/pb1100/board_setup.c 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/pb1100/board_setup.c 2005-03-19 08:17:51.000000000 +0100
@@ -62,6 +62,10 @@
au_writel(0x00000000, 0xAE00001C);
}
@@ -3465,9 +3344,23 @@ diff -Nur linux-2.4.30/arch/mips/au1000/pb1100/board_setup.c linux-2.4.30-mips/a
void __init board_setup(void)
{
u32 pin_func;
-diff -Nur linux-2.4.30/arch/mips/au1000/pb1100/mmc_support.c linux-2.4.30-mips/arch/mips/au1000/pb1100/mmc_support.c
---- linux-2.4.30/arch/mips/au1000/pb1100/mmc_support.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/pb1100/mmc_support.c 2005-01-30 09:10:29.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/pb1100/Makefile linux-2.4.32-rc1.mips/arch/mips/au1000/pb1100/Makefile
+--- linux-2.4.32-rc1/arch/mips/au1000/pb1100/Makefile 2003-08-25 13:44:39.000000000 +0200
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/pb1100/Makefile 2005-01-30 09:10:29.000000000 +0100
+@@ -16,4 +16,10 @@
+
+ obj-y := init.o board_setup.o irqmap.o
+
++
++ifdef CONFIG_MMC
++obj-y += mmc_support.o
++export-objs += mmc_support.o
++endif
++
+ include $(TOPDIR)/Rules.make
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/pb1100/mmc_support.c linux-2.4.32-rc1.mips/arch/mips/au1000/pb1100/mmc_support.c
+--- linux-2.4.32-rc1/arch/mips/au1000/pb1100/mmc_support.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/pb1100/mmc_support.c 2005-01-30 09:10:29.000000000 +0100
@@ -0,0 +1,126 @@
+/*
+ * BRIEF MODULE DESCRIPTION
@@ -3595,38 +3488,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/pb1100/mmc_support.c linux-2.4.30-mips/a
+EXPORT_SYMBOL(mmc_power_on);
+EXPORT_SYMBOL(mmc_power_off);
+
-diff -Nur linux-2.4.30/arch/mips/au1000/pb1200/Makefile linux-2.4.30-mips/arch/mips/au1000/pb1200/Makefile
---- linux-2.4.30/arch/mips/au1000/pb1200/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/pb1200/Makefile 2005-01-30 09:01:27.000000000 +0100
-@@ -0,0 +1,25 @@
-+#
-+# Copyright 2000 MontaVista Software Inc.
-+# Author: MontaVista Software, Inc.
-+# ppopov@mvista.com or source@mvista.com
-+#
-+# Makefile for the Alchemy Semiconductor PB1000 board.
-+#
-+# Note! Dependencies are done automagically by 'make dep', which also
-+# removes any old dependencies. DON'T put your own dependencies here
-+# unless it's something special (ie not a .c file).
-+#
-+
-+USE_STANDARD_AS_RULE := true
-+
-+O_TARGET := pb1200.o
-+
-+obj-y := init.o board_setup.o irqmap.o
-+
-+ifdef CONFIG_MMC
-+obj-y += mmc_support.o
-+export-objs +=mmc_support.o
-+endif
-+
-+
-+include $(TOPDIR)/Rules.make
-diff -Nur linux-2.4.30/arch/mips/au1000/pb1200/board_setup.c linux-2.4.30-mips/arch/mips/au1000/pb1200/board_setup.c
---- linux-2.4.30/arch/mips/au1000/pb1200/board_setup.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/pb1200/board_setup.c 2005-03-19 08:17:51.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/pb1200/board_setup.c linux-2.4.32-rc1.mips/arch/mips/au1000/pb1200/board_setup.c
+--- linux-2.4.32-rc1/arch/mips/au1000/pb1200/board_setup.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/pb1200/board_setup.c 2005-03-19 08:17:51.000000000 +0100
@@ -0,0 +1,221 @@
+/*
+ *
@@ -3849,9 +3713,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/pb1200/board_setup.c linux-2.4.30-mips/a
+ return 0;
+}
+
-diff -Nur linux-2.4.30/arch/mips/au1000/pb1200/init.c linux-2.4.30-mips/arch/mips/au1000/pb1200/init.c
---- linux-2.4.30/arch/mips/au1000/pb1200/init.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/pb1200/init.c 2005-01-30 09:01:28.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/pb1200/init.c linux-2.4.32-rc1.mips/arch/mips/au1000/pb1200/init.c
+--- linux-2.4.32-rc1/arch/mips/au1000/pb1200/init.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/pb1200/init.c 2005-01-30 09:01:28.000000000 +0100
@@ -0,0 +1,72 @@
+/*
+ *
@@ -3925,9 +3789,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/pb1200/init.c linux-2.4.30-mips/arch/mip
+ return 0;
+}
+
-diff -Nur linux-2.4.30/arch/mips/au1000/pb1200/irqmap.c linux-2.4.30-mips/arch/mips/au1000/pb1200/irqmap.c
---- linux-2.4.30/arch/mips/au1000/pb1200/irqmap.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/pb1200/irqmap.c 2005-01-30 09:01:28.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/pb1200/irqmap.c linux-2.4.32-rc1.mips/arch/mips/au1000/pb1200/irqmap.c
+--- linux-2.4.32-rc1/arch/mips/au1000/pb1200/irqmap.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/pb1200/irqmap.c 2005-01-30 09:01:28.000000000 +0100
@@ -0,0 +1,180 @@
+/*
+ * BRIEF MODULE DESCRIPTION
@@ -4109,9 +3973,38 @@ diff -Nur linux-2.4.30/arch/mips/au1000/pb1200/irqmap.c linux-2.4.30-mips/arch/m
+ request of any source attached to the cascade */
+}
+
-diff -Nur linux-2.4.30/arch/mips/au1000/pb1200/mmc_support.c linux-2.4.30-mips/arch/mips/au1000/pb1200/mmc_support.c
---- linux-2.4.30/arch/mips/au1000/pb1200/mmc_support.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/pb1200/mmc_support.c 2005-01-30 09:01:28.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/pb1200/Makefile linux-2.4.32-rc1.mips/arch/mips/au1000/pb1200/Makefile
+--- linux-2.4.32-rc1/arch/mips/au1000/pb1200/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/pb1200/Makefile 2005-01-30 09:01:27.000000000 +0100
+@@ -0,0 +1,25 @@
++#
++# Copyright 2000 MontaVista Software Inc.
++# Author: MontaVista Software, Inc.
++# ppopov@mvista.com or source@mvista.com
++#
++# Makefile for the Alchemy Semiconductor PB1000 board.
++#
++# Note! Dependencies are done automagically by 'make dep', which also
++# removes any old dependencies. DON'T put your own dependencies here
++# unless it's something special (ie not a .c file).
++#
++
++USE_STANDARD_AS_RULE := true
++
++O_TARGET := pb1200.o
++
++obj-y := init.o board_setup.o irqmap.o
++
++ifdef CONFIG_MMC
++obj-y += mmc_support.o
++export-objs +=mmc_support.o
++endif
++
++
++include $(TOPDIR)/Rules.make
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/pb1200/mmc_support.c linux-2.4.32-rc1.mips/arch/mips/au1000/pb1200/mmc_support.c
+--- linux-2.4.32-rc1/arch/mips/au1000/pb1200/mmc_support.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/pb1200/mmc_support.c 2005-01-30 09:01:28.000000000 +0100
@@ -0,0 +1,141 @@
+/*
+ * BRIEF MODULE DESCRIPTION
@@ -4254,9 +4147,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/pb1200/mmc_support.c linux-2.4.30-mips/a
+EXPORT_SYMBOL(mmc_power_on);
+EXPORT_SYMBOL(mmc_power_off);
+
-diff -Nur linux-2.4.30/arch/mips/au1000/pb1500/board_setup.c linux-2.4.30-mips/arch/mips/au1000/pb1500/board_setup.c
---- linux-2.4.30/arch/mips/au1000/pb1500/board_setup.c 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/pb1500/board_setup.c 2005-03-19 08:17:51.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/pb1500/board_setup.c linux-2.4.32-rc1.mips/arch/mips/au1000/pb1500/board_setup.c
+--- linux-2.4.32-rc1/arch/mips/au1000/pb1500/board_setup.c 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/pb1500/board_setup.c 2005-03-19 08:17:51.000000000 +0100
@@ -62,6 +62,10 @@
au_writel(0x00000000, 0xAE00001C);
}
@@ -4268,9 +4161,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/pb1500/board_setup.c linux-2.4.30-mips/a
void __init board_setup(void)
{
u32 pin_func;
-diff -Nur linux-2.4.30/arch/mips/au1000/pb1550/board_setup.c linux-2.4.30-mips/arch/mips/au1000/pb1550/board_setup.c
---- linux-2.4.30/arch/mips/au1000/pb1550/board_setup.c 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/pb1550/board_setup.c 2005-03-19 08:17:51.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/pb1550/board_setup.c linux-2.4.32-rc1.mips/arch/mips/au1000/pb1550/board_setup.c
+--- linux-2.4.32-rc1/arch/mips/au1000/pb1550/board_setup.c 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/pb1550/board_setup.c 2005-03-19 08:17:51.000000000 +0100
@@ -48,12 +48,31 @@
extern struct rtc_ops no_rtc_ops;
@@ -4340,9 +4233,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/pb1550/board_setup.c linux-2.4.30-mips/a
+#endif
printk("AMD Alchemy Pb1550 Board\n");
}
-diff -Nur linux-2.4.30/arch/mips/au1000/pb1550/irqmap.c linux-2.4.30-mips/arch/mips/au1000/pb1550/irqmap.c
---- linux-2.4.30/arch/mips/au1000/pb1550/irqmap.c 2005-01-19 15:09:26.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/au1000/pb1550/irqmap.c 2005-01-30 09:01:28.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/au1000/pb1550/irqmap.c linux-2.4.32-rc1.mips/arch/mips/au1000/pb1550/irqmap.c
+--- linux-2.4.32-rc1/arch/mips/au1000/pb1550/irqmap.c 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/au1000/pb1550/irqmap.c 2005-01-30 09:01:28.000000000 +0100
@@ -50,6 +50,9 @@
au1xxx_irq_map_t au1xxx_irq_map[] = {
{ AU1000_GPIO_0, INTC_INT_LOW_LEVEL, 0 },
@@ -4353,9 +4246,9 @@ diff -Nur linux-2.4.30/arch/mips/au1000/pb1550/irqmap.c linux-2.4.30-mips/arch/m
};
int au1xxx_nr_irqs = sizeof(au1xxx_irq_map)/sizeof(au1xxx_irq_map_t);
-diff -Nur linux-2.4.30/arch/mips/config-shared.in linux-2.4.30-mips/arch/mips/config-shared.in
---- linux-2.4.30/arch/mips/config-shared.in 2005-01-19 15:09:27.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/config-shared.in 2005-01-30 09:01:26.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/config-shared.in linux-2.4.32-rc1.mips/arch/mips/config-shared.in
+--- linux-2.4.32-rc1/arch/mips/config-shared.in 2005-01-19 15:09:27.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/config-shared.in 2005-01-30 09:01:26.000000000 +0100
@@ -21,16 +21,19 @@
comment 'Machine selection'
dep_bool 'Support for Acer PICA 1 chipset (EXPERIMENTAL)' CONFIG_ACER_PICA_61 $CONFIG_EXPERIMENTAL
@@ -4476,9 +4369,9 @@ diff -Nur linux-2.4.30/arch/mips/config-shared.in linux-2.4.30-mips/arch/mips/co
"$CONFIG_NEC_OSPREY" = "y" -o \
"$CONFIG_NEC_EAGLE" = "y" -o \
"$CONFIG_NINO" = "y" -o \
-diff -Nur linux-2.4.30/arch/mips/defconfig linux-2.4.30-mips/arch/mips/defconfig
---- linux-2.4.30/arch/mips/defconfig 2005-01-19 15:09:27.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig linux-2.4.32-rc1.mips/arch/mips/defconfig
+--- linux-2.4.32-rc1/arch/mips/defconfig 2005-01-19 15:09:27.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -4521,9 +4414,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig linux-2.4.30-mips/arch/mips/defconfig
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-atlas linux-2.4.30-mips/arch/mips/defconfig-atlas
---- linux-2.4.30/arch/mips/defconfig-atlas 2005-01-19 15:09:27.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-atlas 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-atlas linux-2.4.32-rc1.mips/arch/mips/defconfig-atlas
+--- linux-2.4.32-rc1/arch/mips/defconfig-atlas 2005-01-19 15:09:27.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-atlas 2005-03-18 13:13:21.000000000 +0100
@@ -28,8 +28,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -4566,9 +4459,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-atlas linux-2.4.30-mips/arch/mips/def
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-bosporus linux-2.4.30-mips/arch/mips/defconfig-bosporus
---- linux-2.4.30/arch/mips/defconfig-bosporus 2005-01-19 15:09:27.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-bosporus 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-bosporus linux-2.4.32-rc1.mips/arch/mips/defconfig-bosporus
+--- linux-2.4.32-rc1/arch/mips/defconfig-bosporus 2005-01-19 15:09:27.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-bosporus 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -4629,9 +4522,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-bosporus linux-2.4.30-mips/arch/mips/
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-capcella linux-2.4.30-mips/arch/mips/defconfig-capcella
---- linux-2.4.30/arch/mips/defconfig-capcella 2005-01-19 15:09:27.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-capcella 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-capcella linux-2.4.32-rc1.mips/arch/mips/defconfig-capcella
+--- linux-2.4.32-rc1/arch/mips/defconfig-capcella 2005-01-19 15:09:27.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-capcella 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -4662,9 +4555,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-capcella linux-2.4.30-mips/arch/mips/
# CONFIG_VR41XX_KIU is not set
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-cobalt linux-2.4.30-mips/arch/mips/defconfig-cobalt
---- linux-2.4.30/arch/mips/defconfig-cobalt 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-cobalt 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-cobalt linux-2.4.32-rc1.mips/arch/mips/defconfig-cobalt
+--- linux-2.4.32-rc1/arch/mips/defconfig-cobalt 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-cobalt 2005-03-18 13:13:21.000000000 +0100
@@ -28,8 +28,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -4695,9 +4588,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-cobalt linux-2.4.30-mips/arch/mips/de
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=16
-diff -Nur linux-2.4.30/arch/mips/defconfig-csb250 linux-2.4.30-mips/arch/mips/defconfig-csb250
---- linux-2.4.30/arch/mips/defconfig-csb250 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-csb250 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-csb250 linux-2.4.32-rc1.mips/arch/mips/defconfig-csb250
+--- linux-2.4.32-rc1/arch/mips/defconfig-csb250 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-csb250 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -4728,9 +4621,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-csb250 linux-2.4.30-mips/arch/mips/de
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-db1000 linux-2.4.30-mips/arch/mips/defconfig-db1000
---- linux-2.4.30/arch/mips/defconfig-db1000 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-db1000 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-db1000 linux-2.4.32-rc1.mips/arch/mips/defconfig-db1000
+--- linux-2.4.32-rc1/arch/mips/defconfig-db1000 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-db1000 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -4781,9 +4674,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-db1000 linux-2.4.30-mips/arch/mips/de
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-db1100 linux-2.4.30-mips/arch/mips/defconfig-db1100
---- linux-2.4.30/arch/mips/defconfig-db1100 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-db1100 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-db1100 linux-2.4.32-rc1.mips/arch/mips/defconfig-db1100
+--- linux-2.4.32-rc1/arch/mips/defconfig-db1100 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-db1100 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -4850,9 +4743,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-db1100 linux-2.4.30-mips/arch/mips/de
# CONFIG_FB_IT8181 is not set
# CONFIG_FB_VIRTUAL is not set
CONFIG_FBCON_ADVANCED=y
-diff -Nur linux-2.4.30/arch/mips/defconfig-db1200 linux-2.4.30-mips/arch/mips/defconfig-db1200
---- linux-2.4.30/arch/mips/defconfig-db1200 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-db1200 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-db1200 linux-2.4.32-rc1.mips/arch/mips/defconfig-db1200
+--- linux-2.4.32-rc1/arch/mips/defconfig-db1200 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-db1200 2005-03-18 13:13:21.000000000 +0100
@@ -0,0 +1,1032 @@
+#
+# Automatically generated make config: don't edit
@@ -5886,9 +5779,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-db1200 linux-2.4.30-mips/arch/mips/de
+CONFIG_ZLIB_INFLATE=m
+CONFIG_ZLIB_DEFLATE=m
+# CONFIG_FW_LOADER is not set
-diff -Nur linux-2.4.30/arch/mips/defconfig-db1500 linux-2.4.30-mips/arch/mips/defconfig-db1500
---- linux-2.4.30/arch/mips/defconfig-db1500 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-db1500 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-db1500 linux-2.4.32-rc1.mips/arch/mips/defconfig-db1500
+--- linux-2.4.32-rc1/arch/mips/defconfig-db1500 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-db1500 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -5919,9 +5812,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-db1500 linux-2.4.30-mips/arch/mips/de
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-db1550 linux-2.4.30-mips/arch/mips/defconfig-db1550
---- linux-2.4.30/arch/mips/defconfig-db1550 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-db1550 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-db1550 linux-2.4.32-rc1.mips/arch/mips/defconfig-db1550
+--- linux-2.4.32-rc1/arch/mips/defconfig-db1550 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-db1550 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -5972,9 +5865,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-db1550 linux-2.4.30-mips/arch/mips/de
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-ddb5476 linux-2.4.30-mips/arch/mips/defconfig-ddb5476
---- linux-2.4.30/arch/mips/defconfig-ddb5476 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-ddb5476 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-ddb5476 linux-2.4.32-rc1.mips/arch/mips/defconfig-ddb5476
+--- linux-2.4.32-rc1/arch/mips/defconfig-ddb5476 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-ddb5476 2005-03-18 13:13:21.000000000 +0100
@@ -28,8 +28,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -6005,9 +5898,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-ddb5476 linux-2.4.30-mips/arch/mips/d
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-ddb5477 linux-2.4.30-mips/arch/mips/defconfig-ddb5477
---- linux-2.4.30/arch/mips/defconfig-ddb5477 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-ddb5477 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-ddb5477 linux-2.4.32-rc1.mips/arch/mips/defconfig-ddb5477
+--- linux-2.4.32-rc1/arch/mips/defconfig-ddb5477 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-ddb5477 2005-03-18 13:13:21.000000000 +0100
@@ -28,8 +28,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -6038,9 +5931,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-ddb5477 linux-2.4.30-mips/arch/mips/d
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-decstation linux-2.4.30-mips/arch/mips/defconfig-decstation
---- linux-2.4.30/arch/mips/defconfig-decstation 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-decstation 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-decstation linux-2.4.32-rc1.mips/arch/mips/defconfig-decstation
+--- linux-2.4.32-rc1/arch/mips/defconfig-decstation 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-decstation 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -6083,9 +5976,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-decstation linux-2.4.30-mips/arch/mip
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-e55 linux-2.4.30-mips/arch/mips/defconfig-e55
---- linux-2.4.30/arch/mips/defconfig-e55 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-e55 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-e55 linux-2.4.32-rc1.mips/arch/mips/defconfig-e55
+--- linux-2.4.32-rc1/arch/mips/defconfig-e55 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-e55 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -6116,9 +6009,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-e55 linux-2.4.30-mips/arch/mips/defco
# CONFIG_VR41XX_KIU is not set
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-eagle linux-2.4.30-mips/arch/mips/defconfig-eagle
---- linux-2.4.30/arch/mips/defconfig-eagle 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-eagle 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-eagle linux-2.4.32-rc1.mips/arch/mips/defconfig-eagle
+--- linux-2.4.32-rc1/arch/mips/defconfig-eagle 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-eagle 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -6178,9 +6071,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-eagle linux-2.4.30-mips/arch/mips/def
# CONFIG_VR41XX_KIU is not set
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-ev64120 linux-2.4.30-mips/arch/mips/defconfig-ev64120
---- linux-2.4.30/arch/mips/defconfig-ev64120 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-ev64120 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-ev64120 linux-2.4.32-rc1.mips/arch/mips/defconfig-ev64120
+--- linux-2.4.32-rc1/arch/mips/defconfig-ev64120 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-ev64120 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -6211,9 +6104,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-ev64120 linux-2.4.30-mips/arch/mips/d
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-ev96100 linux-2.4.30-mips/arch/mips/defconfig-ev96100
---- linux-2.4.30/arch/mips/defconfig-ev96100 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-ev96100 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-ev96100 linux-2.4.32-rc1.mips/arch/mips/defconfig-ev96100
+--- linux-2.4.32-rc1/arch/mips/defconfig-ev96100 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-ev96100 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -6244,9 +6137,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-ev96100 linux-2.4.30-mips/arch/mips/d
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-ficmmp linux-2.4.30-mips/arch/mips/defconfig-ficmmp
---- linux-2.4.30/arch/mips/defconfig-ficmmp 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-ficmmp 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-ficmmp linux-2.4.32-rc1.mips/arch/mips/defconfig-ficmmp
+--- linux-2.4.32-rc1/arch/mips/defconfig-ficmmp 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-ficmmp 2005-03-18 13:13:21.000000000 +0100
@@ -0,0 +1,862 @@
+#
+# Automatically generated make config: don't edit
@@ -7110,9 +7003,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-ficmmp linux-2.4.30-mips/arch/mips/de
+# CONFIG_CRC32 is not set
+CONFIG_ZLIB_INFLATE=m
+CONFIG_ZLIB_DEFLATE=m
-diff -Nur linux-2.4.30/arch/mips/defconfig-hp-lj linux-2.4.30-mips/arch/mips/defconfig-hp-lj
---- linux-2.4.30/arch/mips/defconfig-hp-lj 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-hp-lj 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-hp-lj linux-2.4.32-rc1.mips/arch/mips/defconfig-hp-lj
+--- linux-2.4.32-rc1/arch/mips/defconfig-hp-lj 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-hp-lj 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -7172,9 +7065,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-hp-lj linux-2.4.30-mips/arch/mips/def
# CONFIG_UNIX98_PTYS is not set
#
-diff -Nur linux-2.4.30/arch/mips/defconfig-hydrogen3 linux-2.4.30-mips/arch/mips/defconfig-hydrogen3
---- linux-2.4.30/arch/mips/defconfig-hydrogen3 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-hydrogen3 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-hydrogen3 linux-2.4.32-rc1.mips/arch/mips/defconfig-hydrogen3
+--- linux-2.4.32-rc1/arch/mips/defconfig-hydrogen3 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-hydrogen3 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -7239,9 +7132,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-hydrogen3 linux-2.4.30-mips/arch/mips
# CONFIG_FB_IT8181 is not set
# CONFIG_FB_VIRTUAL is not set
CONFIG_FBCON_ADVANCED=y
-diff -Nur linux-2.4.30/arch/mips/defconfig-ip22 linux-2.4.30-mips/arch/mips/defconfig-ip22
---- linux-2.4.30/arch/mips/defconfig-ip22 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-ip22 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-ip22 linux-2.4.32-rc1.mips/arch/mips/defconfig-ip22
+--- linux-2.4.32-rc1/arch/mips/defconfig-ip22 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-ip22 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -7284,9 +7177,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-ip22 linux-2.4.30-mips/arch/mips/defc
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-it8172 linux-2.4.30-mips/arch/mips/defconfig-it8172
---- linux-2.4.30/arch/mips/defconfig-it8172 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-it8172 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-it8172 linux-2.4.32-rc1.mips/arch/mips/defconfig-it8172
+--- linux-2.4.32-rc1/arch/mips/defconfig-it8172 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-it8172 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -7346,9 +7239,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-it8172 linux-2.4.30-mips/arch/mips/de
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-ivr linux-2.4.30-mips/arch/mips/defconfig-ivr
---- linux-2.4.30/arch/mips/defconfig-ivr 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-ivr 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-ivr linux-2.4.32-rc1.mips/arch/mips/defconfig-ivr
+--- linux-2.4.32-rc1/arch/mips/defconfig-ivr 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-ivr 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -7379,9 +7272,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-ivr linux-2.4.30-mips/arch/mips/defco
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-jmr3927 linux-2.4.30-mips/arch/mips/defconfig-jmr3927
---- linux-2.4.30/arch/mips/defconfig-jmr3927 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-jmr3927 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-jmr3927 linux-2.4.32-rc1.mips/arch/mips/defconfig-jmr3927
+--- linux-2.4.32-rc1/arch/mips/defconfig-jmr3927 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-jmr3927 2005-03-18 13:13:21.000000000 +0100
@@ -28,8 +28,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -7412,9 +7305,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-jmr3927 linux-2.4.30-mips/arch/mips/d
# CONFIG_UNIX98_PTYS is not set
#
-diff -Nur linux-2.4.30/arch/mips/defconfig-lasat linux-2.4.30-mips/arch/mips/defconfig-lasat
---- linux-2.4.30/arch/mips/defconfig-lasat 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-lasat 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-lasat linux-2.4.32-rc1.mips/arch/mips/defconfig-lasat
+--- linux-2.4.32-rc1/arch/mips/defconfig-lasat 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-lasat 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -7463,20 +7356,31 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-lasat linux-2.4.30-mips/arch/mips/def
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-malta linux-2.4.30-mips/arch/mips/defconfig-malta
---- linux-2.4.30/arch/mips/defconfig-malta 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-malta 2005-03-18 13:13:21.000000000 +0100
-@@ -30,8 +30,8 @@
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-malta linux-2.4.32-rc1.mips/arch/mips/defconfig-malta
+--- linux-2.4.32-rc1/arch/mips/defconfig-malta 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-malta 2005-04-19 14:19:34.000000000 +0200
+@@ -22,16 +22,19 @@
+ #
+ # CONFIG_ACER_PICA_61 is not set
+ # CONFIG_MIPS_BOSPORUS is not set
++# CONFIG_MIPS_FICMMP is not set
+ # CONFIG_MIPS_MIRAGE is not set
+ # CONFIG_MIPS_DB1000 is not set
+ # CONFIG_MIPS_DB1100 is not set
+ # CONFIG_MIPS_DB1500 is not set
+ # CONFIG_MIPS_DB1550 is not set
++# CONFIG_MIPS_DB1200 is not set
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
# CONFIG_MIPS_PB1500 is not set
-# CONFIG_MIPS_HYDROGEN3 is not set
# CONFIG_MIPS_PB1550 is not set
++# CONFIG_MIPS_PB1200 is not set
+# CONFIG_MIPS_HYDROGEN3 is not set
# CONFIG_MIPS_XXS1500 is not set
# CONFIG_MIPS_MTX1 is not set
# CONFIG_COGENT_CSB250 is not set
-@@ -237,11 +237,6 @@
+@@ -237,11 +240,6 @@
#
# CONFIG_IPX is not set
# CONFIG_ATALK is not set
@@ -7488,7 +7392,92 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-malta linux-2.4.30-mips/arch/mips/def
# CONFIG_DECNET is not set
# CONFIG_BRIDGE is not set
# CONFIG_X25 is not set
-@@ -319,9 +314,11 @@
+@@ -273,8 +271,83 @@
+ #
+ # ATA/IDE/MFM/RLL support
+ #
+-# CONFIG_IDE is not set
++CONFIG_IDE=y
++
++#
++# IDE, ATA and ATAPI Block devices
++#
++CONFIG_BLK_DEV_IDE=y
++
++#
++# Please see Documentation/ide.txt for help/info on IDE drives
++#
++# CONFIG_BLK_DEV_HD_IDE is not set
+ # CONFIG_BLK_DEV_HD is not set
++# CONFIG_BLK_DEV_IDE_SATA is not set
++CONFIG_BLK_DEV_IDEDISK=y
++# CONFIG_IDEDISK_MULTI_MODE is not set
++# CONFIG_IDEDISK_STROKE is not set
++# CONFIG_BLK_DEV_IDECS is not set
++# CONFIG_BLK_DEV_DELKIN is not set
++CONFIG_BLK_DEV_IDECD=y
++CONFIG_BLK_DEV_IDETAPE=y
++CONFIG_BLK_DEV_IDEFLOPPY=y
++CONFIG_BLK_DEV_IDESCSI=y
++# CONFIG_IDE_TASK_IOCTL is not set
++
++#
++# IDE chipset support/bugfixes
++#
++# CONFIG_BLK_DEV_CMD640 is not set
++# CONFIG_BLK_DEV_CMD640_ENHANCED is not set
++# CONFIG_BLK_DEV_ISAPNP is not set
++CONFIG_BLK_DEV_IDEPCI=y
++CONFIG_BLK_DEV_GENERIC=y
++CONFIG_IDEPCI_SHARE_IRQ=y
++CONFIG_BLK_DEV_IDEDMA_PCI=y
++# CONFIG_BLK_DEV_OFFBOARD is not set
++CONFIG_BLK_DEV_IDEDMA_FORCED=y
++CONFIG_IDEDMA_PCI_AUTO=y
++# CONFIG_IDEDMA_ONLYDISK is not set
++CONFIG_BLK_DEV_IDEDMA=y
++# CONFIG_IDEDMA_PCI_WIP is not set
++# CONFIG_BLK_DEV_ADMA100 is not set
++# CONFIG_BLK_DEV_AEC62XX is not set
++# CONFIG_BLK_DEV_ALI15X3 is not set
++# CONFIG_WDC_ALI15X3 is not set
++# CONFIG_BLK_DEV_AMD74XX is not set
++# CONFIG_AMD74XX_OVERRIDE is not set
++# CONFIG_BLK_DEV_ATIIXP is not set
++# CONFIG_BLK_DEV_CMD64X is not set
++# CONFIG_BLK_DEV_TRIFLEX is not set
++# CONFIG_BLK_DEV_CY82C693 is not set
++# CONFIG_BLK_DEV_CS5530 is not set
++# CONFIG_BLK_DEV_HPT34X is not set
++# CONFIG_HPT34X_AUTODMA is not set
++# CONFIG_BLK_DEV_HPT366 is not set
++CONFIG_BLK_DEV_PIIX=y
++# CONFIG_BLK_DEV_NS87415 is not set
++# CONFIG_BLK_DEV_OPTI621 is not set
++# CONFIG_BLK_DEV_PDC202XX_OLD is not set
++# CONFIG_PDC202XX_BURST is not set
++# CONFIG_BLK_DEV_PDC202XX_NEW is not set
++# CONFIG_BLK_DEV_RZ1000 is not set
++# CONFIG_BLK_DEV_SC1200 is not set
++# CONFIG_BLK_DEV_SVWKS is not set
++# CONFIG_BLK_DEV_SIIMAGE is not set
++# CONFIG_BLK_DEV_SIS5513 is not set
++# CONFIG_BLK_DEV_SLC90E66 is not set
++# CONFIG_BLK_DEV_TRM290 is not set
++# CONFIG_BLK_DEV_VIA82CXXX is not set
++# CONFIG_IDE_CHIPSETS is not set
++CONFIG_IDEDMA_AUTO=y
++# CONFIG_IDEDMA_IVB is not set
++# CONFIG_DMA_NONPCI is not set
++# CONFIG_BLK_DEV_ATARAID is not set
++# CONFIG_BLK_DEV_ATARAID_PDC is not set
++# CONFIG_BLK_DEV_ATARAID_HPT is not set
++# CONFIG_BLK_DEV_ATARAID_MEDLEY is not set
++# CONFIG_BLK_DEV_ATARAID_SII is not set
+
+ #
+ # SCSI support
+@@ -319,9 +392,11 @@
# CONFIG_SCSI_MEGARAID is not set
# CONFIG_SCSI_MEGARAID2 is not set
# CONFIG_SCSI_SATA is not set
@@ -7500,7 +7489,7 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-malta linux-2.4.30-mips/arch/mips/def
# CONFIG_SCSI_SATA_PROMISE is not set
# CONFIG_SCSI_SATA_SX4 is not set
# CONFIG_SCSI_SATA_SIL is not set
-@@ -524,7 +521,6 @@
+@@ -524,7 +599,6 @@
CONFIG_SERIAL_CONSOLE=y
# CONFIG_SERIAL_EXTENDED is not set
# CONFIG_SERIAL_NONSTANDARD is not set
@@ -7508,9 +7497,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-malta linux-2.4.30-mips/arch/mips/def
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-mirage linux-2.4.30-mips/arch/mips/defconfig-mirage
---- linux-2.4.30/arch/mips/defconfig-mirage 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-mirage 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-mirage linux-2.4.32-rc1.mips/arch/mips/defconfig-mirage
+--- linux-2.4.32-rc1/arch/mips/defconfig-mirage 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-mirage 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -7559,9 +7548,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-mirage linux-2.4.30-mips/arch/mips/de
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-mpc30x linux-2.4.30-mips/arch/mips/defconfig-mpc30x
---- linux-2.4.30/arch/mips/defconfig-mpc30x 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-mpc30x 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-mpc30x linux-2.4.32-rc1.mips/arch/mips/defconfig-mpc30x
+--- linux-2.4.32-rc1/arch/mips/defconfig-mpc30x 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-mpc30x 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -7592,9 +7581,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-mpc30x linux-2.4.30-mips/arch/mips/de
# CONFIG_VR41XX_KIU is not set
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-mtx-1 linux-2.4.30-mips/arch/mips/defconfig-mtx-1
---- linux-2.4.30/arch/mips/defconfig-mtx-1 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-mtx-1 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-mtx-1 linux-2.4.32-rc1.mips/arch/mips/defconfig-mtx-1
+--- linux-2.4.32-rc1/arch/mips/defconfig-mtx-1 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-mtx-1 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -7655,9 +7644,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-mtx-1 linux-2.4.30-mips/arch/mips/def
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-nino linux-2.4.30-mips/arch/mips/defconfig-nino
---- linux-2.4.30/arch/mips/defconfig-nino 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-nino 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-nino linux-2.4.32-rc1.mips/arch/mips/defconfig-nino
+--- linux-2.4.32-rc1/arch/mips/defconfig-nino 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-nino 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -7688,9 +7677,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-nino linux-2.4.30-mips/arch/mips/defc
# CONFIG_UNIX98_PTYS is not set
#
-diff -Nur linux-2.4.30/arch/mips/defconfig-ocelot linux-2.4.30-mips/arch/mips/defconfig-ocelot
---- linux-2.4.30/arch/mips/defconfig-ocelot 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-ocelot 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-ocelot linux-2.4.32-rc1.mips/arch/mips/defconfig-ocelot
+--- linux-2.4.32-rc1/arch/mips/defconfig-ocelot 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-ocelot 2005-03-18 13:13:21.000000000 +0100
@@ -28,8 +28,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -7739,9 +7728,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-ocelot linux-2.4.30-mips/arch/mips/de
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-osprey linux-2.4.30-mips/arch/mips/defconfig-osprey
---- linux-2.4.30/arch/mips/defconfig-osprey 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-osprey 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-osprey linux-2.4.32-rc1.mips/arch/mips/defconfig-osprey
+--- linux-2.4.32-rc1/arch/mips/defconfig-osprey 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-osprey 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -7772,9 +7761,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-osprey linux-2.4.30-mips/arch/mips/de
# CONFIG_VR41XX_KIU is not set
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-pb1000 linux-2.4.30-mips/arch/mips/defconfig-pb1000
---- linux-2.4.30/arch/mips/defconfig-pb1000 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-pb1000 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-pb1000 linux-2.4.32-rc1.mips/arch/mips/defconfig-pb1000
+--- linux-2.4.32-rc1/arch/mips/defconfig-pb1000 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-pb1000 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
CONFIG_MIPS_PB1000=y
# CONFIG_MIPS_PB1100 is not set
@@ -7832,9 +7821,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-pb1000 linux-2.4.30-mips/arch/mips/de
# CONFIG_TS_AU1X00_ADS7846 is not set
#
-diff -Nur linux-2.4.30/arch/mips/defconfig-pb1100 linux-2.4.30-mips/arch/mips/defconfig-pb1100
---- linux-2.4.30/arch/mips/defconfig-pb1100 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-pb1100 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-pb1100 linux-2.4.32-rc1.mips/arch/mips/defconfig-pb1100
+--- linux-2.4.32-rc1/arch/mips/defconfig-pb1100 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-pb1100 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
CONFIG_MIPS_PB1100=y
@@ -7899,9 +7888,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-pb1100 linux-2.4.30-mips/arch/mips/de
# CONFIG_FB_IT8181 is not set
# CONFIG_FB_VIRTUAL is not set
CONFIG_FBCON_ADVANCED=y
-diff -Nur linux-2.4.30/arch/mips/defconfig-pb1200 linux-2.4.30-mips/arch/mips/defconfig-pb1200
---- linux-2.4.30/arch/mips/defconfig-pb1200 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-pb1200 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-pb1200 linux-2.4.32-rc1.mips/arch/mips/defconfig-pb1200
+--- linux-2.4.32-rc1/arch/mips/defconfig-pb1200 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-pb1200 2005-03-18 13:13:21.000000000 +0100
@@ -0,0 +1,1060 @@
+#
+# Automatically generated make config: don't edit
@@ -8963,9 +8952,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-pb1200 linux-2.4.30-mips/arch/mips/de
+CONFIG_ZLIB_INFLATE=m
+CONFIG_ZLIB_DEFLATE=m
+# CONFIG_FW_LOADER is not set
-diff -Nur linux-2.4.30/arch/mips/defconfig-pb1500 linux-2.4.30-mips/arch/mips/defconfig-pb1500
---- linux-2.4.30/arch/mips/defconfig-pb1500 2005-01-19 15:09:28.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-pb1500 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-pb1500 linux-2.4.32-rc1.mips/arch/mips/defconfig-pb1500
+--- linux-2.4.32-rc1/arch/mips/defconfig-pb1500 2005-01-19 15:09:28.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-pb1500 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -9014,9 +9003,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-pb1500 linux-2.4.30-mips/arch/mips/de
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-pb1550 linux-2.4.30-mips/arch/mips/defconfig-pb1550
---- linux-2.4.30/arch/mips/defconfig-pb1550 2005-01-19 15:09:29.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-pb1550 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-pb1550 linux-2.4.32-rc1.mips/arch/mips/defconfig-pb1550
+--- linux-2.4.32-rc1/arch/mips/defconfig-pb1550 2005-01-19 15:09:29.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-pb1550 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -9067,9 +9056,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-pb1550 linux-2.4.30-mips/arch/mips/de
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-rbtx4927 linux-2.4.30-mips/arch/mips/defconfig-rbtx4927
---- linux-2.4.30/arch/mips/defconfig-rbtx4927 2005-01-19 15:09:29.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-rbtx4927 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-rbtx4927 linux-2.4.32-rc1.mips/arch/mips/defconfig-rbtx4927
+--- linux-2.4.32-rc1/arch/mips/defconfig-rbtx4927 2005-01-19 15:09:29.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-rbtx4927 2005-03-18 13:13:21.000000000 +0100
@@ -28,8 +28,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -9100,9 +9089,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-rbtx4927 linux-2.4.30-mips/arch/mips/
# CONFIG_UNIX98_PTYS is not set
#
-diff -Nur linux-2.4.30/arch/mips/defconfig-rm200 linux-2.4.30-mips/arch/mips/defconfig-rm200
---- linux-2.4.30/arch/mips/defconfig-rm200 2005-01-19 15:09:29.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-rm200 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-rm200 linux-2.4.32-rc1.mips/arch/mips/defconfig-rm200
+--- linux-2.4.32-rc1/arch/mips/defconfig-rm200 2005-01-19 15:09:29.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-rm200 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -9133,9 +9122,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-rm200 linux-2.4.30-mips/arch/mips/def
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-sb1250-swarm linux-2.4.30-mips/arch/mips/defconfig-sb1250-swarm
---- linux-2.4.30/arch/mips/defconfig-sb1250-swarm 2005-01-19 15:09:29.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-sb1250-swarm 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-sb1250-swarm linux-2.4.32-rc1.mips/arch/mips/defconfig-sb1250-swarm
+--- linux-2.4.32-rc1/arch/mips/defconfig-sb1250-swarm 2005-01-19 15:09:29.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-sb1250-swarm 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -9174,9 +9163,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-sb1250-swarm linux-2.4.30-mips/arch/m
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-sead linux-2.4.30-mips/arch/mips/defconfig-sead
---- linux-2.4.30/arch/mips/defconfig-sead 2005-01-19 15:09:29.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-sead 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-sead linux-2.4.32-rc1.mips/arch/mips/defconfig-sead
+--- linux-2.4.32-rc1/arch/mips/defconfig-sead 2005-01-19 15:09:29.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-sead 2005-03-18 13:13:21.000000000 +0100
@@ -28,8 +28,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -9195,9 +9184,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-sead linux-2.4.30-mips/arch/mips/defc
# CONFIG_UNIX98_PTYS is not set
#
-diff -Nur linux-2.4.30/arch/mips/defconfig-stretch linux-2.4.30-mips/arch/mips/defconfig-stretch
---- linux-2.4.30/arch/mips/defconfig-stretch 2005-01-19 15:09:29.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-stretch 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-stretch linux-2.4.32-rc1.mips/arch/mips/defconfig-stretch
+--- linux-2.4.32-rc1/arch/mips/defconfig-stretch 2005-01-19 15:09:29.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-stretch 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -9240,9 +9229,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-stretch linux-2.4.30-mips/arch/mips/d
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-tb0226 linux-2.4.30-mips/arch/mips/defconfig-tb0226
---- linux-2.4.30/arch/mips/defconfig-tb0226 2005-01-19 15:09:29.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-tb0226 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-tb0226 linux-2.4.32-rc1.mips/arch/mips/defconfig-tb0226
+--- linux-2.4.32-rc1/arch/mips/defconfig-tb0226 2005-01-19 15:09:29.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-tb0226 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -9285,9 +9274,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-tb0226 linux-2.4.30-mips/arch/mips/de
# CONFIG_VR41XX_KIU is not set
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-tb0229 linux-2.4.30-mips/arch/mips/defconfig-tb0229
---- linux-2.4.30/arch/mips/defconfig-tb0229 2005-01-19 15:09:29.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-tb0229 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-tb0229 linux-2.4.32-rc1.mips/arch/mips/defconfig-tb0229
+--- linux-2.4.32-rc1/arch/mips/defconfig-tb0229 2005-01-19 15:09:29.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-tb0229 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -9318,9 +9307,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-tb0229 linux-2.4.30-mips/arch/mips/de
# CONFIG_VR41XX_KIU is not set
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-ti1500 linux-2.4.30-mips/arch/mips/defconfig-ti1500
---- linux-2.4.30/arch/mips/defconfig-ti1500 2005-01-19 15:09:29.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-ti1500 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-ti1500 linux-2.4.32-rc1.mips/arch/mips/defconfig-ti1500
+--- linux-2.4.32-rc1/arch/mips/defconfig-ti1500 2005-01-19 15:09:29.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-ti1500 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -9369,9 +9358,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-ti1500 linux-2.4.30-mips/arch/mips/de
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-workpad linux-2.4.30-mips/arch/mips/defconfig-workpad
---- linux-2.4.30/arch/mips/defconfig-workpad 2005-01-19 15:09:29.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-workpad 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-workpad linux-2.4.32-rc1.mips/arch/mips/defconfig-workpad
+--- linux-2.4.32-rc1/arch/mips/defconfig-workpad 2005-01-19 15:09:29.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-workpad 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -9402,9 +9391,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-workpad linux-2.4.30-mips/arch/mips/d
# CONFIG_VR41XX_KIU is not set
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-xxs1500 linux-2.4.30-mips/arch/mips/defconfig-xxs1500
---- linux-2.4.30/arch/mips/defconfig-xxs1500 2005-01-19 15:09:29.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-xxs1500 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-xxs1500 linux-2.4.32-rc1.mips/arch/mips/defconfig-xxs1500
+--- linux-2.4.32-rc1/arch/mips/defconfig-xxs1500 2005-01-19 15:09:29.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-xxs1500 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -9453,9 +9442,9 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-xxs1500 linux-2.4.30-mips/arch/mips/d
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/defconfig-yosemite linux-2.4.30-mips/arch/mips/defconfig-yosemite
---- linux-2.4.30/arch/mips/defconfig-yosemite 2005-01-19 15:09:29.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/defconfig-yosemite 2005-03-18 13:13:21.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/defconfig-yosemite linux-2.4.32-rc1.mips/arch/mips/defconfig-yosemite
+--- linux-2.4.32-rc1/arch/mips/defconfig-yosemite 2005-01-19 15:09:29.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/defconfig-yosemite 2005-03-18 13:13:21.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -9498,10 +9487,10 @@ diff -Nur linux-2.4.30/arch/mips/defconfig-yosemite linux-2.4.30-mips/arch/mips/
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips/kernel/cpu-probe.c linux-2.4.30-mips/arch/mips/kernel/cpu-probe.c
---- linux-2.4.30/arch/mips/kernel/cpu-probe.c 2005-01-19 15:09:29.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/kernel/cpu-probe.c 2005-04-08 10:33:17.000000000 +0200
-@@ -34,16 +34,12 @@
+diff -Nur linux-2.4.32-rc1/arch/mips/kernel/cpu-probe.c linux-2.4.32-rc1.mips/arch/mips/kernel/cpu-probe.c
+--- linux-2.4.32-rc1/arch/mips/kernel/cpu-probe.c 2005-01-19 15:09:29.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/kernel/cpu-probe.c 2005-05-25 15:33:22.000000000 +0200
+@@ -34,21 +34,16 @@
".set\tmips0");
}
@@ -9515,26 +9504,36 @@ diff -Nur linux-2.4.30/arch/mips/kernel/cpu-probe.c linux-2.4.30-mips/arch/mips/
+/* The Au1xxx wait is available only if using 32khz counter or
+ * external timer source, but specifically not CP0 Counter. */
+int allow_au1k_wait;
++
+static void au1k_wait(void)
{
-#ifdef CONFIG_PM
- unsigned long addr;
-+ unsigned long addr = 0;
/* using the wait instruction makes CP0 counter unusable */
- __asm__("la %0,au1k_wait\n\t"
- ".set mips3\n\t"
-@@ -58,10 +54,6 @@
+- __asm__("la %0,au1k_wait\n\t"
+- ".set mips3\n\t"
+- "cache 0x14,0(%0)\n\t"
+- "cache 0x14,32(%0)\n\t"
++ __asm__(".set mips3\n\t"
++ "cache 0x14, 0(%0)\n\t"
++ "cache 0x14, 32(%0)\n\t"
+ "sync\n\t"
+ "nop\n\t"
+ "wait\n\t"
+@@ -57,11 +52,7 @@
+ "nop\n\t"
"nop\n\t"
".set mips0\n\t"
- : : "r" (addr));
+- : : "r" (addr));
-#else
- __asm__("nop\n\t"
- "nop");
-#endif
++ : : "r" (au1k_wait));
}
static inline void check_wait(void)
-@@ -100,20 +92,17 @@
+@@ -100,20 +91,17 @@
cpu_wait = r4k_wait;
printk(" available.\n");
break;
@@ -9559,9 +9558,9 @@ diff -Nur linux-2.4.30/arch/mips/kernel/cpu-probe.c linux-2.4.30-mips/arch/mips/
default:
printk(" unavailable.\n");
break;
-diff -Nur linux-2.4.30/arch/mips/kernel/head.S linux-2.4.30-mips/arch/mips/kernel/head.S
---- linux-2.4.30/arch/mips/kernel/head.S 2005-01-19 15:09:29.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/kernel/head.S 2004-11-22 14:38:23.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/kernel/head.S linux-2.4.32-rc1.mips/arch/mips/kernel/head.S
+--- linux-2.4.32-rc1/arch/mips/kernel/head.S 2005-01-19 15:09:29.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/kernel/head.S 2004-11-22 14:38:23.000000000 +0100
@@ -43,9 +43,9 @@
/* Cache Error */
@@ -9730,9 +9729,39 @@ diff -Nur linux-2.4.30/arch/mips/kernel/head.S linux-2.4.30-mips/arch/mips/kerne
END(smp_bootstrap)
#endif
-diff -Nur linux-2.4.30/arch/mips/kernel/scall_o32.S linux-2.4.30-mips/arch/mips/kernel/scall_o32.S
---- linux-2.4.30/arch/mips/kernel/scall_o32.S 2005-01-19 15:09:29.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/kernel/scall_o32.S 2005-02-07 22:21:53.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/kernel/process.c linux-2.4.32-rc1.mips/arch/mips/kernel/process.c
+--- linux-2.4.32-rc1/arch/mips/kernel/process.c 2003-08-25 13:44:40.000000000 +0200
++++ linux-2.4.32-rc1.mips/arch/mips/kernel/process.c 2005-04-14 12:41:44.000000000 +0200
+@@ -128,6 +128,26 @@
+ return 1;
+ }
+
++void dump_regs(elf_greg_t *gp, struct pt_regs *regs)
++{
++ int i;
++
++ for (i = 0; i < EF_REG0; i++)
++ gp[i] = 0;
++ gp[EF_REG0] = 0;
++ for (i = 1; i <= 31; i++)
++ gp[EF_REG0 + i] = regs->regs[i];
++ gp[EF_REG26] = 0;
++ gp[EF_REG27] = 0;
++ gp[EF_LO] = regs->lo;
++ gp[EF_HI] = regs->hi;
++ gp[EF_CP0_EPC] = regs->cp0_epc;
++ gp[EF_CP0_BADVADDR] = regs->cp0_badvaddr;
++ gp[EF_CP0_STATUS] = regs->cp0_status;
++ gp[EF_CP0_CAUSE] = regs->cp0_cause;
++ gp[EF_UNUSED0] = 0;
++}
++
+ /*
+ * Create a kernel thread
+ */
+diff -Nur linux-2.4.32-rc1/arch/mips/kernel/scall_o32.S linux-2.4.32-rc1.mips/arch/mips/kernel/scall_o32.S
+--- linux-2.4.32-rc1/arch/mips/kernel/scall_o32.S 2005-01-19 15:09:29.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/kernel/scall_o32.S 2005-02-07 22:21:53.000000000 +0100
@@ -121,15 +121,14 @@
trace_a_syscall:
@@ -9751,9 +9780,9 @@ diff -Nur linux-2.4.30/arch/mips/kernel/scall_o32.S linux-2.4.30-mips/arch/mips/
li t0, -EMAXERRNO - 1 # error?
sltu t0, t0, v0
-diff -Nur linux-2.4.30/arch/mips/kernel/setup.c linux-2.4.30-mips/arch/mips/kernel/setup.c
---- linux-2.4.30/arch/mips/kernel/setup.c 2005-01-19 15:09:29.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/kernel/setup.c 2005-01-13 22:15:57.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/kernel/setup.c linux-2.4.32-rc1.mips/arch/mips/kernel/setup.c
+--- linux-2.4.32-rc1/arch/mips/kernel/setup.c 2005-01-19 15:09:29.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/kernel/setup.c 2005-01-13 22:15:57.000000000 +0100
@@ -5,7 +5,7 @@
*
* Copyright (C) 1995 Linus Torvalds
@@ -9783,9 +9812,9 @@ diff -Nur linux-2.4.30/arch/mips/kernel/setup.c linux-2.4.30-mips/arch/mips/kern
start_kernel();
}
-diff -Nur linux-2.4.30/arch/mips/kernel/traps.c linux-2.4.30-mips/arch/mips/kernel/traps.c
---- linux-2.4.30/arch/mips/kernel/traps.c 2005-01-19 15:09:29.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/kernel/traps.c 2005-04-12 22:25:34.000000000 +0200
+diff -Nur linux-2.4.32-rc1/arch/mips/kernel/traps.c linux-2.4.32-rc1.mips/arch/mips/kernel/traps.c
+--- linux-2.4.32-rc1/arch/mips/kernel/traps.c 2005-01-19 15:09:29.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/kernel/traps.c 2005-04-12 22:25:34.000000000 +0200
@@ -452,9 +452,10 @@
}
ll_task = current;
@@ -9872,9 +9901,9 @@ diff -Nur linux-2.4.30/arch/mips/kernel/traps.c linux-2.4.30-mips/arch/mips/kern
- TLBMISS_HANDLER_SETUP();
+ per_cpu_trap_init();
}
-diff -Nur linux-2.4.30/arch/mips/lib/rtc-no.c linux-2.4.30-mips/arch/mips/lib/rtc-no.c
---- linux-2.4.30/arch/mips/lib/rtc-no.c 2004-02-18 14:36:30.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/lib/rtc-no.c 2005-01-13 22:15:57.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/lib/rtc-no.c linux-2.4.32-rc1.mips/arch/mips/lib/rtc-no.c
+--- linux-2.4.32-rc1/arch/mips/lib/rtc-no.c 2004-02-18 14:36:30.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/lib/rtc-no.c 2005-01-13 22:15:57.000000000 +0100
@@ -6,10 +6,9 @@
* Stub RTC routines to keep Linux from crashing on machine which don't
* have a RTC chip.
@@ -9893,9 +9922,9 @@ diff -Nur linux-2.4.30/arch/mips/lib/rtc-no.c linux-2.4.30-mips/arch/mips/lib/rt
};
-
-EXPORT_SYMBOL(rtc_ops);
-diff -Nur linux-2.4.30/arch/mips/lib/rtc-std.c linux-2.4.30-mips/arch/mips/lib/rtc-std.c
---- linux-2.4.30/arch/mips/lib/rtc-std.c 2004-02-18 14:36:30.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/lib/rtc-std.c 2005-01-13 22:15:57.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/lib/rtc-std.c linux-2.4.32-rc1.mips/arch/mips/lib/rtc-std.c
+--- linux-2.4.32-rc1/arch/mips/lib/rtc-std.c 2004-02-18 14:36:30.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/lib/rtc-std.c 2005-01-13 22:15:57.000000000 +0100
@@ -5,9 +5,8 @@
*
* RTC routines for PC style attached Dallas chip.
@@ -9913,42 +9942,79 @@ diff -Nur linux-2.4.30/arch/mips/lib/rtc-std.c linux-2.4.30-mips/arch/mips/lib/r
};
-
-EXPORT_SYMBOL(rtc_ops);
-diff -Nur linux-2.4.30/arch/mips/mm/c-r4k.c linux-2.4.30-mips/arch/mips/mm/c-r4k.c
---- linux-2.4.30/arch/mips/mm/c-r4k.c 2005-01-19 15:09:29.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/mm/c-r4k.c 2005-02-06 22:55:42.000000000 +0100
-@@ -867,9 +867,16 @@
- * normally they'd suffer from aliases but magic in the hardware deals
- * with that for us so we don't need to take care ourselves.
- */
-- if (c->cputype != CPU_R10000 && c->cputype != CPU_R12000)
-- if (c->dcache.waysize > PAGE_SIZE)
-- c->dcache.flags |= MIPS_CACHE_ALIASES;
-+ switch (c->cputype) {
-+ case CPU_R10000:
-+ case CPU_R12000:
-+ break;
-+ case CPU_24K:
-+ if (!(read_c0_config7() & (1 << 16)))
-+ default:
-+ if (c->dcache.waysize > PAGE_SIZE)
-+ c->dcache.flags |= MIPS_CACHE_ALIASES;
-+ }
+diff -Nur linux-2.4.32-rc1/arch/mips/Makefile linux-2.4.32-rc1.mips/arch/mips/Makefile
+--- linux-2.4.32-rc1/arch/mips/Makefile 2005-01-19 15:09:26.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/Makefile 2005-01-30 09:01:26.000000000 +0100
+@@ -211,7 +211,7 @@
+ endif
- switch (c->cputype) {
- case CPU_20KC:
-@@ -1069,9 +1076,6 @@
- probe_pcache();
- setup_scache();
+ #
+-# Au1000 (Alchemy Semi PB1000) eval board
++# Au1x AMD Alchemy eval boards
+ #
+ ifdef CONFIG_MIPS_PB1000
+ LIBS += arch/mips/au1000/pb1000/pb1000.o \
+@@ -220,9 +220,6 @@
+ LOADADDR := 0x80100000
+ endif
-- if (c->dcache.sets * c->dcache.ways > PAGE_SIZE)
-- c->dcache.flags |= MIPS_CACHE_ALIASES;
--
- r4k_blast_dcache_page_setup();
- r4k_blast_dcache_page_indexed_setup();
- r4k_blast_dcache_setup();
-diff -Nur linux-2.4.30/arch/mips/mm/cerr-sb1.c linux-2.4.30-mips/arch/mips/mm/cerr-sb1.c
---- linux-2.4.30/arch/mips/mm/cerr-sb1.c 2004-02-18 14:36:30.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/mm/cerr-sb1.c 2004-12-13 18:37:23.000000000 +0100
+-#
+-# Au1100 (Alchemy Semi PB1100) eval board
+-#
+ ifdef CONFIG_MIPS_PB1100
+ LIBS += arch/mips/au1000/pb1100/pb1100.o \
+ arch/mips/au1000/common/au1000.o
+@@ -230,9 +227,6 @@
+ LOADADDR += 0x80100000
+ endif
+
+-#
+-# Au1500 (Alchemy Semi PB1500) eval board
+-#
+ ifdef CONFIG_MIPS_PB1500
+ LIBS += arch/mips/au1000/pb1500/pb1500.o \
+ arch/mips/au1000/common/au1000.o
+@@ -240,9 +234,6 @@
+ LOADADDR := 0x80100000
+ endif
+
+-#
+-# Au1x00 (AMD/Alchemy) eval boards
+-#
+ ifdef CONFIG_MIPS_DB1000
+ LIBS += arch/mips/au1000/db1x00/db1x00.o \
+ arch/mips/au1000/common/au1000.o
+@@ -313,6 +304,27 @@
+ LOADADDR += 0x80100000
+ endif
+
++ifdef CONFIG_MIPS_PB1200
++LIBS += arch/mips/au1000/pb1200/pb1200.o \
++ arch/mips/au1000/common/au1000.o
++SUBDIRS += arch/mips/au1000/pb1200 arch/mips/au1000/common
++LOADADDR += 0x80100000
++endif
++
++ifdef CONFIG_MIPS_DB1200
++LIBS += arch/mips/au1000/pb1200/pb1200.o \
++ arch/mips/au1000/common/au1000.o
++SUBDIRS += arch/mips/au1000/pb1200 arch/mips/au1000/common
++LOADADDR += 0x80100000
++endif
++
++ifdef CONFIG_MIPS_FICMMP
++LIBS += arch/mips/au1000/ficmmp/ficmmp.o \
++ arch/mips/au1000/common/au1000.o
++SUBDIRS += arch/mips/au1000/ficmmp arch/mips/au1000/common
++LOADADDR += 0x80100000
++endif
++
+
+ #
+ # Cogent CSB250
+diff -Nur linux-2.4.32-rc1/arch/mips/mm/cerr-sb1.c linux-2.4.32-rc1.mips/arch/mips/mm/cerr-sb1.c
+--- linux-2.4.32-rc1/arch/mips/mm/cerr-sb1.c 2004-02-18 14:36:30.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/mm/cerr-sb1.c 2004-12-13 18:37:23.000000000 +0100
@@ -252,14 +252,14 @@
/* Masks to select bits for Hamming parity, mask_72_64[i] for bit[i] */
@@ -9993,9 +10059,125 @@ diff -Nur linux-2.4.30/arch/mips/mm/cerr-sb1.c linux-2.4.30-mips/arch/mips/mm/ce
if (way == 0) {
lru = (taghi >> 14) & 0xff;
prom_printf("[Bank %d Set 0x%02x] LRU > %d %d %d %d > MRU\n",
-diff -Nur linux-2.4.30/arch/mips/mm/tlb-r4k.c linux-2.4.30-mips/arch/mips/mm/tlb-r4k.c
---- linux-2.4.30/arch/mips/mm/tlb-r4k.c 2005-01-19 15:09:29.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/mm/tlb-r4k.c 2004-11-25 23:18:38.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips/mm/c-r4k.c linux-2.4.32-rc1.mips/arch/mips/mm/c-r4k.c
+--- linux-2.4.32-rc1/arch/mips/mm/c-r4k.c 2005-01-19 15:09:29.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/mm/c-r4k.c 2005-02-06 22:55:42.000000000 +0100
+@@ -867,9 +867,16 @@
+ * normally they'd suffer from aliases but magic in the hardware deals
+ * with that for us so we don't need to take care ourselves.
+ */
+- if (c->cputype != CPU_R10000 && c->cputype != CPU_R12000)
+- if (c->dcache.waysize > PAGE_SIZE)
+- c->dcache.flags |= MIPS_CACHE_ALIASES;
++ switch (c->cputype) {
++ case CPU_R10000:
++ case CPU_R12000:
++ break;
++ case CPU_24K:
++ if (!(read_c0_config7() & (1 << 16)))
++ default:
++ if (c->dcache.waysize > PAGE_SIZE)
++ c->dcache.flags |= MIPS_CACHE_ALIASES;
++ }
+
+ switch (c->cputype) {
+ case CPU_20KC:
+@@ -1069,9 +1076,6 @@
+ probe_pcache();
+ setup_scache();
+
+- if (c->dcache.sets * c->dcache.ways > PAGE_SIZE)
+- c->dcache.flags |= MIPS_CACHE_ALIASES;
+-
+ r4k_blast_dcache_page_setup();
+ r4k_blast_dcache_page_indexed_setup();
+ r4k_blast_dcache_setup();
+diff -Nur linux-2.4.32-rc1/arch/mips/mm/tlbex-mips32.S linux-2.4.32-rc1.mips/arch/mips/mm/tlbex-mips32.S
+--- linux-2.4.32-rc1/arch/mips/mm/tlbex-mips32.S 2004-02-18 14:36:30.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/mm/tlbex-mips32.S 2004-11-29 00:33:15.000000000 +0100
+@@ -196,7 +196,7 @@
+ .set noat; \
+ SAVE_ALL; \
+ mfc0 a2, CP0_BADVADDR; \
+- STI; \
++ KMODE; \
+ .set at; \
+ move a0, sp; \
+ jal do_page_fault; \
+diff -Nur linux-2.4.32-rc1/arch/mips/mm/tlbex-r4k.S linux-2.4.32-rc1.mips/arch/mips/mm/tlbex-r4k.S
+--- linux-2.4.32-rc1/arch/mips/mm/tlbex-r4k.S 2004-02-18 14:36:30.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/mm/tlbex-r4k.S 2005-06-06 16:46:22.000000000 +0200
+@@ -184,13 +184,10 @@
+ P_MTC0 k0, CP0_ENTRYLO0 # load it
+ PTE_SRL k1, k1, 6 # convert to entrylo1
+ P_MTC0 k1, CP0_ENTRYLO1 # load it
+- b 1f
+- rm9000_tlb_hazard
++ mtc0_tlbw_hazard
+ tlbwr # write random tlb entry
+-1:
+- nop
+- rm9000_tlb_hazard
+- eret # return from trap
++ tlbw_eret_hazard
++ eret
+ END(except_vec0_r4000)
+
+ /* TLB refill, EXL == 0, R4600 version */
+@@ -468,13 +465,9 @@
+ PTE_PRESENT(k0, k1, nopage_tlbl)
+ PTE_MAKEVALID(k0, k1)
+ PTE_RELOAD(k1, k0)
+- rm9000_tlb_hazard
+- nop
+- b 1f
+- tlbwi
+-1:
+- nop
+- rm9000_tlb_hazard
++ mtc0_tlbw_hazard
++ tlbwi
++ tlbw_eret_hazard
+ .set mips3
+ eret
+ .set mips0
+@@ -496,13 +489,9 @@
+ PTE_WRITABLE(k0, k1, nopage_tlbs)
+ PTE_MAKEWRITE(k0, k1)
+ PTE_RELOAD(k1, k0)
+- rm9000_tlb_hazard
+- nop
+- b 1f
+- tlbwi
+-1:
+- nop
+- rm9000_tlb_hazard
++ mtc0_tlbw_hazard
++ tlbwi
++ tlbw_eret_hazard
+ .set mips3
+ eret
+ .set mips0
+@@ -529,13 +518,9 @@
+
+ /* Now reload the entry into the tlb. */
+ PTE_RELOAD(k1, k0)
+- rm9000_tlb_hazard
+- nop
+- b 1f
+- tlbwi
+-1:
+- rm9000_tlb_hazard
+- nop
++ mtc0_tlbw_hazard
++ tlbwi
++ tlbw_eret_hazard
+ .set mips3
+ eret
+ .set mips0
+diff -Nur linux-2.4.32-rc1/arch/mips/mm/tlb-r4k.c linux-2.4.32-rc1.mips/arch/mips/mm/tlb-r4k.c
+--- linux-2.4.32-rc1/arch/mips/mm/tlb-r4k.c 2005-01-19 15:09:29.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips/mm/tlb-r4k.c 2004-11-25 23:18:38.000000000 +0100
@@ -3,17 +3,12 @@
* License. See the file "COPYING" in the main directory of this archive
* for more details.
@@ -10322,92 +10504,9 @@ diff -Nur linux-2.4.30/arch/mips/mm/tlb-r4k.c linux-2.4.30-mips/arch/mips/mm/tlb
/*
* You should never change this register:
-diff -Nur linux-2.4.30/arch/mips/mm/tlbex-mips32.S linux-2.4.30-mips/arch/mips/mm/tlbex-mips32.S
---- linux-2.4.30/arch/mips/mm/tlbex-mips32.S 2004-02-18 14:36:30.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/mm/tlbex-mips32.S 2004-11-29 00:33:15.000000000 +0100
-@@ -196,7 +196,7 @@
- .set noat; \
- SAVE_ALL; \
- mfc0 a2, CP0_BADVADDR; \
-- STI; \
-+ KMODE; \
- .set at; \
- move a0, sp; \
- jal do_page_fault; \
-diff -Nur linux-2.4.30/arch/mips/mm/tlbex-r4k.S linux-2.4.30-mips/arch/mips/mm/tlbex-r4k.S
---- linux-2.4.30/arch/mips/mm/tlbex-r4k.S 2004-02-18 14:36:30.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips/mm/tlbex-r4k.S 2004-11-25 23:18:38.000000000 +0100
-@@ -184,13 +184,10 @@
- P_MTC0 k0, CP0_ENTRYLO0 # load it
- PTE_SRL k1, k1, 6 # convert to entrylo1
- P_MTC0 k1, CP0_ENTRYLO1 # load it
-- b 1f
-- rm9000_tlb_hazard
-+ mtc0_tlbw_hazard
- tlbwr # write random tlb entry
--1:
-- nop
-- rm9000_tlb_hazard
-- eret # return from trap
-+ tlbw_eret_hazard
-+ eret
- END(except_vec0_r4000)
-
- /* TLB refill, EXL == 0, R4600 version */
-@@ -468,13 +465,10 @@
- PTE_PRESENT(k0, k1, nopage_tlbl)
- PTE_MAKEVALID(k0, k1)
- PTE_RELOAD(k1, k0)
-- rm9000_tlb_hazard
-- nop
-- b 1f
-- tlbwi
--1:
-+ mtc0_tlbw_hazard
-+ tlbwi
- nop
-- rm9000_tlb_hazard
-+ tlbw_eret_hazard
- .set mips3
- eret
- .set mips0
-@@ -496,13 +490,10 @@
- PTE_WRITABLE(k0, k1, nopage_tlbs)
- PTE_MAKEWRITE(k0, k1)
- PTE_RELOAD(k1, k0)
-- rm9000_tlb_hazard
-- nop
-- b 1f
-- tlbwi
--1:
-+ mtc0_tlbw_hazard
-+ tlbwi
- nop
-- rm9000_tlb_hazard
-+ tlbw_eret_hazard
- .set mips3
- eret
- .set mips0
-@@ -529,13 +520,10 @@
-
- /* Now reload the entry into the tlb. */
- PTE_RELOAD(k1, k0)
-- rm9000_tlb_hazard
-- nop
-- b 1f
-- tlbwi
--1:
-- rm9000_tlb_hazard
-+ mtc0_tlbw_hazard
-+ tlbwi
- nop
-+ tlbw_eret_hazard
- .set mips3
- eret
- .set mips0
-diff -Nur linux-2.4.30/arch/mips64/defconfig linux-2.4.30-mips/arch/mips64/defconfig
---- linux-2.4.30/arch/mips64/defconfig 2005-01-19 15:09:30.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/defconfig 2005-03-18 13:13:23.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips64/defconfig linux-2.4.32-rc1.mips/arch/mips64/defconfig
+--- linux-2.4.32-rc1/arch/mips64/defconfig 2005-01-19 15:09:30.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/defconfig 2005-03-18 13:13:23.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -10438,9 +10537,9 @@ diff -Nur linux-2.4.30/arch/mips64/defconfig linux-2.4.30-mips/arch/mips64/defco
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips64/defconfig-atlas linux-2.4.30-mips/arch/mips64/defconfig-atlas
---- linux-2.4.30/arch/mips64/defconfig-atlas 2005-01-19 15:09:30.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/defconfig-atlas 2005-03-18 13:13:23.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips64/defconfig-atlas linux-2.4.32-rc1.mips/arch/mips64/defconfig-atlas
+--- linux-2.4.32-rc1/arch/mips64/defconfig-atlas 2005-01-19 15:09:30.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/defconfig-atlas 2005-03-18 13:13:23.000000000 +0100
@@ -28,8 +28,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -10483,9 +10582,9 @@ diff -Nur linux-2.4.30/arch/mips64/defconfig-atlas linux-2.4.30-mips/arch/mips64
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips64/defconfig-decstation linux-2.4.30-mips/arch/mips64/defconfig-decstation
---- linux-2.4.30/arch/mips64/defconfig-decstation 2005-01-19 15:09:30.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/defconfig-decstation 2005-03-18 13:13:23.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips64/defconfig-decstation linux-2.4.32-rc1.mips/arch/mips64/defconfig-decstation
+--- linux-2.4.32-rc1/arch/mips64/defconfig-decstation 2005-01-19 15:09:30.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/defconfig-decstation 2005-03-18 13:13:23.000000000 +0100
@@ -28,8 +28,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -10528,9 +10627,9 @@ diff -Nur linux-2.4.30/arch/mips64/defconfig-decstation linux-2.4.30-mips/arch/m
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips64/defconfig-ip22 linux-2.4.30-mips/arch/mips64/defconfig-ip22
---- linux-2.4.30/arch/mips64/defconfig-ip22 2005-01-19 15:09:31.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/defconfig-ip22 2005-03-18 13:13:23.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips64/defconfig-ip22 linux-2.4.32-rc1.mips/arch/mips64/defconfig-ip22
+--- linux-2.4.32-rc1/arch/mips64/defconfig-ip22 2005-01-19 15:09:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/defconfig-ip22 2005-03-18 13:13:23.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -10573,9 +10672,9 @@ diff -Nur linux-2.4.30/arch/mips64/defconfig-ip22 linux-2.4.30-mips/arch/mips64/
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips64/defconfig-ip27 linux-2.4.30-mips/arch/mips64/defconfig-ip27
---- linux-2.4.30/arch/mips64/defconfig-ip27 2005-01-19 15:09:31.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/defconfig-ip27 2005-03-18 13:13:23.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips64/defconfig-ip27 linux-2.4.32-rc1.mips/arch/mips64/defconfig-ip27
+--- linux-2.4.32-rc1/arch/mips64/defconfig-ip27 2005-01-19 15:09:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/defconfig-ip27 2005-03-18 13:13:23.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -10606,9 +10705,9 @@ diff -Nur linux-2.4.30/arch/mips64/defconfig-ip27 linux-2.4.30-mips/arch/mips64/
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips64/defconfig-jaguar linux-2.4.30-mips/arch/mips64/defconfig-jaguar
---- linux-2.4.30/arch/mips64/defconfig-jaguar 2005-01-19 15:09:31.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/defconfig-jaguar 2005-03-18 13:13:23.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips64/defconfig-jaguar linux-2.4.32-rc1.mips/arch/mips64/defconfig-jaguar
+--- linux-2.4.32-rc1/arch/mips64/defconfig-jaguar 2005-01-19 15:09:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/defconfig-jaguar 2005-03-18 13:13:23.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -10639,20 +10738,43 @@ diff -Nur linux-2.4.30/arch/mips64/defconfig-jaguar linux-2.4.30-mips/arch/mips6
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips64/defconfig-malta linux-2.4.30-mips/arch/mips64/defconfig-malta
---- linux-2.4.30/arch/mips64/defconfig-malta 2005-01-19 15:09:31.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/defconfig-malta 2005-03-18 13:13:23.000000000 +0100
-@@ -30,8 +30,8 @@
+diff -Nur linux-2.4.32-rc1/arch/mips64/defconfig-malta linux-2.4.32-rc1.mips/arch/mips64/defconfig-malta
+--- linux-2.4.32-rc1/arch/mips64/defconfig-malta 2005-01-19 15:09:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/defconfig-malta 2005-04-19 14:19:34.000000000 +0200
+@@ -22,16 +22,19 @@
+ #
+ # CONFIG_ACER_PICA_61 is not set
+ # CONFIG_MIPS_BOSPORUS is not set
++# CONFIG_MIPS_FICMMP is not set
+ # CONFIG_MIPS_MIRAGE is not set
+ # CONFIG_MIPS_DB1000 is not set
+ # CONFIG_MIPS_DB1100 is not set
+ # CONFIG_MIPS_DB1500 is not set
+ # CONFIG_MIPS_DB1550 is not set
++# CONFIG_MIPS_DB1200 is not set
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
# CONFIG_MIPS_PB1500 is not set
-# CONFIG_MIPS_HYDROGEN3 is not set
# CONFIG_MIPS_PB1550 is not set
++# CONFIG_MIPS_PB1200 is not set
+# CONFIG_MIPS_HYDROGEN3 is not set
# CONFIG_MIPS_XXS1500 is not set
# CONFIG_MIPS_MTX1 is not set
# CONFIG_COGENT_CSB250 is not set
-@@ -235,11 +235,6 @@
+@@ -146,9 +149,9 @@
+ CONFIG_BINFMT_ELF=y
+ CONFIG_MIPS32_COMPAT=y
+ CONFIG_MIPS32_O32=y
+-# CONFIG_MIPS32_N32 is not set
++CONFIG_MIPS32_N32=y
+ CONFIG_BINFMT_ELF32=y
+-# CONFIG_BINFMT_MISC is not set
++CONFIG_BINFMT_MISC=y
+ # CONFIG_OOM_KILLER is not set
+ # CONFIG_CMDLINE_BOOL is not set
+
+@@ -235,11 +238,6 @@
#
# CONFIG_IPX is not set
# CONFIG_ATALK is not set
@@ -10664,7 +10786,92 @@ diff -Nur linux-2.4.30/arch/mips64/defconfig-malta linux-2.4.30-mips/arch/mips64
# CONFIG_DECNET is not set
# CONFIG_BRIDGE is not set
# CONFIG_X25 is not set
-@@ -317,9 +312,11 @@
+@@ -271,8 +269,83 @@
+ #
+ # ATA/IDE/MFM/RLL support
+ #
+-# CONFIG_IDE is not set
++CONFIG_IDE=y
++
++#
++# IDE, ATA and ATAPI Block devices
++#
++CONFIG_BLK_DEV_IDE=y
++
++#
++# Please see Documentation/ide.txt for help/info on IDE drives
++#
++# CONFIG_BLK_DEV_HD_IDE is not set
+ # CONFIG_BLK_DEV_HD is not set
++# CONFIG_BLK_DEV_IDE_SATA is not set
++CONFIG_BLK_DEV_IDEDISK=y
++# CONFIG_IDEDISK_MULTI_MODE is not set
++# CONFIG_IDEDISK_STROKE is not set
++# CONFIG_BLK_DEV_IDECS is not set
++# CONFIG_BLK_DEV_DELKIN is not set
++CONFIG_BLK_DEV_IDECD=y
++CONFIG_BLK_DEV_IDETAPE=y
++CONFIG_BLK_DEV_IDEFLOPPY=y
++# CONFIG_BLK_DEV_IDESCSI is not set
++# CONFIG_IDE_TASK_IOCTL is not set
++
++#
++# IDE chipset support/bugfixes
++#
++# CONFIG_BLK_DEV_CMD640 is not set
++# CONFIG_BLK_DEV_CMD640_ENHANCED is not set
++# CONFIG_BLK_DEV_ISAPNP is not set
++CONFIG_BLK_DEV_IDEPCI=y
++CONFIG_BLK_DEV_GENERIC=y
++CONFIG_IDEPCI_SHARE_IRQ=y
++CONFIG_BLK_DEV_IDEDMA_PCI=y
++# CONFIG_BLK_DEV_OFFBOARD is not set
++CONFIG_BLK_DEV_IDEDMA_FORCED=y
++CONFIG_IDEDMA_PCI_AUTO=y
++# CONFIG_IDEDMA_ONLYDISK is not set
++CONFIG_BLK_DEV_IDEDMA=y
++# CONFIG_IDEDMA_PCI_WIP is not set
++# CONFIG_BLK_DEV_ADMA100 is not set
++# CONFIG_BLK_DEV_AEC62XX is not set
++# CONFIG_BLK_DEV_ALI15X3 is not set
++# CONFIG_WDC_ALI15X3 is not set
++# CONFIG_BLK_DEV_AMD74XX is not set
++# CONFIG_AMD74XX_OVERRIDE is not set
++# CONFIG_BLK_DEV_ATIIXP is not set
++# CONFIG_BLK_DEV_CMD64X is not set
++# CONFIG_BLK_DEV_TRIFLEX is not set
++# CONFIG_BLK_DEV_CY82C693 is not set
++# CONFIG_BLK_DEV_CS5530 is not set
++# CONFIG_BLK_DEV_HPT34X is not set
++# CONFIG_HPT34X_AUTODMA is not set
++# CONFIG_BLK_DEV_HPT366 is not set
++CONFIG_BLK_DEV_PIIX=y
++# CONFIG_BLK_DEV_NS87415 is not set
++# CONFIG_BLK_DEV_OPTI621 is not set
++# CONFIG_BLK_DEV_PDC202XX_OLD is not set
++# CONFIG_PDC202XX_BURST is not set
++# CONFIG_BLK_DEV_PDC202XX_NEW is not set
++# CONFIG_BLK_DEV_RZ1000 is not set
++# CONFIG_BLK_DEV_SC1200 is not set
++# CONFIG_BLK_DEV_SVWKS is not set
++# CONFIG_BLK_DEV_SIIMAGE is not set
++# CONFIG_BLK_DEV_SIS5513 is not set
++# CONFIG_BLK_DEV_SLC90E66 is not set
++# CONFIG_BLK_DEV_TRM290 is not set
++# CONFIG_BLK_DEV_VIA82CXXX is not set
++# CONFIG_IDE_CHIPSETS is not set
++CONFIG_IDEDMA_AUTO=y
++# CONFIG_IDEDMA_IVB is not set
++# CONFIG_DMA_NONPCI is not set
++# CONFIG_BLK_DEV_ATARAID is not set
++# CONFIG_BLK_DEV_ATARAID_PDC is not set
++# CONFIG_BLK_DEV_ATARAID_HPT is not set
++# CONFIG_BLK_DEV_ATARAID_MEDLEY is not set
++# CONFIG_BLK_DEV_ATARAID_SII is not set
+
+ #
+ # SCSI support
+@@ -317,9 +390,11 @@
# CONFIG_SCSI_MEGARAID is not set
# CONFIG_SCSI_MEGARAID2 is not set
# CONFIG_SCSI_SATA is not set
@@ -10676,7 +10883,7 @@ diff -Nur linux-2.4.30/arch/mips64/defconfig-malta linux-2.4.30-mips/arch/mips64
# CONFIG_SCSI_SATA_PROMISE is not set
# CONFIG_SCSI_SATA_SX4 is not set
# CONFIG_SCSI_SATA_SIL is not set
-@@ -477,7 +474,6 @@
+@@ -477,7 +552,6 @@
CONFIG_SERIAL_CONSOLE=y
# CONFIG_SERIAL_EXTENDED is not set
# CONFIG_SERIAL_NONSTANDARD is not set
@@ -10684,9 +10891,9 @@ diff -Nur linux-2.4.30/arch/mips64/defconfig-malta linux-2.4.30-mips/arch/mips64
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips64/defconfig-ocelotc linux-2.4.30-mips/arch/mips64/defconfig-ocelotc
---- linux-2.4.30/arch/mips64/defconfig-ocelotc 2005-01-19 15:09:31.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/defconfig-ocelotc 2005-03-18 13:13:23.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips64/defconfig-ocelotc linux-2.4.32-rc1.mips/arch/mips64/defconfig-ocelotc
+--- linux-2.4.32-rc1/arch/mips64/defconfig-ocelotc 2005-01-19 15:09:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/defconfig-ocelotc 2005-03-18 13:13:23.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -10717,9 +10924,9 @@ diff -Nur linux-2.4.30/arch/mips64/defconfig-ocelotc linux-2.4.30-mips/arch/mips
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips64/defconfig-sb1250-swarm linux-2.4.30-mips/arch/mips64/defconfig-sb1250-swarm
---- linux-2.4.30/arch/mips64/defconfig-sb1250-swarm 2005-01-19 15:09:31.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/defconfig-sb1250-swarm 2005-03-18 13:13:23.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips64/defconfig-sb1250-swarm linux-2.4.32-rc1.mips/arch/mips64/defconfig-sb1250-swarm
+--- linux-2.4.32-rc1/arch/mips64/defconfig-sb1250-swarm 2005-01-19 15:09:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/defconfig-sb1250-swarm 2005-03-18 13:13:23.000000000 +0100
@@ -30,8 +30,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -10758,9 +10965,9 @@ diff -Nur linux-2.4.30/arch/mips64/defconfig-sb1250-swarm linux-2.4.30-mips/arch
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
-diff -Nur linux-2.4.30/arch/mips64/defconfig-sead linux-2.4.30-mips/arch/mips64/defconfig-sead
---- linux-2.4.30/arch/mips64/defconfig-sead 2005-01-19 15:09:31.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/defconfig-sead 2005-03-18 13:13:23.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips64/defconfig-sead linux-2.4.32-rc1.mips/arch/mips64/defconfig-sead
+--- linux-2.4.32-rc1/arch/mips64/defconfig-sead 2005-01-19 15:09:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/defconfig-sead 2005-03-18 13:13:23.000000000 +0100
@@ -28,8 +28,8 @@
# CONFIG_MIPS_PB1000 is not set
# CONFIG_MIPS_PB1100 is not set
@@ -10779,9 +10986,9 @@ diff -Nur linux-2.4.30/arch/mips64/defconfig-sead linux-2.4.30-mips/arch/mips64/
# CONFIG_UNIX98_PTYS is not set
#
-diff -Nur linux-2.4.30/arch/mips64/kernel/binfmt_elfn32.c linux-2.4.30-mips/arch/mips64/kernel/binfmt_elfn32.c
---- linux-2.4.30/arch/mips64/kernel/binfmt_elfn32.c 2003-08-25 13:44:40.000000000 +0200
-+++ linux-2.4.30-mips/arch/mips64/kernel/binfmt_elfn32.c 2005-01-26 03:40:47.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips64/kernel/binfmt_elfn32.c linux-2.4.32-rc1.mips/arch/mips64/kernel/binfmt_elfn32.c
+--- linux-2.4.32-rc1/arch/mips64/kernel/binfmt_elfn32.c 2003-08-25 13:44:40.000000000 +0200
++++ linux-2.4.32-rc1.mips/arch/mips64/kernel/binfmt_elfn32.c 2005-01-26 03:40:47.000000000 +0100
@@ -116,4 +116,7 @@
#undef MODULE_DESCRIPTION
#undef MODULE_AUTHOR
@@ -10790,9 +10997,9 @@ diff -Nur linux-2.4.30/arch/mips64/kernel/binfmt_elfn32.c linux-2.4.30-mips/arch
+#define TASK_SIZE TASK_SIZE32
+
#include "../../../fs/binfmt_elf.c"
-diff -Nur linux-2.4.30/arch/mips64/kernel/binfmt_elfo32.c linux-2.4.30-mips/arch/mips64/kernel/binfmt_elfo32.c
---- linux-2.4.30/arch/mips64/kernel/binfmt_elfo32.c 2003-08-25 13:44:40.000000000 +0200
-+++ linux-2.4.30-mips/arch/mips64/kernel/binfmt_elfo32.c 2005-01-26 03:40:47.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips64/kernel/binfmt_elfo32.c linux-2.4.32-rc1.mips/arch/mips64/kernel/binfmt_elfo32.c
+--- linux-2.4.32-rc1/arch/mips64/kernel/binfmt_elfo32.c 2003-08-25 13:44:40.000000000 +0200
++++ linux-2.4.32-rc1.mips/arch/mips64/kernel/binfmt_elfo32.c 2005-01-26 03:40:47.000000000 +0100
@@ -137,4 +137,7 @@
#undef MODULE_DESCRIPTION
#undef MODULE_AUTHOR
@@ -10801,9 +11008,9 @@ diff -Nur linux-2.4.30/arch/mips64/kernel/binfmt_elfo32.c linux-2.4.30-mips/arch
+#define TASK_SIZE TASK_SIZE32
+
#include "../../../fs/binfmt_elf.c"
-diff -Nur linux-2.4.30/arch/mips64/kernel/head.S linux-2.4.30-mips/arch/mips64/kernel/head.S
---- linux-2.4.30/arch/mips64/kernel/head.S 2004-02-18 14:36:30.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/kernel/head.S 2004-11-22 14:38:26.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips64/kernel/head.S linux-2.4.32-rc1.mips/arch/mips64/kernel/head.S
+--- linux-2.4.32-rc1/arch/mips64/kernel/head.S 2004-02-18 14:36:30.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/kernel/head.S 2004-11-22 14:38:26.000000000 +0100
@@ -91,6 +91,21 @@
__INIT
@@ -10888,9 +11095,9 @@ diff -Nur linux-2.4.30/arch/mips64/kernel/head.S linux-2.4.30-mips/arch/mips64/k
END(smp_bootstrap)
#endif /* CONFIG_SMP */
-diff -Nur linux-2.4.30/arch/mips64/kernel/ioctl32.c linux-2.4.30-mips/arch/mips64/kernel/ioctl32.c
---- linux-2.4.30/arch/mips64/kernel/ioctl32.c 2005-01-19 15:09:31.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/kernel/ioctl32.c 2005-01-26 03:36:17.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips64/kernel/ioctl32.c linux-2.4.32-rc1.mips/arch/mips64/kernel/ioctl32.c
+--- linux-2.4.32-rc1/arch/mips64/kernel/ioctl32.c 2005-01-19 15:09:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/kernel/ioctl32.c 2005-01-26 03:36:17.000000000 +0100
@@ -2352,7 +2352,7 @@
IOCTL32_HANDLER(AUTOFS_IOC_SETTIMEOUT32, ioc_settimeout),
IOCTL32_DEFAULT(AUTOFS_IOC_EXPIRE),
@@ -10900,10 +11107,18 @@ diff -Nur linux-2.4.30/arch/mips64/kernel/ioctl32.c linux-2.4.30-mips/arch/mips6
IOCTL32_DEFAULT(AUTOFS_IOC_ASKREGHOST),
IOCTL32_DEFAULT(AUTOFS_IOC_TOGGLEREGHOST),
IOCTL32_DEFAULT(AUTOFS_IOC_ASKUMOUNT),
-diff -Nur linux-2.4.30/arch/mips64/kernel/linux32.c linux-2.4.30-mips/arch/mips64/kernel/linux32.c
---- linux-2.4.30/arch/mips64/kernel/linux32.c 2005-04-04 03:42:19.000000000 +0200
-+++ linux-2.4.30-mips/arch/mips64/kernel/linux32.c 2005-03-18 13:13:23.000000000 +0100
-@@ -1187,72 +1187,19 @@
+diff -Nur linux-2.4.32-rc1/arch/mips64/kernel/linux32.c linux-2.4.32-rc1.mips/arch/mips64/kernel/linux32.c
+--- linux-2.4.32-rc1/arch/mips64/kernel/linux32.c 2005-04-04 03:42:19.000000000 +0200
++++ linux-2.4.32-rc1.mips/arch/mips64/kernel/linux32.c 2005-04-22 15:01:00.000000000 +0200
+@@ -1101,6 +1101,7 @@
+ * specially as they have atomicity guarantees and can handle
+ * iovec's natively
+ */
++ inode = file->f_dentry->d_inode;
+ if (inode->i_sock) {
+ int err;
+ err = sock_readv_writev(type, inode, file, iov, count, tot_len);
+@@ -1187,72 +1188,19 @@
lseek back to original location. They fail just like lseek does on
non-seekable files. */
@@ -10950,7 +11165,9 @@ diff -Nur linux-2.4.30/arch/mips64/kernel/linux32.c linux-2.4.30-mips/arch/mips6
- struct file * file;
- ssize_t (*write)(struct file *, const char *, size_t, loff_t *);
- loff_t pos;
--
++ return sys_pwrite(fd, buf, count, merge_64(a4, a5));
++}
+
- ret = -EBADF;
- file = fget(fd);
- if (!file)
@@ -10967,7 +11184,7 @@ diff -Nur linux-2.4.30/arch/mips64/kernel/linux32.c linux-2.4.30-mips/arch/mips6
- goto out;
- if (pos < 0)
- goto out;
--
+
- ret = write(file, buf, count, &pos);
- if (ret > 0)
- dnotify_parent(file->f_dentry, DN_MODIFY);
@@ -10975,16 +11192,42 @@ diff -Nur linux-2.4.30/arch/mips64/kernel/linux32.c linux-2.4.30-mips/arch/mips6
- fput(file);
-bad_file:
- return ret;
-+ return sys_pwrite(fd, buf, count, merge_64(a4, a5));
+-}
+ /*
+ * Ooo, nasty. We need here to frob 32-bit unsigned longs to
+ * 64-bit unsigned longs.
+diff -Nur linux-2.4.32-rc1/arch/mips64/kernel/process.c linux-2.4.32-rc1.mips/arch/mips64/kernel/process.c
+--- linux-2.4.32-rc1/arch/mips64/kernel/process.c 2003-08-25 13:44:40.000000000 +0200
++++ linux-2.4.32-rc1.mips/arch/mips64/kernel/process.c 2005-04-14 12:41:44.000000000 +0200
+@@ -125,6 +125,25 @@
+ return 1;
}
+
++void dump_regs(elf_greg_t *gp, struct pt_regs *regs)
++{
++ int i;
+
++ for (i = 0; i < EF_REG0; i++)
++ gp[i] = 0;
++ gp[EF_REG0] = 0;
++ for (i = 1; i <= 31; i++)
++ gp[EF_REG0 + i] = regs->regs[i];
++ gp[EF_REG26] = 0;
++ gp[EF_REG27] = 0;
++ gp[EF_LO] = regs->lo;
++ gp[EF_HI] = regs->hi;
++ gp[EF_CP0_EPC] = regs->cp0_epc;
++ gp[EF_CP0_BADVADDR] = regs->cp0_badvaddr;
++ gp[EF_CP0_STATUS] = regs->cp0_status;
++ gp[EF_CP0_CAUSE] = regs->cp0_cause;
++}
+
/*
- * Ooo, nasty. We need here to frob 32-bit unsigned longs to
- * 64-bit unsigned longs.
-diff -Nur linux-2.4.30/arch/mips64/kernel/scall_64.S linux-2.4.30-mips/arch/mips64/kernel/scall_64.S
---- linux-2.4.30/arch/mips64/kernel/scall_64.S 2005-01-19 15:09:32.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/kernel/scall_64.S 2005-02-07 22:21:54.000000000 +0100
+ * Create a kernel thread
+ */
+diff -Nur linux-2.4.32-rc1/arch/mips64/kernel/scall_64.S linux-2.4.32-rc1.mips/arch/mips64/kernel/scall_64.S
+--- linux-2.4.32-rc1/arch/mips64/kernel/scall_64.S 2005-01-19 15:09:32.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/kernel/scall_64.S 2005-02-07 22:21:54.000000000 +0100
@@ -102,15 +102,14 @@
trace_a_syscall:
@@ -11003,9 +11246,9 @@ diff -Nur linux-2.4.30/arch/mips64/kernel/scall_64.S linux-2.4.30-mips/arch/mips
li t0, -EMAXERRNO - 1 # error?
sltu t0, t0, v0
-diff -Nur linux-2.4.30/arch/mips64/kernel/scall_n32.S linux-2.4.30-mips/arch/mips64/kernel/scall_n32.S
---- linux-2.4.30/arch/mips64/kernel/scall_n32.S 2005-01-19 15:09:32.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/kernel/scall_n32.S 2005-02-07 22:21:54.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips64/kernel/scall_n32.S linux-2.4.32-rc1.mips/arch/mips64/kernel/scall_n32.S
+--- linux-2.4.32-rc1/arch/mips64/kernel/scall_n32.S 2005-01-19 15:09:32.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/kernel/scall_n32.S 2005-02-07 22:21:54.000000000 +0100
@@ -106,15 +106,14 @@
trace_a_syscall:
@@ -11024,9 +11267,9 @@ diff -Nur linux-2.4.30/arch/mips64/kernel/scall_n32.S linux-2.4.30-mips/arch/mip
li t0, -EMAXERRNO - 1 # error?
sltu t0, t0, v0
-diff -Nur linux-2.4.30/arch/mips64/kernel/scall_o32.S linux-2.4.30-mips/arch/mips64/kernel/scall_o32.S
---- linux-2.4.30/arch/mips64/kernel/scall_o32.S 2005-01-19 15:09:32.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/kernel/scall_o32.S 2005-02-14 04:52:57.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips64/kernel/scall_o32.S linux-2.4.32-rc1.mips/arch/mips64/kernel/scall_o32.S
+--- linux-2.4.32-rc1/arch/mips64/kernel/scall_o32.S 2005-01-19 15:09:32.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/kernel/scall_o32.S 2005-02-14 04:52:57.000000000 +0100
@@ -118,9 +118,8 @@
sd a6, PT_R10(sp)
sd a7, PT_R11(sp)
@@ -11056,9 +11299,9 @@ diff -Nur linux-2.4.30/arch/mips64/kernel/scall_o32.S linux-2.4.30-mips/arch/mip
.macro sys function, nargs
.byte \nargs
.endm
-diff -Nur linux-2.4.30/arch/mips64/kernel/setup.c linux-2.4.30-mips/arch/mips64/kernel/setup.c
---- linux-2.4.30/arch/mips64/kernel/setup.c 2005-01-19 15:09:32.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/kernel/setup.c 2004-11-22 14:38:26.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips64/kernel/setup.c linux-2.4.32-rc1.mips/arch/mips64/kernel/setup.c
+--- linux-2.4.32-rc1/arch/mips64/kernel/setup.c 2005-01-19 15:09:32.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/kernel/setup.c 2004-11-22 14:38:26.000000000 +0100
@@ -129,14 +129,6 @@
*/
load_mmu();
@@ -11074,9 +11317,9 @@ diff -Nur linux-2.4.30/arch/mips64/kernel/setup.c linux-2.4.30-mips/arch/mips64/
start_kernel();
}
-diff -Nur linux-2.4.30/arch/mips64/kernel/signal_n32.c linux-2.4.30-mips/arch/mips64/kernel/signal_n32.c
---- linux-2.4.30/arch/mips64/kernel/signal_n32.c 2005-01-19 15:09:33.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/kernel/signal_n32.c 2005-02-07 22:10:53.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips64/kernel/signal_n32.c linux-2.4.32-rc1.mips/arch/mips64/kernel/signal_n32.c
+--- linux-2.4.32-rc1/arch/mips64/kernel/signal_n32.c 2005-01-19 15:09:33.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/kernel/signal_n32.c 2005-02-07 22:10:53.000000000 +0100
@@ -68,7 +68,7 @@
};
@@ -11086,9 +11329,9 @@ diff -Nur linux-2.4.30/arch/mips64/kernel/signal_n32.c linux-2.4.30-mips/arch/mi
asmlinkage void sysn32_rt_sigreturn(abi64_no_regargs, struct pt_regs regs)
{
-diff -Nur linux-2.4.30/arch/mips64/kernel/traps.c linux-2.4.30-mips/arch/mips64/kernel/traps.c
---- linux-2.4.30/arch/mips64/kernel/traps.c 2005-01-19 15:09:33.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/kernel/traps.c 2005-04-12 22:25:34.000000000 +0200
+diff -Nur linux-2.4.32-rc1/arch/mips64/kernel/traps.c linux-2.4.32-rc1.mips/arch/mips64/kernel/traps.c
+--- linux-2.4.32-rc1/arch/mips64/kernel/traps.c 2005-01-19 15:09:33.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/kernel/traps.c 2005-04-12 22:25:34.000000000 +0200
@@ -462,9 +462,10 @@
}
ll_task = current;
@@ -11179,42 +11422,9 @@ diff -Nur linux-2.4.30/arch/mips64/kernel/traps.c linux-2.4.30-mips/arch/mips64/
- current->active_mm = &init_mm;
+ per_cpu_trap_init();
}
-diff -Nur linux-2.4.30/arch/mips64/mm/c-r4k.c linux-2.4.30-mips/arch/mips64/mm/c-r4k.c
---- linux-2.4.30/arch/mips64/mm/c-r4k.c 2005-01-19 15:09:33.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/mm/c-r4k.c 2005-02-06 22:55:42.000000000 +0100
-@@ -867,9 +867,16 @@
- * normally they'd suffer from aliases but magic in the hardware deals
- * with that for us so we don't need to take care ourselves.
- */
-- if (c->cputype != CPU_R10000 && c->cputype != CPU_R12000)
-- if (c->dcache.waysize > PAGE_SIZE)
-- c->dcache.flags |= MIPS_CACHE_ALIASES;
-+ switch (c->cputype) {
-+ case CPU_R10000:
-+ case CPU_R12000:
-+ break;
-+ case CPU_24K:
-+ if (!(read_c0_config7() & (1 << 16)))
-+ default:
-+ if (c->dcache.waysize > PAGE_SIZE)
-+ c->dcache.flags |= MIPS_CACHE_ALIASES;
-+ }
-
- switch (c->cputype) {
- case CPU_20KC:
-@@ -1070,9 +1077,6 @@
- setup_scache();
- coherency_setup();
-
-- if (c->dcache.sets * c->dcache.ways > PAGE_SIZE)
-- c->dcache.flags |= MIPS_CACHE_ALIASES;
--
- r4k_blast_dcache_page_setup();
- r4k_blast_dcache_page_indexed_setup();
- r4k_blast_dcache_setup();
-diff -Nur linux-2.4.30/arch/mips64/mm/cerr-sb1.c linux-2.4.30-mips/arch/mips64/mm/cerr-sb1.c
---- linux-2.4.30/arch/mips64/mm/cerr-sb1.c 2004-02-18 14:36:30.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/mm/cerr-sb1.c 2004-12-13 18:37:26.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips64/mm/cerr-sb1.c linux-2.4.32-rc1.mips/arch/mips64/mm/cerr-sb1.c
+--- linux-2.4.32-rc1/arch/mips64/mm/cerr-sb1.c 2004-02-18 14:36:30.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/mm/cerr-sb1.c 2004-12-13 18:37:26.000000000 +0100
@@ -252,14 +252,14 @@
/* Masks to select bits for Hamming parity, mask_72_64[i] for bit[i] */
@@ -11259,9 +11469,153 @@ diff -Nur linux-2.4.30/arch/mips64/mm/cerr-sb1.c linux-2.4.30-mips/arch/mips64/m
if (way == 0) {
lru = (taghi >> 14) & 0xff;
prom_printf("[Bank %d Set 0x%02x] LRU > %d %d %d %d > MRU\n",
-diff -Nur linux-2.4.30/arch/mips64/mm/tlb-r4k.c linux-2.4.30-mips/arch/mips64/mm/tlb-r4k.c
---- linux-2.4.30/arch/mips64/mm/tlb-r4k.c 2005-01-19 15:09:33.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/mm/tlb-r4k.c 2004-11-25 23:18:38.000000000 +0100
+diff -Nur linux-2.4.32-rc1/arch/mips64/mm/c-r4k.c linux-2.4.32-rc1.mips/arch/mips64/mm/c-r4k.c
+--- linux-2.4.32-rc1/arch/mips64/mm/c-r4k.c 2005-01-19 15:09:33.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/mm/c-r4k.c 2005-02-06 22:55:42.000000000 +0100
+@@ -867,9 +867,16 @@
+ * normally they'd suffer from aliases but magic in the hardware deals
+ * with that for us so we don't need to take care ourselves.
+ */
+- if (c->cputype != CPU_R10000 && c->cputype != CPU_R12000)
+- if (c->dcache.waysize > PAGE_SIZE)
+- c->dcache.flags |= MIPS_CACHE_ALIASES;
++ switch (c->cputype) {
++ case CPU_R10000:
++ case CPU_R12000:
++ break;
++ case CPU_24K:
++ if (!(read_c0_config7() & (1 << 16)))
++ default:
++ if (c->dcache.waysize > PAGE_SIZE)
++ c->dcache.flags |= MIPS_CACHE_ALIASES;
++ }
+
+ switch (c->cputype) {
+ case CPU_20KC:
+@@ -1070,9 +1077,6 @@
+ setup_scache();
+ coherency_setup();
+
+- if (c->dcache.sets * c->dcache.ways > PAGE_SIZE)
+- c->dcache.flags |= MIPS_CACHE_ALIASES;
+-
+ r4k_blast_dcache_page_setup();
+ r4k_blast_dcache_page_indexed_setup();
+ r4k_blast_dcache_setup();
+diff -Nur linux-2.4.32-rc1/arch/mips64/mm/tlbex-r4k.S linux-2.4.32-rc1.mips/arch/mips64/mm/tlbex-r4k.S
+--- linux-2.4.32-rc1/arch/mips64/mm/tlbex-r4k.S 2004-02-18 14:36:30.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/mm/tlbex-r4k.S 2005-06-06 16:46:22.000000000 +0200
+@@ -125,6 +125,33 @@
+ nop
+ END(except_vec1_r4k)
+
++ __FINIT
++
++ .align 5
++LEAF(handle_vec1_r4k)
++ .set noat
++ LOAD_PTE2 k1 k0 9f
++ ld k0, 0(k1) # get even pte
++ ld k1, 8(k1) # get odd pte
++ PTE_RELOAD k0 k1
++ mtc0_tlbw_hazard
++ tlbwr
++ tlbw_eret_hazard
++ eret
++
++9: # handle the vmalloc range
++ LOAD_KPTE2 k1 k0 invalid_vmalloc_address
++ ld k0, 0(k1) # get even pte
++ ld k1, 8(k1) # get odd pte
++ PTE_RELOAD k0 k1
++ mtc0_tlbw_hazard
++ tlbwr
++ tlbw_eret_hazard
++ eret
++END(handle_vec1_r4k)
++
++ __INIT
++
+ LEAF(except_vec1_sb1)
+ #if BCM1250_M3_WAR
+ dmfc0 k0, CP0_BADVADDR
+@@ -134,28 +161,24 @@
+ bnez k0, 1f
+ #endif
+ .set noat
+- dla k0, handle_vec1_r4k
++ dla k0, handle_vec1_sb1
+ jr k0
+ nop
+
+ 1: eret
+- nop
+ END(except_vec1_sb1)
+
+ __FINIT
+
+ .align 5
+-LEAF(handle_vec1_r4k)
++LEAF(handle_vec1_sb1)
+ .set noat
+ LOAD_PTE2 k1 k0 9f
+ ld k0, 0(k1) # get even pte
+ ld k1, 8(k1) # get odd pte
+ PTE_RELOAD k0 k1
+- rm9000_tlb_hazard
+- b 1f
+- tlbwr
+-1: nop
+- rm9000_tlb_hazard
++ mtc0_tlbw_hazard
++ tlbwr
+ eret
+
+ 9: # handle the vmalloc range
+@@ -163,13 +186,10 @@
+ ld k0, 0(k1) # get even pte
+ ld k1, 8(k1) # get odd pte
+ PTE_RELOAD k0 k1
+- rm9000_tlb_hazard
+- b 1f
+- tlbwr
+-1: nop
+- rm9000_tlb_hazard
++ mtc0_tlbw_hazard
++ tlbwr
+ eret
+-END(handle_vec1_r4k)
++END(handle_vec1_sb1)
+
+
+ __INIT
+@@ -195,10 +215,8 @@
+ ld k0, 0(k1) # get even pte
+ ld k1, 8(k1) # get odd pte
+ PTE_RELOAD k0 k1
+- rm9000_tlb_hazard
+- nop
++ mtc0_tlbw_hazard
+ tlbwr
+- rm9000_tlb_hazard
+ eret
+
+ 9: # handle the vmalloc range
+@@ -206,10 +224,8 @@
+ ld k0, 0(k1) # get even pte
+ ld k1, 8(k1) # get odd pte
+ PTE_RELOAD k0 k1
+- rm9000_tlb_hazard
+- nop
++ mtc0_tlbw_hazard
+ tlbwr
+- rm9000_tlb_hazard
+ eret
+ END(handle_vec1_r10k)
+
+diff -Nur linux-2.4.32-rc1/arch/mips64/mm/tlb-r4k.c linux-2.4.32-rc1.mips/arch/mips64/mm/tlb-r4k.c
+--- linux-2.4.32-rc1/arch/mips64/mm/tlb-r4k.c 2005-01-19 15:09:33.000000000 +0100
++++ linux-2.4.32-rc1.mips/arch/mips64/mm/tlb-r4k.c 2004-11-25 23:18:38.000000000 +0100
@@ -1,24 +1,12 @@
/*
- * Carsten Langgaard, carstenl@mips.com
@@ -11613,159 +11967,9 @@ diff -Nur linux-2.4.30/arch/mips64/mm/tlb-r4k.c linux-2.4.30-mips/arch/mips64/mm
probe_tlb(config);
write_c0_pagemask(PM_DEFAULT_MASK);
write_c0_wired(0);
-diff -Nur linux-2.4.30/arch/mips64/mm/tlbex-r4k.S linux-2.4.30-mips/arch/mips64/mm/tlbex-r4k.S
---- linux-2.4.30/arch/mips64/mm/tlbex-r4k.S 2004-02-18 14:36:30.000000000 +0100
-+++ linux-2.4.30-mips/arch/mips64/mm/tlbex-r4k.S 2004-11-25 23:18:38.000000000 +0100
-@@ -151,11 +151,9 @@
- ld k0, 0(k1) # get even pte
- ld k1, 8(k1) # get odd pte
- PTE_RELOAD k0 k1
-- rm9000_tlb_hazard
-- b 1f
-- tlbwr
--1: nop
-- rm9000_tlb_hazard
-+ mtc0_tlbw_hazard
-+ tlbwr
-+1: tlbw_eret_hazard
- eret
-
- 9: # handle the vmalloc range
-@@ -163,11 +161,9 @@
- ld k0, 0(k1) # get even pte
- ld k1, 8(k1) # get odd pte
- PTE_RELOAD k0 k1
-- rm9000_tlb_hazard
-- b 1f
-- tlbwr
--1: nop
-- rm9000_tlb_hazard
-+ mtc0_tlbw_hazard
-+ tlbwr
-+1: tlbw_eret_hazard
- eret
- END(handle_vec1_r4k)
-
-@@ -195,10 +191,9 @@
- ld k0, 0(k1) # get even pte
- ld k1, 8(k1) # get odd pte
- PTE_RELOAD k0 k1
-- rm9000_tlb_hazard
-- nop
-+ mtc0_tlbw_hazard
- tlbwr
-- rm9000_tlb_hazard
-+ tlbw_eret_hazard
- eret
-
- 9: # handle the vmalloc range
-@@ -206,10 +201,9 @@
- ld k0, 0(k1) # get even pte
- ld k1, 8(k1) # get odd pte
- PTE_RELOAD k0 k1
-- rm9000_tlb_hazard
-- nop
-+ mtc0_tlbw_hazard
- tlbwr
-- rm9000_tlb_hazard
-+ tlbw_eret_hazard
- eret
- END(handle_vec1_r10k)
-
-diff -Nur linux-2.4.30/drivers/char/Config.in linux-2.4.30-mips/drivers/char/Config.in
---- linux-2.4.30/drivers/char/Config.in 2004-08-08 01:26:04.000000000 +0200
-+++ linux-2.4.30-mips/drivers/char/Config.in 2005-02-11 22:09:56.000000000 +0100
-@@ -313,14 +313,11 @@
- if [ "$CONFIG_OBSOLETE" = "y" -a "$CONFIG_ALPHA_BOOK1" = "y" ]; then
- bool 'Tadpole ANA H8 Support (OBSOLETE)' CONFIG_H8
- fi
--if [ "$CONFIG_MIPS" = "y" -a "$CONFIG_NEW_TIME_C" = "y" ]; then
-- tristate 'Generic MIPS RTC Support' CONFIG_MIPS_RTC
--fi
- if [ "$CONFIG_SGI_IP22" = "y" ]; then
-- bool 'SGI DS1286 RTC support' CONFIG_SGI_DS1286
-+ tristate 'Dallas DS1286 RTC support' CONFIG_DS1286
- fi
- if [ "$CONFIG_SGI_IP27" = "y" ]; then
-- bool 'SGI M48T35 RTC support' CONFIG_SGI_IP27_RTC
-+ tristate 'SGI M48T35 RTC support' CONFIG_SGI_IP27_RTC
- fi
- if [ "$CONFIG_TOSHIBA_RBTX4927" = "y" -o "$CONFIG_TOSHIBA_JMR3927" = "y" ]; then
- tristate 'Dallas DS1742 RTC support' CONFIG_DS1742
-@@ -383,6 +380,11 @@
- source drivers/char/drm/Config.in
- fi
- fi
-+
-+if [ "$CONFIG_X86" = "y" ]; then
-+ tristate 'ACP Modem (Mwave) support' CONFIG_MWAVE
-+fi
-+
- endmenu
-
- if [ "$CONFIG_HOTPLUG" = "y" -a "$CONFIG_PCMCIA" != "n" ]; then
-@@ -391,6 +393,7 @@
- if [ "$CONFIG_SOC_AU1X00" = "y" ]; then
- tristate ' Alchemy Au1x00 GPIO device support' CONFIG_AU1X00_GPIO
- tristate ' Au1000/ADS7846 touchscreen support' CONFIG_TS_AU1X00_ADS7846
-+ #tristate ' Alchemy Au1550 PSC SPI support' CONFIG_AU1550_PSC_SPI
- fi
- if [ "$CONFIG_MIPS_ITE8172" = "y" ]; then
- tristate ' ITE GPIO' CONFIG_ITE_GPIO
-diff -Nur linux-2.4.30/drivers/char/Makefile linux-2.4.30-mips/drivers/char/Makefile
---- linux-2.4.30/drivers/char/Makefile 2004-08-08 01:26:04.000000000 +0200
-+++ linux-2.4.30-mips/drivers/char/Makefile 2005-02-11 22:09:56.000000000 +0100
-@@ -48,7 +48,12 @@
- KEYBD =
- endif
- ifeq ($(CONFIG_VR41XX_KIU),y)
-- KEYMAP =
-+ ifeq ($(CONFIG_IBM_WORKPAD),y)
-+ KEYMAP = ibm_workpad_keymap.o
-+ endif
-+ ifeq ($(CONFIG_VICTOR_MPC30X),y)
-+ KEYMAP = victor_mpc30x_keymap.o
-+ endif
- KEYBD = vr41xx_keyb.o
- endif
- endif
-@@ -251,7 +256,6 @@
- obj-$(CONFIG_RTC) += rtc.o
- obj-$(CONFIG_GEN_RTC) += genrtc.o
- obj-$(CONFIG_EFI_RTC) += efirtc.o
--obj-$(CONFIG_SGI_DS1286) += ds1286.o
- obj-$(CONFIG_MIPS_RTC) += mips_rtc.o
- obj-$(CONFIG_SGI_IP27_RTC) += ip27-rtc.o
- ifeq ($(CONFIG_PPC),)
-@@ -259,6 +263,7 @@
- endif
- obj-$(CONFIG_TOSHIBA) += toshiba.o
- obj-$(CONFIG_I8K) += i8k.o
-+obj-$(CONFIG_DS1286) += ds1286.o
- obj-$(CONFIG_DS1620) += ds1620.o
- obj-$(CONFIG_DS1742) += ds1742.o
- obj-$(CONFIG_INTEL_RNG) += i810_rng.o
-@@ -269,6 +274,7 @@
-
- obj-$(CONFIG_ITE_GPIO) += ite_gpio.o
- obj-$(CONFIG_AU1X00_GPIO) += au1000_gpio.o
-+obj-$(CONFIG_AU1550_PSC_SPI) += au1550_psc_spi.o
- obj-$(CONFIG_AU1X00_USB_TTY) += au1000_usbtty.o
- obj-$(CONFIG_AU1X00_USB_RAW) += au1000_usbraw.o
- obj-$(CONFIG_COBALT_LCD) += lcd.o
-@@ -353,3 +359,9 @@
-
- qtronixmap.c: qtronixmap.map
- set -e ; loadkeys --mktable $< | sed -e 's/^static *//' > $@
-+
-+ibm_workpad_keymap.c: ibm_workpad_keymap.map
-+ set -e ; loadkeys --mktable $< | sed -e 's/^static *//' > $@
-+
-+victor_mpc30x_keymap.c: victor_mpc30x_keymap.map
-+ set -e ; loadkeys --mktable $< | sed -e 's/^static *//' > $@
-diff -Nur linux-2.4.30/drivers/char/au1000_gpio.c linux-2.4.30-mips/drivers/char/au1000_gpio.c
---- linux-2.4.30/drivers/char/au1000_gpio.c 2003-08-25 13:44:41.000000000 +0200
-+++ linux-2.4.30-mips/drivers/char/au1000_gpio.c 2003-12-20 14:18:51.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/char/au1000_gpio.c linux-2.4.32-rc1.mips/drivers/char/au1000_gpio.c
+--- linux-2.4.32-rc1/drivers/char/au1000_gpio.c 2003-08-25 13:44:41.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/char/au1000_gpio.c 2003-12-20 14:18:51.000000000 +0100
@@ -246,7 +246,7 @@
static struct miscdevice au1000gpio_miscdev =
@@ -11775,9 +11979,9 @@ diff -Nur linux-2.4.30/drivers/char/au1000_gpio.c linux-2.4.30-mips/drivers/char
"au1000_gpio",
&au1000gpio_fops
};
-diff -Nur linux-2.4.30/drivers/char/au1550_psc_spi.c linux-2.4.30-mips/drivers/char/au1550_psc_spi.c
---- linux-2.4.30/drivers/char/au1550_psc_spi.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/drivers/char/au1550_psc_spi.c 2005-02-11 21:37:24.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/char/au1550_psc_spi.c linux-2.4.32-rc1.mips/drivers/char/au1550_psc_spi.c
+--- linux-2.4.32-rc1/drivers/char/au1550_psc_spi.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/char/au1550_psc_spi.c 2005-02-11 21:37:24.000000000 +0100
@@ -0,0 +1,466 @@
+/*
+ * Driver for Alchemy Au1550 SPI on the PSC.
@@ -12245,9 +12449,49 @@ diff -Nur linux-2.4.30/drivers/char/au1550_psc_spi.c linux-2.4.30-mips/drivers/c
+
+module_init(au1550spi_init);
+module_exit(au1550spi_exit);
-diff -Nur linux-2.4.30/drivers/char/decserial.c linux-2.4.30-mips/drivers/char/decserial.c
---- linux-2.4.30/drivers/char/decserial.c 2003-08-25 13:44:41.000000000 +0200
-+++ linux-2.4.30-mips/drivers/char/decserial.c 2004-09-28 02:53:01.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/char/Config.in linux-2.4.32-rc1.mips/drivers/char/Config.in
+--- linux-2.4.32-rc1/drivers/char/Config.in 2004-08-08 01:26:04.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/char/Config.in 2005-02-11 22:09:56.000000000 +0100
+@@ -313,14 +313,11 @@
+ if [ "$CONFIG_OBSOLETE" = "y" -a "$CONFIG_ALPHA_BOOK1" = "y" ]; then
+ bool 'Tadpole ANA H8 Support (OBSOLETE)' CONFIG_H8
+ fi
+-if [ "$CONFIG_MIPS" = "y" -a "$CONFIG_NEW_TIME_C" = "y" ]; then
+- tristate 'Generic MIPS RTC Support' CONFIG_MIPS_RTC
+-fi
+ if [ "$CONFIG_SGI_IP22" = "y" ]; then
+- bool 'SGI DS1286 RTC support' CONFIG_SGI_DS1286
++ tristate 'Dallas DS1286 RTC support' CONFIG_DS1286
+ fi
+ if [ "$CONFIG_SGI_IP27" = "y" ]; then
+- bool 'SGI M48T35 RTC support' CONFIG_SGI_IP27_RTC
++ tristate 'SGI M48T35 RTC support' CONFIG_SGI_IP27_RTC
+ fi
+ if [ "$CONFIG_TOSHIBA_RBTX4927" = "y" -o "$CONFIG_TOSHIBA_JMR3927" = "y" ]; then
+ tristate 'Dallas DS1742 RTC support' CONFIG_DS1742
+@@ -383,6 +380,11 @@
+ source drivers/char/drm/Config.in
+ fi
+ fi
++
++if [ "$CONFIG_X86" = "y" ]; then
++ tristate 'ACP Modem (Mwave) support' CONFIG_MWAVE
++fi
++
+ endmenu
+
+ if [ "$CONFIG_HOTPLUG" = "y" -a "$CONFIG_PCMCIA" != "n" ]; then
+@@ -391,6 +393,7 @@
+ if [ "$CONFIG_SOC_AU1X00" = "y" ]; then
+ tristate ' Alchemy Au1x00 GPIO device support' CONFIG_AU1X00_GPIO
+ tristate ' Au1000/ADS7846 touchscreen support' CONFIG_TS_AU1X00_ADS7846
++ #tristate ' Alchemy Au1550 PSC SPI support' CONFIG_AU1550_PSC_SPI
+ fi
+ if [ "$CONFIG_MIPS_ITE8172" = "y" ]; then
+ tristate ' ITE GPIO' CONFIG_ITE_GPIO
+diff -Nur linux-2.4.32-rc1/drivers/char/decserial.c linux-2.4.32-rc1.mips/drivers/char/decserial.c
+--- linux-2.4.32-rc1/drivers/char/decserial.c 2003-08-25 13:44:41.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/char/decserial.c 2004-09-28 02:53:01.000000000 +0200
@@ -3,95 +3,105 @@
* choose the right serial device at boot time
*
@@ -12398,9 +12642,9 @@ diff -Nur linux-2.4.30/drivers/char/decserial.c linux-2.4.30-mips/drivers/char/d
#endif
}
-diff -Nur linux-2.4.30/drivers/char/ds1286.c linux-2.4.30-mips/drivers/char/ds1286.c
---- linux-2.4.30/drivers/char/ds1286.c 2004-02-18 14:36:31.000000000 +0100
-+++ linux-2.4.30-mips/drivers/char/ds1286.c 2004-01-10 06:21:39.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/char/ds1286.c linux-2.4.32-rc1.mips/drivers/char/ds1286.c
+--- linux-2.4.32-rc1/drivers/char/ds1286.c 2004-02-18 14:36:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/char/ds1286.c 2004-01-10 06:21:39.000000000 +0100
@@ -1,6 +1,10 @@
/*
* DS1286 Real Time Clock interface for Linux
@@ -12536,9 +12780,9 @@ diff -Nur linux-2.4.30/drivers/char/ds1286.c linux-2.4.30-mips/drivers/char/ds12
+
+MODULE_AUTHOR("Ralf Baechle");
+MODULE_LICENSE("GPL");
-diff -Nur linux-2.4.30/drivers/char/ds1742.c linux-2.4.30-mips/drivers/char/ds1742.c
---- linux-2.4.30/drivers/char/ds1742.c 2004-02-18 14:36:31.000000000 +0100
-+++ linux-2.4.30-mips/drivers/char/ds1742.c 2004-01-09 20:27:16.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/char/ds1742.c linux-2.4.32-rc1.mips/drivers/char/ds1742.c
+--- linux-2.4.32-rc1/drivers/char/ds1742.c 2004-02-18 14:36:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/char/ds1742.c 2004-01-09 20:27:16.000000000 +0100
@@ -142,6 +142,7 @@
CMOS_WRITE(RTC_WRITE, RTC_CONTROL);
@@ -12574,9 +12818,9 @@ diff -Nur linux-2.4.30/drivers/char/ds1742.c linux-2.4.30-mips/drivers/char/ds17
to_tm(curr_time, &rtc_tm);
rtc_tm.tm_year -= 1900;
return copy_to_user((void *) arg, &rtc_tm, sizeof(rtc_tm)) ?
-diff -Nur linux-2.4.30/drivers/char/dummy_keyb.c linux-2.4.30-mips/drivers/char/dummy_keyb.c
---- linux-2.4.30/drivers/char/dummy_keyb.c 2003-08-25 13:44:41.000000000 +0200
-+++ linux-2.4.30-mips/drivers/char/dummy_keyb.c 2004-01-09 09:53:08.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/char/dummy_keyb.c linux-2.4.32-rc1.mips/drivers/char/dummy_keyb.c
+--- linux-2.4.32-rc1/drivers/char/dummy_keyb.c 2003-08-25 13:44:41.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/char/dummy_keyb.c 2004-01-09 09:53:08.000000000 +0100
@@ -140,3 +140,7 @@
{
printk("Dummy keyboard driver installed.\n");
@@ -12585,9 +12829,9 @@ diff -Nur linux-2.4.30/drivers/char/dummy_keyb.c linux-2.4.30-mips/drivers/char/
+unsigned char kbd_sysrq_key;
+unsigned char kbd_sysrq_xlate[128];
+#endif
-diff -Nur linux-2.4.30/drivers/char/dz.c linux-2.4.30-mips/drivers/char/dz.c
---- linux-2.4.30/drivers/char/dz.c 2005-01-19 15:09:44.000000000 +0100
-+++ linux-2.4.30-mips/drivers/char/dz.c 2004-12-27 05:13:42.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/char/dz.c linux-2.4.32-rc1.mips/drivers/char/dz.c
+--- linux-2.4.32-rc1/drivers/char/dz.c 2005-01-19 15:09:44.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/char/dz.c 2004-12-27 05:13:42.000000000 +0100
@@ -1,11 +1,13 @@
/*
- * dz.c: Serial port driver for DECStations equiped
@@ -13457,9 +13701,9 @@ diff -Nur linux-2.4.30/drivers/char/dz.c linux-2.4.30-mips/drivers/char/dz.c
};
void __init dz_serial_console_init(void)
-diff -Nur linux-2.4.30/drivers/char/dz.h linux-2.4.30-mips/drivers/char/dz.h
---- linux-2.4.30/drivers/char/dz.h 2002-08-03 02:39:43.000000000 +0200
-+++ linux-2.4.30-mips/drivers/char/dz.h 2004-09-28 02:53:01.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/char/dz.h linux-2.4.32-rc1.mips/drivers/char/dz.h
+--- linux-2.4.32-rc1/drivers/char/dz.h 2002-08-03 02:39:43.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/char/dz.h 2004-09-28 02:53:01.000000000 +0200
@@ -10,6 +10,8 @@
#ifndef DZ_SERIAL_H
#define DZ_SERIAL_H
@@ -13608,9 +13852,9 @@ diff -Nur linux-2.4.30/drivers/char/dz.h linux-2.4.30-mips/drivers/char/dz.h
-#endif
-
#endif /* DZ_SERIAL_H */
-diff -Nur linux-2.4.30/drivers/char/ibm_workpad_keymap.map linux-2.4.30-mips/drivers/char/ibm_workpad_keymap.map
---- linux-2.4.30/drivers/char/ibm_workpad_keymap.map 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/drivers/char/ibm_workpad_keymap.map 2003-12-20 15:20:44.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/char/ibm_workpad_keymap.map linux-2.4.32-rc1.mips/drivers/char/ibm_workpad_keymap.map
+--- linux-2.4.32-rc1/drivers/char/ibm_workpad_keymap.map 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/char/ibm_workpad_keymap.map 2003-12-20 15:20:44.000000000 +0100
@@ -0,0 +1,343 @@
+# Keymap for IBM Workpad z50
+# US Mapping
@@ -13955,9 +14199,9 @@ diff -Nur linux-2.4.30/drivers/char/ibm_workpad_keymap.map linux-2.4.30-mips/dri
+keycode 93 = AltGr
+keycode 94 = ShiftR
+ shift keycode 94 = Caps_Lock
-diff -Nur linux-2.4.30/drivers/char/indydog.c linux-2.4.30-mips/drivers/char/indydog.c
---- linux-2.4.30/drivers/char/indydog.c 2003-08-25 13:44:41.000000000 +0200
-+++ linux-2.4.30-mips/drivers/char/indydog.c 2004-06-22 17:32:07.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/char/indydog.c linux-2.4.32-rc1.mips/drivers/char/indydog.c
+--- linux-2.4.32-rc1/drivers/char/indydog.c 2003-08-25 13:44:41.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/char/indydog.c 2004-06-22 17:32:07.000000000 +0200
@@ -1,5 +1,5 @@
/*
- * IndyDog 0.2 A Hardware Watchdog Device for SGI IP22
@@ -14201,9 +14445,9 @@ diff -Nur linux-2.4.30/drivers/char/indydog.c linux-2.4.30-mips/drivers/char/ind
+MODULE_AUTHOR("Guido Guenther <agx@sigxcpu.org>");
+MODULE_DESCRIPTION("Hardware Watchdog Device for SGI IP22");
MODULE_LICENSE("GPL");
-diff -Nur linux-2.4.30/drivers/char/ip27-rtc.c linux-2.4.30-mips/drivers/char/ip27-rtc.c
---- linux-2.4.30/drivers/char/ip27-rtc.c 2004-02-18 14:36:31.000000000 +0100
-+++ linux-2.4.30-mips/drivers/char/ip27-rtc.c 2004-04-06 03:35:30.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/char/ip27-rtc.c linux-2.4.32-rc1.mips/drivers/char/ip27-rtc.c
+--- linux-2.4.32-rc1/drivers/char/ip27-rtc.c 2004-02-18 14:36:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/char/ip27-rtc.c 2004-04-06 03:35:30.000000000 +0200
@@ -44,6 +44,7 @@
#include <asm/sn/klconfig.h>
#include <asm/sn/sn0/ip27.h>
@@ -14233,9 +14477,60 @@ diff -Nur linux-2.4.30/drivers/char/ip27-rtc.c linux-2.4.30-mips/drivers/char/ip
+MODULE_AUTHOR("Ralf Baechle <ralf@linux-mips.org>");
+MODULE_DESCRIPTION("SGI IP27 M48T35 RTC driver");
+MODULE_LICENSE("GPL");
-diff -Nur linux-2.4.30/drivers/char/mips_rtc.c linux-2.4.30-mips/drivers/char/mips_rtc.c
---- linux-2.4.30/drivers/char/mips_rtc.c 2004-01-05 14:53:56.000000000 +0100
-+++ linux-2.4.30-mips/drivers/char/mips_rtc.c 2004-06-28 14:54:53.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/char/Makefile linux-2.4.32-rc1.mips/drivers/char/Makefile
+--- linux-2.4.32-rc1/drivers/char/Makefile 2004-08-08 01:26:04.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/char/Makefile 2005-02-11 22:09:56.000000000 +0100
+@@ -48,7 +48,12 @@
+ KEYBD =
+ endif
+ ifeq ($(CONFIG_VR41XX_KIU),y)
+- KEYMAP =
++ ifeq ($(CONFIG_IBM_WORKPAD),y)
++ KEYMAP = ibm_workpad_keymap.o
++ endif
++ ifeq ($(CONFIG_VICTOR_MPC30X),y)
++ KEYMAP = victor_mpc30x_keymap.o
++ endif
+ KEYBD = vr41xx_keyb.o
+ endif
+ endif
+@@ -251,7 +256,6 @@
+ obj-$(CONFIG_RTC) += rtc.o
+ obj-$(CONFIG_GEN_RTC) += genrtc.o
+ obj-$(CONFIG_EFI_RTC) += efirtc.o
+-obj-$(CONFIG_SGI_DS1286) += ds1286.o
+ obj-$(CONFIG_MIPS_RTC) += mips_rtc.o
+ obj-$(CONFIG_SGI_IP27_RTC) += ip27-rtc.o
+ ifeq ($(CONFIG_PPC),)
+@@ -259,6 +263,7 @@
+ endif
+ obj-$(CONFIG_TOSHIBA) += toshiba.o
+ obj-$(CONFIG_I8K) += i8k.o
++obj-$(CONFIG_DS1286) += ds1286.o
+ obj-$(CONFIG_DS1620) += ds1620.o
+ obj-$(CONFIG_DS1742) += ds1742.o
+ obj-$(CONFIG_INTEL_RNG) += i810_rng.o
+@@ -269,6 +274,7 @@
+
+ obj-$(CONFIG_ITE_GPIO) += ite_gpio.o
+ obj-$(CONFIG_AU1X00_GPIO) += au1000_gpio.o
++obj-$(CONFIG_AU1550_PSC_SPI) += au1550_psc_spi.o
+ obj-$(CONFIG_AU1X00_USB_TTY) += au1000_usbtty.o
+ obj-$(CONFIG_AU1X00_USB_RAW) += au1000_usbraw.o
+ obj-$(CONFIG_COBALT_LCD) += lcd.o
+@@ -353,3 +359,9 @@
+
+ qtronixmap.c: qtronixmap.map
+ set -e ; loadkeys --mktable $< | sed -e 's/^static *//' > $@
++
++ibm_workpad_keymap.c: ibm_workpad_keymap.map
++ set -e ; loadkeys --mktable $< | sed -e 's/^static *//' > $@
++
++victor_mpc30x_keymap.c: victor_mpc30x_keymap.map
++ set -e ; loadkeys --mktable $< | sed -e 's/^static *//' > $@
+diff -Nur linux-2.4.32-rc1/drivers/char/mips_rtc.c linux-2.4.32-rc1.mips/drivers/char/mips_rtc.c
+--- linux-2.4.32-rc1/drivers/char/mips_rtc.c 2004-01-05 14:53:56.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/char/mips_rtc.c 2004-06-28 14:54:53.000000000 +0200
@@ -53,14 +53,6 @@
#include <asm/io.h>
#include <asm/uaccess.h>
@@ -14251,9 +14546,9 @@ diff -Nur linux-2.4.30/drivers/char/mips_rtc.c linux-2.4.30-mips/drivers/char/mi
#include <asm/time.h>
static unsigned long rtc_status = 0; /* bitmapped status byte. */
-diff -Nur linux-2.4.30/drivers/char/sb1250_duart.c linux-2.4.30-mips/drivers/char/sb1250_duart.c
---- linux-2.4.30/drivers/char/sb1250_duart.c 2004-02-18 14:36:31.000000000 +0100
-+++ linux-2.4.30-mips/drivers/char/sb1250_duart.c 2004-09-17 01:25:44.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/char/sb1250_duart.c linux-2.4.32-rc1.mips/drivers/char/sb1250_duart.c
+--- linux-2.4.32-rc1/drivers/char/sb1250_duart.c 2004-02-18 14:36:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/char/sb1250_duart.c 2004-09-17 01:25:44.000000000 +0200
@@ -328,10 +328,11 @@
if (c <= 0) break;
@@ -14308,9 +14603,9 @@ diff -Nur linux-2.4.30/drivers/char/sb1250_duart.c linux-2.4.30-mips/drivers/cha
break;
case TIOCSSERIAL:
printk("Ignoring TIOCSSERIAL\n");
-diff -Nur linux-2.4.30/drivers/char/serial.c linux-2.4.30-mips/drivers/char/serial.c
---- linux-2.4.30/drivers/char/serial.c 2005-01-19 15:09:50.000000000 +0100
-+++ linux-2.4.30-mips/drivers/char/serial.c 2004-12-27 05:13:43.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/char/serial.c linux-2.4.32-rc1.mips/drivers/char/serial.c
+--- linux-2.4.32-rc1/drivers/char/serial.c 2005-10-24 11:33:29.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/char/serial.c 2005-09-23 22:41:22.000000000 +0200
@@ -62,6 +62,12 @@
* Robert Schwebel <robert@schwebel.de>,
* Juergen Beisert <jbeisert@eurodsn.de>,
@@ -14356,9 +14651,9 @@ diff -Nur linux-2.4.30/drivers/char/serial.c linux-2.4.30-mips/drivers/char/seri
/*
* We used to support using pause I/O for certain machines. We
-diff -Nur linux-2.4.30/drivers/char/victor_mpc30x_keymap.map linux-2.4.30-mips/drivers/char/victor_mpc30x_keymap.map
---- linux-2.4.30/drivers/char/victor_mpc30x_keymap.map 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/drivers/char/victor_mpc30x_keymap.map 2004-02-05 18:04:42.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/char/victor_mpc30x_keymap.map linux-2.4.32-rc1.mips/drivers/char/victor_mpc30x_keymap.map
+--- linux-2.4.32-rc1/drivers/char/victor_mpc30x_keymap.map 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/char/victor_mpc30x_keymap.map 2004-02-05 18:04:42.000000000 +0100
@@ -0,0 +1,102 @@
+# Victor Interlink MP-C303/304 keyboard keymap
+#
@@ -14462,9 +14757,9 @@ diff -Nur linux-2.4.30/drivers/char/victor_mpc30x_keymap.map linux-2.4.30-mips/d
+ alt keycode 31 = PageDown
+keycode 47 = Right
+ alt keycode 47 = End
-diff -Nur linux-2.4.30/drivers/char/vr41xx_keyb.c linux-2.4.30-mips/drivers/char/vr41xx_keyb.c
---- linux-2.4.30/drivers/char/vr41xx_keyb.c 2004-02-18 14:36:31.000000000 +0100
-+++ linux-2.4.30-mips/drivers/char/vr41xx_keyb.c 2004-02-17 13:08:55.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/char/vr41xx_keyb.c linux-2.4.32-rc1.mips/drivers/char/vr41xx_keyb.c
+--- linux-2.4.32-rc1/drivers/char/vr41xx_keyb.c 2004-02-18 14:36:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/char/vr41xx_keyb.c 2004-02-17 13:08:55.000000000 +0100
@@ -308,7 +308,7 @@
if (found != 0) {
kiu_base = VRC4173_KIU_OFFSET;
@@ -14483,9 +14778,9 @@ diff -Nur linux-2.4.30/drivers/char/vr41xx_keyb.c linux-2.4.30-mips/drivers/char
kiu_writew(KIURST_KIURST, KIURST);
-diff -Nur linux-2.4.30/drivers/i2c/Config.in linux-2.4.30-mips/drivers/i2c/Config.in
---- linux-2.4.30/drivers/i2c/Config.in 2004-04-14 15:05:29.000000000 +0200
-+++ linux-2.4.30-mips/drivers/i2c/Config.in 2005-02-11 20:49:04.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/i2c/Config.in linux-2.4.32-rc1.mips/drivers/i2c/Config.in
+--- linux-2.4.32-rc1/drivers/i2c/Config.in 2004-04-14 15:05:29.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/i2c/Config.in 2005-02-11 20:49:04.000000000 +0100
@@ -57,6 +57,10 @@
if [ "$CONFIG_SGI_IP22" = "y" ]; then
dep_tristate 'I2C SGI interfaces' CONFIG_I2C_ALGO_SGI $CONFIG_I2C
@@ -14497,29 +14792,9 @@ diff -Nur linux-2.4.30/drivers/i2c/Config.in linux-2.4.30-mips/drivers/i2c/Confi
# This is needed for automatic patch generation: sensors code starts here
# This is needed for automatic patch generation: sensors code ends here
-diff -Nur linux-2.4.30/drivers/i2c/Makefile linux-2.4.30-mips/drivers/i2c/Makefile
---- linux-2.4.30/drivers/i2c/Makefile 2004-02-18 14:36:31.000000000 +0100
-+++ linux-2.4.30-mips/drivers/i2c/Makefile 2005-02-11 20:49:04.000000000 +0100
-@@ -6,7 +6,7 @@
-
- export-objs := i2c-core.o i2c-algo-bit.o i2c-algo-pcf.o \
- i2c-algo-ite.o i2c-algo-sibyte.o i2c-algo-sgi.o \
-- i2c-proc.o
-+ i2c-algo-au1550.o i2c-proc.o i2c-au1550.o
-
- obj-$(CONFIG_I2C) += i2c-core.o
- obj-$(CONFIG_I2C_CHARDEV) += i2c-dev.o
-@@ -25,6 +25,7 @@
- obj-$(CONFIG_I2C_ALGO_SIBYTE) += i2c-algo-sibyte.o i2c-sibyte.o
- obj-$(CONFIG_I2C_MAX1617) += i2c-max1617.o
- obj-$(CONFIG_I2C_ALGO_SGI) += i2c-algo-sgi.o
-+obj-$(CONFIG_I2C_ALGO_AU1550) += i2c-algo-au1550.o i2c-au1550.o
-
- # This is needed for automatic patch generation: sensors code starts here
- # This is needed for automatic patch generation: sensors code ends here
-diff -Nur linux-2.4.30/drivers/i2c/i2c-algo-au1550.c linux-2.4.30-mips/drivers/i2c/i2c-algo-au1550.c
---- linux-2.4.30/drivers/i2c/i2c-algo-au1550.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/drivers/i2c/i2c-algo-au1550.c 2005-02-11 20:49:04.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/i2c/i2c-algo-au1550.c linux-2.4.32-rc1.mips/drivers/i2c/i2c-algo-au1550.c
+--- linux-2.4.32-rc1/drivers/i2c/i2c-algo-au1550.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/i2c/i2c-algo-au1550.c 2005-02-11 20:49:04.000000000 +0100
@@ -0,0 +1,340 @@
+/*
+ * i2c-algo-au1550.c: SMBus (i2c) driver algorithms for Alchemy PSC interface
@@ -14861,9 +15136,9 @@ diff -Nur linux-2.4.30/drivers/i2c/i2c-algo-au1550.c linux-2.4.30-mips/drivers/i
+MODULE_AUTHOR("Dan Malek <dan@embeddededge.com>");
+MODULE_DESCRIPTION("SMBus Au1550 algorithm");
+MODULE_LICENSE("GPL");
-diff -Nur linux-2.4.30/drivers/i2c/i2c-au1550.c linux-2.4.30-mips/drivers/i2c/i2c-au1550.c
---- linux-2.4.30/drivers/i2c/i2c-au1550.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/drivers/i2c/i2c-au1550.c 2005-02-11 20:49:04.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/i2c/i2c-au1550.c linux-2.4.32-rc1.mips/drivers/i2c/i2c-au1550.c
+--- linux-2.4.32-rc1/drivers/i2c/i2c-au1550.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/i2c/i2c-au1550.c 2005-02-11 20:49:04.000000000 +0100
@@ -0,0 +1,154 @@
+/*
+ * i2c-au1550.c: SMBus (i2c) adapter for Alchemy PSC interface
@@ -15019,9 +15294,9 @@ diff -Nur linux-2.4.30/drivers/i2c/i2c-au1550.c linux-2.4.30-mips/drivers/i2c/i2
+{
+ i2c_au1550_del_bus(&pb1550_board_adapter);
+}
-diff -Nur linux-2.4.30/drivers/i2c/i2c-core.c linux-2.4.30-mips/drivers/i2c/i2c-core.c
---- linux-2.4.30/drivers/i2c/i2c-core.c 2005-01-19 15:09:54.000000000 +0100
-+++ linux-2.4.30-mips/drivers/i2c/i2c-core.c 2004-11-29 18:47:16.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/i2c/i2c-core.c linux-2.4.32-rc1.mips/drivers/i2c/i2c-core.c
+--- linux-2.4.32-rc1/drivers/i2c/i2c-core.c 2005-06-01 02:56:56.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/i2c/i2c-core.c 2005-05-23 14:12:30.000000000 +0200
@@ -1280,6 +1280,9 @@
#ifdef CONFIG_I2C_MAX1617
extern int i2c_max1617_init(void);
@@ -15043,9 +15318,29 @@ diff -Nur linux-2.4.30/drivers/i2c/i2c-core.c linux-2.4.30-mips/drivers/i2c/i2c-
/* -------------- proc interface ---- */
#ifdef CONFIG_I2C_PROC
sensors_init();
-diff -Nur linux-2.4.30/drivers/media/video/indycam.c linux-2.4.30-mips/drivers/media/video/indycam.c
---- linux-2.4.30/drivers/media/video/indycam.c 2004-02-18 14:36:31.000000000 +0100
-+++ linux-2.4.30-mips/drivers/media/video/indycam.c 2004-12-09 21:32:05.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/i2c/Makefile linux-2.4.32-rc1.mips/drivers/i2c/Makefile
+--- linux-2.4.32-rc1/drivers/i2c/Makefile 2004-02-18 14:36:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/i2c/Makefile 2005-02-11 20:49:04.000000000 +0100
+@@ -6,7 +6,7 @@
+
+ export-objs := i2c-core.o i2c-algo-bit.o i2c-algo-pcf.o \
+ i2c-algo-ite.o i2c-algo-sibyte.o i2c-algo-sgi.o \
+- i2c-proc.o
++ i2c-algo-au1550.o i2c-proc.o i2c-au1550.o
+
+ obj-$(CONFIG_I2C) += i2c-core.o
+ obj-$(CONFIG_I2C_CHARDEV) += i2c-dev.o
+@@ -25,6 +25,7 @@
+ obj-$(CONFIG_I2C_ALGO_SIBYTE) += i2c-algo-sibyte.o i2c-sibyte.o
+ obj-$(CONFIG_I2C_MAX1617) += i2c-max1617.o
+ obj-$(CONFIG_I2C_ALGO_SGI) += i2c-algo-sgi.o
++obj-$(CONFIG_I2C_ALGO_AU1550) += i2c-algo-au1550.o i2c-au1550.o
+
+ # This is needed for automatic patch generation: sensors code starts here
+ # This is needed for automatic patch generation: sensors code ends here
+diff -Nur linux-2.4.32-rc1/drivers/media/video/indycam.c linux-2.4.32-rc1.mips/drivers/media/video/indycam.c
+--- linux-2.4.32-rc1/drivers/media/video/indycam.c 2004-02-18 14:36:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/media/video/indycam.c 2004-12-09 21:32:05.000000000 +0100
@@ -50,13 +50,14 @@
0x80, /* INDYCAM_GAMMA */
};
@@ -15095,9 +15390,9 @@ diff -Nur linux-2.4.30/drivers/media/video/indycam.c linux-2.4.30-mips/drivers/m
MOD_INC_USE_COUNT;
return 0;
-diff -Nur linux-2.4.30/drivers/media/video/vino.c linux-2.4.30-mips/drivers/media/video/vino.c
---- linux-2.4.30/drivers/media/video/vino.c 2004-02-18 14:36:31.000000000 +0100
-+++ linux-2.4.30-mips/drivers/media/video/vino.c 2004-12-10 05:02:54.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/media/video/vino.c linux-2.4.32-rc1.mips/drivers/media/video/vino.c
+--- linux-2.4.32-rc1/drivers/media/video/vino.c 2004-02-18 14:36:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/media/video/vino.c 2004-12-10 05:02:54.000000000 +0100
@@ -5,6 +5,8 @@
* License version 2 as published by the Free Software Foundation.
*
@@ -15218,9 +15513,9 @@ diff -Nur linux-2.4.30/drivers/media/video/vino.c linux-2.4.30-mips/drivers/medi
}
static int vino_grab(struct vino_device *v, int frame)
-diff -Nur linux-2.4.30/drivers/mtd/devices/docprobe.c linux-2.4.30-mips/drivers/mtd/devices/docprobe.c
---- linux-2.4.30/drivers/mtd/devices/docprobe.c 2003-06-13 16:51:34.000000000 +0200
-+++ linux-2.4.30-mips/drivers/mtd/devices/docprobe.c 2003-06-16 01:42:21.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/mtd/devices/docprobe.c linux-2.4.32-rc1.mips/drivers/mtd/devices/docprobe.c
+--- linux-2.4.32-rc1/drivers/mtd/devices/docprobe.c 2003-06-13 16:51:34.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/mtd/devices/docprobe.c 2003-06-16 01:42:21.000000000 +0200
@@ -89,10 +89,10 @@
0xe4000000,
#elif defined(CONFIG_MOMENCO_OCELOT)
@@ -15235,9 +15530,9 @@ diff -Nur linux-2.4.30/drivers/mtd/devices/docprobe.c linux-2.4.30-mips/drivers/
#warning Unknown architecture for DiskOnChip. No default probe locations defined
#endif
0 };
-diff -Nur linux-2.4.30/drivers/mtd/devices/ms02-nv.c linux-2.4.30-mips/drivers/mtd/devices/ms02-nv.c
---- linux-2.4.30/drivers/mtd/devices/ms02-nv.c 2003-06-13 16:51:34.000000000 +0200
-+++ linux-2.4.30-mips/drivers/mtd/devices/ms02-nv.c 2004-07-30 12:22:40.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/mtd/devices/ms02-nv.c linux-2.4.32-rc1.mips/drivers/mtd/devices/ms02-nv.c
+--- linux-2.4.32-rc1/drivers/mtd/devices/ms02-nv.c 2003-06-13 16:51:34.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/mtd/devices/ms02-nv.c 2004-07-30 12:22:40.000000000 +0200
@@ -1,10 +1,10 @@
/*
- * Copyright (c) 2001 Maciej W. Rozycki
@@ -15311,9 +15606,9 @@ diff -Nur linux-2.4.30/drivers/mtd/devices/ms02-nv.c linux-2.4.30-mips/drivers/m
csr = (volatile u32 *)KN03_MCR_BASE;
if (*csr & KN03_MCR_BNK32M)
stride = 2;
-diff -Nur linux-2.4.30/drivers/mtd/devices/ms02-nv.h linux-2.4.30-mips/drivers/mtd/devices/ms02-nv.h
---- linux-2.4.30/drivers/mtd/devices/ms02-nv.h 2002-11-29 00:53:13.000000000 +0100
-+++ linux-2.4.30-mips/drivers/mtd/devices/ms02-nv.h 2004-07-30 12:22:40.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/mtd/devices/ms02-nv.h linux-2.4.32-rc1.mips/drivers/mtd/devices/ms02-nv.h
+--- linux-2.4.32-rc1/drivers/mtd/devices/ms02-nv.h 2002-11-29 00:53:13.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/mtd/devices/ms02-nv.h 2004-07-30 12:22:40.000000000 +0200
@@ -1,32 +1,96 @@
/*
- * Copyright (c) 2001 Maciej W. Rozycki
@@ -15420,9 +15715,9 @@ diff -Nur linux-2.4.30/drivers/mtd/devices/ms02-nv.h linux-2.4.30-mips/drivers/m
typedef volatile u32 ms02nv_uint;
struct ms02nv_private {
-diff -Nur linux-2.4.30/drivers/mtd/maps/Config.in linux-2.4.30-mips/drivers/mtd/maps/Config.in
---- linux-2.4.30/drivers/mtd/maps/Config.in 2003-06-13 16:51:34.000000000 +0200
-+++ linux-2.4.30-mips/drivers/mtd/maps/Config.in 2004-02-26 01:46:35.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/mtd/maps/Config.in linux-2.4.32-rc1.mips/drivers/mtd/maps/Config.in
+--- linux-2.4.32-rc1/drivers/mtd/maps/Config.in 2003-06-13 16:51:34.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/mtd/maps/Config.in 2004-02-26 01:46:35.000000000 +0100
@@ -51,11 +51,26 @@
dep_tristate ' Pb1000 MTD support' CONFIG_MTD_PB1000 $CONFIG_MIPS_PB1000
dep_tristate ' Pb1500 MTD support' CONFIG_MTD_PB1500 $CONFIG_MIPS_PB1500
@@ -15450,33 +15745,9 @@ diff -Nur linux-2.4.30/drivers/mtd/maps/Config.in linux-2.4.30-mips/drivers/mtd/
dep_tristate ' Flash chip mapping on ITE QED-4N-S01B, Globespan IVR or custom board' CONFIG_MTD_CSTM_MIPS_IXX $CONFIG_MTD_CFI $CONFIG_MTD_JEDEC $CONFIG_MTD_PARTITIONS
if [ "$CONFIG_MTD_CSTM_MIPS_IXX" = "y" -o "$CONFIG_MTD_CSTM_MIPS_IXX" = "m" ]; then
hex ' Physical start address of flash mapping' CONFIG_MTD_CSTM_MIPS_IXX_START 0x8000000
-diff -Nur linux-2.4.30/drivers/mtd/maps/Makefile linux-2.4.30-mips/drivers/mtd/maps/Makefile
---- linux-2.4.30/drivers/mtd/maps/Makefile 2003-06-13 16:51:34.000000000 +0200
-+++ linux-2.4.30-mips/drivers/mtd/maps/Makefile 2004-02-26 01:46:35.000000000 +0100
-@@ -52,7 +52,13 @@
- obj-$(CONFIG_MTD_PB1000) += pb1xxx-flash.o
- obj-$(CONFIG_MTD_PB1100) += pb1xxx-flash.o
- obj-$(CONFIG_MTD_PB1500) += pb1xxx-flash.o
-+obj-$(CONFIG_MTD_XXS1500) += xxs1500.o
-+obj-$(CONFIG_MTD_MTX1) += mtx-1.o
- obj-$(CONFIG_MTD_LASAT) += lasat.o
-+obj-$(CONFIG_MTD_DB1X00) += db1x00-flash.o
-+obj-$(CONFIG_MTD_PB1550) += pb1550-flash.o
-+obj-$(CONFIG_MTD_HYDROGEN3) += hydrogen3-flash.o
-+obj-$(CONFIG_MTD_BOSPORUS) += pb1xxx-flash.o
- obj-$(CONFIG_MTD_AUTCPU12) += autcpu12-nvram.o
- obj-$(CONFIG_MTD_EDB7312) += edb7312.o
- obj-$(CONFIG_MTD_IMPA7) += impa7.o
-@@ -61,5 +67,6 @@
- obj-$(CONFIG_MTD_UCLINUX) += uclinux.o
- obj-$(CONFIG_MTD_NETtel) += nettel.o
- obj-$(CONFIG_MTD_SCB2_FLASH) += scb2_flash.o
-+obj-$(CONFIG_MTD_MIRAGE) += mirage-flash.o
-
- include $(TOPDIR)/Rules.make
-diff -Nur linux-2.4.30/drivers/mtd/maps/db1x00-flash.c linux-2.4.30-mips/drivers/mtd/maps/db1x00-flash.c
---- linux-2.4.30/drivers/mtd/maps/db1x00-flash.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/drivers/mtd/maps/db1x00-flash.c 2005-02-03 07:35:29.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/mtd/maps/db1x00-flash.c linux-2.4.32-rc1.mips/drivers/mtd/maps/db1x00-flash.c
+--- linux-2.4.32-rc1/drivers/mtd/maps/db1x00-flash.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/mtd/maps/db1x00-flash.c 2005-02-03 07:35:29.000000000 +0100
@@ -0,0 +1,283 @@
+/*
+ * Flash memory access on Alchemy Db1xxx boards
@@ -15761,9 +16032,9 @@ diff -Nur linux-2.4.30/drivers/mtd/maps/db1x00-flash.c linux-2.4.30-mips/drivers
+MODULE_AUTHOR("Pete Popov");
+MODULE_DESCRIPTION("Db1x00 mtd map driver");
+MODULE_LICENSE("GPL");
-diff -Nur linux-2.4.30/drivers/mtd/maps/hydrogen3-flash.c linux-2.4.30-mips/drivers/mtd/maps/hydrogen3-flash.c
---- linux-2.4.30/drivers/mtd/maps/hydrogen3-flash.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/drivers/mtd/maps/hydrogen3-flash.c 2004-01-10 23:40:18.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/mtd/maps/hydrogen3-flash.c linux-2.4.32-rc1.mips/drivers/mtd/maps/hydrogen3-flash.c
+--- linux-2.4.32-rc1/drivers/mtd/maps/hydrogen3-flash.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/mtd/maps/hydrogen3-flash.c 2004-01-10 23:40:18.000000000 +0100
@@ -0,0 +1,189 @@
+/*
+ * Flash memory access on Alchemy HydrogenIII boards
@@ -15954,9 +16225,9 @@ diff -Nur linux-2.4.30/drivers/mtd/maps/hydrogen3-flash.c linux-2.4.30-mips/driv
+MODULE_AUTHOR("Pete Popov");
+MODULE_DESCRIPTION("HydrogenIII mtd map driver");
+MODULE_LICENSE("GPL");
-diff -Nur linux-2.4.30/drivers/mtd/maps/lasat.c linux-2.4.30-mips/drivers/mtd/maps/lasat.c
---- linux-2.4.30/drivers/mtd/maps/lasat.c 2003-06-13 16:51:34.000000000 +0200
-+++ linux-2.4.30-mips/drivers/mtd/maps/lasat.c 2003-08-18 04:59:02.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/mtd/maps/lasat.c linux-2.4.32-rc1.mips/drivers/mtd/maps/lasat.c
+--- linux-2.4.32-rc1/drivers/mtd/maps/lasat.c 2003-06-13 16:51:34.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/mtd/maps/lasat.c 2003-08-18 04:59:02.000000000 +0200
@@ -1,15 +1,6 @@
/*
* Flash device on lasat 100 and 200 boards
@@ -16062,9 +16333,33 @@ diff -Nur linux-2.4.30/drivers/mtd/maps/lasat.c linux-2.4.30-mips/drivers/mtd/ma
}
}
-diff -Nur linux-2.4.30/drivers/mtd/maps/mirage-flash.c linux-2.4.30-mips/drivers/mtd/maps/mirage-flash.c
---- linux-2.4.30/drivers/mtd/maps/mirage-flash.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/drivers/mtd/maps/mirage-flash.c 2003-12-22 04:37:22.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/mtd/maps/Makefile linux-2.4.32-rc1.mips/drivers/mtd/maps/Makefile
+--- linux-2.4.32-rc1/drivers/mtd/maps/Makefile 2003-06-13 16:51:34.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/mtd/maps/Makefile 2004-02-26 01:46:35.000000000 +0100
+@@ -52,7 +52,13 @@
+ obj-$(CONFIG_MTD_PB1000) += pb1xxx-flash.o
+ obj-$(CONFIG_MTD_PB1100) += pb1xxx-flash.o
+ obj-$(CONFIG_MTD_PB1500) += pb1xxx-flash.o
++obj-$(CONFIG_MTD_XXS1500) += xxs1500.o
++obj-$(CONFIG_MTD_MTX1) += mtx-1.o
+ obj-$(CONFIG_MTD_LASAT) += lasat.o
++obj-$(CONFIG_MTD_DB1X00) += db1x00-flash.o
++obj-$(CONFIG_MTD_PB1550) += pb1550-flash.o
++obj-$(CONFIG_MTD_HYDROGEN3) += hydrogen3-flash.o
++obj-$(CONFIG_MTD_BOSPORUS) += pb1xxx-flash.o
+ obj-$(CONFIG_MTD_AUTCPU12) += autcpu12-nvram.o
+ obj-$(CONFIG_MTD_EDB7312) += edb7312.o
+ obj-$(CONFIG_MTD_IMPA7) += impa7.o
+@@ -61,5 +67,6 @@
+ obj-$(CONFIG_MTD_UCLINUX) += uclinux.o
+ obj-$(CONFIG_MTD_NETtel) += nettel.o
+ obj-$(CONFIG_MTD_SCB2_FLASH) += scb2_flash.o
++obj-$(CONFIG_MTD_MIRAGE) += mirage-flash.o
+
+ include $(TOPDIR)/Rules.make
+diff -Nur linux-2.4.32-rc1/drivers/mtd/maps/mirage-flash.c linux-2.4.32-rc1.mips/drivers/mtd/maps/mirage-flash.c
+--- linux-2.4.32-rc1/drivers/mtd/maps/mirage-flash.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/mtd/maps/mirage-flash.c 2003-12-22 04:37:22.000000000 +0100
@@ -0,0 +1,194 @@
+/*
+ * Flash memory access on AMD Mirage board.
@@ -16260,9 +16555,9 @@ diff -Nur linux-2.4.30/drivers/mtd/maps/mirage-flash.c linux-2.4.30-mips/drivers
+MODULE_AUTHOR("Embedded Edge");
+MODULE_DESCRIPTION("Mirage mtd map driver");
+MODULE_LICENSE("GPL");
-diff -Nur linux-2.4.30/drivers/mtd/maps/mtx-1.c linux-2.4.30-mips/drivers/mtd/maps/mtx-1.c
---- linux-2.4.30/drivers/mtd/maps/mtx-1.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/drivers/mtd/maps/mtx-1.c 2003-06-27 02:04:35.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/mtd/maps/mtx-1.c linux-2.4.32-rc1.mips/drivers/mtd/maps/mtx-1.c
+--- linux-2.4.32-rc1/drivers/mtd/maps/mtx-1.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/mtd/maps/mtx-1.c 2003-06-27 02:04:35.000000000 +0200
@@ -0,0 +1,181 @@
+/*
+ * Flash memory access on 4G Systems MTX-1 board
@@ -16445,9 +16740,9 @@ diff -Nur linux-2.4.30/drivers/mtd/maps/mtx-1.c linux-2.4.30-mips/drivers/mtd/ma
+MODULE_AUTHOR("Pete Popov");
+MODULE_DESCRIPTION("MTX-1 CFI map driver");
+MODULE_LICENSE("GPL");
-diff -Nur linux-2.4.30/drivers/mtd/maps/pb1550-flash.c linux-2.4.30-mips/drivers/mtd/maps/pb1550-flash.c
---- linux-2.4.30/drivers/mtd/maps/pb1550-flash.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/drivers/mtd/maps/pb1550-flash.c 2004-02-26 01:48:48.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/mtd/maps/pb1550-flash.c linux-2.4.32-rc1.mips/drivers/mtd/maps/pb1550-flash.c
+--- linux-2.4.32-rc1/drivers/mtd/maps/pb1550-flash.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/mtd/maps/pb1550-flash.c 2004-02-26 01:48:48.000000000 +0100
@@ -0,0 +1,270 @@
+/*
+ * Flash memory access on Alchemy Pb1550 board
@@ -16719,9 +17014,9 @@ diff -Nur linux-2.4.30/drivers/mtd/maps/pb1550-flash.c linux-2.4.30-mips/drivers
+MODULE_AUTHOR("Embedded Edge, LLC");
+MODULE_DESCRIPTION("Pb1550 mtd map driver");
+MODULE_LICENSE("GPL");
-diff -Nur linux-2.4.30/drivers/mtd/maps/pb1xxx-flash.c linux-2.4.30-mips/drivers/mtd/maps/pb1xxx-flash.c
---- linux-2.4.30/drivers/mtd/maps/pb1xxx-flash.c 2003-06-13 16:51:34.000000000 +0200
-+++ linux-2.4.30-mips/drivers/mtd/maps/pb1xxx-flash.c 2003-05-19 08:27:22.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/mtd/maps/pb1xxx-flash.c linux-2.4.32-rc1.mips/drivers/mtd/maps/pb1xxx-flash.c
+--- linux-2.4.32-rc1/drivers/mtd/maps/pb1xxx-flash.c 2003-06-13 16:51:34.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/mtd/maps/pb1xxx-flash.c 2003-05-19 08:27:22.000000000 +0200
@@ -192,6 +192,34 @@
#else
#error MTD_PB1500 define combo error /* should never happen */
@@ -16757,16 +17052,16 @@ diff -Nur linux-2.4.30/drivers/mtd/maps/pb1xxx-flash.c linux-2.4.30-mips/drivers
#else
#error Unsupported board
#endif
-diff -Nur linux-2.4.30/drivers/mtd/maps/xxs1500.c linux-2.4.30-mips/drivers/mtd/maps/xxs1500.c
---- linux-2.4.30/drivers/mtd/maps/xxs1500.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/drivers/mtd/maps/xxs1500.c 2003-08-02 04:06:01.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/mtd/maps/xxs1500.c linux-2.4.32-rc1.mips/drivers/mtd/maps/xxs1500.c
+--- linux-2.4.32-rc1/drivers/mtd/maps/xxs1500.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/mtd/maps/xxs1500.c 2003-08-02 04:06:01.000000000 +0200
@@ -0,0 +1,186 @@
+/*
+ * Flash memory access on MyCable XXS1500 board
+ *
+ * (C) 2003 Pete Popov <ppopov@mvista.com>
+ *
-+ * $Id: xxs1500.c,v 1.1.2.2 2003/08/02 02:06:01 ppopov Exp $
++ * $Id: xxs1500.c,v 1.1.2.1 2003/06/13 21:15:46 ppopov Exp $
+ */
+
+#include <linux/config.h>
@@ -16947,9 +17242,9 @@ diff -Nur linux-2.4.30/drivers/mtd/maps/xxs1500.c linux-2.4.30-mips/drivers/mtd/
+MODULE_AUTHOR("Pete Popov");
+MODULE_DESCRIPTION("XXS1500 CFI map driver");
+MODULE_LICENSE("GPL");
-diff -Nur linux-2.4.30/drivers/net/defxx.c linux-2.4.30-mips/drivers/net/defxx.c
---- linux-2.4.30/drivers/net/defxx.c 2004-11-17 12:54:21.000000000 +0100
-+++ linux-2.4.30-mips/drivers/net/defxx.c 2004-11-19 01:28:39.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/net/defxx.c linux-2.4.32-rc1.mips/drivers/net/defxx.c
+--- linux-2.4.32-rc1/drivers/net/defxx.c 2004-11-17 12:54:21.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/net/defxx.c 2004-11-19 01:28:39.000000000 +0100
@@ -10,24 +10,18 @@
*
* Abstract:
@@ -17790,9 +18085,9 @@ diff -Nur linux-2.4.30/drivers/net/defxx.c linux-2.4.30-mips/drivers/net/defxx.c
MODULE_LICENSE("GPL");
-diff -Nur linux-2.4.30/drivers/net/defxx.h linux-2.4.30-mips/drivers/net/defxx.h
---- linux-2.4.30/drivers/net/defxx.h 2001-02-13 22:15:05.000000000 +0100
-+++ linux-2.4.30-mips/drivers/net/defxx.h 2004-10-03 20:06:48.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/net/defxx.h linux-2.4.32-rc1.mips/drivers/net/defxx.h
+--- linux-2.4.32-rc1/drivers/net/defxx.h 2001-02-13 22:15:05.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/net/defxx.h 2004-10-03 20:06:48.000000000 +0200
@@ -12,17 +12,11 @@
* Contains all definitions specified by port specification and required
* by the defxx.c driver.
@@ -17881,9 +18176,9 @@ diff -Nur linux-2.4.30/drivers/net/defxx.h linux-2.4.30-mips/drivers/net/defxx.h
struct pci_dev * pci_dev;
u32 full_duplex_enb; /* FDDI Full Duplex enable (1 == on, 2 == off) */
u32 req_ttrt; /* requested TTRT value (in 80ns units) */
-diff -Nur linux-2.4.30/drivers/net/hamradio/hdlcdrv.c linux-2.4.30-mips/drivers/net/hamradio/hdlcdrv.c
---- linux-2.4.30/drivers/net/hamradio/hdlcdrv.c 2002-02-25 20:37:59.000000000 +0100
-+++ linux-2.4.30-mips/drivers/net/hamradio/hdlcdrv.c 2004-05-04 14:04:27.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/net/hamradio/hdlcdrv.c linux-2.4.32-rc1.mips/drivers/net/hamradio/hdlcdrv.c
+--- linux-2.4.32-rc1/drivers/net/hamradio/hdlcdrv.c 2002-02-25 20:37:59.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/net/hamradio/hdlcdrv.c 2004-05-04 14:04:27.000000000 +0200
@@ -587,6 +587,8 @@
return -EINVAL;
s = (struct hdlcdrv_state *)dev->priv;
@@ -17893,9 +18188,9 @@ diff -Nur linux-2.4.30/drivers/net/hamradio/hdlcdrv.c linux-2.4.30-mips/drivers/
if (s->ops && s->ops->close)
i = s->ops->close(dev);
if (s->skb)
-diff -Nur linux-2.4.30/drivers/net/irda/au1k_ir.c linux-2.4.30-mips/drivers/net/irda/au1k_ir.c
---- linux-2.4.30/drivers/net/irda/au1k_ir.c 2004-02-18 14:36:31.000000000 +0100
-+++ linux-2.4.30-mips/drivers/net/irda/au1k_ir.c 2005-02-03 07:35:29.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/net/irda/au1k_ir.c linux-2.4.32-rc1.mips/drivers/net/irda/au1k_ir.c
+--- linux-2.4.32-rc1/drivers/net/irda/au1k_ir.c 2004-02-18 14:36:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/net/irda/au1k_ir.c 2005-02-03 07:35:29.000000000 +0100
@@ -81,10 +81,6 @@
#define RUN_AT(x) (jiffies + (x))
@@ -17907,9 +18202,162 @@ diff -Nur linux-2.4.30/drivers/net/irda/au1k_ir.c linux-2.4.30-mips/drivers/net/
static spinlock_t ir_lock = SPIN_LOCK_UNLOCKED;
/*
-diff -Nur linux-2.4.30/drivers/pci/pci.c linux-2.4.30-mips/drivers/pci/pci.c
---- linux-2.4.30/drivers/pci/pci.c 2004-11-17 12:54:21.000000000 +0100
-+++ linux-2.4.30-mips/drivers/pci/pci.c 2004-11-19 01:28:41.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/net/sgiseeq.c linux-2.4.32-rc1.mips/drivers/net/sgiseeq.c
+--- linux-2.4.32-rc1/drivers/net/sgiseeq.c 2005-01-19 15:09:56.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/net/sgiseeq.c 2005-09-23 16:35:27.000000000 +0200
+@@ -24,16 +24,16 @@
+ #include <asm/io.h>
+ #include <asm/system.h>
+ #include <asm/bitops.h>
++#include <asm/paccess.h>
+ #include <asm/page.h>
+ #include <asm/pgtable.h>
++#include <asm/sgi/mc.h>
+ #include <asm/sgi/hpc3.h>
+ #include <asm/sgi/ip22.h>
+ #include <asm/sgialib.h>
+
+ #include "sgiseeq.h"
+
+-static char *version = "sgiseeq.c: David S. Miller (dm@engr.sgi.com)\n";
+-
+ static char *sgiseeqstr = "SGI Seeq8003";
+
+ /*
+@@ -113,9 +113,9 @@
+
+ static inline void hpc3_eth_reset(struct hpc3_ethregs *hregs)
+ {
+- hregs->rx_reset = HPC3_ERXRST_CRESET | HPC3_ERXRST_CLRIRQ;
++ hregs->reset = HPC3_ERST_CRESET | HPC3_ERST_CLRIRQ;
+ udelay(20);
+- hregs->rx_reset = 0;
++ hregs->reset = 0;
+ }
+
+ static inline void reset_hpc3_and_seeq(struct hpc3_ethregs *hregs,
+@@ -238,7 +238,6 @@
+
+ #define TSTAT_INIT_SEEQ (SEEQ_TCMD_IPT|SEEQ_TCMD_I16|SEEQ_TCMD_IC|SEEQ_TCMD_IUF)
+ #define TSTAT_INIT_EDLC ((TSTAT_INIT_SEEQ) | SEEQ_TCMD_RB2)
+-#define RDMACFG_INIT (HPC3_ERXDCFG_FRXDC | HPC3_ERXDCFG_FEOP | HPC3_ERXDCFG_FIRQ)
+
+ static int init_seeq(struct net_device *dev, struct sgiseeq_private *sp,
+ struct sgiseeq_regs *sregs)
+@@ -260,8 +259,6 @@
+ sregs->tstat = TSTAT_INIT_SEEQ;
+ }
+
+- hregs->rx_dconfig |= RDMACFG_INIT;
+-
+ hregs->rx_ndptr = PHYSADDR(&sp->srings.rx_desc[0]);
+ hregs->tx_ndptr = PHYSADDR(&sp->srings.tx_desc[0]);
+
+@@ -432,7 +429,7 @@
+ spin_lock(&sp->tx_lock);
+
+ /* Ack the IRQ and set software state. */
+- hregs->rx_reset = HPC3_ERXRST_CLRIRQ;
++ hregs->reset = HPC3_ERST_CLRIRQ;
+
+ /* Always check for received packets. */
+ sgiseeq_rx(dev, sp, hregs, sregs);
+@@ -616,7 +613,7 @@
+
+ #define ALIGNED(x) ((((unsigned long)(x)) + 0xf) & ~(0xf))
+
+-int sgiseeq_init(struct hpc3_regs* regs, int irq)
++int sgiseeq_init(struct hpc3_regs* hpcregs, int irq, int has_eeprom)
+ {
+ struct net_device *dev;
+ struct sgiseeq_private *sp;
+@@ -629,7 +626,7 @@
+ goto err_out;
+ }
+ /* Make private data page aligned */
+- sp = (struct sgiseeq_private *) get_zeroed_page(GFP_KERNEL);
++ sp = (struct sgiseeq_private *) get_zeroed_page(GFP_KERNEL);
+ if (!sp) {
+ printk(KERN_ERR "Sgiseeq: Page alloc failed, aborting.\n");
+ err = -ENOMEM;
+@@ -644,7 +641,9 @@
+
+ #define EADDR_NVOFS 250
+ for (i = 0; i < 3; i++) {
+- unsigned short tmp = ip22_nvram_read(EADDR_NVOFS / 2 + i);
++ unsigned short tmp = has_eeprom ?
++ ip22_eeprom_read(&hpcregs->eeprom, EADDR_NVOFS / 2+i) :
++ ip22_nvram_read(EADDR_NVOFS / 2+i);
+
+ dev->dev_addr[2 * i] = tmp >> 8;
+ dev->dev_addr[2 * i + 1] = tmp & 0xff;
+@@ -654,8 +653,8 @@
+ gpriv = sp;
+ gdev = dev;
+ #endif
+- sp->sregs = (struct sgiseeq_regs *) &hpc3c0->eth_ext[0];
+- sp->hregs = &hpc3c0->ethregs;
++ sp->sregs = (struct sgiseeq_regs *) &hpcregs->eth_ext[0];
++ sp->hregs = &hpcregs->ethregs;
+ sp->name = sgiseeqstr;
+ sp->mode = SEEQ_RCMD_RBCAST;
+
+@@ -672,6 +671,11 @@
+ setup_rx_ring(sp->srings.rx_desc, SEEQ_RX_BUFFERS);
+ setup_tx_ring(sp->srings.tx_desc, SEEQ_TX_BUFFERS);
+
++ /* Setup PIO and DMA transfer timing */
++ sp->hregs->pconfig = 0x161;
++ sp->hregs->dconfig = HPC3_EDCFG_FIRQ | HPC3_EDCFG_FEOP |
++ HPC3_EDCFG_FRXDC | HPC3_EDCFG_PTO | 0x026;
++
+ /* Reset the chip. */
+ hpc3_eth_reset(sp->hregs);
+
+@@ -699,7 +703,7 @@
+ goto err_out_free_irq;
+ }
+
+- printk(KERN_INFO "%s: SGI Seeq8003 ", dev->name);
++ printk(KERN_INFO "%s: %s ", dev->name, sgiseeqstr);
+ for (i = 0; i < 6; i++)
+ printk("%2.2x%c", dev->dev_addr[i], i == 5 ? '\n' : ':');
+
+@@ -721,10 +725,22 @@
+
+ static int __init sgiseeq_probe(void)
+ {
+- printk(version);
++ unsigned int tmp, ret1, ret2 = 0;
+
+ /* On board adapter on 1st HPC is always present */
+- return sgiseeq_init(hpc3c0, SGI_ENET_IRQ);
++ ret1 = sgiseeq_init(hpc3c0, SGI_ENET_IRQ, 0);
++ /* Let's see if second HPC is there */
++ if (!(ip22_is_fullhouse()) &&
++ get_dbe(tmp, (unsigned int *)&hpc3c1->pbdma[1]) == 0) {
++ sgimc->giopar |= SGIMC_GIOPAR_MASTEREXP1 |
++ SGIMC_GIOPAR_EXP164 |
++ SGIMC_GIOPAR_HPC264;
++ hpc3c1->pbus_piocfg[0][0] = 0x3ffff;
++ /* interrupt/config register on Challenge S Mezz board */
++ hpc3c1->pbus_extregs[0][0] = 0x30;
++ ret2 = sgiseeq_init(hpc3c1, SGI_GIO_0_IRQ, 1);
++ }
++ return (ret1 & ret2) ? ret1 : 0;
+ }
+
+ static void __exit sgiseeq_exit(void)
+@@ -747,4 +763,6 @@
+ module_init(sgiseeq_probe);
+ module_exit(sgiseeq_exit);
+
++MODULE_DESCRIPTION("SGI Seeq 8003 driver");
++MODULE_AUTHOR("David S. Miller");
+ MODULE_LICENSE("GPL");
+diff -Nur linux-2.4.32-rc1/drivers/pci/pci.c linux-2.4.32-rc1.mips/drivers/pci/pci.c
+--- linux-2.4.32-rc1/drivers/pci/pci.c 2004-11-17 12:54:21.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/pci/pci.c 2004-11-19 01:28:41.000000000 +0100
@@ -1281,11 +1281,17 @@
{
unsigned int buses;
@@ -17936,66 +18384,9 @@ diff -Nur linux-2.4.30/drivers/pci/pci.c linux-2.4.30-mips/drivers/pci/pci.c
sprintf(child->name, (is_cardbus ? "PCI CardBus #%02x" : "PCI Bus #%02x"), child->number);
return max;
}
-diff -Nur linux-2.4.30/drivers/pcmcia/Config.in linux-2.4.30-mips/drivers/pcmcia/Config.in
---- linux-2.4.30/drivers/pcmcia/Config.in 2004-02-18 14:36:31.000000000 +0100
-+++ linux-2.4.30-mips/drivers/pcmcia/Config.in 2004-02-22 06:21:34.000000000 +0100
-@@ -30,16 +30,14 @@
- dep_tristate ' M8xx support' CONFIG_PCMCIA_M8XX $CONFIG_PCMCIA
- fi
- if [ "$CONFIG_SOC_AU1X00" = "y" ]; then
-- dep_tristate ' Au1x00 PCMCIA support' CONFIG_PCMCIA_AU1X00 $CONFIG_PCMCIA
-- if [ "$CONFIG_PCMCIA_AU1X00" != "n" ]; then
-- bool ' Pb1x00 board support' CONFIG_PCMCIA_PB1X00
-- bool ' Db1x00 board support' CONFIG_PCMCIA_DB1X00
-- bool ' XXS1500 board support' CONFIG_PCMCIA_XXS1500
-- fi
-+ dep_tristate ' Au1x00 PCMCIA support' CONFIG_PCMCIA_AU1X00 $CONFIG_PCMCIA
- fi
- if [ "$CONFIG_SIBYTE_SB1xxx_SOC" = "y" ]; then
- dep_bool ' SiByte PCMCIA support' CONFIG_PCMCIA_SIBYTE $CONFIG_PCMCIA $CONFIG_BLK_DEV_IDE_SIBYTE
- fi
-+ if [ "$CONFIG_VRC4171" = "y" -o "$CONFIG_VRC4171" = "m" ]; then
-+ dep_tristate ' NEC VRC4171 Card Controllers support' CONFIG_PCMCIA_VRC4171 $CONFIG_PCMCIA
-+ fi
- if [ "$CONFIG_VRC4173" = "y" -o "$CONFIG_VRC4173" = "m" ]; then
- dep_tristate ' NEC VRC4173 CARDU support' CONFIG_PCMCIA_VRC4173 $CONFIG_PCMCIA
- fi
-diff -Nur linux-2.4.30/drivers/pcmcia/Makefile linux-2.4.30-mips/drivers/pcmcia/Makefile
---- linux-2.4.30/drivers/pcmcia/Makefile 2004-02-18 14:36:31.000000000 +0100
-+++ linux-2.4.30-mips/drivers/pcmcia/Makefile 2005-02-03 07:35:30.000000000 +0100
-@@ -61,9 +61,18 @@
-
- obj-$(CONFIG_PCMCIA_AU1X00) += au1x00_ss.o
- au1000_ss-objs-y := au1000_generic.o
--au1000_ss-objs-$(CONFIG_PCMCIA_PB1X00) += au1000_pb1x00.o
--au1000_ss-objs-$(CONFIG_PCMCIA_DB1X00) += au1000_db1x00.o
--au1000_ss-objs-$(CONFIG_PCMCIA_XXS1500) += au1000_xxs1500.o
-+au1000_ss-objs-$(CONFIG_MIPS_PB1000) += au1000_pb1x00.o
-+au1000_ss-objs-$(CONFIG_MIPS_PB1100) += au1000_pb1x00.o
-+au1000_ss-objs-$(CONFIG_MIPS_PB1500) += au1000_pb1x00.o
-+au1000_ss-objs-$(CONFIG_MIPS_PB1550) += au1000_pb1550.o
-+au1000_ss-objs-$(CONFIG_MIPS_PB1200) += au1000_db1x00.o
-+au1000_ss-objs-$(CONFIG_MIPS_DB1000) += au1000_db1x00.o
-+au1000_ss-objs-$(CONFIG_MIPS_DB1100) += au1000_db1x00.o
-+au1000_ss-objs-$(CONFIG_MIPS_DB1500) += au1000_db1x00.o
-+au1000_ss-objs-$(CONFIG_MIPS_DB1550) += au1000_db1x00.o
-+au1000_ss-objs-$(CONFIG_MIPS_DB1200) += au1000_db1x00.o
-+au1000_ss-objs-$(CONFIG_MIPS_HYDROGEN3) += au1000_hydrogen3.o
-+au1000_ss-objs-$(CONFIG_MIPS_XXS1500) += au1000_xxs1500.o
-
- obj-$(CONFIG_PCMCIA_SA1100) += sa1100_cs.o
- obj-$(CONFIG_PCMCIA_M8XX) += m8xx_pcmcia.o
-@@ -89,6 +98,7 @@
- sa1100_cs-objs-$(CONFIG_SA1100_XP860) += sa1100_xp860.o sa1111_generic.o
- sa1100_cs-objs-$(CONFIG_SA1100_YOPY) += sa1100_yopy.o
-
-+obj-$(CONFIG_PCMCIA_VRC4171) += vrc4171_card.o
- obj-$(CONFIG_PCMCIA_VRC4173) += vrc4173_cardu.o
-
- include $(TOPDIR)/Rules.make
-diff -Nur linux-2.4.30/drivers/pcmcia/au1000_db1x00.c linux-2.4.30-mips/drivers/pcmcia/au1000_db1x00.c
---- linux-2.4.30/drivers/pcmcia/au1000_db1x00.c 2005-01-19 15:09:57.000000000 +0100
-+++ linux-2.4.30-mips/drivers/pcmcia/au1000_db1x00.c 2005-02-03 07:35:30.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/pcmcia/au1000_db1x00.c linux-2.4.32-rc1.mips/drivers/pcmcia/au1000_db1x00.c
+--- linux-2.4.32-rc1/drivers/pcmcia/au1000_db1x00.c 2005-01-19 15:09:57.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/pcmcia/au1000_db1x00.c 2005-02-03 07:35:30.000000000 +0100
@@ -1,6 +1,6 @@
/*
*
@@ -18068,9 +18459,66 @@ diff -Nur linux-2.4.30/drivers/pcmcia/au1000_db1x00.c linux-2.4.30-mips/drivers/
return 0;
}
-diff -Nur linux-2.4.30/drivers/pcmcia/vrc4171_card.c linux-2.4.30-mips/drivers/pcmcia/vrc4171_card.c
---- linux-2.4.30/drivers/pcmcia/vrc4171_card.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/drivers/pcmcia/vrc4171_card.c 2004-01-19 16:54:58.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/pcmcia/Config.in linux-2.4.32-rc1.mips/drivers/pcmcia/Config.in
+--- linux-2.4.32-rc1/drivers/pcmcia/Config.in 2004-02-18 14:36:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/pcmcia/Config.in 2004-02-22 06:21:34.000000000 +0100
+@@ -30,16 +30,14 @@
+ dep_tristate ' M8xx support' CONFIG_PCMCIA_M8XX $CONFIG_PCMCIA
+ fi
+ if [ "$CONFIG_SOC_AU1X00" = "y" ]; then
+- dep_tristate ' Au1x00 PCMCIA support' CONFIG_PCMCIA_AU1X00 $CONFIG_PCMCIA
+- if [ "$CONFIG_PCMCIA_AU1X00" != "n" ]; then
+- bool ' Pb1x00 board support' CONFIG_PCMCIA_PB1X00
+- bool ' Db1x00 board support' CONFIG_PCMCIA_DB1X00
+- bool ' XXS1500 board support' CONFIG_PCMCIA_XXS1500
+- fi
++ dep_tristate ' Au1x00 PCMCIA support' CONFIG_PCMCIA_AU1X00 $CONFIG_PCMCIA
+ fi
+ if [ "$CONFIG_SIBYTE_SB1xxx_SOC" = "y" ]; then
+ dep_bool ' SiByte PCMCIA support' CONFIG_PCMCIA_SIBYTE $CONFIG_PCMCIA $CONFIG_BLK_DEV_IDE_SIBYTE
+ fi
++ if [ "$CONFIG_VRC4171" = "y" -o "$CONFIG_VRC4171" = "m" ]; then
++ dep_tristate ' NEC VRC4171 Card Controllers support' CONFIG_PCMCIA_VRC4171 $CONFIG_PCMCIA
++ fi
+ if [ "$CONFIG_VRC4173" = "y" -o "$CONFIG_VRC4173" = "m" ]; then
+ dep_tristate ' NEC VRC4173 CARDU support' CONFIG_PCMCIA_VRC4173 $CONFIG_PCMCIA
+ fi
+diff -Nur linux-2.4.32-rc1/drivers/pcmcia/Makefile linux-2.4.32-rc1.mips/drivers/pcmcia/Makefile
+--- linux-2.4.32-rc1/drivers/pcmcia/Makefile 2004-02-18 14:36:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/pcmcia/Makefile 2005-02-03 07:35:30.000000000 +0100
+@@ -61,9 +61,18 @@
+
+ obj-$(CONFIG_PCMCIA_AU1X00) += au1x00_ss.o
+ au1000_ss-objs-y := au1000_generic.o
+-au1000_ss-objs-$(CONFIG_PCMCIA_PB1X00) += au1000_pb1x00.o
+-au1000_ss-objs-$(CONFIG_PCMCIA_DB1X00) += au1000_db1x00.o
+-au1000_ss-objs-$(CONFIG_PCMCIA_XXS1500) += au1000_xxs1500.o
++au1000_ss-objs-$(CONFIG_MIPS_PB1000) += au1000_pb1x00.o
++au1000_ss-objs-$(CONFIG_MIPS_PB1100) += au1000_pb1x00.o
++au1000_ss-objs-$(CONFIG_MIPS_PB1500) += au1000_pb1x00.o
++au1000_ss-objs-$(CONFIG_MIPS_PB1550) += au1000_pb1550.o
++au1000_ss-objs-$(CONFIG_MIPS_PB1200) += au1000_db1x00.o
++au1000_ss-objs-$(CONFIG_MIPS_DB1000) += au1000_db1x00.o
++au1000_ss-objs-$(CONFIG_MIPS_DB1100) += au1000_db1x00.o
++au1000_ss-objs-$(CONFIG_MIPS_DB1500) += au1000_db1x00.o
++au1000_ss-objs-$(CONFIG_MIPS_DB1550) += au1000_db1x00.o
++au1000_ss-objs-$(CONFIG_MIPS_DB1200) += au1000_db1x00.o
++au1000_ss-objs-$(CONFIG_MIPS_HYDROGEN3) += au1000_hydrogen3.o
++au1000_ss-objs-$(CONFIG_MIPS_XXS1500) += au1000_xxs1500.o
+
+ obj-$(CONFIG_PCMCIA_SA1100) += sa1100_cs.o
+ obj-$(CONFIG_PCMCIA_M8XX) += m8xx_pcmcia.o
+@@ -89,6 +98,7 @@
+ sa1100_cs-objs-$(CONFIG_SA1100_XP860) += sa1100_xp860.o sa1111_generic.o
+ sa1100_cs-objs-$(CONFIG_SA1100_YOPY) += sa1100_yopy.o
+
++obj-$(CONFIG_PCMCIA_VRC4171) += vrc4171_card.o
+ obj-$(CONFIG_PCMCIA_VRC4173) += vrc4173_cardu.o
+
+ include $(TOPDIR)/Rules.make
+diff -Nur linux-2.4.32-rc1/drivers/pcmcia/vrc4171_card.c linux-2.4.32-rc1.mips/drivers/pcmcia/vrc4171_card.c
+--- linux-2.4.32-rc1/drivers/pcmcia/vrc4171_card.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/pcmcia/vrc4171_card.c 2004-01-19 16:54:58.000000000 +0100
@@ -0,0 +1,886 @@
+/*
+ * vrc4171_card.c, NEC VRC4171 Card Controller driver for Socket Services.
@@ -18958,9 +19406,9 @@ diff -Nur linux-2.4.30/drivers/pcmcia/vrc4171_card.c linux-2.4.30-mips/drivers/p
+
+module_init(vrc4171_card_init);
+module_exit(vrc4171_card_exit);
-diff -Nur linux-2.4.30/drivers/scsi/NCR53C9x.h linux-2.4.30-mips/drivers/scsi/NCR53C9x.h
---- linux-2.4.30/drivers/scsi/NCR53C9x.h 2004-02-18 14:36:31.000000000 +0100
-+++ linux-2.4.30-mips/drivers/scsi/NCR53C9x.h 2003-12-15 19:19:51.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/scsi/NCR53C9x.h linux-2.4.32-rc1.mips/drivers/scsi/NCR53C9x.h
+--- linux-2.4.32-rc1/drivers/scsi/NCR53C9x.h 2004-02-18 14:36:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/scsi/NCR53C9x.h 2003-12-15 19:19:51.000000000 +0100
@@ -144,12 +144,7 @@
#ifndef MULTIPLE_PAD_SIZES
@@ -18975,9 +19423,9 @@ diff -Nur linux-2.4.30/drivers/scsi/NCR53C9x.h linux-2.4.30-mips/drivers/scsi/NC
#define esp_read(__reg) (__reg)
struct ESP_regs {
-diff -Nur linux-2.4.30/drivers/sound/au1550_i2s.c linux-2.4.30-mips/drivers/sound/au1550_i2s.c
---- linux-2.4.30/drivers/sound/au1550_i2s.c 2005-01-19 15:10:04.000000000 +0100
-+++ linux-2.4.30-mips/drivers/sound/au1550_i2s.c 2005-02-08 08:07:50.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/sound/au1550_i2s.c linux-2.4.32-rc1.mips/drivers/sound/au1550_i2s.c
+--- linux-2.4.32-rc1/drivers/sound/au1550_i2s.c 2005-01-19 15:10:04.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/sound/au1550_i2s.c 2005-02-08 08:07:50.000000000 +0100
@@ -41,6 +41,7 @@
* 675 Mass Ave, Cambridge, MA 02139, USA.
*
@@ -19849,9 +20297,9 @@ diff -Nur linux-2.4.30/drivers/sound/au1550_i2s.c linux-2.4.30-mips/drivers/soun
err_dev1:
au1xxx_dbdma_chan_free(s->dma_adc.dmanr);
err_dma2:
-diff -Nur linux-2.4.30/drivers/sound/au1550_psc.c linux-2.4.30-mips/drivers/sound/au1550_psc.c
---- linux-2.4.30/drivers/sound/au1550_psc.c 2005-01-19 15:10:04.000000000 +0100
-+++ linux-2.4.30-mips/drivers/sound/au1550_psc.c 2005-01-30 09:01:28.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/sound/au1550_psc.c linux-2.4.32-rc1.mips/drivers/sound/au1550_psc.c
+--- linux-2.4.32-rc1/drivers/sound/au1550_psc.c 2005-01-19 15:10:04.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/sound/au1550_psc.c 2005-01-30 09:01:28.000000000 +0100
@@ -30,6 +30,7 @@
* 675 Mass Ave, Cambridge, MA 02139, USA.
*
@@ -20010,9 +20458,32 @@ diff -Nur linux-2.4.30/drivers/sound/au1550_psc.c linux-2.4.30-mips/drivers/soun
return 0;
err_dev3:
-diff -Nur linux-2.4.30/drivers/tc/lk201.c linux-2.4.30-mips/drivers/tc/lk201.c
---- linux-2.4.30/drivers/tc/lk201.c 2004-02-18 14:36:31.000000000 +0100
-+++ linux-2.4.30-mips/drivers/tc/lk201.c 2004-09-28 02:53:04.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/sound/Config.in linux-2.4.32-rc1.mips/drivers/sound/Config.in
+--- linux-2.4.32-rc1/drivers/sound/Config.in 2005-01-19 15:10:04.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/sound/Config.in 2005-04-21 07:53:07.000000000 +0200
+@@ -72,10 +72,15 @@
+ if [ "$CONFIG_DDB5477" = "y" ]; then
+ dep_tristate ' NEC Vrc5477 AC97 sound' CONFIG_SOUND_VRC5477 $CONFIG_SOUND
+ fi
+-if [ "$CONFIG_SOC_AU1X00" = "y" -o "$CONFIG_SOC_AU1500" = "y" ]; then
+- dep_tristate ' Au1x00 Sound' CONFIG_SOUND_AU1X00 $CONFIG_SOUND
+- dep_tristate ' Au1550 PSC Sound' CONFIG_SOUND_AU1550_PSC $CONFIG_SOUND
+- dep_tristate ' Au1550 I2S Sound' CONFIG_SOUND_AU1550_I2S $CONFIG_SOUND
++if [ "$CONFIG_SOC_AU1000" = "y" -o \
++ "$CONFIG_SOC_AU1500" = "y" -o \
++ "$CONFIG_SOC_AU1100" = "y" ]; then
++ dep_tristate ' Au1x00 AC97 Sound' CONFIG_SOUND_AU1X00 $CONFIG_SOUND
++fi
++if [ "$CONFIG_SOC_AU1550" = "y" -o \
++ "$CONFIG_SOC_AU1200" = "y" ]; then
++ dep_tristate ' Au1550/Au1200 PSC AC97 Sound' CONFIG_SOUND_AU1550_PSC $CONFIG_SOUND
++ dep_tristate ' Au1550/Au1200 PSC I2S Sound' CONFIG_SOUND_AU1550_I2S $CONFIG_SOUND
+ fi
+
+ dep_tristate ' Trident 4DWave DX/NX, SiS 7018 or ALi 5451 PCI Audio Core' CONFIG_SOUND_TRIDENT $CONFIG_SOUND $CONFIG_PCI
+diff -Nur linux-2.4.32-rc1/drivers/tc/lk201.c linux-2.4.32-rc1.mips/drivers/tc/lk201.c
+--- linux-2.4.32-rc1/drivers/tc/lk201.c 2004-02-18 14:36:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/tc/lk201.c 2004-09-28 02:53:04.000000000 +0200
@@ -5,7 +5,7 @@
* for more details.
*
@@ -20290,9 +20761,9 @@ diff -Nur linux-2.4.30/drivers/tc/lk201.c linux-2.4.30-mips/drivers/tc/lk201.c
+ if (!register_dec_serial_hook(keyb_line, &lk201_hook))
+ unregister_dec_serial_hook(keyb_line);
}
-diff -Nur linux-2.4.30/drivers/tc/zs.c linux-2.4.30-mips/drivers/tc/zs.c
---- linux-2.4.30/drivers/tc/zs.c 2005-01-19 15:10:05.000000000 +0100
-+++ linux-2.4.30-mips/drivers/tc/zs.c 2004-12-27 05:13:50.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/tc/zs.c linux-2.4.32-rc1.mips/drivers/tc/zs.c
+--- linux-2.4.32-rc1/drivers/tc/zs.c 2005-01-19 15:10:05.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/tc/zs.c 2004-12-27 05:13:50.000000000 +0100
@@ -68,6 +68,8 @@
#include <asm/bitops.h>
#include <asm/uaccess.h>
@@ -20681,9 +21152,9 @@ diff -Nur linux-2.4.30/drivers/tc/zs.c linux-2.4.30-mips/drivers/tc/zs.c
}
void __init zs_kgdb_hook(int tty_num)
-diff -Nur linux-2.4.30/drivers/tc/zs.h linux-2.4.30-mips/drivers/tc/zs.h
---- linux-2.4.30/drivers/tc/zs.h 2004-02-18 14:36:31.000000000 +0100
-+++ linux-2.4.30-mips/drivers/tc/zs.h 2004-07-01 15:28:54.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/tc/zs.h linux-2.4.32-rc1.mips/drivers/tc/zs.h
+--- linux-2.4.32-rc1/drivers/tc/zs.h 2004-02-18 14:36:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/tc/zs.h 2004-07-01 15:28:54.000000000 +0200
@@ -1,14 +1,18 @@
/*
- * macserial.h: Definitions for the Macintosh Z8530 serial driver.
@@ -20792,62 +21263,9 @@ diff -Nur linux-2.4.30/drivers/tc/zs.h linux-2.4.30-mips/drivers/tc/zs.h
unsigned char *xmit_buf;
int xmit_head;
int xmit_tail;
-diff -Nur linux-2.4.30/drivers/video/Config.in linux-2.4.30-mips/drivers/video/Config.in
---- linux-2.4.30/drivers/video/Config.in 2004-02-18 14:36:31.000000000 +0100
-+++ linux-2.4.30-mips/drivers/video/Config.in 2005-02-11 22:16:44.000000000 +0100
-@@ -87,8 +87,8 @@
- if [ "$CONFIG_HP300" = "y" ]; then
- define_bool CONFIG_FB_HP300 y
- fi
-- if [ "$ARCH" = "alpha" ]; then
-- tristate ' TGA framebuffer support' CONFIG_FB_TGA
-+ if [ "$ARCH" = "alpha" -o "$CONFIG_TC" = "y" ]; then
-+ tristate ' TGA/SFB+ framebuffer support' CONFIG_FB_TGA
- fi
- if [ "$CONFIG_X86" = "y" ]; then
- bool ' VESA VGA graphics console' CONFIG_FB_VESA
-@@ -121,6 +121,17 @@
- hex ' Framebuffer Base Address' CONFIG_E1355_FB_BASE a8200000
- fi
- fi
-+ if [ "$CONFIG_SOC_AU1100" = "y" ]; then
-+ bool ' Au1100 LCD Driver' CONFIG_FB_AU1100
-+ fi
-+
-+ if [ "$CONFIG_SOC_AU1200" = "y" ]; then
-+ bool ' Au1200 LCD Driver' CONFIG_FB_AU1200
-+ if [ "$CONFIG_FB_AU1200" = "y" ]; then
-+ int ' Number of planes (1 to 4)' CONFIG_FB_AU1200_DEVS 1
-+ fi
-+ fi
-+
- if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then
- if [ "$CONFIG_PCI" != "n" ]; then
- tristate ' Matrox acceleration (EXPERIMENTAL)' CONFIG_FB_MATROX
-@@ -178,9 +189,6 @@
- bool ' Use CRT on Pb1100 ' CONFIG_PB1500_CRT
- bool ' Use TFT Panel on Pb1100 ' CONFIG_PB1500_TFT
- fi
-- if [ "$CONFIG_SOC_AU1100" = "y" ]; then
-- bool ' Au1100 LCD Driver' CONFIG_FB_AU1100
-- fi
- fi
- fi
- fi
-diff -Nur linux-2.4.30/drivers/video/Makefile linux-2.4.30-mips/drivers/video/Makefile
---- linux-2.4.30/drivers/video/Makefile 2004-02-18 14:36:31.000000000 +0100
-+++ linux-2.4.30-mips/drivers/video/Makefile 2005-02-11 22:16:44.000000000 +0100
-@@ -87,6 +87,7 @@
- obj-$(CONFIG_FB_MAXINE) += maxinefb.o
- obj-$(CONFIG_FB_TX3912) += tx3912fb.o
- obj-$(CONFIG_FB_AU1100) += au1100fb.o fbgen.o
-+obj-$(CONFIG_FB_AU1200) += au1200fb.o fbgen.o
- obj-$(CONFIG_FB_IT8181) += it8181fb.o fbgen.o
-
- subdir-$(CONFIG_STI_CONSOLE) += sti
-diff -Nur linux-2.4.30/drivers/video/au1200fb.c linux-2.4.30-mips/drivers/video/au1200fb.c
---- linux-2.4.30/drivers/video/au1200fb.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/drivers/video/au1200fb.c 2005-03-13 09:04:16.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/video/au1200fb.c linux-2.4.32-rc1.mips/drivers/video/au1200fb.c
+--- linux-2.4.32-rc1/drivers/video/au1200fb.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/video/au1200fb.c 2005-03-13 09:04:16.000000000 +0100
@@ -0,0 +1,1564 @@
+/*
+ * BRIEF MODULE DESCRIPTION
@@ -22413,9 +22831,9 @@ diff -Nur linux-2.4.30/drivers/video/au1200fb.c linux-2.4.30-mips/drivers/video/
+#endif /* MODULE */
+
+
-diff -Nur linux-2.4.30/drivers/video/au1200fb.h linux-2.4.30-mips/drivers/video/au1200fb.h
---- linux-2.4.30/drivers/video/au1200fb.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/drivers/video/au1200fb.h 2005-02-11 22:16:44.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/video/au1200fb.h linux-2.4.32-rc1.mips/drivers/video/au1200fb.h
+--- linux-2.4.32-rc1/drivers/video/au1200fb.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/video/au1200fb.h 2005-02-11 22:16:44.000000000 +0100
@@ -0,0 +1,288 @@
+/*
+ * BRIEF MODULE DESCRIPTION
@@ -22705,9 +23123,51 @@ diff -Nur linux-2.4.30/drivers/video/au1200fb.h linux-2.4.30-mips/drivers/video/
+
+/********************************************************************/
+#endif /* _AU1200LCD_H */
-diff -Nur linux-2.4.30/drivers/video/fbmem.c linux-2.4.30-mips/drivers/video/fbmem.c
---- linux-2.4.30/drivers/video/fbmem.c 2005-01-19 15:10:09.000000000 +0100
-+++ linux-2.4.30-mips/drivers/video/fbmem.c 2005-02-11 22:16:44.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/video/Config.in linux-2.4.32-rc1.mips/drivers/video/Config.in
+--- linux-2.4.32-rc1/drivers/video/Config.in 2004-02-18 14:36:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/video/Config.in 2005-02-11 22:16:44.000000000 +0100
+@@ -87,8 +87,8 @@
+ if [ "$CONFIG_HP300" = "y" ]; then
+ define_bool CONFIG_FB_HP300 y
+ fi
+- if [ "$ARCH" = "alpha" ]; then
+- tristate ' TGA framebuffer support' CONFIG_FB_TGA
++ if [ "$ARCH" = "alpha" -o "$CONFIG_TC" = "y" ]; then
++ tristate ' TGA/SFB+ framebuffer support' CONFIG_FB_TGA
+ fi
+ if [ "$CONFIG_X86" = "y" ]; then
+ bool ' VESA VGA graphics console' CONFIG_FB_VESA
+@@ -121,6 +121,17 @@
+ hex ' Framebuffer Base Address' CONFIG_E1355_FB_BASE a8200000
+ fi
+ fi
++ if [ "$CONFIG_SOC_AU1100" = "y" ]; then
++ bool ' Au1100 LCD Driver' CONFIG_FB_AU1100
++ fi
++
++ if [ "$CONFIG_SOC_AU1200" = "y" ]; then
++ bool ' Au1200 LCD Driver' CONFIG_FB_AU1200
++ if [ "$CONFIG_FB_AU1200" = "y" ]; then
++ int ' Number of planes (1 to 4)' CONFIG_FB_AU1200_DEVS 1
++ fi
++ fi
++
+ if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then
+ if [ "$CONFIG_PCI" != "n" ]; then
+ tristate ' Matrox acceleration (EXPERIMENTAL)' CONFIG_FB_MATROX
+@@ -178,9 +189,6 @@
+ bool ' Use CRT on Pb1100 ' CONFIG_PB1500_CRT
+ bool ' Use TFT Panel on Pb1100 ' CONFIG_PB1500_TFT
+ fi
+- if [ "$CONFIG_SOC_AU1100" = "y" ]; then
+- bool ' Au1100 LCD Driver' CONFIG_FB_AU1100
+- fi
+ fi
+ fi
+ fi
+diff -Nur linux-2.4.32-rc1/drivers/video/fbmem.c linux-2.4.32-rc1.mips/drivers/video/fbmem.c
+--- linux-2.4.32-rc1/drivers/video/fbmem.c 2005-06-01 02:56:56.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/video/fbmem.c 2005-05-25 19:14:24.000000000 +0200
@@ -139,6 +139,8 @@
extern int e1356fb_setup(char*);
extern int au1100fb_init(void);
@@ -22727,9 +23187,9 @@ diff -Nur linux-2.4.30/drivers/video/fbmem.c linux-2.4.30-mips/drivers/video/fbm
#ifdef CONFIG_FB_IT8181
{ "it8181fb", it8181fb_init, it8181fb_setup },
#endif
-diff -Nur linux-2.4.30/drivers/video/ims332.h linux-2.4.30-mips/drivers/video/ims332.h
---- linux-2.4.30/drivers/video/ims332.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/drivers/video/ims332.h 2003-12-22 17:02:20.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/video/ims332.h linux-2.4.32-rc1.mips/drivers/video/ims332.h
+--- linux-2.4.32-rc1/drivers/video/ims332.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/video/ims332.h 2003-12-22 17:02:20.000000000 +0100
@@ -0,0 +1,275 @@
+/*
+ * linux/drivers/video/ims332.h
@@ -23006,9 +23466,20 @@ diff -Nur linux-2.4.30/drivers/video/ims332.h linux-2.4.30-mips/drivers/video/im
+ IMS332_CTRL_A_BOOT_ENABLE_VTG);
+ printk("\n");
+}
-diff -Nur linux-2.4.30/drivers/video/maxinefb.h linux-2.4.30-mips/drivers/video/maxinefb.h
---- linux-2.4.30/drivers/video/maxinefb.h 2003-08-25 13:44:42.000000000 +0200
-+++ linux-2.4.30-mips/drivers/video/maxinefb.h 1970-01-01 01:00:00.000000000 +0100
+diff -Nur linux-2.4.32-rc1/drivers/video/Makefile linux-2.4.32-rc1.mips/drivers/video/Makefile
+--- linux-2.4.32-rc1/drivers/video/Makefile 2004-02-18 14:36:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/video/Makefile 2005-02-11 22:16:44.000000000 +0100
+@@ -87,6 +87,7 @@
+ obj-$(CONFIG_FB_MAXINE) += maxinefb.o
+ obj-$(CONFIG_FB_TX3912) += tx3912fb.o
+ obj-$(CONFIG_FB_AU1100) += au1100fb.o fbgen.o
++obj-$(CONFIG_FB_AU1200) += au1200fb.o fbgen.o
+ obj-$(CONFIG_FB_IT8181) += it8181fb.o fbgen.o
+
+ subdir-$(CONFIG_STI_CONSOLE) += sti
+diff -Nur linux-2.4.32-rc1/drivers/video/maxinefb.h linux-2.4.32-rc1.mips/drivers/video/maxinefb.h
+--- linux-2.4.32-rc1/drivers/video/maxinefb.h 2003-08-25 13:44:42.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/video/maxinefb.h 1970-01-01 01:00:00.000000000 +0100
@@ -1,38 +0,0 @@
-/*
- * linux/drivers/video/maxinefb.h
@@ -23048,9 +23519,9 @@ diff -Nur linux-2.4.30/drivers/video/maxinefb.h linux-2.4.30-mips/drivers/video/
-#define IMS332_REG_COLOR_PALETTE 0x100 /* color palette, 256 entries */
-#define IMS332_REG_CURSOR_COLOR_PALETTE 0x0a1 /* cursor color palette, */
- /* 3 entries */
-diff -Nur linux-2.4.30/drivers/video/newport_con.c linux-2.4.30-mips/drivers/video/newport_con.c
---- linux-2.4.30/drivers/video/newport_con.c 2003-08-25 13:44:42.000000000 +0200
-+++ linux-2.4.30-mips/drivers/video/newport_con.c 2004-09-23 15:32:29.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/video/newport_con.c linux-2.4.32-rc1.mips/drivers/video/newport_con.c
+--- linux-2.4.32-rc1/drivers/video/newport_con.c 2003-08-25 13:44:42.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/video/newport_con.c 2004-09-23 15:32:29.000000000 +0200
@@ -22,6 +22,7 @@
#include <linux/module.h>
#include <linux/slab.h>
@@ -23284,9 +23755,9 @@ diff -Nur linux-2.4.30/drivers/video/newport_con.c linux-2.4.30-mips/drivers/vid
}
module_init(newport_console_init);
-diff -Nur linux-2.4.30/drivers/video/tgafb.c linux-2.4.30-mips/drivers/video/tgafb.c
---- linux-2.4.30/drivers/video/tgafb.c 2001-11-14 23:52:20.000000000 +0100
-+++ linux-2.4.30-mips/drivers/video/tgafb.c 2004-10-30 01:15:02.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/video/tgafb.c linux-2.4.32-rc1.mips/drivers/video/tgafb.c
+--- linux-2.4.32-rc1/drivers/video/tgafb.c 2001-11-14 23:52:20.000000000 +0100
++++ linux-2.4.32-rc1.mips/drivers/video/tgafb.c 2004-10-30 01:15:02.000000000 +0200
@@ -45,6 +45,15 @@
#include <linux/console.h>
#include <asm/io.h>
@@ -23463,9 +23934,9 @@ diff -Nur linux-2.4.30/drivers/video/tgafb.c linux-2.4.30-mips/drivers/video/tga
return 0;
}
-diff -Nur linux-2.4.30/drivers/video/tgafb.h linux-2.4.30-mips/drivers/video/tgafb.h
---- linux-2.4.30/drivers/video/tgafb.h 2000-04-12 18:47:28.000000000 +0200
-+++ linux-2.4.30-mips/drivers/video/tgafb.h 2004-10-30 01:15:02.000000000 +0200
+diff -Nur linux-2.4.32-rc1/drivers/video/tgafb.h linux-2.4.32-rc1.mips/drivers/video/tgafb.h
+--- linux-2.4.32-rc1/drivers/video/tgafb.h 2000-04-12 18:47:28.000000000 +0200
++++ linux-2.4.32-rc1.mips/drivers/video/tgafb.h 2004-10-30 01:15:02.000000000 +0200
@@ -36,6 +36,7 @@
#define TGA_RASTEROP_REG 0x0034
#define TGA_PIXELSHIFT_REG 0x0038
@@ -23474,9 +23945,9 @@ diff -Nur linux-2.4.30/drivers/video/tgafb.h linux-2.4.30-mips/drivers/video/tga
#define TGA_PIXELMASK_REG 0x005c
#define TGA_CURSOR_BASE_REG 0x0060
#define TGA_HORIZ_REG 0x0064
-diff -Nur linux-2.4.30/fs/binfmt_elf.c linux-2.4.30-mips/fs/binfmt_elf.c
---- linux-2.4.30/fs/binfmt_elf.c 2005-04-04 03:42:20.000000000 +0200
-+++ linux-2.4.30-mips/fs/binfmt_elf.c 2005-04-05 21:09:57.000000000 +0200
+diff -Nur linux-2.4.32-rc1/fs/binfmt_elf.c linux-2.4.32-rc1.mips/fs/binfmt_elf.c
+--- linux-2.4.32-rc1/fs/binfmt_elf.c 2005-06-01 02:56:56.000000000 +0200
++++ linux-2.4.32-rc1.mips/fs/binfmt_elf.c 2005-05-23 14:12:31.000000000 +0200
@@ -660,6 +660,9 @@
bprm->argc++;
}
@@ -23499,9 +23970,9 @@ diff -Nur linux-2.4.30/fs/binfmt_elf.c linux-2.4.30-mips/fs/binfmt_elf.c
elf.e_ehsize = sizeof(elf);
elf.e_phentsize = sizeof(struct elf_phdr);
elf.e_phnum = segs+1; /* Include notes */
-diff -Nur linux-2.4.30/fs/partitions/sgi.c linux-2.4.30-mips/fs/partitions/sgi.c
---- linux-2.4.30/fs/partitions/sgi.c 2001-10-02 05:03:26.000000000 +0200
-+++ linux-2.4.30-mips/fs/partitions/sgi.c 2004-08-11 22:30:07.000000000 +0200
+diff -Nur linux-2.4.32-rc1/fs/partitions/sgi.c linux-2.4.32-rc1.mips/fs/partitions/sgi.c
+--- linux-2.4.32-rc1/fs/partitions/sgi.c 2001-10-02 05:03:26.000000000 +0200
++++ linux-2.4.32-rc1.mips/fs/partitions/sgi.c 2004-08-11 22:30:07.000000000 +0200
@@ -17,6 +17,11 @@
#include "check.h"
#include "sgi.h"
@@ -23525,9 +23996,9 @@ diff -Nur linux-2.4.30/fs/partitions/sgi.c linux-2.4.30-mips/fs/partitions/sgi.c
current_minor++;
}
printk("\n");
-diff -Nur linux-2.4.30/fs/proc/array.c linux-2.4.30-mips/fs/proc/array.c
---- linux-2.4.30/fs/proc/array.c 2005-01-19 15:10:11.000000000 +0100
-+++ linux-2.4.30-mips/fs/proc/array.c 2004-11-29 18:47:18.000000000 +0100
+diff -Nur linux-2.4.32-rc1/fs/proc/array.c linux-2.4.32-rc1.mips/fs/proc/array.c
+--- linux-2.4.32-rc1/fs/proc/array.c 2005-01-19 15:10:11.000000000 +0100
++++ linux-2.4.32-rc1.mips/fs/proc/array.c 2004-11-29 18:47:18.000000000 +0100
@@ -368,15 +368,15 @@
task->cmin_flt,
task->maj_flt,
@@ -23568,9 +24039,9 @@ diff -Nur linux-2.4.30/fs/proc/array.c linux-2.4.30-mips/fs/proc/array.c
return len;
}
-diff -Nur linux-2.4.30/fs/proc/proc_misc.c linux-2.4.30-mips/fs/proc/proc_misc.c
---- linux-2.4.30/fs/proc/proc_misc.c 2004-08-08 01:26:06.000000000 +0200
-+++ linux-2.4.30-mips/fs/proc/proc_misc.c 2004-08-14 20:39:01.000000000 +0200
+diff -Nur linux-2.4.32-rc1/fs/proc/proc_misc.c linux-2.4.32-rc1.mips/fs/proc/proc_misc.c
+--- linux-2.4.32-rc1/fs/proc/proc_misc.c 2004-08-08 01:26:06.000000000 +0200
++++ linux-2.4.32-rc1.mips/fs/proc/proc_misc.c 2004-08-14 20:39:01.000000000 +0200
@@ -308,16 +308,16 @@
{
int i, len = 0;
@@ -23607,9 +24078,9 @@ diff -Nur linux-2.4.30/fs/proc/proc_misc.c linux-2.4.30-mips/fs/proc/proc_misc.c
+ kstat.per_cpu_nice[cpu_logical_map(i)] \
+ kstat.per_cpu_system[cpu_logical_map(i)]));
proc_sprintf(page, &off, &len,
-diff -Nur linux-2.4.30/include/asm-alpha/param.h linux-2.4.30-mips/include/asm-alpha/param.h
---- linux-2.4.30/include/asm-alpha/param.h 2000-11-08 08:37:31.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-alpha/param.h 2000-11-28 04:59:03.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-alpha/param.h linux-2.4.32-rc1.mips/include/asm-alpha/param.h
+--- linux-2.4.32-rc1/include/asm-alpha/param.h 2000-11-08 08:37:31.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-alpha/param.h 2000-11-28 04:59:03.000000000 +0100
@@ -13,6 +13,9 @@
# else
# define HZ 1200
@@ -23620,9 +24091,9 @@ diff -Nur linux-2.4.30/include/asm-alpha/param.h linux-2.4.30-mips/include/asm-a
#endif
#define EXEC_PAGESIZE 8192
-diff -Nur linux-2.4.30/include/asm-i386/param.h linux-2.4.30-mips/include/asm-i386/param.h
---- linux-2.4.30/include/asm-i386/param.h 2000-10-27 20:04:43.000000000 +0200
-+++ linux-2.4.30-mips/include/asm-i386/param.h 2000-11-23 03:00:55.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-i386/param.h linux-2.4.32-rc1.mips/include/asm-i386/param.h
+--- linux-2.4.32-rc1/include/asm-i386/param.h 2000-10-27 20:04:43.000000000 +0200
++++ linux-2.4.32-rc1.mips/include/asm-i386/param.h 2000-11-23 03:00:55.000000000 +0100
@@ -3,6 +3,9 @@
#ifndef HZ
@@ -23633,9 +24104,9 @@ diff -Nur linux-2.4.30/include/asm-i386/param.h linux-2.4.30-mips/include/asm-i3
#endif
#define EXEC_PAGESIZE 4096
-diff -Nur linux-2.4.30/include/asm-ia64/param.h linux-2.4.30-mips/include/asm-ia64/param.h
---- linux-2.4.30/include/asm-ia64/param.h 2004-04-14 15:05:40.000000000 +0200
-+++ linux-2.4.30-mips/include/asm-ia64/param.h 2004-04-16 05:14:20.000000000 +0200
+diff -Nur linux-2.4.32-rc1/include/asm-ia64/param.h linux-2.4.32-rc1.mips/include/asm-ia64/param.h
+--- linux-2.4.32-rc1/include/asm-ia64/param.h 2004-04-14 15:05:40.000000000 +0200
++++ linux-2.4.32-rc1.mips/include/asm-ia64/param.h 2004-04-16 05:14:20.000000000 +0200
@@ -7,9 +7,15 @@
* Based on <asm-i386/param.h>.
*
@@ -23653,9 +24124,9 @@ diff -Nur linux-2.4.30/include/asm-ia64/param.h linux-2.4.30-mips/include/asm-ia
#define EXEC_PAGESIZE 65536
#ifndef NGROUPS
-diff -Nur linux-2.4.30/include/asm-m68k/param.h linux-2.4.30-mips/include/asm-m68k/param.h
---- linux-2.4.30/include/asm-m68k/param.h 2001-01-04 22:00:55.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-m68k/param.h 2001-01-11 05:02:45.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-m68k/param.h linux-2.4.32-rc1.mips/include/asm-m68k/param.h
+--- linux-2.4.32-rc1/include/asm-m68k/param.h 2001-01-04 22:00:55.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-m68k/param.h 2001-01-11 05:02:45.000000000 +0100
@@ -3,6 +3,9 @@
#ifndef HZ
@@ -23666,9 +24137,127 @@ diff -Nur linux-2.4.30/include/asm-m68k/param.h linux-2.4.30-mips/include/asm-m6
#endif
#define EXEC_PAGESIZE 8192
-diff -Nur linux-2.4.30/include/asm-mips/au1000.h linux-2.4.30-mips/include/asm-mips/au1000.h
---- linux-2.4.30/include/asm-mips/au1000.h 2005-01-19 15:10:11.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips/au1000.h 2005-01-30 09:01:28.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips/au1000_gpio.h linux-2.4.32-rc1.mips/include/asm-mips/au1000_gpio.h
+--- linux-2.4.32-rc1/include/asm-mips/au1000_gpio.h 2002-11-29 00:53:15.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips/au1000_gpio.h 2005-01-30 09:01:28.000000000 +0100
+@@ -30,6 +30,13 @@
+ * 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
++/*
++ * Revision history
++ * 01/31/02 0.01 Initial release. Steve Longerbeam, MontaVista
++ * 10/12/03 0.1 Added Au1100/Au1500, GPIO2, and bit operations. K.C. Nishio, AMD
++ * 08/05/04 0.11 Added Au1550 and Au1200. K.C. Nishio
++ */
++
+ #ifndef __AU1000_GPIO_H
+ #define __AU1000_GPIO_H
+
+@@ -44,13 +51,94 @@
+ #define AU1000GPIO_TRISTATE _IOW (AU1000GPIO_IOC_MAGIC, 4, int)
+ #define AU1000GPIO_AVAIL_MASK _IOR (AU1000GPIO_IOC_MAGIC, 5, int)
+
++// bit operations
++#define AU1000GPIO_BIT_READ _IOW (AU1000GPIO_IOC_MAGIC, 6, int)
++#define AU1000GPIO_BIT_SET _IOW (AU1000GPIO_IOC_MAGIC, 7, int)
++#define AU1000GPIO_BIT_CLEAR _IOW (AU1000GPIO_IOC_MAGIC, 8, int)
++#define AU1000GPIO_BIT_TRISTATE _IOW (AU1000GPIO_IOC_MAGIC, 9, int)
++#define AU1000GPIO_BIT_INIT _IOW (AU1000GPIO_IOC_MAGIC, 10, int)
++#define AU1000GPIO_BIT_TERM _IOW (AU1000GPIO_IOC_MAGIC, 11, int)
++
++/* set this major numer same as the CRIS GPIO driver */
++#define AU1X00_GPIO_MAJOR (120)
++
++#define ENABLED_ZERO (0)
++#define ENABLED_ONE (1)
++#define ENABLED_10 (0x2)
++#define ENABLED_11 (0x3)
++#define ENABLED_111 (0x7)
++#define NOT_AVAIL (-1)
++#define AU1X00_MAX_PRIMARY_GPIO (32)
++
++#define AU1000_GPIO_MINOR_MAX AU1X00_MAX_PRIMARY_GPIO
++/* Au1100, 1500, 1550 and 1200 have the secondary GPIO block */
++#define AU1XX0_GPIO_MINOR_MAX (48)
++
++#define AU1X00_GPIO_NAME "gpio"
++
++/* GPIO pins which are not multiplexed */
++#if defined(CONFIG_SOC_AU1000)
++ #define NATIVE_GPIOPIN ((1 << 15) | (1 << 8) | (1 << 7) | (1 << 1) | (1 << 0))
++ #define NATIVE_GPIO2PIN (0)
++#elif defined(CONFIG_SOC_AU1100)
++ #define NATIVE_GPIOPIN ((1 << 23) | (1 << 22) | (1 << 21) | (1 << 20) | (1 << 19) | (1 << 18) | \
++ (1 << 17) | (1 << 16) | (1 << 7) | (1 << 1) | (1 << 0))
++ #define NATIVE_GPIO2PIN (0)
++#elif defined(CONFIG_SOC_AU1500)
++ #define NATIVE_GPIOPIN ((1 << 15) | (1 << 8) | (1 << 7) | (1 << 1) | (1 << 0))
++ /* exclude the PCI reset output signal: GPIO[200], DMA_REQ2 and DMA_REQ3 */
++ #define NATIVE_GPIO2PIN (0xfffe & ~((1 << 9) | (1 << 8)))
++#elif defined(CONFIG_SOC_AU1550)
++ #define NATIVE_GPIOPIN ((1 << 15) | (1 << 8) | (1 << 7) | (1 << 6) | (1 << 1) | (1 << 0))
++ /* please refere Au1550 Data Book, chapter 15 */
++ #define NATIVE_GPIO2PIN (1 << 5)
++#elif defined(CONFIG_SOC_AU1200)
++ #define NATIVE_GPIOPIN ((1 << 7) | (1 << 5))
++ #define NATIVE_GPIO2PIN (0)
++#endif
++
++/* minor as u32 */
++#define MINOR_TO_GPIOPIN(minor) ((minor < AU1X00_MAX_PRIMARY_GPIO) ? minor : (minor - AU1X00_MAX_PRIMARY_GPIO))
++#define IS_PRIMARY_GPIOPIN(minor) ((minor < AU1X00_MAX_PRIMARY_GPIO) ? 1 : 0)
++
++/*
++ * pin to minor mapping.
++ * GPIO0-GPIO31, minor=0-31.
++ * GPIO200-GPIO215, minor=32-47.
++ */
++typedef struct _au1x00_gpio_bit_ctl {
++ int direction; // The direction of this GPIO pin. 0: IN, 1: OUT.
++ int data; // Pin output when itized (0/1), or at the term. 0/1/-1 (tristate).
++} au1x00_gpio_bit_ctl;
++
++typedef struct _au1x00_gpio_driver {
++ const char *driver_name;
++ const char *name;
++ int name_base; /* offset of printed name */
++ short major; /* major device number */
++ short minor_start; /* start of minor device number*/
++ short num; /* number of devices */
++} au1x00_gpio_driver;
++
+ #ifdef __KERNEL__
+-extern u32 get_au1000_avail_gpio_mask(void);
+-extern int au1000gpio_tristate(u32 data);
+-extern int au1000gpio_in(u32 *data);
+-extern int au1000gpio_set(u32 data);
+-extern int au1000gpio_clear(u32 data);
+-extern int au1000gpio_out(u32 data);
++extern u32 get_au1000_avail_gpio_mask(u32 *avail_gpio2);
++extern int au1000gpio_tristate(u32 minor, u32 data);
++extern int au1000gpio_in(u32 minor, u32 *data);
++extern int au1000gpio_set(u32 minor, u32 data);
++extern int au1000gpio_clear(u32 minor, u32 data);
++extern int au1000gpio_out(u32 minor, u32 data);
++extern int au1000gpio_bit_read(u32 minor, u32 *read_data);
++extern int au1000gpio_bit_set(u32 minor);
++extern int au1000gpio_bit_clear(u32 minor);
++extern int au1000gpio_bit_tristate(u32 minor);
++extern int check_minor_to_gpio(u32 minor);
++extern int au1000gpio_bit_init(u32 minor, au1x00_gpio_bit_ctl *bit_opt);
++extern int au1000gpio_bit_term(u32 minor, au1x00_gpio_bit_ctl *bit_opt);
++
++extern void gpio_register_devfs (au1x00_gpio_driver *driver, unsigned int flags, unsigned minor);
++extern void gpio_unregister_devfs (au1x00_gpio_driver *driver, unsigned minor);
++extern int gpio_register_driver(au1x00_gpio_driver *driver);
++extern int gpio_unregister_driver(au1x00_gpio_driver *driver);
+ #endif
+
+ #endif
+diff -Nur linux-2.4.32-rc1/include/asm-mips/au1000.h linux-2.4.32-rc1.mips/include/asm-mips/au1000.h
+--- linux-2.4.32-rc1/include/asm-mips/au1000.h 2005-01-19 15:10:11.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips/au1000.h 2005-01-30 09:01:28.000000000 +0100
@@ -160,28 +160,356 @@
#define ALLINTS (IE_IRQ0 | IE_IRQ1 | IE_IRQ2 | IE_IRQ3 | IE_IRQ4 | IE_IRQ5)
#endif
@@ -24336,127 +24925,9 @@ diff -Nur linux-2.4.30/include/asm-mips/au1000.h linux-2.4.30-mips/include/asm-m
+
+#endif
+
-diff -Nur linux-2.4.30/include/asm-mips/au1000_gpio.h linux-2.4.30-mips/include/asm-mips/au1000_gpio.h
---- linux-2.4.30/include/asm-mips/au1000_gpio.h 2002-11-29 00:53:15.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips/au1000_gpio.h 2005-01-30 09:01:28.000000000 +0100
-@@ -30,6 +30,13 @@
- * 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-+/*
-+ * Revision history
-+ * 01/31/02 0.01 Initial release. Steve Longerbeam, MontaVista
-+ * 10/12/03 0.1 Added Au1100/Au1500, GPIO2, and bit operations. K.C. Nishio, AMD
-+ * 08/05/04 0.11 Added Au1550 and Au1200. K.C. Nishio
-+ */
-+
- #ifndef __AU1000_GPIO_H
- #define __AU1000_GPIO_H
-
-@@ -44,13 +51,94 @@
- #define AU1000GPIO_TRISTATE _IOW (AU1000GPIO_IOC_MAGIC, 4, int)
- #define AU1000GPIO_AVAIL_MASK _IOR (AU1000GPIO_IOC_MAGIC, 5, int)
-
-+// bit operations
-+#define AU1000GPIO_BIT_READ _IOW (AU1000GPIO_IOC_MAGIC, 6, int)
-+#define AU1000GPIO_BIT_SET _IOW (AU1000GPIO_IOC_MAGIC, 7, int)
-+#define AU1000GPIO_BIT_CLEAR _IOW (AU1000GPIO_IOC_MAGIC, 8, int)
-+#define AU1000GPIO_BIT_TRISTATE _IOW (AU1000GPIO_IOC_MAGIC, 9, int)
-+#define AU1000GPIO_BIT_INIT _IOW (AU1000GPIO_IOC_MAGIC, 10, int)
-+#define AU1000GPIO_BIT_TERM _IOW (AU1000GPIO_IOC_MAGIC, 11, int)
-+
-+/* set this major numer same as the CRIS GPIO driver */
-+#define AU1X00_GPIO_MAJOR (120)
-+
-+#define ENABLED_ZERO (0)
-+#define ENABLED_ONE (1)
-+#define ENABLED_10 (0x2)
-+#define ENABLED_11 (0x3)
-+#define ENABLED_111 (0x7)
-+#define NOT_AVAIL (-1)
-+#define AU1X00_MAX_PRIMARY_GPIO (32)
-+
-+#define AU1000_GPIO_MINOR_MAX AU1X00_MAX_PRIMARY_GPIO
-+/* Au1100, 1500, 1550 and 1200 have the secondary GPIO block */
-+#define AU1XX0_GPIO_MINOR_MAX (48)
-+
-+#define AU1X00_GPIO_NAME "gpio"
-+
-+/* GPIO pins which are not multiplexed */
-+#if defined(CONFIG_SOC_AU1000)
-+ #define NATIVE_GPIOPIN ((1 << 15) | (1 << 8) | (1 << 7) | (1 << 1) | (1 << 0))
-+ #define NATIVE_GPIO2PIN (0)
-+#elif defined(CONFIG_SOC_AU1100)
-+ #define NATIVE_GPIOPIN ((1 << 23) | (1 << 22) | (1 << 21) | (1 << 20) | (1 << 19) | (1 << 18) | \
-+ (1 << 17) | (1 << 16) | (1 << 7) | (1 << 1) | (1 << 0))
-+ #define NATIVE_GPIO2PIN (0)
-+#elif defined(CONFIG_SOC_AU1500)
-+ #define NATIVE_GPIOPIN ((1 << 15) | (1 << 8) | (1 << 7) | (1 << 1) | (1 << 0))
-+ /* exclude the PCI reset output signal: GPIO[200], DMA_REQ2 and DMA_REQ3 */
-+ #define NATIVE_GPIO2PIN (0xfffe & ~((1 << 9) | (1 << 8)))
-+#elif defined(CONFIG_SOC_AU1550)
-+ #define NATIVE_GPIOPIN ((1 << 15) | (1 << 8) | (1 << 7) | (1 << 6) | (1 << 1) | (1 << 0))
-+ /* please refere Au1550 Data Book, chapter 15 */
-+ #define NATIVE_GPIO2PIN (1 << 5)
-+#elif defined(CONFIG_SOC_AU1200)
-+ #define NATIVE_GPIOPIN ((1 << 7) | (1 << 5))
-+ #define NATIVE_GPIO2PIN (0)
-+#endif
-+
-+/* minor as u32 */
-+#define MINOR_TO_GPIOPIN(minor) ((minor < AU1X00_MAX_PRIMARY_GPIO) ? minor : (minor - AU1X00_MAX_PRIMARY_GPIO))
-+#define IS_PRIMARY_GPIOPIN(minor) ((minor < AU1X00_MAX_PRIMARY_GPIO) ? 1 : 0)
-+
-+/*
-+ * pin to minor mapping.
-+ * GPIO0-GPIO31, minor=0-31.
-+ * GPIO200-GPIO215, minor=32-47.
-+ */
-+typedef struct _au1x00_gpio_bit_ctl {
-+ int direction; // The direction of this GPIO pin. 0: IN, 1: OUT.
-+ int data; // Pin output when itized (0/1), or at the term. 0/1/-1 (tristate).
-+} au1x00_gpio_bit_ctl;
-+
-+typedef struct _au1x00_gpio_driver {
-+ const char *driver_name;
-+ const char *name;
-+ int name_base; /* offset of printed name */
-+ short major; /* major device number */
-+ short minor_start; /* start of minor device number*/
-+ short num; /* number of devices */
-+} au1x00_gpio_driver;
-+
- #ifdef __KERNEL__
--extern u32 get_au1000_avail_gpio_mask(void);
--extern int au1000gpio_tristate(u32 data);
--extern int au1000gpio_in(u32 *data);
--extern int au1000gpio_set(u32 data);
--extern int au1000gpio_clear(u32 data);
--extern int au1000gpio_out(u32 data);
-+extern u32 get_au1000_avail_gpio_mask(u32 *avail_gpio2);
-+extern int au1000gpio_tristate(u32 minor, u32 data);
-+extern int au1000gpio_in(u32 minor, u32 *data);
-+extern int au1000gpio_set(u32 minor, u32 data);
-+extern int au1000gpio_clear(u32 minor, u32 data);
-+extern int au1000gpio_out(u32 minor, u32 data);
-+extern int au1000gpio_bit_read(u32 minor, u32 *read_data);
-+extern int au1000gpio_bit_set(u32 minor);
-+extern int au1000gpio_bit_clear(u32 minor);
-+extern int au1000gpio_bit_tristate(u32 minor);
-+extern int check_minor_to_gpio(u32 minor);
-+extern int au1000gpio_bit_init(u32 minor, au1x00_gpio_bit_ctl *bit_opt);
-+extern int au1000gpio_bit_term(u32 minor, au1x00_gpio_bit_ctl *bit_opt);
-+
-+extern void gpio_register_devfs (au1x00_gpio_driver *driver, unsigned int flags, unsigned minor);
-+extern void gpio_unregister_devfs (au1x00_gpio_driver *driver, unsigned minor);
-+extern int gpio_register_driver(au1x00_gpio_driver *driver);
-+extern int gpio_unregister_driver(au1x00_gpio_driver *driver);
- #endif
-
- #endif
-diff -Nur linux-2.4.30/include/asm-mips/au1000_pcmcia.h linux-2.4.30-mips/include/asm-mips/au1000_pcmcia.h
---- linux-2.4.30/include/asm-mips/au1000_pcmcia.h 2005-01-19 15:10:11.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips/au1000_pcmcia.h 2005-01-30 09:01:28.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips/au1000_pcmcia.h linux-2.4.32-rc1.mips/include/asm-mips/au1000_pcmcia.h
+--- linux-2.4.32-rc1/include/asm-mips/au1000_pcmcia.h 2005-01-19 15:10:11.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips/au1000_pcmcia.h 2005-01-30 09:01:28.000000000 +0100
@@ -38,16 +38,41 @@
#define AU1X_SOCK0_PHYS_MEM 0xF80000000
@@ -24508,9 +24979,9 @@ diff -Nur linux-2.4.30/include/asm-mips/au1000_pcmcia.h linux-2.4.30-mips/includ
#endif
struct pcmcia_state {
-diff -Nur linux-2.4.30/include/asm-mips/au1100_mmc.h linux-2.4.30-mips/include/asm-mips/au1100_mmc.h
---- linux-2.4.30/include/asm-mips/au1100_mmc.h 2005-01-19 15:10:11.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips/au1100_mmc.h 2005-01-30 09:01:28.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips/au1100_mmc.h linux-2.4.32-rc1.mips/include/asm-mips/au1100_mmc.h
+--- linux-2.4.32-rc1/include/asm-mips/au1100_mmc.h 2005-01-19 15:10:11.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips/au1100_mmc.h 2005-01-30 09:01:28.000000000 +0100
@@ -39,16 +39,22 @@
#define __ASM_AU1100_MMC_H
@@ -24552,9 +25023,9 @@ diff -Nur linux-2.4.30/include/asm-mips/au1100_mmc.h linux-2.4.30-mips/include/a
+
#endif /* __ASM_AU1100_MMC_H */
-diff -Nur linux-2.4.30/include/asm-mips/au1xxx_dbdma.h linux-2.4.30-mips/include/asm-mips/au1xxx_dbdma.h
---- linux-2.4.30/include/asm-mips/au1xxx_dbdma.h 2005-01-19 15:10:11.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips/au1xxx_dbdma.h 2005-01-30 09:01:28.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips/au1xxx_dbdma.h linux-2.4.32-rc1.mips/include/asm-mips/au1xxx_dbdma.h
+--- linux-2.4.32-rc1/include/asm-mips/au1xxx_dbdma.h 2005-01-19 15:10:11.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips/au1xxx_dbdma.h 2005-01-30 09:01:28.000000000 +0100
@@ -43,7 +43,7 @@
#define DDMA_GLOBAL_BASE 0xb4003000
#define DDMA_CHANNEL_BASE 0xb4002000
@@ -24707,9 +25178,9 @@ diff -Nur linux-2.4.30/include/asm-mips/au1xxx_dbdma.h linux-2.4.30-mips/include
+
#endif /* _LANGUAGE_ASSEMBLY */
#endif /* _AU1000_DBDMA_H_ */
-diff -Nur linux-2.4.30/include/asm-mips/au1xxx_gpio.h linux-2.4.30-mips/include/asm-mips/au1xxx_gpio.h
---- linux-2.4.30/include/asm-mips/au1xxx_gpio.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips/au1xxx_gpio.h 2005-01-30 09:01:28.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips/au1xxx_gpio.h linux-2.4.32-rc1.mips/include/asm-mips/au1xxx_gpio.h
+--- linux-2.4.32-rc1/include/asm-mips/au1xxx_gpio.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips/au1xxx_gpio.h 2005-01-30 09:01:28.000000000 +0100
@@ -0,0 +1,22 @@
+
+
@@ -24733,9 +25204,9 @@ diff -Nur linux-2.4.30/include/asm-mips/au1xxx_gpio.h linux-2.4.30-mips/include/
+} AU1X00_GPIO2;
+
+#endif //__AU1XXX_GPIO_H
-diff -Nur linux-2.4.30/include/asm-mips/au1xxx_psc.h linux-2.4.30-mips/include/asm-mips/au1xxx_psc.h
---- linux-2.4.30/include/asm-mips/au1xxx_psc.h 2005-01-19 15:10:11.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips/au1xxx_psc.h 2005-01-30 09:01:28.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips/au1xxx_psc.h linux-2.4.32-rc1.mips/include/asm-mips/au1xxx_psc.h
+--- linux-2.4.32-rc1/include/asm-mips/au1xxx_psc.h 2005-01-19 15:10:11.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips/au1xxx_psc.h 2005-01-30 09:01:28.000000000 +0100
@@ -41,6 +41,11 @@
#define PSC3_BASE_ADDR 0xb0d00000
#endif
@@ -24757,9 +25228,9 @@ diff -Nur linux-2.4.30/include/asm-mips/au1xxx_psc.h linux-2.4.30-mips/include/a
#define PSC_I2SCFG_WI (1 << 15)
#define PSC_I2SCFG_DIV_MASK (3 << 13)
-diff -Nur linux-2.4.30/include/asm-mips/bootinfo.h linux-2.4.30-mips/include/asm-mips/bootinfo.h
---- linux-2.4.30/include/asm-mips/bootinfo.h 2004-02-18 14:36:32.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips/bootinfo.h 2005-01-30 09:01:28.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips/bootinfo.h linux-2.4.32-rc1.mips/include/asm-mips/bootinfo.h
+--- linux-2.4.32-rc1/include/asm-mips/bootinfo.h 2004-02-18 14:36:32.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips/bootinfo.h 2005-01-30 09:01:28.000000000 +0100
@@ -180,6 +180,9 @@
#define MACH_MTX1 7 /* 4G MTX-1 Au1500-based board */
#define MACH_CSB250 8 /* Cogent Au1500 */
@@ -24770,9 +25241,9 @@ diff -Nur linux-2.4.30/include/asm-mips/bootinfo.h linux-2.4.30-mips/include/asm
/*
* Valid machtype for group NEC_VR41XX
-diff -Nur linux-2.4.30/include/asm-mips/db1200.h linux-2.4.30-mips/include/asm-mips/db1200.h
---- linux-2.4.30/include/asm-mips/db1200.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips/db1200.h 2005-01-30 09:02:45.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips/db1200.h linux-2.4.32-rc1.mips/include/asm-mips/db1200.h
+--- linux-2.4.32-rc1/include/asm-mips/db1200.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips/db1200.h 2005-01-30 09:02:45.000000000 +0100
@@ -0,0 +1,214 @@
+/*
+ * AMD Alchemy DB1200 Referrence Board
@@ -24988,9 +25459,9 @@ diff -Nur linux-2.4.30/include/asm-mips/db1200.h linux-2.4.30-mips/include/asm-m
+
+#endif /* __ASM_DB1200_H */
+
-diff -Nur linux-2.4.30/include/asm-mips/db1x00.h linux-2.4.30-mips/include/asm-mips/db1x00.h
---- linux-2.4.30/include/asm-mips/db1x00.h 2005-01-19 15:10:11.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips/db1x00.h 2005-01-30 09:06:19.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips/db1x00.h linux-2.4.32-rc1.mips/include/asm-mips/db1x00.h
+--- linux-2.4.32-rc1/include/asm-mips/db1x00.h 2005-01-19 15:10:11.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips/db1x00.h 2005-01-30 09:06:19.000000000 +0100
@@ -1,5 +1,5 @@
/*
- * AMD Alchemy DB1x00 Reference Boards
@@ -25096,9 +25567,26 @@ diff -Nur linux-2.4.30/include/asm-mips/db1x00.h linux-2.4.30-mips/include/asm-m
#endif /* __ASM_DB1X00_H */
-diff -Nur linux-2.4.30/include/asm-mips/ficmmp.h linux-2.4.30-mips/include/asm-mips/ficmmp.h
---- linux-2.4.30/include/asm-mips/ficmmp.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips/ficmmp.h 2005-01-30 09:01:28.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips/elf.h linux-2.4.32-rc1.mips/include/asm-mips/elf.h
+--- linux-2.4.32-rc1/include/asm-mips/elf.h 2004-02-18 14:36:32.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips/elf.h 2005-04-14 12:41:44.000000000 +0200
+@@ -66,9 +66,10 @@
+ #define USE_ELF_CORE_DUMP
+ #define ELF_EXEC_PAGESIZE PAGE_SIZE
+
+-#define ELF_CORE_COPY_REGS(_dest,_regs) \
+- memcpy((char *) &_dest, (char *) _regs, \
+- sizeof(struct pt_regs));
++extern void dump_regs(elf_greg_t *, struct pt_regs *regs);
++
++#define ELF_CORE_COPY_REGS(elf_regs, regs) \
++ dump_regs((elf_greg_t *)&(elf_regs), regs);
+
+ /* This yields a mask that user programs can use to figure out what
+ instruction set this cpu supports. This could be done in userspace,
+diff -Nur linux-2.4.32-rc1/include/asm-mips/ficmmp.h linux-2.4.32-rc1.mips/include/asm-mips/ficmmp.h
+--- linux-2.4.32-rc1/include/asm-mips/ficmmp.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips/ficmmp.h 2005-01-30 09:01:28.000000000 +0100
@@ -0,0 +1,156 @@
+/*
+ * FIC MMP
@@ -25256,9 +25744,9 @@ diff -Nur linux-2.4.30/include/asm-mips/ficmmp.h linux-2.4.30-mips/include/asm-m
+
+#endif /* __ASM_FICMMP_H */
+
-diff -Nur linux-2.4.30/include/asm-mips/hazards.h linux-2.4.30-mips/include/asm-mips/hazards.h
---- linux-2.4.30/include/asm-mips/hazards.h 2004-02-18 14:36:32.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips/hazards.h 2004-11-25 23:18:38.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips/hazards.h linux-2.4.32-rc1.mips/include/asm-mips/hazards.h
+--- linux-2.4.32-rc1/include/asm-mips/hazards.h 2004-02-18 14:36:32.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips/hazards.h 2005-06-06 16:46:22.000000000 +0200
@@ -3,7 +3,7 @@
* License. See the file "COPYING" in the main directory of this archive
* for more details.
@@ -25268,7 +25756,7 @@ diff -Nur linux-2.4.30/include/asm-mips/hazards.h linux-2.4.30-mips/include/asm-
*/
#ifndef _ASM_HAZARDS_H
#define _ASM_HAZARDS_H
-@@ -12,38 +12,185 @@
+@@ -12,38 +12,200 @@
#ifdef __ASSEMBLY__
@@ -25285,18 +25773,18 @@ diff -Nur linux-2.4.30/include/asm-mips/hazards.h linux-2.4.30-mips/include/asm-
-#define rm9000_tlb_hazard \
+
+#define mtc0_tlbw_hazard \
-+ .set push; \
-+ .set mips32; \
-+ _ssnop; _ssnop; _ssnop; _ssnop; \
-+ .set pop
-+
-+#define tlbw_eret_hazard \
.set push; \
.set mips32; \
- ssnop; ssnop; ssnop; ssnop; \
+ _ssnop; _ssnop; _ssnop; _ssnop; \
.set pop
+
++#define tlbw_eret_hazard \
++ .set push; \
++ .set mips32; \
++ _ssnop; _ssnop; _ssnop; _ssnop; \
++ .set pop
++
#else
-#define rm9000_tlb_hazard
+
@@ -25308,7 +25796,8 @@ diff -Nur linux-2.4.30/include/asm-mips/hazards.h linux-2.4.30-mips/include/asm-
+ */
+#define mtc0_tlbw_hazard \
+ b . + 8
-+#define tlbw_eret_hazard
++#define tlbw_eret_hazard \
++ nop
#endif
+/*
@@ -25331,16 +25820,30 @@ diff -Nur linux-2.4.30/include/asm-mips/hazards.h linux-2.4.30-mips/include/asm-
+#define irq_disable_hazard \
+ ehb # irq_disable_hazard
+
++#elif defined(CONFIG_CPU_R10000) || defined(CONFIG_CPU_RM9000)
++
++/*
++ * R10000 rocks - all hazards handled in hardware, so this becomes a nobrainer.
++ */
++
++#define irq_enable_hazard
++
++#define irq_disable_hazard
++
#else
+ /*
++ * Classic MIPS needs 1 - 3 nops or ssnops
++ */
+#define irq_enable_hazard
-+#define irq_disable_hazard
++#define irq_disable_hazard \
++ _ssnop; _ssnop; _ssnop
+
+#endif
+
+#else /* __ASSEMBLY__ */
+
- /*
++/*
* RM9000 hazards. When the JTLB is updated by tlbwi or tlbwr, a subsequent
* use of the JTLB for instructions should not occur for 4 cpu cycles and use
* for data translations should not occur for 3 cpu cycles.
@@ -25460,9 +25963,160 @@ diff -Nur linux-2.4.30/include/asm-mips/hazards.h linux-2.4.30-mips/include/asm-
+#endif /* __ASSEMBLY__ */
+
#endif /* _ASM_HAZARDS_H */
-diff -Nur linux-2.4.30/include/asm-mips/mipsregs.h linux-2.4.30-mips/include/asm-mips/mipsregs.h
---- linux-2.4.30/include/asm-mips/mipsregs.h 2005-01-19 15:10:12.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips/mipsregs.h 2005-02-06 22:24:22.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips/ide.h linux-2.4.32-rc1.mips/include/asm-mips/ide.h
+--- linux-2.4.32-rc1/include/asm-mips/ide.h 2003-08-25 13:44:43.000000000 +0200
++++ linux-2.4.32-rc1.mips/include/asm-mips/ide.h 2005-04-19 14:26:53.000000000 +0200
+@@ -32,12 +32,12 @@
+
+ extern struct ide_ops *ide_ops;
+
+-static __inline__ int ide_default_irq(ide_ioreg_t base)
++static inline int ide_default_irq(ide_ioreg_t base)
+ {
+ return ide_ops->ide_default_irq(base);
+ }
+
+-static __inline__ ide_ioreg_t ide_default_io_base(int index)
++static inline ide_ioreg_t ide_default_io_base(int index)
+ {
+ return ide_ops->ide_default_io_base(index);
+ }
+@@ -48,7 +48,7 @@
+ ide_ops->ide_init_hwif_ports(hw, data_port, ctrl_port, irq);
+ }
+
+-static __inline__ void ide_init_default_hwifs(void)
++static inline void ide_init_default_hwifs(void)
+ {
+ #ifndef CONFIG_BLK_DEV_IDEPCI
+ hw_regs_t hw;
+@@ -68,7 +68,89 @@
+ #define ide_ack_intr(hwif) ((hwif)->hw.ack_intr ? (hwif)->hw.ack_intr(hwif) : 1)
+ #endif
+
+-#include <asm-generic/ide_iops.h>
++/* MIPS port and memory-mapped I/O string operations. */
++
++static inline void __ide_flush_dcache_range(unsigned long addr, unsigned long size)
++{
++ if (cpu_has_dc_aliases) {
++ unsigned long end = addr + size;
++ for (; addr < end; addr += PAGE_SIZE)
++ flush_dcache_page(virt_to_page(addr));
++ }
++}
++
++static inline void __ide_insw(unsigned long port, void *addr,
++ unsigned int count)
++{
++ insw(port, addr, count);
++ __ide_flush_dcache_range((unsigned long)addr, count * 2);
++}
++
++static inline void __ide_insl(unsigned long port, void *addr, unsigned int count)
++{
++ insl(port, addr, count);
++ __ide_flush_dcache_range((unsigned long)addr, count * 4);
++}
++
++static inline void __ide_outsw(unsigned long port, const void *addr,
++ unsigned long count)
++{
++ outsw(port, addr, count);
++ __ide_flush_dcache_range((unsigned long)addr, count * 2);
++}
++
++static inline void __ide_outsl(unsigned long port, const void *addr,
++ unsigned long count)
++{
++ outsl(port, addr, count);
++ __ide_flush_dcache_range((unsigned long)addr, count * 4);
++}
++
++static inline void __ide_mm_insw(unsigned long port, void *addr, u32 count)
++{
++ unsigned long start = (unsigned long) addr;
++
++ while (count--) {
++ *(u16 *)addr = readw(port);
++ addr += 2;
++ }
++ __ide_flush_dcache_range(start, count * 2);
++}
++
++static inline void __ide_mm_insl(unsigned long port, void *addr, u32 count)
++{
++ unsigned long start = (unsigned long) addr;
++
++ while (count--) {
++ *(u32 *)addr = readl(port);
++ addr += 4;
++ }
++ __ide_flush_dcache_range(start, count * 4);
++}
++
++static inline void __ide_mm_outsw(unsigned long port, const void *addr,
++ u32 count)
++{
++ unsigned long start = (unsigned long) addr;
++
++ while (count--) {
++ writew(*(u16 *)addr, port);
++ addr += 2;
++ }
++ __ide_flush_dcache_range(start, count * 2);
++}
++
++static inline void __ide_mm_outsl(unsigned long port, const void *addr,
++ u32 count)
++{
++ unsigned long start = (unsigned long) addr;
++
++ while (count--) {
++ writel(*(u32 *)addr, port);
++ addr += 4;
++ }
++ __ide_flush_dcache_range(start, count * 4);
++}
+
+ #endif /* __KERNEL__ */
+
+diff -Nur linux-2.4.32-rc1/include/asm-mips/io.h linux-2.4.32-rc1.mips/include/asm-mips/io.h
+--- linux-2.4.32-rc1/include/asm-mips/io.h 2003-08-25 13:44:43.000000000 +0200
++++ linux-2.4.32-rc1.mips/include/asm-mips/io.h 2005-04-19 14:24:16.000000000 +0200
+@@ -392,7 +392,8 @@
+ return __ioswab32(__val);
+ }
+
+-static inline void __outsb(unsigned long port, void *addr, unsigned int count)
++static inline void __outsb(unsigned long port, const void *addr,
++ unsigned int count)
+ {
+ while (count--) {
+ outb(*(u8 *)addr, port);
+@@ -408,7 +409,8 @@
+ }
+ }
+
+-static inline void __outsw(unsigned long port, void *addr, unsigned int count)
++static inline void __outsw(unsigned long port, const void *addr,
++ unsigned int count)
+ {
+ while (count--) {
+ outw(*(u16 *)addr, port);
+@@ -424,7 +426,8 @@
+ }
+ }
+
+-static inline void __outsl(unsigned long port, void *addr, unsigned int count)
++static inline void __outsl(unsigned long port, const void *addr,
++ unsigned int count)
+ {
+ while (count--) {
+ outl(*(u32 *)addr, port);
+diff -Nur linux-2.4.32-rc1/include/asm-mips/mipsregs.h linux-2.4.32-rc1.mips/include/asm-mips/mipsregs.h
+--- linux-2.4.32-rc1/include/asm-mips/mipsregs.h 2005-01-19 15:10:12.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips/mipsregs.h 2005-02-06 22:24:22.000000000 +0100
@@ -757,10 +757,18 @@
#define read_c0_config1() __read_32bit_c0_register($16, 1)
#define read_c0_config2() __read_32bit_c0_register($16, 2)
@@ -25525,9 +26179,9 @@ diff -Nur linux-2.4.30/include/asm-mips/mipsregs.h linux-2.4.30-mips/include/asm
}
/*
-diff -Nur linux-2.4.30/include/asm-mips/mmu_context.h linux-2.4.30-mips/include/asm-mips/mmu_context.h
---- linux-2.4.30/include/asm-mips/mmu_context.h 2005-01-19 15:10:12.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips/mmu_context.h 2004-11-22 14:38:29.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips/mmu_context.h linux-2.4.32-rc1.mips/include/asm-mips/mmu_context.h
+--- linux-2.4.32-rc1/include/asm-mips/mmu_context.h 2005-01-19 15:10:12.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips/mmu_context.h 2004-11-22 14:38:29.000000000 +0100
@@ -27,7 +27,7 @@
#define TLBMISS_HANDLER_SETUP_PGD(pgd) \
pgd_current[smp_processor_id()] = (unsigned long)(pgd)
@@ -25537,9 +26191,9 @@ diff -Nur linux-2.4.30/include/asm-mips/mmu_context.h linux-2.4.30-mips/include/
TLBMISS_HANDLER_SETUP_PGD(swapper_pg_dir)
extern unsigned long pgd_current[];
-diff -Nur linux-2.4.30/include/asm-mips/pb1100.h linux-2.4.30-mips/include/asm-mips/pb1100.h
---- linux-2.4.30/include/asm-mips/pb1100.h 2003-08-25 13:44:44.000000000 +0200
-+++ linux-2.4.30-mips/include/asm-mips/pb1100.h 2005-01-30 09:10:29.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips/pb1100.h linux-2.4.32-rc1.mips/include/asm-mips/pb1100.h
+--- linux-2.4.32-rc1/include/asm-mips/pb1100.h 2003-08-25 13:44:44.000000000 +0200
++++ linux-2.4.32-rc1.mips/include/asm-mips/pb1100.h 2005-01-30 09:10:29.000000000 +0100
@@ -1,5 +1,5 @@
/*
- * Alchemy Semi PB1100 Referrence Board
@@ -25706,9 +26360,9 @@ diff -Nur linux-2.4.30/include/asm-mips/pb1100.h linux-2.4.30-mips/include/asm-m
#endif /* __ASM_PB1100_H */
+
-diff -Nur linux-2.4.30/include/asm-mips/pb1200.h linux-2.4.30-mips/include/asm-mips/pb1200.h
---- linux-2.4.30/include/asm-mips/pb1200.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips/pb1200.h 2005-01-30 09:01:28.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips/pb1200.h linux-2.4.32-rc1.mips/include/asm-mips/pb1200.h
+--- linux-2.4.32-rc1/include/asm-mips/pb1200.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips/pb1200.h 2005-01-30 09:01:28.000000000 +0100
@@ -0,0 +1,244 @@
+/*
+ * AMD Alchemy PB1200 Referrence Board
@@ -25954,9 +26608,9 @@ diff -Nur linux-2.4.30/include/asm-mips/pb1200.h linux-2.4.30-mips/include/asm-m
+
+#endif /* __ASM_PB1200_H */
+
-diff -Nur linux-2.4.30/include/asm-mips/pb1550.h linux-2.4.30-mips/include/asm-mips/pb1550.h
---- linux-2.4.30/include/asm-mips/pb1550.h 2005-01-19 15:10:12.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips/pb1550.h 2005-01-30 09:01:28.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips/pb1550.h linux-2.4.32-rc1.mips/include/asm-mips/pb1550.h
+--- linux-2.4.32-rc1/include/asm-mips/pb1550.h 2005-01-19 15:10:12.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips/pb1550.h 2005-01-30 09:01:28.000000000 +0100
@@ -30,13 +30,11 @@
#define DBDMA_AC97_TX_CHAN DSCR_CMD0_PSC1_TX
@@ -26000,9 +26654,98 @@ diff -Nur linux-2.4.30/include/asm-mips/pb1550.h linux-2.4.30-mips/include/asm-m
+#define AU1XXX_SMC91111_IRQ AU1000_GPIO_3
#endif /* __ASM_PB1550_H */
-diff -Nur linux-2.4.30/include/asm-mips/tx4927/tx4927.h linux-2.4.30-mips/include/asm-mips/tx4927/tx4927.h
---- linux-2.4.30/include/asm-mips/tx4927/tx4927.h 2003-08-25 13:44:44.000000000 +0200
-+++ linux-2.4.30-mips/include/asm-mips/tx4927/tx4927.h 2004-11-22 19:02:10.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips/reg.h linux-2.4.32-rc1.mips/include/asm-mips/reg.h
+--- linux-2.4.32-rc1/include/asm-mips/reg.h 2002-08-03 02:39:45.000000000 +0200
++++ linux-2.4.32-rc1.mips/include/asm-mips/reg.h 2005-04-14 12:41:44.000000000 +0200
+@@ -45,6 +45,9 @@
+ /*
+ * k0/k1 unsaved
+ */
++#define EF_REG26 32
++#define EF_REG27 33
++
+ #define EF_REG28 34
+ #define EF_REG29 35
+ #define EF_REG30 36
+@@ -60,6 +63,7 @@
+ #define EF_CP0_BADVADDR 41
+ #define EF_CP0_STATUS 42
+ #define EF_CP0_CAUSE 43
++#define EF_UNUSED0 44
+
+ #define EF_SIZE 180 /* size in bytes */
+
+diff -Nur linux-2.4.32-rc1/include/asm-mips/sgi/hpc3.h linux-2.4.32-rc1.mips/include/asm-mips/sgi/hpc3.h
+--- linux-2.4.32-rc1/include/asm-mips/sgi/hpc3.h 2003-08-25 13:44:44.000000000 +0200
++++ linux-2.4.32-rc1.mips/include/asm-mips/sgi/hpc3.h 2005-09-23 16:35:27.000000000 +0200
+@@ -128,26 +128,26 @@
+ volatile u32 rx_gfptr; /* current GIO fifo ptr */
+ volatile u32 rx_dfptr; /* current device fifo ptr */
+ u32 _unused1; /* padding */
+- volatile u32 rx_reset; /* reset register */
+-#define HPC3_ERXRST_CRESET 0x1 /* Reset dma channel and external controller */
+-#define HPC3_ERXRST_CLRIRQ 0x2 /* Clear channel interrupt */
+-#define HPC3_ERXRST_LBACK 0x4 /* Enable diagnostic loopback mode of Seeq8003 */
+-
+- volatile u32 rx_dconfig; /* DMA configuration register */
+-#define HPC3_ERXDCFG_D1 0x0000f /* Cycles to spend in D1 state for PIO */
+-#define HPC3_ERXDCFG_D2 0x000f0 /* Cycles to spend in D2 state for PIO */
+-#define HPC3_ERXDCFG_D3 0x00f00 /* Cycles to spend in D3 state for PIO */
+-#define HPC3_ERXDCFG_WCTRL 0x01000 /* Enable writes of desc into ex ctrl port */
+-#define HPC3_ERXDCFG_FRXDC 0x02000 /* Clear eop stat bits upon rxdc, hw seeq fix */
+-#define HPC3_ERXDCFG_FEOP 0x04000 /* Bad packet marker timeout enable */
+-#define HPC3_ERXDCFG_FIRQ 0x08000 /* Another bad packet timeout enable */
+-#define HPC3_ERXDCFG_PTO 0x30000 /* Programmed timeout value for above two */
+-
+- volatile u32 rx_pconfig; /* PIO configuration register */
+-#define HPC3_ERXPCFG_P1 0x000f /* Cycles to spend in P1 state for PIO */
+-#define HPC3_ERXPCFG_P2 0x00f0 /* Cycles to spend in P2 state for PIO */
+-#define HPC3_ERXPCFG_P3 0x0f00 /* Cycles to spend in P3 state for PIO */
+-#define HPC3_ERXPCFG_TST 0x1000 /* Diagnistic ram test feature bit */
++ volatile u32 reset; /* reset register */
++#define HPC3_ERST_CRESET 0x1 /* Reset dma channel and external controller */
++#define HPC3_ERST_CLRIRQ 0x2 /* Clear channel interrupt */
++#define HPC3_ERST_LBACK 0x4 /* Enable diagnostic loopback mode of Seeq8003 */
++
++ volatile u32 dconfig; /* DMA configuration register */
++#define HPC3_EDCFG_D1 0x0000f /* Cycles to spend in D1 state for PIO */
++#define HPC3_EDCFG_D2 0x000f0 /* Cycles to spend in D2 state for PIO */
++#define HPC3_EDCFG_D3 0x00f00 /* Cycles to spend in D3 state for PIO */
++#define HPC3_EDCFG_WCTRL 0x01000 /* Enable writes of desc into ex ctrl port */
++#define HPC3_EDCFG_FRXDC 0x02000 /* Clear eop stat bits upon rxdc, hw seeq fix */
++#define HPC3_EDCFG_FEOP 0x04000 /* Bad packet marker timeout enable */
++#define HPC3_EDCFG_FIRQ 0x08000 /* Another bad packet timeout enable */
++#define HPC3_EDCFG_PTO 0x30000 /* Programmed timeout value for above two */
++
++ volatile u32 pconfig; /* PIO configuration register */
++#define HPC3_EPCFG_P1 0x000f /* Cycles to spend in P1 state for PIO */
++#define HPC3_EPCFG_P2 0x00f0 /* Cycles to spend in P2 state for PIO */
++#define HPC3_EPCFG_P3 0x0f00 /* Cycles to spend in P3 state for PIO */
++#define HPC3_EPCFG_TST 0x1000 /* Diagnistic ram test feature bit */
+
+ u32 _unused2[0x1000/4 - 8]; /* padding */
+
+@@ -221,7 +221,7 @@
+ #define HPC3_BESTAT_PIDMASK 0x3f700 /* DMA channel parity identifier */
+
+ u32 _unused1[0x14000/4 - 5]; /* padding */
+-
++
+ /* Now direct PIO per-HPC3 peripheral access to external regs. */
+ volatile u32 scsi0_ext[256]; /* SCSI channel 0 external regs */
+ u32 _unused2[0x7c00/4];
+@@ -304,7 +304,7 @@
+ volatile u32 bbram[8192-50-14]; /* Battery backed ram */
+ };
+
+-/*
++/*
+ * It is possible to have two HPC3's within the address space on
+ * one machine, though only having one is more likely on an Indy.
+ */
+diff -Nur linux-2.4.32-rc1/include/asm-mips/tx4927/tx4927.h linux-2.4.32-rc1.mips/include/asm-mips/tx4927/tx4927.h
+--- linux-2.4.32-rc1/include/asm-mips/tx4927/tx4927.h 2003-08-25 13:44:44.000000000 +0200
++++ linux-2.4.32-rc1.mips/include/asm-mips/tx4927/tx4927.h 2004-11-22 19:02:10.000000000 +0100
@@ -88,8 +88,8 @@
@@ -26071,9 +26814,9 @@ diff -Nur linux-2.4.30/include/asm-mips/tx4927/tx4927.h linux-2.4.30-mips/includ
#define TX4927_ACLC_ACSEMAPH 0xf720
#define TX4927_ACLC_ACGPIDAT 0xf740
#define TX4927_ACLC_ACGPODAT 0xf744
-diff -Nur linux-2.4.30/include/asm-mips/unistd.h linux-2.4.30-mips/include/asm-mips/unistd.h
---- linux-2.4.30/include/asm-mips/unistd.h 2005-01-19 15:10:12.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips/unistd.h 2004-11-24 21:30:06.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips/unistd.h linux-2.4.32-rc1.mips/include/asm-mips/unistd.h
+--- linux-2.4.32-rc1/include/asm-mips/unistd.h 2005-01-19 15:10:12.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips/unistd.h 2004-11-24 21:30:06.000000000 +0100
@@ -760,7 +760,7 @@
if (__a3 == 0) \
return (type) __v0; \
@@ -26155,9 +26898,38 @@ diff -Nur linux-2.4.30/include/asm-mips/unistd.h linux-2.4.30-mips/include/asm-m
}
#endif /* (_MIPS_SIM == _MIPS_SIM_NABI32) || (_MIPS_SIM == _MIPS_SIM_ABI64) */
-diff -Nur linux-2.4.30/include/asm-mips64/hazards.h linux-2.4.30-mips/include/asm-mips64/hazards.h
---- linux-2.4.30/include/asm-mips64/hazards.h 2004-02-18 14:36:32.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips64/hazards.h 2004-11-25 23:18:38.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips64/checksum.h linux-2.4.32-rc1.mips/include/asm-mips64/checksum.h
+--- linux-2.4.32-rc1/include/asm-mips64/checksum.h 2005-01-19 15:10:12.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips64/checksum.h 2005-09-20 12:58:50.000000000 +0200
+@@ -144,7 +144,7 @@
+ "daddu\t%0, %4\n\t"
+ "dsll32\t$1, %0, 0\n\t"
+ "daddu\t%0, $1\n\t"
+- "dsrl32\t%0, %0, 0\n\t"
++ "dsra32\t%0, %0, 0\n\t"
+ ".set\tat"
+ : "=&r" (sum)
+ : "0" (daddr), "r"(saddr),
+diff -Nur linux-2.4.32-rc1/include/asm-mips64/elf.h linux-2.4.32-rc1.mips/include/asm-mips64/elf.h
+--- linux-2.4.32-rc1/include/asm-mips64/elf.h 2004-02-18 14:36:32.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips64/elf.h 2005-04-14 12:41:44.000000000 +0200
+@@ -64,9 +64,10 @@
+ #define USE_ELF_CORE_DUMP
+ #define ELF_EXEC_PAGESIZE PAGE_SIZE
+
+-#define ELF_CORE_COPY_REGS(_dest,_regs) \
+- memcpy((char *) &_dest, (char *) _regs, \
+- sizeof(struct pt_regs));
++extern void dump_regs(elf_greg_t *, struct pt_regs *regs);
++
++#define ELF_CORE_COPY_REGS(elf_regs, regs) \
++ dump_regs((elf_greg_t *)&(elf_regs), regs);
+
+ /* This yields a mask that user programs can use to figure out what
+ instruction set this cpu supports. This could be done in userspace,
+diff -Nur linux-2.4.32-rc1/include/asm-mips64/hazards.h linux-2.4.32-rc1.mips/include/asm-mips64/hazards.h
+--- linux-2.4.32-rc1/include/asm-mips64/hazards.h 2004-02-18 14:36:32.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips64/hazards.h 2005-06-06 16:46:22.000000000 +0200
@@ -3,7 +3,7 @@
* License. See the file "COPYING" in the main directory of this archive
* for more details.
@@ -26167,7 +26939,7 @@ diff -Nur linux-2.4.30/include/asm-mips64/hazards.h linux-2.4.30-mips/include/as
*/
#ifndef _ASM_HAZARDS_H
#define _ASM_HAZARDS_H
-@@ -12,37 +12,185 @@
+@@ -12,37 +12,200 @@
#ifdef __ASSEMBLY__
@@ -26185,15 +26957,15 @@ diff -Nur linux-2.4.30/include/asm-mips64/hazards.h linux-2.4.30-mips/include/as
+
+#define mtc0_tlbw_hazard \
+ .set push; \
-+ .set mips32; \
+ .set mips32; \
+- ssnop; ssnop; ssnop; ssnop; \
+- .set mips0
+ _ssnop; _ssnop; _ssnop; _ssnop; \
+ .set pop
+
+#define tlbw_eret_hazard \
+ .set push; \
- .set mips32; \
-- ssnop; ssnop; ssnop; ssnop; \
-- .set mips0
++ .set mips32; \
+ _ssnop; _ssnop; _ssnop; _ssnop; \
+ .set pop
+
@@ -26208,7 +26980,8 @@ diff -Nur linux-2.4.30/include/asm-mips64/hazards.h linux-2.4.30-mips/include/as
+ */
+#define mtc0_tlbw_hazard \
+ b . + 8
-+#define tlbw_eret_hazard
++#define tlbw_eret_hazard \
++ nop
#endif
+/*
@@ -26231,16 +27004,30 @@ diff -Nur linux-2.4.30/include/asm-mips64/hazards.h linux-2.4.30-mips/include/as
+#define irq_disable_hazard \
+ ehb # irq_disable_hazard
+
++#elif defined(CONFIG_CPU_R10000) || defined(CONFIG_CPU_RM9000)
++
++/*
++ * R10000 rocks - all hazards handled in hardware, so this becomes a nobrainer.
++ */
++
++#define irq_enable_hazard
++
++#define irq_disable_hazard
++
#else
+ /*
++ * Classic MIPS needs 1 - 3 nops or ssnops
++ */
+#define irq_enable_hazard
-+#define irq_disable_hazard
++#define irq_disable_hazard \
++ _ssnop; _ssnop; _ssnop
+
+#endif
+
+#else /* __ASSEMBLY__ */
+
- /*
++/*
* RM9000 hazards. When the JTLB is updated by tlbwi or tlbwr, a subsequent
* use of the JTLB for instructions should not occur for 4 cpu cycles and use
* for data translations should not occur for 3 cpu cycles.
@@ -26360,9 +27147,160 @@ diff -Nur linux-2.4.30/include/asm-mips64/hazards.h linux-2.4.30-mips/include/as
+#endif /* __ASSEMBLY__ */
+
#endif /* _ASM_HAZARDS_H */
-diff -Nur linux-2.4.30/include/asm-mips64/mipsregs.h linux-2.4.30-mips/include/asm-mips64/mipsregs.h
---- linux-2.4.30/include/asm-mips64/mipsregs.h 2005-01-19 15:10:12.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips64/mipsregs.h 2005-02-06 22:24:22.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips64/ide.h linux-2.4.32-rc1.mips/include/asm-mips64/ide.h
+--- linux-2.4.32-rc1/include/asm-mips64/ide.h 2003-08-25 13:44:44.000000000 +0200
++++ linux-2.4.32-rc1.mips/include/asm-mips64/ide.h 2005-04-19 14:26:53.000000000 +0200
+@@ -32,12 +32,12 @@
+
+ extern struct ide_ops *ide_ops;
+
+-static __inline__ int ide_default_irq(ide_ioreg_t base)
++static inline int ide_default_irq(ide_ioreg_t base)
+ {
+ return ide_ops->ide_default_irq(base);
+ }
+
+-static __inline__ ide_ioreg_t ide_default_io_base(int index)
++static inline ide_ioreg_t ide_default_io_base(int index)
+ {
+ return ide_ops->ide_default_io_base(index);
+ }
+@@ -48,7 +48,7 @@
+ ide_ops->ide_init_hwif_ports(hw, data_port, ctrl_port, irq);
+ }
+
+-static __inline__ void ide_init_default_hwifs(void)
++static inline void ide_init_default_hwifs(void)
+ {
+ #ifndef CONFIG_BLK_DEV_IDEPCI
+ hw_regs_t hw;
+@@ -68,7 +68,89 @@
+ #define ide_ack_intr(hwif) ((hwif)->hw.ack_intr ? (hwif)->hw.ack_intr(hwif) : 1)
+ #endif
+
+-#include <asm-generic/ide_iops.h>
++/* MIPS port and memory-mapped I/O string operations. */
++
++static inline void __ide_flush_dcache_range(unsigned long addr, unsigned long size)
++{
++ if (cpu_has_dc_aliases) {
++ unsigned long end = addr + size;
++ for (; addr < end; addr += PAGE_SIZE)
++ flush_dcache_page(virt_to_page(addr));
++ }
++}
++
++static inline void __ide_insw(unsigned long port, void *addr,
++ unsigned int count)
++{
++ insw(port, addr, count);
++ __ide_flush_dcache_range((unsigned long)addr, count * 2);
++}
++
++static inline void __ide_insl(unsigned long port, void *addr, unsigned int count)
++{
++ insl(port, addr, count);
++ __ide_flush_dcache_range((unsigned long)addr, count * 4);
++}
++
++static inline void __ide_outsw(unsigned long port, const void *addr,
++ unsigned long count)
++{
++ outsw(port, addr, count);
++ __ide_flush_dcache_range((unsigned long)addr, count * 2);
++}
++
++static inline void __ide_outsl(unsigned long port, const void *addr,
++ unsigned long count)
++{
++ outsl(port, addr, count);
++ __ide_flush_dcache_range((unsigned long)addr, count * 4);
++}
++
++static inline void __ide_mm_insw(unsigned long port, void *addr, u32 count)
++{
++ unsigned long start = (unsigned long) addr;
++
++ while (count--) {
++ *(u16 *)addr = readw(port);
++ addr += 2;
++ }
++ __ide_flush_dcache_range(start, count * 2);
++}
++
++static inline void __ide_mm_insl(unsigned long port, void *addr, u32 count)
++{
++ unsigned long start = (unsigned long) addr;
++
++ while (count--) {
++ *(u32 *)addr = readl(port);
++ addr += 4;
++ }
++ __ide_flush_dcache_range(start, count * 4);
++}
++
++static inline void __ide_mm_outsw(unsigned long port, const void *addr,
++ u32 count)
++{
++ unsigned long start = (unsigned long) addr;
++
++ while (count--) {
++ writew(*(u16 *)addr, port);
++ addr += 2;
++ }
++ __ide_flush_dcache_range(start, count * 2);
++}
++
++static inline void __ide_mm_outsl(unsigned long port, const void *addr,
++ u32 count)
++{
++ unsigned long start = (unsigned long) addr;
++
++ while (count--) {
++ writel(*(u32 *)addr, port);
++ addr += 4;
++ }
++ __ide_flush_dcache_range(start, count * 4);
++}
+
+ #endif /* __KERNEL__ */
+
+diff -Nur linux-2.4.32-rc1/include/asm-mips64/io.h linux-2.4.32-rc1.mips/include/asm-mips64/io.h
+--- linux-2.4.32-rc1/include/asm-mips64/io.h 2004-02-18 14:36:32.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips64/io.h 2005-04-19 14:24:53.000000000 +0200
+@@ -414,7 +414,8 @@
+ return __ioswab32(__val);
+ }
+
+-static inline void __outsb(unsigned long port, void *addr, unsigned int count)
++static inline void __outsb(unsigned long port, const void *addr,
++ unsigned int count)
+ {
+ while (count--) {
+ outb(*(u8 *)addr, port);
+@@ -430,7 +431,8 @@
+ }
+ }
+
+-static inline void __outsw(unsigned long port, void *addr, unsigned int count)
++static inline void __outsw(unsigned long port, const void *addr,
++ unsigned int count)
+ {
+ while (count--) {
+ outw(*(u16 *)addr, port);
+@@ -446,7 +448,8 @@
+ }
+ }
+
+-static inline void __outsl(unsigned long port, void *addr, unsigned int count)
++static inline void __outsl(unsigned long port, const void *addr,
++ unsigned int count)
+ {
+ while (count--) {
+ outl(*(u32 *)addr, port);
+diff -Nur linux-2.4.32-rc1/include/asm-mips64/mipsregs.h linux-2.4.32-rc1.mips/include/asm-mips64/mipsregs.h
+--- linux-2.4.32-rc1/include/asm-mips64/mipsregs.h 2005-01-19 15:10:12.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips64/mipsregs.h 2005-02-06 22:24:22.000000000 +0100
@@ -757,10 +757,18 @@
#define read_c0_config1() __read_32bit_c0_register($16, 1)
#define read_c0_config2() __read_32bit_c0_register($16, 2)
@@ -26425,9 +27363,102 @@ diff -Nur linux-2.4.30/include/asm-mips64/mipsregs.h linux-2.4.30-mips/include/a
}
/*
-diff -Nur linux-2.4.30/include/asm-mips64/unistd.h linux-2.4.30-mips/include/asm-mips64/unistd.h
---- linux-2.4.30/include/asm-mips64/unistd.h 2005-01-19 15:10:12.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-mips64/unistd.h 2004-11-24 21:30:06.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-mips64/reg.h linux-2.4.32-rc1.mips/include/asm-mips64/reg.h
+--- linux-2.4.32-rc1/include/asm-mips64/reg.h 2003-08-25 13:44:44.000000000 +0200
++++ linux-2.4.32-rc1.mips/include/asm-mips64/reg.h 2005-04-14 12:41:44.000000000 +0200
+@@ -46,6 +46,9 @@
+ /*
+ * k0/k1 unsaved
+ */
++#define EF_REG26 26
++#define EF_REG27 27
++
+ #define EF_REG28 28
+ #define EF_REG29 29
+ #define EF_REG30 30
+diff -Nur linux-2.4.32-rc1/include/asm-mips64/sgi/hpc3.h linux-2.4.32-rc1.mips/include/asm-mips64/sgi/hpc3.h
+--- linux-2.4.32-rc1/include/asm-mips64/sgi/hpc3.h 2003-08-25 13:44:44.000000000 +0200
++++ linux-2.4.32-rc1.mips/include/asm-mips64/sgi/hpc3.h 2005-09-23 16:35:27.000000000 +0200
+@@ -128,26 +128,26 @@
+ volatile u32 rx_gfptr; /* current GIO fifo ptr */
+ volatile u32 rx_dfptr; /* current device fifo ptr */
+ u32 _unused1; /* padding */
+- volatile u32 rx_reset; /* reset register */
+-#define HPC3_ERXRST_CRESET 0x1 /* Reset dma channel and external controller */
+-#define HPC3_ERXRST_CLRIRQ 0x2 /* Clear channel interrupt */
+-#define HPC3_ERXRST_LBACK 0x4 /* Enable diagnostic loopback mode of Seeq8003 */
+-
+- volatile u32 rx_dconfig; /* DMA configuration register */
+-#define HPC3_ERXDCFG_D1 0x0000f /* Cycles to spend in D1 state for PIO */
+-#define HPC3_ERXDCFG_D2 0x000f0 /* Cycles to spend in D2 state for PIO */
+-#define HPC3_ERXDCFG_D3 0x00f00 /* Cycles to spend in D3 state for PIO */
+-#define HPC3_ERXDCFG_WCTRL 0x01000 /* Enable writes of desc into ex ctrl port */
+-#define HPC3_ERXDCFG_FRXDC 0x02000 /* Clear eop stat bits upon rxdc, hw seeq fix */
+-#define HPC3_ERXDCFG_FEOP 0x04000 /* Bad packet marker timeout enable */
+-#define HPC3_ERXDCFG_FIRQ 0x08000 /* Another bad packet timeout enable */
+-#define HPC3_ERXDCFG_PTO 0x30000 /* Programmed timeout value for above two */
+-
+- volatile u32 rx_pconfig; /* PIO configuration register */
+-#define HPC3_ERXPCFG_P1 0x000f /* Cycles to spend in P1 state for PIO */
+-#define HPC3_ERXPCFG_P2 0x00f0 /* Cycles to spend in P2 state for PIO */
+-#define HPC3_ERXPCFG_P3 0x0f00 /* Cycles to spend in P3 state for PIO */
+-#define HPC3_ERXPCFG_TST 0x1000 /* Diagnistic ram test feature bit */
++ volatile u32 reset; /* reset register */
++#define HPC3_ERST_CRESET 0x1 /* Reset dma channel and external controller */
++#define HPC3_ERST_CLRIRQ 0x2 /* Clear channel interrupt */
++#define HPC3_ERST_LBACK 0x4 /* Enable diagnostic loopback mode of Seeq8003 */
++
++ volatile u32 dconfig; /* DMA configuration register */
++#define HPC3_EDCFG_D1 0x0000f /* Cycles to spend in D1 state for PIO */
++#define HPC3_EDCFG_D2 0x000f0 /* Cycles to spend in D2 state for PIO */
++#define HPC3_EDCFG_D3 0x00f00 /* Cycles to spend in D3 state for PIO */
++#define HPC3_EDCFG_WCTRL 0x01000 /* Enable writes of desc into ex ctrl port */
++#define HPC3_EDCFG_FRXDC 0x02000 /* Clear eop stat bits upon rxdc, hw seeq fix */
++#define HPC3_EDCFG_FEOP 0x04000 /* Bad packet marker timeout enable */
++#define HPC3_EDCFG_FIRQ 0x08000 /* Another bad packet timeout enable */
++#define HPC3_EDCFG_PTO 0x30000 /* Programmed timeout value for above two */
++
++ volatile u32 pconfig; /* PIO configuration register */
++#define HPC3_EPCFG_P1 0x000f /* Cycles to spend in P1 state for PIO */
++#define HPC3_EPCFG_P2 0x00f0 /* Cycles to spend in P2 state for PIO */
++#define HPC3_EPCFG_P3 0x0f00 /* Cycles to spend in P3 state for PIO */
++#define HPC3_EPCFG_TST 0x1000 /* Diagnistic ram test feature bit */
+
+ u32 _unused2[0x1000/4 - 8]; /* padding */
+
+@@ -221,7 +221,7 @@
+ #define HPC3_BESTAT_PIDMASK 0x3f700 /* DMA channel parity identifier */
+
+ u32 _unused1[0x14000/4 - 5]; /* padding */
+-
++
+ /* Now direct PIO per-HPC3 peripheral access to external regs. */
+ volatile u32 scsi0_ext[256]; /* SCSI channel 0 external regs */
+ u32 _unused2[0x7c00/4];
+@@ -304,7 +304,7 @@
+ volatile u32 bbram[8192-50-14]; /* Battery backed ram */
+ };
+
+-/*
++/*
+ * It is possible to have two HPC3's within the address space on
+ * one machine, though only having one is more likely on an Indy.
+ */
+diff -Nur linux-2.4.32-rc1/include/asm-mips64/sn/nmi.h linux-2.4.32-rc1.mips/include/asm-mips64/sn/nmi.h
+--- linux-2.4.32-rc1/include/asm-mips64/sn/nmi.h 2002-11-29 00:53:15.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips64/sn/nmi.h 2002-08-06 01:53:40.000000000 +0200
+@@ -8,7 +8,7 @@
+ #ifndef __ASM_SN_NMI_H
+ #define __ASM_SN_NMI_H
+
+-#ident "$Revision: 1.2.4.2 $"
++#ident "$Revision: 1.2.4.1 $"
+
+ #include <asm/sn/addrs.h>
+
+diff -Nur linux-2.4.32-rc1/include/asm-mips64/unistd.h linux-2.4.32-rc1.mips/include/asm-mips64/unistd.h
+--- linux-2.4.32-rc1/include/asm-mips64/unistd.h 2005-01-19 15:10:12.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-mips64/unistd.h 2004-11-24 21:30:06.000000000 +0100
@@ -760,7 +760,7 @@
if (__a3 == 0) \
return (type) __v0; \
@@ -26509,9 +27540,9 @@ diff -Nur linux-2.4.30/include/asm-mips64/unistd.h linux-2.4.30-mips/include/asm
}
#endif /* (_MIPS_SIM == _MIPS_SIM_NABI32) || (_MIPS_SIM == _MIPS_SIM_ABI64) */
-diff -Nur linux-2.4.30/include/asm-ppc/param.h linux-2.4.30-mips/include/asm-ppc/param.h
---- linux-2.4.30/include/asm-ppc/param.h 2003-06-13 16:51:38.000000000 +0200
-+++ linux-2.4.30-mips/include/asm-ppc/param.h 2003-07-05 05:23:46.000000000 +0200
+diff -Nur linux-2.4.32-rc1/include/asm-ppc/param.h linux-2.4.32-rc1.mips/include/asm-ppc/param.h
+--- linux-2.4.32-rc1/include/asm-ppc/param.h 2003-06-13 16:51:38.000000000 +0200
++++ linux-2.4.32-rc1.mips/include/asm-ppc/param.h 2003-07-05 05:23:46.000000000 +0200
@@ -3,6 +3,9 @@
#ifndef HZ
@@ -26522,9 +27553,9 @@ diff -Nur linux-2.4.30/include/asm-ppc/param.h linux-2.4.30-mips/include/asm-ppc
#endif
#define EXEC_PAGESIZE 4096
-diff -Nur linux-2.4.30/include/asm-s390/param.h linux-2.4.30-mips/include/asm-s390/param.h
---- linux-2.4.30/include/asm-s390/param.h 2001-02-13 23:13:44.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-s390/param.h 2001-03-09 21:34:48.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-s390/param.h linux-2.4.32-rc1.mips/include/asm-s390/param.h
+--- linux-2.4.32-rc1/include/asm-s390/param.h 2001-02-13 23:13:44.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-s390/param.h 2001-03-09 21:34:48.000000000 +0100
@@ -11,6 +11,9 @@
#ifndef HZ
@@ -26535,9 +27566,9 @@ diff -Nur linux-2.4.30/include/asm-s390/param.h linux-2.4.30-mips/include/asm-s3
#endif
#define EXEC_PAGESIZE 4096
-diff -Nur linux-2.4.30/include/asm-sh/param.h linux-2.4.30-mips/include/asm-sh/param.h
---- linux-2.4.30/include/asm-sh/param.h 2001-01-04 22:19:13.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-sh/param.h 2001-01-11 05:02:45.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-sh/param.h linux-2.4.32-rc1.mips/include/asm-sh/param.h
+--- linux-2.4.32-rc1/include/asm-sh/param.h 2001-01-04 22:19:13.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-sh/param.h 2001-01-11 05:02:45.000000000 +0100
@@ -3,6 +3,9 @@
#ifndef HZ
@@ -26548,9 +27579,9 @@ diff -Nur linux-2.4.30/include/asm-sh/param.h linux-2.4.30-mips/include/asm-sh/p
#endif
#define EXEC_PAGESIZE 4096
-diff -Nur linux-2.4.30/include/asm-sparc/param.h linux-2.4.30-mips/include/asm-sparc/param.h
---- linux-2.4.30/include/asm-sparc/param.h 2000-10-30 23:34:12.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-sparc/param.h 2000-11-23 03:00:56.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-sparc/param.h linux-2.4.32-rc1.mips/include/asm-sparc/param.h
+--- linux-2.4.32-rc1/include/asm-sparc/param.h 2000-10-30 23:34:12.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-sparc/param.h 2000-11-23 03:00:56.000000000 +0100
@@ -4,6 +4,9 @@
#ifndef HZ
@@ -26561,9 +27592,9 @@ diff -Nur linux-2.4.30/include/asm-sparc/param.h linux-2.4.30-mips/include/asm-s
#endif
#define EXEC_PAGESIZE 8192 /* Thanks for sun4's we carry baggage... */
-diff -Nur linux-2.4.30/include/asm-sparc64/param.h linux-2.4.30-mips/include/asm-sparc64/param.h
---- linux-2.4.30/include/asm-sparc64/param.h 2000-10-30 23:34:12.000000000 +0100
-+++ linux-2.4.30-mips/include/asm-sparc64/param.h 2000-11-23 03:00:56.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/asm-sparc64/param.h linux-2.4.32-rc1.mips/include/asm-sparc64/param.h
+--- linux-2.4.32-rc1/include/asm-sparc64/param.h 2000-10-30 23:34:12.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/asm-sparc64/param.h 2000-11-23 03:00:56.000000000 +0100
@@ -4,6 +4,9 @@
#ifndef HZ
@@ -26574,9 +27605,9 @@ diff -Nur linux-2.4.30/include/asm-sparc64/param.h linux-2.4.30-mips/include/asm
#endif
#define EXEC_PAGESIZE 8192 /* Thanks for sun4's we carry baggage... */
-diff -Nur linux-2.4.30/include/linux/i2c-algo-au1550.h linux-2.4.30-mips/include/linux/i2c-algo-au1550.h
---- linux-2.4.30/include/linux/i2c-algo-au1550.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.30-mips/include/linux/i2c-algo-au1550.h 2004-07-07 02:38:02.000000000 +0200
+diff -Nur linux-2.4.32-rc1/include/linux/i2c-algo-au1550.h linux-2.4.32-rc1.mips/include/linux/i2c-algo-au1550.h
+--- linux-2.4.32-rc1/include/linux/i2c-algo-au1550.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/linux/i2c-algo-au1550.h 2004-07-07 02:38:02.000000000 +0200
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2004 Embedded Edge, LLC <dan@embeddededge.com>
@@ -26609,9 +27640,9 @@ diff -Nur linux-2.4.30/include/linux/i2c-algo-au1550.h linux-2.4.30-mips/include
+int i2c_au1550_del_bus(struct i2c_adapter *);
+
+#endif /* I2C_ALGO_AU1550_H */
-diff -Nur linux-2.4.30/include/linux/i2c-id.h linux-2.4.30-mips/include/linux/i2c-id.h
---- linux-2.4.30/include/linux/i2c-id.h 2004-02-18 14:36:32.000000000 +0100
-+++ linux-2.4.30-mips/include/linux/i2c-id.h 2004-07-07 02:38:02.000000000 +0200
+diff -Nur linux-2.4.32-rc1/include/linux/i2c-id.h linux-2.4.32-rc1.mips/include/linux/i2c-id.h
+--- linux-2.4.32-rc1/include/linux/i2c-id.h 2004-02-18 14:36:32.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/linux/i2c-id.h 2004-07-07 02:38:02.000000000 +0200
@@ -156,6 +156,8 @@
#define I2C_ALGO_SGI 0x130000 /* SGI algorithm */
@@ -26631,9 +27662,9 @@ diff -Nur linux-2.4.30/include/linux/i2c-id.h linux-2.4.30-mips/include/linux/i2
/* --- SMBus only adapters */
#define I2C_HW_SMBUS_PIIX4 0x00
#define I2C_HW_SMBUS_ALI15X3 0x01
-diff -Nur linux-2.4.30/include/linux/sched.h linux-2.4.30-mips/include/linux/sched.h
---- linux-2.4.30/include/linux/sched.h 2005-01-19 15:10:12.000000000 +0100
-+++ linux-2.4.30-mips/include/linux/sched.h 2004-11-29 18:47:18.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/linux/sched.h linux-2.4.32-rc1.mips/include/linux/sched.h
+--- linux-2.4.32-rc1/include/linux/sched.h 2005-01-19 15:10:12.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/linux/sched.h 2004-11-29 18:47:18.000000000 +0100
@@ -617,6 +617,10 @@
extern int in_group_p(gid_t);
extern int in_egroup_p(gid_t);
@@ -26645,9 +27676,9 @@ diff -Nur linux-2.4.30/include/linux/sched.h linux-2.4.30-mips/include/linux/sch
extern void proc_caches_init(void);
extern void flush_signals(struct task_struct *);
extern void flush_signal_handlers(struct task_struct *);
-diff -Nur linux-2.4.30/include/linux/serial.h linux-2.4.30-mips/include/linux/serial.h
---- linux-2.4.30/include/linux/serial.h 2002-08-03 02:39:45.000000000 +0200
-+++ linux-2.4.30-mips/include/linux/serial.h 2004-07-31 02:17:57.000000000 +0200
+diff -Nur linux-2.4.32-rc1/include/linux/serial.h linux-2.4.32-rc1.mips/include/linux/serial.h
+--- linux-2.4.32-rc1/include/linux/serial.h 2002-08-03 02:39:45.000000000 +0200
++++ linux-2.4.32-rc1.mips/include/linux/serial.h 2004-07-31 02:17:57.000000000 +0200
@@ -75,7 +75,8 @@
#define PORT_16654 11
#define PORT_16850 12
@@ -26658,9 +27689,9 @@ diff -Nur linux-2.4.30/include/linux/serial.h linux-2.4.30-mips/include/linux/se
#define SERIAL_IO_PORT 0
#define SERIAL_IO_HUB6 1
-diff -Nur linux-2.4.30/include/linux/swap.h linux-2.4.30-mips/include/linux/swap.h
---- linux-2.4.30/include/linux/swap.h 2005-01-19 15:10:12.000000000 +0100
-+++ linux-2.4.30-mips/include/linux/swap.h 2004-11-29 18:47:18.000000000 +0100
+diff -Nur linux-2.4.32-rc1/include/linux/swap.h linux-2.4.32-rc1.mips/include/linux/swap.h
+--- linux-2.4.32-rc1/include/linux/swap.h 2005-01-19 15:10:12.000000000 +0100
++++ linux-2.4.32-rc1.mips/include/linux/swap.h 2004-11-29 18:47:18.000000000 +0100
@@ -1,6 +1,12 @@
#ifndef _LINUX_SWAP_H
#define _LINUX_SWAP_H
@@ -26692,9 +27723,9 @@ diff -Nur linux-2.4.30/include/linux/swap.h linux-2.4.30-mips/include/linux/swap
/*
* Max bad pages in the new format..
*/
-diff -Nur linux-2.4.30/include/video/newport.h linux-2.4.30-mips/include/video/newport.h
---- linux-2.4.30/include/video/newport.h 2001-04-12 21:20:31.000000000 +0200
-+++ linux-2.4.30-mips/include/video/newport.h 2004-09-23 15:32:29.000000000 +0200
+diff -Nur linux-2.4.32-rc1/include/video/newport.h linux-2.4.32-rc1.mips/include/video/newport.h
+--- linux-2.4.32-rc1/include/video/newport.h 2001-04-12 21:20:31.000000000 +0200
++++ linux-2.4.32-rc1.mips/include/video/newport.h 2004-09-23 15:32:29.000000000 +0200
@@ -291,8 +291,6 @@
unsigned int _unused2[0x1ef];
struct newport_cregs cgo;
@@ -26762,9 +27793,9 @@ diff -Nur linux-2.4.30/include/video/newport.h linux-2.4.30-mips/include/video/n
while ((rex->set.dcbdata0.bybytes.b3 & 3) != XM9_FIFO_EMPTY)
;
-diff -Nur linux-2.4.30/init/main.c linux-2.4.30-mips/init/main.c
---- linux-2.4.30/init/main.c 2004-11-17 12:54:22.000000000 +0100
-+++ linux-2.4.30-mips/init/main.c 2004-11-19 01:28:52.000000000 +0100
+diff -Nur linux-2.4.32-rc1/init/main.c linux-2.4.32-rc1.mips/init/main.c
+--- linux-2.4.32-rc1/init/main.c 2004-11-17 12:54:22.000000000 +0100
++++ linux-2.4.32-rc1.mips/init/main.c 2004-11-19 01:28:52.000000000 +0100
@@ -296,7 +296,6 @@
@@ -26773,9 +27804,9 @@ diff -Nur linux-2.4.30/init/main.c linux-2.4.30-mips/init/main.c
unsigned long wait_init_idle;
-diff -Nur linux-2.4.30/kernel/exit.c linux-2.4.30-mips/kernel/exit.c
---- linux-2.4.30/kernel/exit.c 2002-11-29 00:53:15.000000000 +0100
-+++ linux-2.4.30-mips/kernel/exit.c 2003-01-11 18:53:18.000000000 +0100
+diff -Nur linux-2.4.32-rc1/kernel/exit.c linux-2.4.32-rc1.mips/kernel/exit.c
+--- linux-2.4.32-rc1/kernel/exit.c 2002-11-29 00:53:15.000000000 +0100
++++ linux-2.4.32-rc1.mips/kernel/exit.c 2003-01-11 18:53:18.000000000 +0100
@@ -26,7 +26,7 @@
int getrusage(struct task_struct *, int, struct rusage *);
@@ -26785,9 +27816,9 @@ diff -Nur linux-2.4.30/kernel/exit.c linux-2.4.30-mips/kernel/exit.c
{
if (p != current) {
#ifdef CONFIG_SMP
-diff -Nur linux-2.4.30/kernel/signal.c linux-2.4.30-mips/kernel/signal.c
---- linux-2.4.30/kernel/signal.c 2004-02-18 14:36:32.000000000 +0100
-+++ linux-2.4.30-mips/kernel/signal.c 2004-01-20 16:10:34.000000000 +0100
+diff -Nur linux-2.4.32-rc1/kernel/signal.c linux-2.4.32-rc1.mips/kernel/signal.c
+--- linux-2.4.32-rc1/kernel/signal.c 2004-02-18 14:36:32.000000000 +0100
++++ linux-2.4.32-rc1.mips/kernel/signal.c 2004-01-20 16:10:34.000000000 +0100
@@ -14,6 +14,7 @@
#include <linux/init.h>
#include <linux/sched.h>
@@ -26857,9 +27888,9 @@ diff -Nur linux-2.4.30/kernel/signal.c linux-2.4.30-mips/kernel/signal.c
status = tsk->exit_code & 0x7f;
why = SI_KERNEL; /* shouldn't happen */
-diff -Nur linux-2.4.30/kernel/sys.c linux-2.4.30-mips/kernel/sys.c
---- linux-2.4.30/kernel/sys.c 2003-11-28 19:26:21.000000000 +0100
-+++ linux-2.4.30-mips/kernel/sys.c 2003-11-17 02:07:47.000000000 +0100
+diff -Nur linux-2.4.32-rc1/kernel/sys.c linux-2.4.32-rc1.mips/kernel/sys.c
+--- linux-2.4.32-rc1/kernel/sys.c 2003-11-28 19:26:21.000000000 +0100
++++ linux-2.4.32-rc1.mips/kernel/sys.c 2003-11-17 02:07:47.000000000 +0100
@@ -801,16 +801,23 @@
asmlinkage long sys_times(struct tms * tbuf)
@@ -26887,9 +27918,9 @@ diff -Nur linux-2.4.30/kernel/sys.c linux-2.4.30-mips/kernel/sys.c
}
/*
-diff -Nur linux-2.4.30/lib/Makefile linux-2.4.30-mips/lib/Makefile
---- linux-2.4.30/lib/Makefile 2004-04-14 15:05:40.000000000 +0200
-+++ linux-2.4.30-mips/lib/Makefile 2004-04-16 05:14:21.000000000 +0200
+diff -Nur linux-2.4.32-rc1/lib/Makefile linux-2.4.32-rc1.mips/lib/Makefile
+--- linux-2.4.32-rc1/lib/Makefile 2004-04-14 15:05:40.000000000 +0200
++++ linux-2.4.32-rc1.mips/lib/Makefile 2004-04-16 05:14:21.000000000 +0200
@@ -27,6 +27,7 @@
subdir-$(CONFIG_ZLIB_INFLATE) += zlib_inflate
subdir-$(CONFIG_ZLIB_DEFLATE) += zlib_deflate
@@ -26898,3 +27929,40 @@ diff -Nur linux-2.4.30/lib/Makefile linux-2.4.30-mips/lib/Makefile
include $(TOPDIR)/drivers/net/Makefile.lib
include $(TOPDIR)/drivers/usb/Makefile.lib
include $(TOPDIR)/drivers/bluetooth/Makefile.lib
+diff -Nur linux-2.4.32-rc1/Makefile linux-2.4.32-rc1.mips/Makefile
+--- linux-2.4.32-rc1/Makefile 2005-10-24 11:33:30.000000000 +0200
++++ linux-2.4.32-rc1.mips/Makefile 2005-09-23 22:41:15.000000000 +0200
+@@ -5,7 +5,7 @@
+
+ KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
+
+-ARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ -e s/arm.*/arm/ -e s/sa110/arm/)
++ARCH = mips
+ KERNELPATH=kernel-$(shell echo $(KERNELRELEASE) | sed -e "s/-//g")
+
+ CONFIG_SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \
+@@ -462,10 +462,11 @@
+ $(MAKE) -C Documentation/DocBook mrproper
+
+ distclean: mrproper
+- rm -f core `find . \( -not -type d \) -and \
+- \( -name '*.orig' -o -name '*.rej' -o -name '*~' \
+- -o -name '*.bak' -o -name '#*#' -o -name '.*.orig' \
+- -o -name '.*.rej' -o -name '.SUMS' -o -size 0 \) -type f -print` TAGS tags
++ find . \( -not -type d \) -and \
++ \( -name core -o -name '*.orig' -o -name '*.rej' \
++ -o -name '*~' -o -name '*.bak' -o -name '#*#' \
++ -o -name '.*.rej' -o -name '.SUMS' -o -size 0 \
++ -o -name TAGS -o -name tags \) -print | env -i xargs rm -f
+
+ backup: mrproper
+ cd .. && tar cf - linux/ | gzip -9 > backup.gz
+@@ -492,7 +493,7 @@
+ $(MAKE) -C Documentation/DocBook man
+
+ sums:
+- find . -type f -print | sort | xargs sum > .SUMS
++ find . -type f -print | sort | env -i xargs sum > .SUMS
+
+ dep-files: scripts/mkdep archdep include/linux/version.h
+ rm -f .depend .hdepend
diff --git a/openwrt/target/linux/linux-2.4/patches/generic/202-pl2303_backport.patch b/openwrt/target/linux/linux-2.4/patches/generic/202-pl2303_backport.patch
index 8577499b0d..7a6a3da388 100644
--- a/openwrt/target/linux/linux-2.4/patches/generic/202-pl2303_backport.patch
+++ b/openwrt/target/linux/linux-2.4/patches/generic/202-pl2303_backport.patch
@@ -1,729 +1,22 @@
-diff -rNu linux-2.4.29.old/drivers/usb/serial/pl2303.c linux-2.4.29/drivers/usb/serial/pl2303.c
---- linux-2.4.29.old/drivers/usb/serial/pl2303.c 2005-03-22 14:48:04.000000000 +0100
-+++ linux-2.4.29/drivers/usb/serial/pl2303.c 2005-03-22 15:33:05.735943352 +0100
-@@ -1,7 +1,7 @@
- /*
- * Prolific PL2303 USB to serial adaptor driver
- *
-- * Copyright (C) 2001-2003 Greg Kroah-Hartman (greg@kroah.com)
-+ * Copyright (C) 2001-2004 Greg Kroah-Hartman (greg@kroah.com)
- * Copyright (C) 2003 IBM Corp.
- *
- * Original driver for 2.2.x by anonymous
-@@ -12,8 +12,16 @@
- * (at your option) any later version.
- *
- * See Documentation/usb/usb-serial.txt for more information on using this driver
-- * 2003_Apr_24 gkh
-- * Added line error reporting support. Hopefully it is correct...
-+ *
-+ *
-+ * 2005_Mar_05 grsch
-+ * ported 2.6.8 pl2303.c to 2.4.20 format
-+ * (HX model works fine now, ID table should be brought up to date)
-+ * Gregor Schaffrath <gschaff@ran-dom.org>
-+ *
-+ * 2002_Mar_26 gkh
-+ * allowed driver to work properly if there is no tty assigned to a port
-+ * (this happens for serial console devices.)
- *
- * 2001_Oct_06 gkh
- * Added RTS and DTR line control. Thanks to joe@bndlg.de for parts of it.
-@@ -33,6 +41,9 @@
- *
- */
-
-+static int debug;
-+
-+
- #include <linux/config.h>
- #include <linux/kernel.h>
- #include <linux/errno.h>
-@@ -46,43 +57,44 @@
- #include <linux/spinlock.h>
- #include <asm/uaccess.h>
- #include <linux/usb.h>
--
--#ifdef CONFIG_USB_SERIAL_DEBUG
-- static int debug = 1;
--#else
-- static int debug;
--#endif
--
- #include "usb-serial.h"
- #include "pl2303.h"
-
- /*
- * Version Information
- */
--#define DRIVER_VERSION "v0.10"
-+#define DRIVER_VERSION "v0.11"
- #define DRIVER_DESC "Prolific PL2303 USB to serial adaptor driver"
-
--
--
- static struct usb_device_id id_table [] = {
- { USB_DEVICE(PL2303_VENDOR_ID, PL2303_PRODUCT_ID) },
- { USB_DEVICE(PL2303_VENDOR_ID, PL2303_PRODUCT_ID_RSAQ2) },
- { USB_DEVICE(IODATA_VENDOR_ID, IODATA_PRODUCT_ID) },
- { USB_DEVICE(ATEN_VENDOR_ID, ATEN_PRODUCT_ID) },
-- { USB_DEVICE(ATEN_VENDOR_ID2, ATEN_PRODUCT_ID) },
- { USB_DEVICE(ELCOM_VENDOR_ID, ELCOM_PRODUCT_ID) },
- { USB_DEVICE(ITEGNO_VENDOR_ID, ITEGNO_PRODUCT_ID) },
- { USB_DEVICE(MA620_VENDOR_ID, MA620_PRODUCT_ID) },
-- { USB_DEVICE(RATOC_VENDOR_ID, RATOC_PRODUCT_ID) },
-- { USB_DEVICE(TRIPP_VENDOR_ID, TRIPP_PRODUCT_ID) },
-- { USB_DEVICE(RADIOSHACK_VENDOR_ID, RADIOSHACK_PRODUCT_ID) },
-- { USB_DEVICE(DCU10_VENDOR_ID, DCU10_PRODUCT_ID) },
-- { USB_DEVICE(SITECOM_VENDOR_ID, SITECOM_PRODUCT_ID) },
-+ { USB_DEVICE(RATOC_VENDOR_ID, RATOC_PRODUCT_ID) },
-+ { USB_DEVICE(TRIPP_VENDOR_ID, TRIPP_PRODUCT_ID) },
-+ { USB_DEVICE(RADIOSHACK_VENDOR_ID, RADIOSHACK_PRODUCT_ID) },
-+ { USB_DEVICE(DCU10_VENDOR_ID, DCU10_PRODUCT_ID) },
-+ { USB_DEVICE(SITECOM_VENDOR_ID, SITECOM_PRODUCT_ID) },
-+ { USB_DEVICE(ALCATEL_VENDOR_ID, ALCATEL_PRODUCT_ID) },
-+ { USB_DEVICE(SAMSUNG_VENDOR_ID, SAMSUNG_PRODUCT_ID) },
+diff -ur linux-2.4.32/drivers/usb/serial/pl2303.c linux-2.4.32.openwrt/drivers/usb/serial/pl2303.c
+--- linux-2.4.32/drivers/usb/serial/pl2303.c 2005-06-01 02:56:56.000000000 +0200
++++ linux-2.4.32.openwrt/drivers/usb/serial/pl2303.c 2005-11-18 12:22:23.000000000 +0100
+@@ -78,6 +78,11 @@
+ { USB_DEVICE(RADIOSHACK_VENDOR_ID, RADIOSHACK_PRODUCT_ID) },
+ { USB_DEVICE(DCU10_VENDOR_ID, DCU10_PRODUCT_ID) },
+ { USB_DEVICE(SITECOM_VENDOR_ID, SITECOM_PRODUCT_ID) },
++ { USB_DEVICE(ALCATEL_VENDOR_ID, ALCATEL_PRODUCT_ID) },
++ { USB_DEVICE(SAMSUNG_VENDOR_ID, SAMSUNG_PRODUCT_ID) },
++ { USB_DEVICE(SIEMENS_VENDOR_ID, SIEMENS_PRODUCT_ID_X65) },
++ { USB_DEVICE(SYNTECH_VENDOR_ID, SYNTECH_PRODUCT_ID) },
++ { USB_DEVICE(NOKIA_CA42_VENDOR_ID, NOKIA_CA42_PRODUCT_ID) },
{ } /* Terminating entry */
};
- MODULE_DEVICE_TABLE (usb, id_table);
-
-+/*
-+static struct usb_driver pl2303_driver = {
-+ .owner = THIS_MODULE,
-+ .name = "pl2303",
-+ .probe = usb_serial_probe,
-+ .disconnect = usb_serial_disconnect,
-+ .id_table = id_table,
-+};
-+*/
-
- #define SET_LINE_REQUEST_TYPE 0x21
- #define SET_LINE_REQUEST 0x20
-@@ -130,6 +142,9 @@
- static int pl2303_write (struct usb_serial_port *port, int from_user,
- const unsigned char *buf, int count);
- static void pl2303_break_ctl(struct usb_serial_port *port,int break_state);
-+static int pl2303_tiocmget (struct usb_serial_port *port, struct file *file);
-+static int pl2303_tiocmset (struct usb_serial_port *port, struct file *file,
-+ unsigned int set, unsigned int clear);
- static int pl2303_startup (struct usb_serial *serial);
- static void pl2303_shutdown (struct usb_serial *serial);
-
-@@ -149,27 +164,48 @@
- .ioctl = pl2303_ioctl,
- .break_ctl = pl2303_break_ctl,
- .set_termios = pl2303_set_termios,
-+ //.tiocmget = pl2303_tiocmget,
-+ //.tiocmset = pl2303_tiocmset,
- .read_bulk_callback = pl2303_read_bulk_callback,
- .read_int_callback = pl2303_read_int_callback,
- .write_bulk_callback = pl2303_write_bulk_callback,
-+ //.attach = pl2303_startup,
- .startup = pl2303_startup,
- .shutdown = pl2303_shutdown,
- };
-
-+enum pl2303_type {
-+ type_0, /* don't know the difference between type 0 and */
-+ type_1, /* type 1, until someone from prolific tells us... */
-+ HX, /* HX version of the pl2303 chip */
-+};
-+
- struct pl2303_private {
- spinlock_t lock;
- wait_queue_head_t delta_msr_wait;
- u8 line_control;
- u8 line_status;
- u8 termios_initialized;
-+ enum pl2303_type type;
- };
-
-
- static int pl2303_startup (struct usb_serial *serial)
- {
- struct pl2303_private *priv;
-+ enum pl2303_type type = type_0;
- int i;
-
-+ if (serial->dev->descriptor.bDeviceClass == 0x02)
-+ type = type_0;
-+ else if (serial->dev->descriptor.bMaxPacketSize0 == 0x40)
-+ type = HX;
-+ else if (serial->dev->descriptor.bDeviceClass == 0x00)
-+ type = type_1;
-+ else if (serial->dev->descriptor.bDeviceClass == 0xFF)
-+ type = type_1;
-+ dbg("device type: %d", type);
-+
- for (i = 0; i < serial->num_ports; ++i) {
- priv = kmalloc (sizeof (struct pl2303_private), GFP_KERNEL);
- if (!priv)
-@@ -177,7 +213,8 @@
- memset (priv, 0x00, sizeof (struct pl2303_private));
- spin_lock_init(&priv->lock);
- init_waitqueue_head(&priv->delta_msr_wait);
-- usb_set_serial_port_data(&serial->port[i], priv);
-+ priv->type = type;
-+ serial->port[i].private = priv;
- }
- return 0;
- }
-@@ -215,13 +252,13 @@
- memcpy (port->write_urb->transfer_buffer, buf, count);
- }
-
-- usb_serial_debug_data (__FILE__, __FUNCTION__, count, port->write_urb->transfer_buffer);
-+ usb_serial_debug_data(__FILE__, __FUNCTION__, count, port->write_urb->transfer_buffer);
-
- port->write_urb->transfer_buffer_length = count;
- port->write_urb->dev = port->serial->dev;
- result = usb_submit_urb (port->write_urb);
- if (result)
-- err("%s - failed submitting write urb, error %d", __FUNCTION__, result);
-+ err("%s - failed submitting write urb, error %d\n", __FUNCTION__, result);
- else
- result = count;
-
-@@ -233,7 +270,7 @@
- static void pl2303_set_termios (struct usb_serial_port *port, struct termios *old_termios)
- {
- struct usb_serial *serial = port->serial;
-- struct pl2303_private *priv = usb_get_serial_port_data(port);
-+ struct pl2303_private *priv = port->private;
- unsigned long flags;
- unsigned int cflag;
- unsigned char *buf;
-@@ -241,8 +278,7 @@
- int i;
- u8 control;
-
-- dbg("%s - port %d, initialized = %d", __FUNCTION__, port->number,
-- priv->termios_initialized);
-+ dbg("%s - port %d", __FUNCTION__, port->number);
-
- if ((!port->tty) || (!port->tty->termios)) {
- dbg("%s - no tty structures", __FUNCTION__);
-@@ -269,7 +305,7 @@
-
- buf = kmalloc (7, GFP_KERNEL);
- if (!buf) {
-- err("%s - out of memory.", __FUNCTION__);
-+ err("%s - out of memory.\n", __FUNCTION__);
- return;
- }
- memset (buf, 0x00, 0x07);
-@@ -311,7 +347,7 @@
- case B230400: baud = 230400; break;
- case B460800: baud = 460800; break;
- default:
-- err ("pl2303 driver does not support the baudrate requested (fix it)");
-+ err("pl2303 driver does not support the baudrate requested (fix it)\n");
- break;
- }
- dbg("%s - baud = %d", __FUNCTION__, baud);
-@@ -380,26 +416,30 @@
- buf[0], buf[1], buf[2], buf[3], buf[4], buf[5], buf[6]);
-
- if (cflag & CRTSCTS) {
-- i = usb_control_msg (serial->dev, usb_sndctrlpipe (serial->dev, 0),
-- VENDOR_WRITE_REQUEST, VENDOR_WRITE_REQUEST_TYPE,
-- 0x0, 0x41, NULL, 0, 100);
-- dbg ("0x40:0x1:0x0:0x41 %d", i);
-+ __u16 index;
-+ if (priv->type == HX)
-+ index = 0x61;
-+ else
-+ index = 0x41;
-+ i = usb_control_msg(serial->dev,
-+ usb_sndctrlpipe(serial->dev, 0),
-+ VENDOR_WRITE_REQUEST,
-+ VENDOR_WRITE_REQUEST_TYPE,
-+ 0x0, index, NULL, 0, 100);
-+ dbg ("0x40:0x1:0x0:0x%x %d", index, i);
- }
-
- kfree (buf);
--}
--
-+}
-
- static int pl2303_open (struct usb_serial_port *port, struct file *filp)
- {
- struct termios tmp_termios;
- struct usb_serial *serial = port->serial;
-+ struct pl2303_private *priv = port->private;
- unsigned char *buf;
- int result;
-
-- if (port_paranoia_check (port, __FUNCTION__))
-- return -ENODEV;
--
- dbg("%s - port %d", __FUNCTION__, port->number);
-
- usb_clear_halt(serial->dev, port->write_urb->pipe);
-@@ -427,6 +467,18 @@
- SOUP (VENDOR_WRITE_REQUEST_TYPE, VENDOR_WRITE_REQUEST, 0x0404, 1);
- FISH (VENDOR_READ_REQUEST_TYPE, VENDOR_READ_REQUEST, 0x8484, 0);
- FISH (VENDOR_READ_REQUEST_TYPE, VENDOR_READ_REQUEST, 0x8383, 0);
-+ SOUP (VENDOR_WRITE_REQUEST_TYPE, VENDOR_WRITE_REQUEST, 0, 1);
-+ SOUP (VENDOR_WRITE_REQUEST_TYPE, VENDOR_WRITE_REQUEST, 1, 0);
-+
-+ if (priv->type == HX) {
-+ /* HX chip */
-+ SOUP (VENDOR_WRITE_REQUEST_TYPE, VENDOR_WRITE_REQUEST, 2, 0x44);
-+ /* reset upstream data pipes */
-+ SOUP (VENDOR_WRITE_REQUEST_TYPE, VENDOR_WRITE_REQUEST, 8, 0);
-+ SOUP (VENDOR_WRITE_REQUEST_TYPE, VENDOR_WRITE_REQUEST, 9, 0);
-+ } else {
-+ SOUP (VENDOR_WRITE_REQUEST_TYPE, VENDOR_WRITE_REQUEST, 2, 0x24);
-+ }
-
- kfree(buf);
-
-@@ -441,7 +493,7 @@
- port->read_urb->dev = serial->dev;
- result = usb_submit_urb (port->read_urb);
- if (result) {
-- err("%s - failed submitting read urb, error %d", __FUNCTION__, result);
-+ err("%s - failed submitting read urb, error %d\n", __FUNCTION__, result);
- pl2303_close (port, NULL);
- return -EPROTO;
- }
-@@ -450,7 +502,7 @@
- port->interrupt_in_urb->dev = serial->dev;
- result = usb_submit_urb (port->interrupt_in_urb);
- if (result) {
-- err("%s - failed submitting interrupt urb, error %d", __FUNCTION__, result);
-+ err("%s - failed submitting interrupt urb, error %d\n", __FUNCTION__, result);
- pl2303_close (port, NULL);
- return -EPROTO;
- }
-@@ -460,125 +512,103 @@
-
- static void pl2303_close (struct usb_serial_port *port, struct file *filp)
- {
-- struct usb_serial *serial;
- struct pl2303_private *priv;
- unsigned long flags;
- unsigned int c_cflag;
- int result;
-
-- if (port_paranoia_check (port, __FUNCTION__))
-- return;
-- serial = get_usb_serial (port, __FUNCTION__);
-- if (!serial)
-- return;
--
- dbg("%s - port %d", __FUNCTION__, port->number);
-
-- if (serial->dev) {
-- if (port->tty) {
-- c_cflag = port->tty->termios->c_cflag;
-- if (c_cflag & HUPCL) {
-- /* drop DTR and RTS */
-- priv = usb_get_serial_port_data(port);
-- spin_lock_irqsave(&priv->lock, flags);
-- priv->line_control = 0;
-- spin_unlock_irqrestore (&priv->lock, flags);
-- set_control_lines (port->serial->dev, 0);
-- }
-- }
-+ /* shutdown our urbs */
-+ dbg("%s - shutting down urbs", __FUNCTION__);
-+ result = usb_unlink_urb (port->write_urb);
-+ if (result)
-+ dbg("%s - usb_unlink_urb (write_urb)"
-+ " failed with reason: %d", __FUNCTION__,
-+ result);
-
-- /* shutdown our urbs */
-- dbg("%s - shutting down urbs", __FUNCTION__);
-- result = usb_unlink_urb (port->write_urb);
-- if (result)
-- dbg("%s - usb_unlink_urb (write_urb)"
-- " failed with reason: %d", __FUNCTION__,
-- result);
-+ result = usb_unlink_urb (port->read_urb);
-+ if (result)
-+ dbg("%s - usb_unlink_urb (read_urb) "
-+ "failed with reason: %d", __FUNCTION__,
-+ result);
-
-- result = usb_unlink_urb (port->read_urb);
-- if (result)
-- dbg("%s - usb_unlink_urb (read_urb) "
-- "failed with reason: %d", __FUNCTION__,
-- result);
-+ result = usb_unlink_urb (port->interrupt_in_urb);
-+ if (result)
-+ dbg("%s - usb_unlink_urb (interrupt_in_urb)"
-+ " failed with reason: %d", __FUNCTION__,
-+ result);
-
-- result = usb_unlink_urb (port->interrupt_in_urb);
-- if (result)
-- dbg("%s - usb_unlink_urb (interrupt_in_urb)"
-- " failed with reason: %d", __FUNCTION__,
-- result);
-+ if (port->tty) {
-+ c_cflag = port->tty->termios->c_cflag;
-+ if (c_cflag & HUPCL) {
-+ /* drop DTR and RTS */
-+ priv = port->private;
-+ spin_lock_irqsave(&priv->lock, flags);
-+ priv->line_control = 0;
-+ spin_unlock_irqrestore (&priv->lock, flags);
-+ set_control_lines (port->serial->dev, 0);
-+ }
- }
-+
- }
-
-+/* taken from 2.4.20 driver */
- static int set_modem_info (struct usb_serial_port *port, unsigned int cmd, unsigned int *value)
- {
-- struct pl2303_private *priv = usb_get_serial_port_data(port);
-- unsigned long flags;
-- unsigned int arg;
-- u8 control;
--
-- if (copy_from_user(&arg, value, sizeof(int)))
-- return -EFAULT;
--
-- spin_lock_irqsave (&priv->lock, flags);
-- switch (cmd) {
-- case TIOCMBIS:
-- if (arg & TIOCM_RTS)
-- priv->line_control |= CONTROL_RTS;
-- if (arg & TIOCM_DTR)
-- priv->line_control |= CONTROL_DTR;
-- break;
--
-- case TIOCMBIC:
-- if (arg & TIOCM_RTS)
-- priv->line_control &= ~CONTROL_RTS;
-- if (arg & TIOCM_DTR)
-- priv->line_control &= ~CONTROL_DTR;
-- break;
-+ struct pl2303_private *priv = port->private;
-+ unsigned int arg;
-
-- case TIOCMSET:
-- /* turn off RTS and DTR and then only turn
-- on what was asked to */
-- priv->line_control &= ~(CONTROL_RTS | CONTROL_DTR);
-- priv->line_control |= ((arg & TIOCM_RTS) ? CONTROL_RTS : 0);
-- priv->line_control |= ((arg & TIOCM_DTR) ? CONTROL_DTR : 0);
-- break;
-- }
-- control = priv->line_control;
-- spin_unlock_irqrestore (&priv->lock, flags);
--
-- return set_control_lines (port->serial->dev, control);
-+ if (copy_from_user(&arg, value, sizeof(int)))
-+ return -EFAULT;
-+
-+ switch (cmd) {
-+ case TIOCMBIS:
-+ if (arg & TIOCM_RTS)
-+ priv->line_control |= CONTROL_RTS;
-+ if (arg & TIOCM_DTR)
-+ priv->line_control |= CONTROL_DTR;
-+ break;
-+
-+ case TIOCMBIC:
-+ if (arg & TIOCM_RTS)
-+ priv->line_control &= ~CONTROL_RTS;
-+ if (arg & TIOCM_DTR)
-+ priv->line_control &= ~CONTROL_DTR;
-+ break;
-+
-+ case TIOCMSET:
-+ /* turn off RTS and DTR and then only turn
-+ on what was asked to */
-+ priv->line_control &= ~(CONTROL_RTS | CONTROL_DTR);
-+ priv->line_control |= ((arg & TIOCM_RTS) ? CONTROL_RTS : 0);
-+ priv->line_control |= ((arg & TIOCM_DTR) ? CONTROL_DTR : 0);
-+ break;
-+ }
-+
-+ return set_control_lines (port->serial->dev, priv->line_control);
- }
-
- static int get_modem_info (struct usb_serial_port *port, unsigned int *value)
- {
-- struct pl2303_private *priv = usb_get_serial_port_data(port);
-- unsigned long flags;
-- unsigned int mcr;
-- unsigned int status;
-- unsigned int result;
--
-- spin_lock_irqsave (&priv->lock, flags);
-- mcr = priv->line_control;
-- status = priv->line_status;
-- spin_unlock_irqrestore (&priv->lock, flags);
--
-- result = ((mcr & CONTROL_DTR) ? TIOCM_DTR : 0)
-- | ((mcr & CONTROL_RTS) ? TIOCM_RTS : 0)
-- | ((status & UART_CTS) ? TIOCM_CTS : 0)
-- | ((status & UART_DSR) ? TIOCM_DSR : 0)
-- | ((status & UART_RING) ? TIOCM_RI : 0)
-- | ((status & UART_DCD) ? TIOCM_CD : 0);
--
-- dbg("%s - result = %x", __FUNCTION__, result);
--
-- if (copy_to_user(value, &result, sizeof(int)))
-- return -EFAULT;
-- return 0;
-+ struct pl2303_private *priv = port->private;
-+ unsigned int mcr = priv->line_control;
-+ unsigned int result;
-+
-+ result = ((mcr & CONTROL_DTR) ? TIOCM_DTR : 0)
-+ | ((mcr & CONTROL_RTS) ? TIOCM_RTS : 0);
-+
-+ dbg("%s - result = %x", __FUNCTION__, result);
-+
-+ if (copy_to_user(value, &result, sizeof(int)))
-+ return -EFAULT;
-+ return 0;
- }
-+/* end of 2.4.20 kernel part - grsch */
-
- static int wait_modem_info(struct usb_serial_port *port, unsigned int arg)
- {
-- struct pl2303_private *priv = usb_get_serial_port_data(port);
-+ struct pl2303_private *priv = port->private;
- unsigned long flags;
- unsigned int prevstatus;
- unsigned int status;
-@@ -617,21 +647,10 @@
- dbg("%s (%d) cmd = 0x%04x", __FUNCTION__, port->number, cmd);
-
- switch (cmd) {
--
-- case TIOCMGET:
-- dbg("%s (%d) TIOCMGET", __FUNCTION__, port->number);
-- return get_modem_info (port, (unsigned int *)arg);
--
-- case TIOCMBIS:
-- case TIOCMBIC:
-- case TIOCMSET:
-- dbg("%s (%d) TIOCMSET/TIOCMBIC/TIOCMSET", __FUNCTION__, port->number);
-- return set_modem_info(port, cmd, (unsigned int *) arg);
--
- case TIOCMIWAIT:
- dbg("%s (%d) TIOCMIWAIT", __FUNCTION__, port->number);
- return wait_modem_info(port, arg);
--
-+
- default:
- dbg("%s not supported = 0x%04x", __FUNCTION__, cmd);
- break;
-@@ -652,7 +671,7 @@
- state = BREAK_OFF;
- else
- state = BREAK_ON;
-- dbg("%s - turning break %s", __FUNCTION__, state==BREAK_OFF ? "off" : "on");
-+ dbg("%s - turning break %s", state==BREAK_OFF ? "off" : "on", __FUNCTION__);
-
- result = usb_control_msg (serial->dev, usb_sndctrlpipe (serial->dev, 0),
- BREAK_REQUEST, BREAK_REQUEST_TYPE, state,
-@@ -669,8 +688,8 @@
- dbg("%s", __FUNCTION__);
-
- for (i = 0; i < serial->num_ports; ++i) {
-- kfree (usb_get_serial_port_data(&serial->port[i]));
-- usb_set_serial_port_data(&serial->port[i], NULL);
-+ kfree (serial->port[i].private);
-+ serial->port[i].private = NULL;
- }
- }
-
-@@ -678,16 +697,14 @@
- static void pl2303_read_int_callback (struct urb *urb)
- {
- struct usb_serial_port *port = (struct usb_serial_port *) urb->context;
-- struct usb_serial *serial = get_usb_serial (port, __FUNCTION__);
-- struct pl2303_private *priv = usb_get_serial_port_data(port);
-+ struct pl2303_private *priv = port->private;
- unsigned char *data = urb->transfer_buffer;
- unsigned long flags;
-+ int status;
- u8 uart_state;
-
- dbg("%s (%d)", __FUNCTION__, port->number);
-
-- /* ints auto restart... */
--
- switch (urb->status) {
- case 0:
- /* success */
-@@ -700,17 +717,14 @@
- return;
- default:
- dbg("%s - nonzero urb status received: %d", __FUNCTION__, urb->status);
-- return;
-+ goto exit;
- }
-
-- if (!serial) {
-- return;
-- }
-
-- usb_serial_debug_data (__FILE__, __FUNCTION__, urb->actual_length, urb->transfer_buffer);
-+ usb_serial_debug_data(__FILE__, __FUNCTION__, urb->actual_length, urb->transfer_buffer);
-
- if (urb->actual_length < UART_STATE)
-- return;
-+ goto exit;
-
- /* Save off the uart status for others to look at */
- uart_state = data[UART_STATE];
-@@ -718,17 +732,19 @@
- uart_state |= (priv->line_status & UART_STATE_TRANSIENT_MASK);
- priv->line_status = uart_state;
- spin_unlock_irqrestore(&priv->lock, flags);
-- wake_up_interruptible (&priv->delta_msr_wait);
--
-- return;
-+
-+exit:
-+ status = usb_submit_urb (urb);
-+ if (status)
-+ err("%s - usb_submit_urb failed with result %d\n",
-+ __FUNCTION__, status);
- }
-
-
- static void pl2303_read_bulk_callback (struct urb *urb)
- {
- struct usb_serial_port *port = (struct usb_serial_port *) urb->context;
-- struct usb_serial *serial = get_usb_serial (port, __FUNCTION__);
-- struct pl2303_private *priv = usb_get_serial_port_data(port);
-+ struct pl2303_private *priv = port->private;
- struct tty_struct *tty;
- unsigned char *data = urb->transfer_buffer;
- unsigned long flags;
-@@ -737,16 +753,8 @@
- u8 status;
- char tty_flag;
-
-- if (port_paranoia_check (port, __FUNCTION__))
-- return;
--
- dbg("%s - port %d", __FUNCTION__, port->number);
-
-- if (!serial) {
-- dbg("%s - bad serial pointer, exiting", __FUNCTION__);
-- return;
-- }
--
- if (urb->status) {
- dbg("%s - urb->status = %d", __FUNCTION__, urb->status);
- if (!port->open_count) {
-@@ -757,17 +765,17 @@
- /* PL2303 mysteriously fails with -EPROTO reschedule the read */
- dbg("%s - caught -EPROTO, resubmitting the urb", __FUNCTION__);
- urb->status = 0;
-- urb->dev = serial->dev;
-+ urb->dev = port->serial->dev;
- result = usb_submit_urb(urb);
- if (result)
-- err("%s - failed resubmitting read urb, error %d", __FUNCTION__, result);
-+ err("%s - failed resubmitting read urb, error %d\n", __FUNCTION__, result);
- return;
- }
- dbg("%s - unable to handle the error, exiting.", __FUNCTION__);
- return;
- }
-
-- usb_serial_debug_data (__FILE__, __FUNCTION__, urb->actual_length, data);
-+ usb_serial_debug_data(__FILE__, __FUNCTION__, urb->actual_length, data);
-
- /* get tty_flag from status */
- tty_flag = TTY_NORMAL;
-@@ -776,7 +784,7 @@
- status = priv->line_status;
- priv->line_status &= ~UART_STATE_TRANSIENT_MASK;
- spin_unlock_irqrestore(&priv->lock, flags);
-- wake_up_interruptible (&priv->delta_msr_wait); //AF from 2.6
-+ wake_up_interruptible (&priv->delta_msr_wait);
-
- /* break takes precedence over parity, */
- /* which takes precedence over framing errors */
-@@ -805,10 +813,10 @@
-
- /* Schedule the next read _if_ we are still open */
- if (port->open_count) {
-- urb->dev = serial->dev;
-+ urb->dev = port->serial->dev;
- result = usb_submit_urb(urb);
- if (result)
-- err("%s - failed resubmitting read urb, error %d", __FUNCTION__, result);
-+ err("%s - failed resubmitting read urb, error %d\n", __FUNCTION__, result);
- }
-
- return;
-@@ -821,44 +829,32 @@
- struct usb_serial_port *port = (struct usb_serial_port *) urb->context;
- int result;
-
-- if (port_paranoia_check (port, __FUNCTION__))
-- return;
--
- dbg("%s - port %d", __FUNCTION__, port->number);
-
- if (urb->status) {
- /* error in the urb, so we have to resubmit it */
-- if (serial_paranoia_check (port->serial, __FUNCTION__)) {
-- return;
-- }
- dbg("%s - Overflow in write", __FUNCTION__);
- dbg("%s - nonzero write bulk status received: %d", __FUNCTION__, urb->status);
- port->write_urb->transfer_buffer_length = 1;
- port->write_urb->dev = port->serial->dev;
- result = usb_submit_urb (port->write_urb);
- if (result)
-- err("%s - failed resubmitting write urb, error %d", __FUNCTION__, result);
-+ err("%s - failed resubmitting write urb, error %d\n", __FUNCTION__, result);
-
- return;
- }
-
-- queue_task(&port->tqueue, &tq_immediate);
-- mark_bh(IMMEDIATE_BH);
-
-- return;
-+ queue_task(&port->tqueue, &tq_immediate);
-+ mark_bh(IMMEDIATE_BH);
- }
-
-
- static int __init pl2303_init (void)
- {
-- int retval;
-- retval = usb_serial_register(&pl2303_device);
-- if (retval)
-- goto failed_usb_serial_register;
-+ usb_serial_register(&pl2303_device);
- info(DRIVER_DESC " " DRIVER_VERSION);
- return 0;
--failed_usb_serial_register:
-- return retval;
- }
-
-
-@@ -877,3 +873,4 @@
- MODULE_PARM(debug, "i");
- MODULE_PARM_DESC(debug, "Debug enabled or not");
-
-+//this is an error
-diff -rNu linux-2.4.29.old/drivers/usb/serial/pl2303.h linux-2.4.29/drivers/usb/serial/pl2303.h
---- linux-2.4.29.old/drivers/usb/serial/pl2303.h 2005-03-22 14:48:04.000000000 +0100
-+++ linux-2.4.29/drivers/usb/serial/pl2303.h 2005-03-22 15:33:05.758939856 +0100
-@@ -41,3 +41,12 @@
+diff -ur linux-2.4.32/drivers/usb/serial/pl2303.h linux-2.4.32.openwrt/drivers/usb/serial/pl2303.h
+--- linux-2.4.32/drivers/usb/serial/pl2303.h 2004-02-18 14:36:31.000000000 +0100
++++ linux-2.4.32.openwrt/drivers/usb/serial/pl2303.h 2005-11-18 12:23:38.000000000 +0100
+@@ -41,3 +41,18 @@
#define SITECOM_VENDOR_ID 0x6189
#define SITECOM_PRODUCT_ID 0x2068
@@ -733,6 +26,12 @@ diff -rNu linux-2.4.29.old/drivers/usb/serial/pl2303.h linux-2.4.29/drivers/usb/
+#define ALCATEL_PRODUCT_ID 0x02df
+
+/* Samsung I330 phone cradle */
-+#define SAMSUNG_VENDOR_ID 0x04e8
-+#define SAMSUNG_PRODUCT_ID 0x8001
++#define SAMSUNG_VENDOR_ID 0x04e8
++#define SAMSUNG_PRODUCT_ID 0x8001
++
++#define SYNTECH_VENDOR_ID 0x0745
++#define SYNTECH_PRODUCT_ID 0x0001
+
++/* Nokia CA-42 Cable */
++#define NOKIA_CA42_VENDOR_ID 0x078b
++#define NOKIA_CA42_PRODUCT_ID 0x1234
diff --git a/openwrt/target/linux/linux-2.4/patches/generic/207-gcc_4.0_fixes.patch b/openwrt/target/linux/linux-2.4/patches/generic/207-gcc_4.0_fixes.patch
deleted file mode 100644
index e6703680e1..0000000000
--- a/openwrt/target/linux/linux-2.4/patches/generic/207-gcc_4.0_fixes.patch
+++ /dev/null
@@ -1,198 +0,0 @@
-diff -urN linux-2.4.30.old/drivers/i2c/i2c-core.c linux-2.4.30.dev/drivers/i2c/i2c-core.c
---- linux-2.4.30.old/drivers/i2c/i2c-core.c 2005-04-29 17:59:04.000000000 +0200
-+++ linux-2.4.30.dev/drivers/i2c/i2c-core.c 2005-04-29 18:42:37.000000000 +0200
-@@ -750,7 +750,7 @@
- msg.addr = client->addr;
- msg.flags = client->flags & I2C_M_TEN;
- msg.len = count;
-- (const char *)msg.buf = buf;
-+ msg.buf = (__u8 *)buf;
-
- DEB2(printk(KERN_DEBUG "i2c-core.o: master_send: writing %d bytes on %s.\n",
- count,client->adapter->name));
-@@ -780,7 +780,7 @@
- msg.flags = client->flags & I2C_M_TEN;
- msg.flags |= I2C_M_RD;
- msg.len = count;
-- msg.buf = buf;
-+ msg.buf = (__u8 *)buf;
-
- DEB2(printk(KERN_DEBUG "i2c-core.o: master_recv: reading %d bytes on %s.\n",
- count,client->adapter->name));
-diff -urN linux-2.4.30.old/drivers/usb/inode.c linux-2.4.30.dev/drivers/usb/inode.c
---- linux-2.4.30.old/drivers/usb/inode.c 2004-02-18 14:36:31.000000000 +0100
-+++ linux-2.4.30.dev/drivers/usb/inode.c 2005-04-29 18:42:37.000000000 +0200
-@@ -42,6 +42,8 @@
- #include <asm/uaccess.h>
-
- /* --------------------------------------------------------------------- */
-+static struct file_operations usbdevfs_bus_file_operations;
-+static struct inode_operations usbdevfs_bus_inode_operations;
-
- /*
- * This list of superblocks is still used,
-diff -urN linux-2.4.30.old/include/asm-mips/uaccess.h linux-2.4.30.dev/include/asm-mips/uaccess.h
---- linux-2.4.30.old/include/asm-mips/uaccess.h 2005-01-19 15:10:12.000000000 +0100
-+++ linux-2.4.30.dev/include/asm-mips/uaccess.h 2005-04-29 18:42:37.000000000 +0200
-@@ -149,7 +149,7 @@
- * Returns zero on success, or -EFAULT on error.
- */
- #define put_user(x,ptr) \
-- __put_user_check((__typeof__(*(ptr)))(x),(ptr),sizeof(*(ptr)))
-+ __put_user_check((x),(ptr),sizeof(*(ptr)))
-
- /*
- * get_user: - Get a simple variable from user space.
-@@ -169,7 +169,7 @@
- * On error, the variable @x is set to zero.
- */
- #define get_user(x,ptr) \
-- __get_user_check((__typeof__(*(ptr)))(x),(ptr),sizeof(*(ptr)))
-+ __get_user_check((x),(ptr),sizeof(*(ptr)))
-
- /*
- * __put_user: - Write a simple value into user space, with less checking.
-@@ -191,7 +191,7 @@
- * Returns zero on success, or -EFAULT on error.
- */
- #define __put_user(x,ptr) \
-- __put_user_nocheck((__typeof__(*(ptr)))(x),(ptr),sizeof(*(ptr)))
-+ __put_user_nocheck((x),(ptr),sizeof(*(ptr)))
-
- /*
- * __get_user: - Get a simple variable from user space, with less checking.
-@@ -214,7 +214,7 @@
- * On error, the variable @x is set to zero.
- */
- #define __get_user(x,ptr) \
-- __get_user_nocheck((__typeof__(*(ptr)))(x),(ptr),sizeof(*(ptr)))
-+ __get_user_nocheck((x),(ptr),sizeof(*(ptr)))
-
- struct __large_struct { unsigned long buf[100]; };
- #define __m(x) (*(struct __large_struct *)(x))
-@@ -232,7 +232,7 @@
- #define __get_user_nocheck(x,ptr,size) \
- ({ \
- long __gu_err = 0; \
-- __typeof(*(ptr)) __gu_val = 0; \
-+ __typeof(*(ptr)) __gu_val = (__typeof(*(ptr))) 0; \
- long __gu_addr; \
- __gu_addr = (long) (ptr); \
- switch (size) { \
-diff -urN linux-2.4.30.old/include/linux/byteorder/swab.h linux-2.4.30.dev/include/linux/byteorder/swab.h
---- linux-2.4.30.old/include/linux/byteorder/swab.h 2002-11-29 00:53:15.000000000 +0100
-+++ linux-2.4.30.dev/include/linux/byteorder/swab.h 2005-04-29 18:42:37.000000000 +0200
-@@ -156,7 +156,7 @@
- #endif /* OPTIMIZE */
-
-
--static __inline__ __const__ __u16 __fswab16(__u16 x)
-+static __inline__ __u16 __fswab16(__u16 x)
- {
- return __arch__swab16(x);
- }
-@@ -169,7 +169,7 @@
- __arch__swab16s(addr);
- }
-
--static __inline__ __const__ __u32 __fswab24(__u32 x)
-+static __inline__ __u32 __fswab24(__u32 x)
- {
- return __arch__swab24(x);
- }
-@@ -182,7 +182,7 @@
- __arch__swab24s(addr);
- }
-
--static __inline__ __const__ __u32 __fswab32(__u32 x)
-+static __inline__ __u32 __fswab32(__u32 x)
- {
- return __arch__swab32(x);
- }
-@@ -196,7 +196,7 @@
- }
-
- #ifdef __BYTEORDER_HAS_U64__
--static __inline__ __const__ __u64 __fswab64(__u64 x)
-+static __inline__ __u64 __fswab64(__u64 x)
- {
- # ifdef __SWAB_64_THRU_32__
- __u32 h = x >> 32;
-diff -urN linux-2.4.30.old/include/linux/fs.h linux-2.4.30.dev/include/linux/fs.h
---- linux-2.4.30.old/include/linux/fs.h 2005-04-29 17:59:08.000000000 +0200
-+++ linux-2.4.30.dev/include/linux/fs.h 2005-04-29 18:42:37.000000000 +0200
-@@ -1563,7 +1563,6 @@
- unsigned long generate_cluster(kdev_t, int b[], int);
- unsigned long generate_cluster_swab32(kdev_t, int b[], int);
- extern kdev_t ROOT_DEV;
--extern char root_device_name[];
-
-
- extern void show_buffers(void);
-diff -urN linux-2.4.30.old/include/linux/i2c.h linux-2.4.30.dev/include/linux/i2c.h
---- linux-2.4.30.old/include/linux/i2c.h 2005-01-19 15:10:12.000000000 +0100
-+++ linux-2.4.30.dev/include/linux/i2c.h 2005-04-29 18:42:37.000000000 +0200
-@@ -70,7 +70,7 @@
-
- /* Transfer num messages.
- */
--extern int i2c_transfer(struct i2c_adapter *adap, struct i2c_msg msg[],int num);
-+extern int i2c_transfer(struct i2c_adapter *adap, struct i2c_msg *msg, int num);
-
- /*
- * Some adapter types (i.e. PCF 8584 based ones) may support slave behaviuor.
-@@ -197,7 +197,7 @@
- to NULL. If an adapter algorithm can do SMBus access, set
- smbus_xfer. If set to NULL, the SMBus protocol is simulated
- using common I2C messages */
-- int (*master_xfer)(struct i2c_adapter *adap,struct i2c_msg msgs[],
-+ int (*master_xfer)(struct i2c_adapter *adap,struct i2c_msg *msgs,
- int num);
- int (*smbus_xfer) (struct i2c_adapter *adap, u16 addr,
- unsigned short flags, char read_write,
-diff -urN linux-2.4.30.old/include/linux/usbdevice_fs.h linux-2.4.30.dev/include/linux/usbdevice_fs.h
---- linux-2.4.30.old/include/linux/usbdevice_fs.h 2003-11-28 19:26:21.000000000 +0100
-+++ linux-2.4.30.dev/include/linux/usbdevice_fs.h 2005-04-29 18:42:37.000000000 +0200
-@@ -185,8 +185,6 @@
- extern struct file_operations usbdevfs_devices_fops;
- extern struct file_operations usbdevfs_device_file_operations;
- extern struct inode_operations usbdevfs_device_inode_operations;
--extern struct inode_operations usbdevfs_bus_inode_operations;
--extern struct file_operations usbdevfs_bus_file_operations;
- extern void usbdevfs_conn_disc_event(void);
-
- #endif /* __KERNEL__ */
-diff -urN linux-2.4.30.old/include/net/icmp.h linux-2.4.30.dev/include/net/icmp.h
---- linux-2.4.30.old/include/net/icmp.h 2001-11-22 20:47:15.000000000 +0100
-+++ linux-2.4.30.dev/include/net/icmp.h 2005-04-29 18:42:37.000000000 +0200
-@@ -23,6 +23,7 @@
-
- #include <net/sock.h>
- #include <net/protocol.h>
-+#include <net/snmp.h>
-
- struct icmp_err {
- int errno;
-diff -urN linux-2.4.30.old/include/net/ipv6.h linux-2.4.30.dev/include/net/ipv6.h
---- linux-2.4.30.old/include/net/ipv6.h 2004-11-17 12:54:22.000000000 +0100
-+++ linux-2.4.30.dev/include/net/ipv6.h 2005-04-29 18:42:37.000000000 +0200
-@@ -19,6 +19,7 @@
- #include <asm/hardirq.h>
- #include <net/ndisc.h>
- #include <net/flow.h>
-+#include <net/snmp.h>
-
- #define SIN6_LEN_RFC2133 24
-
-diff -urN linux-2.4.30.old/include/linux/netfilter_ipv4/ip_tables.h linux-2.4.30.dev/include/linux/netfilter_ipv4/ip_tables.h
---- linux-2.4.30.old/include/linux/netfilter_ipv4/ip_tables.h 2005-04-29 17:59:08.000000000 +0200
-+++ linux-2.4.30.dev/include/linux/netfilter_ipv4/ip_tables.h 2005-04-29 19:06:36.000000000 +0200
-@@ -283,7 +283,7 @@
- struct ipt_entry entrytable[0];
- };
-
--extern struct semaphore ipt_mutex;
-+// extern struct semaphore ipt_mutex;
-
- /* Standard return verdict, or do jump. */
- #define IPT_STANDARD_TARGET ""
diff --git a/openwrt/target/linux/linux-2.4/patches/generic/211-pl2303_bugfixes.patch b/openwrt/target/linux/linux-2.4/patches/generic/211-pl2303_bugfixes.patch
deleted file mode 100644
index bf7c3c3c42..0000000000
--- a/openwrt/target/linux/linux-2.4/patches/generic/211-pl2303_bugfixes.patch
+++ /dev/null
@@ -1,146 +0,0 @@
---- linux/drivers/usb/serial/pl2303.c.orig 2005-10-17 12:09:48.000000000 +0200
-+++ linux/drivers/usb/serial/pl2303.c 2005-10-19 04:10:46.000000000 +0200
-@@ -14,6 +14,13 @@
- * See Documentation/usb/usb-serial.txt for more information on using this driver
- *
- *
-+ * 2005_Oct_19 grsch
-+ * added some missing ioctl commands
-+ * it seems that there's still an issue with the 2.6.8 version when
-+ * using the device with echo "whatever" >/dev/usb/tts/0 .
-+ * Apparently, a timeout is needed upon pl2303_close (implemented in
-+ * 2.6.13.4)
-+ *
- * 2005_Mar_05 grsch
- * ported 2.6.8 pl2303.c to 2.4.20 format
- * (HX model works fine now, ID table should be brought up to date)
-@@ -142,9 +149,8 @@
- static int pl2303_write (struct usb_serial_port *port, int from_user,
- const unsigned char *buf, int count);
- static void pl2303_break_ctl(struct usb_serial_port *port,int break_state);
--static int pl2303_tiocmget (struct usb_serial_port *port, struct file *file);
--static int pl2303_tiocmset (struct usb_serial_port *port, struct file *file,
-- unsigned int set, unsigned int clear);
-+static int pl2303_tiocmget (struct usb_serial_port *port, unsigned int* value);
-+static int pl2303_tiocmset (struct usb_serial_port *port, unsigned int cmd, unsigned int *value);
- static int pl2303_startup (struct usb_serial *serial);
- static void pl2303_shutdown (struct usb_serial *serial);
-
-@@ -642,11 +648,108 @@
- return 0;
- }
-
-+
-+
-+static int pl2303_tiocmget (struct usb_serial_port *port, unsigned int *value)
-+{
-+ struct pl2303_private *priv = usb_get_serial_port_data(port);
-+ unsigned long flags;
-+ unsigned int mcr;
-+ unsigned int status;
-+ unsigned int result;
-+
-+ dbg("%s (%d)", __FUNCTION__, port->number);
-+
-+ spin_lock_irqsave (&priv->lock, flags);
-+ mcr = priv->line_control;
-+ status = priv->line_status;
-+ spin_unlock_irqrestore (&priv->lock, flags);
-+
-+ result = ((mcr & CONTROL_DTR) ? TIOCM_DTR : 0)
-+ | ((mcr & CONTROL_RTS) ? TIOCM_RTS : 0)
-+ | ((status & UART_CTS) ? TIOCM_CTS : 0)
-+ | ((status & UART_DSR) ? TIOCM_DSR : 0)
-+ | ((status & UART_RING) ? TIOCM_RI : 0)
-+ | ((status & UART_DCD) ? TIOCM_CD : 0);
-+
-+ dbg("%s - result = %x", __FUNCTION__, result);
-+
-+ if (copy_to_user(value, &result, sizeof(int)))
-+ return -EFAULT;
-+ return 0;
-+}
-+
-+
-+
-+static int pl2303_tiocmset (struct usb_serial_port *port, unsigned int cmd, unsigned int *value)
-+{
-+ /*
-+ struct pl2303_private *priv = usb_get_serial_port_data(port);
-+ unsigned long flags;
-+ u8 control;
-+
-+ spin_lock_irqsave (&priv->lock, flags);
-+ if (set & TIOCM_RTS)
-+ priv->line_control |= CONTROL_RTS;
-+ if (set & TIOCM_DTR)
-+ priv->line_control |= CONTROL_DTR;
-+ if (clear & TIOCM_RTS)
-+ priv->line_control &= ~CONTROL_RTS;
-+ if (clear & TIOCM_DTR)
-+ priv->line_control &= ~CONTROL_DTR;
-+ control = priv->line_control;
-+ spin_unlock_irqrestore (&priv->lock, flags);
-+
-+ return set_control_lines (port->serial->dev, control);
-+ */
-+ struct pl2303_private *priv = port->private;
-+ unsigned int arg;
-+
-+ if (copy_from_user(&arg, value, sizeof(int)))
-+ return -EFAULT;
-+
-+ switch (cmd) {
-+ case TIOCMBIS:
-+ if (arg & TIOCM_RTS)
-+ priv->line_control |= CONTROL_RTS;
-+ if (arg & TIOCM_DTR)
-+ priv->line_control |= CONTROL_DTR;
-+ break;
-+
-+ case TIOCMBIC:
-+ if (arg & TIOCM_RTS)
-+ priv->line_control &= ~CONTROL_RTS;
-+ if (arg & TIOCM_DTR)
-+ priv->line_control &= ~CONTROL_DTR;
-+ break;
-+
-+ case TIOCMSET:
-+ /* turn off RTS and DTR and then only turn
-+ on what was asked to */
-+ priv->line_control &= ~(CONTROL_RTS | CONTROL_DTR);
-+ priv->line_control |= ((arg & TIOCM_RTS) ? CONTROL_RTS : 0);
-+ priv->line_control |= ((arg & TIOCM_DTR) ? CONTROL_DTR : 0);
-+ break;
-+ }
-+
-+ return set_control_lines (port->serial->dev, priv->line_control);
-+}
-+
-+
-+
- static int pl2303_ioctl (struct usb_serial_port *port, struct file *file, unsigned int cmd, unsigned long arg)
- {
- dbg("%s (%d) cmd = 0x%04x", __FUNCTION__, port->number, cmd);
-
- switch (cmd) {
-+ case TIOCMGET:
-+ dbg("%s (%d) TIOCMGET", __FUNCTION__, port->number);
-+ return pl2303_tiocmget(port,(unsigned int *)arg);
-+ case TIOCMBIS:
-+ case TIOCMBIC:
-+ case TIOCMSET:
-+ dbg("%s (%d) TIOCMSET/TIOCMBIC/TIOCMSET", __FUNCTION__, port->number);
-+ return pl2303_tiocmset(port,cmd,(unsigned int*)arg);
- case TIOCMIWAIT:
- dbg("%s (%d) TIOCMIWAIT", __FUNCTION__, port->number);
- return wait_modem_info(port, arg);
-@@ -705,6 +808,8 @@
-
- dbg("%s (%d)", __FUNCTION__, port->number);
-
-+ dbg("%s - urb status %d...", __FUNCTION__, urb->status);
-+
- switch (urb->status) {
- case 0:
- /* success */