## Automatically generated incremental diff
## From:   linux-2.4.21-bk25
## To:     linux-2.4.21-bk26
## Robot:  $Id: make-incremental-diff,v 1.11 2002/02/20 02:59:33 hpa Exp $

diff -urN linux-2.4.21-bk25/Makefile linux-2.4.21-bk26/Makefile
--- linux-2.4.21-bk25/Makefile	2003-08-05 02:54:33.000000000 -0700
+++ linux-2.4.21-bk26/Makefile	2003-08-05 02:54:41.000000000 -0700
@@ -1,7 +1,7 @@
 VERSION = 2
 PATCHLEVEL = 4
 SUBLEVEL = 21
-EXTRAVERSION = -bk25
+EXTRAVERSION = -bk26
 
 KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
 
diff -urN linux-2.4.21-bk25/arch/sh/kernel/pci-sh7751.c linux-2.4.21-bk26/arch/sh/kernel/pci-sh7751.c
--- linux-2.4.21-bk25/arch/sh/kernel/pci-sh7751.c	2003-08-05 02:54:34.000000000 -0700
+++ linux-2.4.21-bk26/arch/sh/kernel/pci-sh7751.c	2003-08-05 02:54:42.000000000 -0700
@@ -200,8 +200,10 @@
 	unsigned int tmp, id;
 
 	/* check for SH7751 hardware */
-	id = (SH7751_DEVICE_ID << 16) | SH7751_VENDOR_ID;
-	if(inl(SH7751_PCIREG_BASE+SH7751_PCICONF0) != id) {
+	id = inl(SH7751_PCIREG_BASE + SH7751_PCICONF0);
+
+	if ((id != ((SH7751_DEVICE_ID << 16) | SH7751_VENDOR_ID)) &&
+	    (id != ((SH7751R_DEVICE_ID << 16) | SH7751_VENDOR_ID))) {
 		PCIDBG(2,"PCI: This is not an SH7751\n");
 		return NULL;
 	}
diff -urN linux-2.4.21-bk25/arch/sh/kernel/ptrace.c linux-2.4.21-bk26/arch/sh/kernel/ptrace.c
--- linux-2.4.21-bk25/arch/sh/kernel/ptrace.c	2003-08-05 02:54:34.000000000 -0700
+++ linux-2.4.21-bk26/arch/sh/kernel/ptrace.c	2003-08-05 02:54:42.000000000 -0700
@@ -71,6 +71,8 @@
 	/* bra & bsr */
 	if (nib[0] == 0xa || nib[0] == 0xb) {
 		*pc1 = regs->pc + 4 + ((short) ((inst & 0xfff) << 4) >> 3);
+		if(*pc1 == regs->pc + 2)
+			*pc1 = regs->pc + 4;
 		*pc2 = (unsigned long) -1;
 		return;
 	}
@@ -85,7 +87,12 @@
 	/* bt/s & bf/s */
 	if (nib[0] == 0x8 && (nib[1] == 0xd || nib[1] == 0xf)) {
 		*pc1 = regs->pc + 4 + ((char) (inst & 0xff) << 1);
-		*pc2 = regs->pc + 4;
+		if(*pc1 == regs->pc + 2) {
+			*pc1 = regs->pc + 4;
+			*pc2 = (unsigned long) -1;
+		}
+		else
+			*pc2 = regs->pc + 4;
 		return;
 	}
 
@@ -93,6 +100,8 @@
 	if (nib[0] == 0x4 && nib[3] == 0xb
 	    && (nib[2] == 0x0 || nib[2] == 0x2)) {
 		*pc1 = regs->regs[nib[1]];
+		if(*pc1 == regs->pc + 2)
+			*pc1 = regs->pc + 4;
 		*pc2 = (unsigned long) -1;
 		return;
 	}
@@ -101,12 +110,16 @@
 	if (nib[0] == 0x0 && nib[3] == 0x3
 	    && (nib[2] == 0x0 || nib[2] == 0x2)) {
 		*pc1 = regs->pc + 4 + regs->regs[nib[1]];
+		if(*pc1 == regs->pc + 2)
+			*pc1 = regs->pc + 4;
 		*pc2 = (unsigned long) -1;
 		return;
 	}
 
 	if (inst == 0x000b) {
 		*pc1 = regs->pr;
+		if(*pc1 == regs->pc + 2)
+			*pc1 = regs->pc + 4;
 		*pc2 = (unsigned long) -1;
 		return;
 	}
diff -urN linux-2.4.21-bk25/arch/sh/kernel/setup_snapgear.c linux-2.4.21-bk26/arch/sh/kernel/setup_snapgear.c
--- linux-2.4.21-bk25/arch/sh/kernel/setup_snapgear.c	2003-08-05 02:54:34.000000000 -0700
+++ linux-2.4.21-bk26/arch/sh/kernel/setup_snapgear.c	2003-08-05 02:54:42.000000000 -0700
@@ -17,7 +17,6 @@
 #include <linux/init.h>
 #include <linux/irq.h>
 #include <linux/timer.h>
-#include <linux/ledman.h>
 #include <linux/delay.h>
 #include <linux/module.h>
 #include <linux/sched.h>
diff -urN linux-2.4.21-bk25/drivers/acpi/system.c linux-2.4.21-bk26/drivers/acpi/system.c
--- linux-2.4.21-bk25/drivers/acpi/system.c	2003-08-05 02:54:34.000000000 -0700
+++ linux-2.4.21-bk26/drivers/acpi/system.c	2003-08-05 02:54:42.000000000 -0700
@@ -59,6 +59,8 @@
 static int acpi_system_add (struct acpi_device *device);
 static int acpi_system_remove (struct acpi_device *device, int type);
 
+acpi_status acpi_suspend (u32 state);
+
 static struct acpi_driver acpi_system_driver = {
 	.name =		ACPI_SYSTEM_DRIVER_NAME,
 	.class =	ACPI_SYSTEM_CLASS,
diff -urN linux-2.4.21-bk25/fs/noquot.c linux-2.4.21-bk26/fs/noquot.c
--- linux-2.4.21-bk25/fs/noquot.c	2000-05-12 11:21:20.000000000 -0700
+++ linux-2.4.21-bk26/fs/noquot.c	1969-12-31 16:00:00.000000000 -0800
@@ -1,15 +0,0 @@
-/* noquot.c: Quota stubs necessary for when quotas are not
- *           compiled into the kernel.
- */
-
-#include <linux/kernel.h>
-#include <linux/types.h>
-#include <linux/errno.h>
-
-int nr_dquots, nr_free_dquots;
-int max_dquots;
-
-asmlinkage long sys_quotactl(int cmd, const char *special, int id, caddr_t addr)
-{
-	return(-ENOSYS);
-}
diff -urN linux-2.4.21-bk25/include/asm-sh/io.h linux-2.4.21-bk26/include/asm-sh/io.h
--- linux-2.4.21-bk25/include/asm-sh/io.h	2003-08-05 02:54:39.000000000 -0700
+++ linux-2.4.21-bk26/include/asm-sh/io.h	2003-08-05 02:54:44.000000000 -0700
@@ -133,6 +133,8 @@
 #  include <asm/io_shmse.h>
 # elif defined(CONFIG_SH_ADX)
 #  include <asm/io_adx.h>
+# elif defined(CONFIG_SH_SECUREEDGE5410)
+#  include <asm/io_snapgear.h>
 # elif defined(CONFIG_SH_UNKNOWN)
 #  include <asm/io_unknown.h>
 # else
diff -urN linux-2.4.21-bk25/include/asm-sh/irq.h linux-2.4.21-bk26/include/asm-sh/irq.h
--- linux-2.4.21-bk25/include/asm-sh/irq.h	2003-08-05 02:54:39.000000000 -0700
+++ linux-2.4.21-bk26/include/asm-sh/irq.h	2003-08-05 02:54:45.000000000 -0700
@@ -24,6 +24,9 @@
 #define INTC_IPRA	0xffd00004UL
 #define INTC_IPRB	0xffd00008UL
 #define INTC_IPRC	0xffd0000cUL
+#if defined(CONFIG_CPU_SUBTYPE_SH7751)
+# define INTC_IPRD	0xffd00010UL
+#endif
 #endif
 
 #define TIMER_IRQ	16
diff -urN linux-2.4.21-bk25/include/asm-sh/machvec.h linux-2.4.21-bk26/include/asm-sh/machvec.h
--- linux-2.4.21-bk25/include/asm-sh/machvec.h	2003-08-05 02:54:39.000000000 -0700
+++ linux-2.4.21-bk26/include/asm-sh/machvec.h	2003-08-05 02:54:45.000000000 -0700
@@ -80,6 +80,7 @@
 	unsigned int mv_hw_hs7729pci : 1;
 	unsigned int mv_hw_7751se: 1;
 	unsigned int mv_hw_adx : 1;
+	unsigned int mv_hw_snapgear : 1;
 };
 
 extern struct sh_machine_vector sh_mv;
@@ -100,6 +101,7 @@
 #define MACH_HS7729PCI	(sh_mv.mv_hw_hs7729pci)
 #define MACH_7751SE	(sh_mv.mv_hw_7751se)
 #define MACH_ADX	(sh_mv.mv_hw_adx)
+#define MACH_SNAPGEAR	(sh_mv.mv_snapgear)
 #else
 # ifdef CONFIG_SH_SOLUTION_ENGINE
 #  define MACH_SE		1
@@ -176,6 +178,11 @@
 # else
 #  define MACH_ADX		0
 # endif
+# ifdef CONFIG_SH_SECUREEDGE5410
+#  define MACH_SNAPGEAR		1
+# else
+#  define MACH_SNAPGEAR		0
+# endif
 #endif
 
 #endif /* _ASM_SH_MACHVEC_H */
diff -urN linux-2.4.21-bk25/include/asm-sh/mc146818rtc.h linux-2.4.21-bk26/include/asm-sh/mc146818rtc.h
--- linux-2.4.21-bk25/include/asm-sh/mc146818rtc.h	2001-06-27 13:55:29.000000000 -0700
+++ linux-2.4.21-bk26/include/asm-sh/mc146818rtc.h	2003-08-05 02:54:45.000000000 -0700
@@ -17,6 +17,15 @@
 #define CMOS_READ(addr)		__CMOS_READ(addr,b)
 #define CMOS_WRITE(val,addr)	__CMOS_WRITE(val,addr,b)
 
+#elif defined(CONFIG_SH_SECUREEDGE5410)
+#include <asm/io.h>
+
+#define RTC_PORT(n)             SECUREEDGE_IOPORT_ADDR
+#define CMOS_READ(addr)         secureedge5410_cmos_read(addr)
+#define CMOS_WRITE(val,addr)    secureedge5410_cmos_write(val,addr)
+extern unsigned char secureedge5410_cmos_read(int addr);
+extern void secureedge5410_cmos_write(unsigned char val, int addr);
+
 #elif defined(__SH4__)
 #define RTC_PORT(n)		(R64CNT+(n)*4)
 #define CMOS_READ(addr)		__CMOS_READ(addr,w)
diff -urN linux-2.4.21-bk25/include/asm-sh/pci-sh7751.h linux-2.4.21-bk26/include/asm-sh/pci-sh7751.h
--- linux-2.4.21-bk25/include/asm-sh/pci-sh7751.h	2001-06-27 13:55:29.000000000 -0700
+++ linux-2.4.21-bk26/include/asm-sh/pci-sh7751.h	2003-08-05 02:54:45.000000000 -0700
@@ -36,6 +36,7 @@
 /* Platform Specific Values */
 #define SH7751_VENDOR_ID             0x1054
 #define SH7751_DEVICE_ID             0x3505
+#define SH7751R_DEVICE_ID            0x350e
 
 /* SH7751 Specific Values */
 #define SH7751_PCI_CONFIG_BASE	     0xFD000000  /* Config space base addr */
diff -urN linux-2.4.21-bk25/include/asm-sh/pci.h linux-2.4.21-bk26/include/asm-sh/pci.h
--- linux-2.4.21-bk25/include/asm-sh/pci.h	2003-08-05 02:54:39.000000000 -0700
+++ linux-2.4.21-bk26/include/asm-sh/pci.h	2003-08-05 02:54:45.000000000 -0700
@@ -25,8 +25,7 @@
 #elif defined(CONFIG_SH_BIGSUR) && defined(CONFIG_CPU_SUBTYPE_SH7751)
 #define PCIBIOS_MIN_IO		0x2000
 #define PCIBIOS_MIN_MEM		0xFD000000
-
-#elif defined(CONFIG_SH_7751_SOLUTION_ENGINE)
+#elif defined(CONFIG_SH_7751_SOLUTION_ENGINE) || defined(CONFIG_SH_SECUREEDGE5410)
 #define PCIBIOS_MIN_IO          0x4000
 #define PCIBIOS_MIN_MEM         0xFD000000
 #elif defined(CONFIG_PCI_SD0001)
diff -urN linux-2.4.21-bk25/include/asm-sh/pgtable.h linux-2.4.21-bk26/include/asm-sh/pgtable.h
--- linux-2.4.21-bk25/include/asm-sh/pgtable.h	2002-08-02 17:39:45.000000000 -0700
+++ linux-2.4.21-bk26/include/asm-sh/pgtable.h	2003-08-05 02:54:45.000000000 -0700
@@ -43,6 +43,7 @@
 #define flush_icache_page(vma,pg)		do { } while (0)
 #define flush_icache_user_range(vma,pg,adr,len)	do { } while (0)
 #define flush_cache_sigtramp(vaddr)		do { } while (0)
+#define __flush_icache_all()			do { } while (0)
 
 #define p3_cache_init()				do { } while (0)
 
@@ -310,4 +311,10 @@
  */
 #define pgtable_cache_init()	do { } while (0)
 
+/*
+ * Set pg flags to non-cached
+ */
+#define pgprot_noncached(_prot) __pgprot(pgprot_val(_prot) &= ~_PAGE_CACHABLE)
+
+
 #endif /* __ASM_SH_PAGE_H */
