include/asm-mips/cpu.h | 7 ++++++-
8 files changed, 61 insertions(+), 1 deletions(-)
-diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
-index 8724ed3..1b1c4bf 100644
---- a/arch/mips/Kconfig
-+++ b/arch/mips/Kconfig
+Index: linux-2.6.25.4/arch/mips/Kconfig
+===================================================================
+--- linux-2.6.25.4.orig/arch/mips/Kconfig
++++ linux-2.6.25.4/arch/mips/Kconfig
@@ -59,6 +59,17 @@ config BCM47XX
help
Support for BCM47XX based boards
config MIPS_COBALT
bool "Cobalt Server"
select CEVT_R4K
-diff --git a/arch/mips/Makefile b/arch/mips/Makefile
-index 1c62381..16a29e1 100644
---- a/arch/mips/Makefile
-+++ b/arch/mips/Makefile
-@@ -560,6 +560,10 @@ core-$(CONFIG_BCM47XX) += arch/mips/bcm47xx/
+Index: linux-2.6.25.4/arch/mips/Makefile
+===================================================================
+--- linux-2.6.25.4.orig/arch/mips/Makefile
++++ linux-2.6.25.4/arch/mips/Makefile
+@@ -560,6 +560,10 @@ core-$(CONFIG_BCM47XX) += arch/mips/bcm
cflags-$(CONFIG_BCM47XX) += -Iinclude/asm-mips/mach-bcm47xx
load-$(CONFIG_BCM47XX) := 0xffffffff80001000
#
# SNI RM
#
-diff --git a/arch/mips/kernel/cpu-probe.c b/arch/mips/kernel/cpu-probe.c
-index 89c3304..6706a07 100644
---- a/arch/mips/kernel/cpu-probe.c
-+++ b/arch/mips/kernel/cpu-probe.c
-@@ -803,6 +803,18 @@ static inline void cpu_probe_broadcom(struct cpuinfo_mips *c)
+Index: linux-2.6.25.4/arch/mips/kernel/cpu-probe.c
+===================================================================
+--- linux-2.6.25.4.orig/arch/mips/kernel/cpu-probe.c
++++ linux-2.6.25.4/arch/mips/kernel/cpu-probe.c
+@@ -803,6 +803,18 @@ static inline void cpu_probe_broadcom(st
case PRID_IMP_BCM4710:
c->cputype = CPU_BCM4710;
break;
default:
c->cputype = CPU_UNKNOWN;
break;
-@@ -887,6 +899,10 @@ static __cpuinit const char *cpu_to_name(struct cpuinfo_mips *c)
+@@ -887,6 +899,10 @@ static __cpuinit const char *cpu_to_name
case CPU_SR71000: name = "Sandcraft SR71000"; break;
case CPU_BCM3302: name = "Broadcom BCM3302"; break;
case CPU_BCM4710: name = "Broadcom BCM4710"; break;
case CPU_PR4450: name = "Philips PR4450"; break;
case CPU_LOONGSON2: name = "ICT Loongson-2"; break;
default:
-diff --git a/arch/mips/mm/c-r4k.c b/arch/mips/mm/c-r4k.c
-index 77aefb4..23a67cb 100644
---- a/arch/mips/mm/c-r4k.c
-+++ b/arch/mips/mm/c-r4k.c
+Index: linux-2.6.25.4/arch/mips/mm/c-r4k.c
+===================================================================
+--- linux-2.6.25.4.orig/arch/mips/mm/c-r4k.c
++++ linux-2.6.25.4/arch/mips/mm/c-r4k.c
@@ -882,6 +882,13 @@ static void __cpuinit probe_pcache(void)
if (!(config & MIPS_CONF_M))
panic("Don't know how to probe P-caches on this cpu.");
/*
* So we seem to be a MIPS32 or MIPS64 CPU
* So let's probe the I-cache ...
-diff --git a/arch/mips/mm/tlbex.c b/arch/mips/mm/tlbex.c
-index 382738c..b3b6120 100644
---- a/arch/mips/mm/tlbex.c
-+++ b/arch/mips/mm/tlbex.c
-@@ -315,6 +315,10 @@ static void __cpuinit build_tlb_write_entry(u32 **p, struct uasm_label **l,
+Index: linux-2.6.25.4/arch/mips/mm/tlbex.c
+===================================================================
+--- linux-2.6.25.4.orig/arch/mips/mm/tlbex.c
++++ linux-2.6.25.4/arch/mips/mm/tlbex.c
+@@ -315,6 +315,10 @@ static void __cpuinit build_tlb_write_en
case CPU_25KF:
case CPU_BCM3302:
case CPU_BCM4710:
case CPU_LOONGSON2:
if (m4kc_tlbp_war())
uasm_i_nop(p);
-diff --git a/arch/mips/pci/Makefile b/arch/mips/pci/Makefile
-index ed0c076..57a1111 100644
---- a/arch/mips/pci/Makefile
-+++ b/arch/mips/pci/Makefile
-@@ -48,3 +48,4 @@ obj-$(CONFIG_TOSHIBA_RBTX4938) += fixup-tx4938.o ops-tx4938.o
+Index: linux-2.6.25.4/arch/mips/pci/Makefile
+===================================================================
+--- linux-2.6.25.4.orig/arch/mips/pci/Makefile
++++ linux-2.6.25.4/arch/mips/pci/Makefile
+@@ -48,3 +48,4 @@ obj-$(CONFIG_TOSHIBA_RBTX4938) += fixup-
obj-$(CONFIG_VICTOR_MPC30X) += fixup-mpc30x.o
obj-$(CONFIG_ZAO_CAPCELLA) += fixup-capcella.o
obj-$(CONFIG_WR_PPMC) += fixup-wrppmc.o
+obj-$(CONFIG_BCM963XX) += fixup-bcm96348.o pci-bcm96348.o ops-bcm96348.o
-diff --git a/include/asm-mips/bootinfo.h b/include/asm-mips/bootinfo.h
-index e031bdf..17b2a37 100644
---- a/include/asm-mips/bootinfo.h
-+++ b/include/asm-mips/bootinfo.h
+Index: linux-2.6.25.4/include/asm-mips/bootinfo.h
+===================================================================
+--- linux-2.6.25.4.orig/include/asm-mips/bootinfo.h
++++ linux-2.6.25.4/include/asm-mips/bootinfo.h
@@ -94,6 +94,18 @@
#define MACH_MSP7120_FPGA 5 /* PMC-Sierra MSP7120 Emulation */
#define MACH_MSP_OTHER 255 /* PMC-Sierra unknown board type */
#define CL_SIZE COMMAND_LINE_SIZE
extern char *system_type;
-diff --git a/include/asm-mips/cpu.h b/include/asm-mips/cpu.h
-index bf5bbc7..e19389a 100644
---- a/include/asm-mips/cpu.h
-+++ b/include/asm-mips/cpu.h
+Index: linux-2.6.25.4/include/asm-mips/cpu.h
+===================================================================
+--- linux-2.6.25.4.orig/include/asm-mips/cpu.h
++++ linux-2.6.25.4/include/asm-mips/cpu.h
@@ -111,6 +111,10 @@
#define PRID_IMP_BCM4710 0x4000
/*
* MIPS64 class processors
---
-1.5.5.1
-
drivers/serial/Makefile | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
-diff --git a/drivers/serial/Makefile b/drivers/serial/Makefile
-index 640cfe4..edc325e 100644
---- a/drivers/serial/Makefile
-+++ b/drivers/serial/Makefile
-@@ -67,3 +67,4 @@ obj-$(CONFIG_SERIAL_NETX) += netx-serial.o
+Index: linux-2.6.25.4/drivers/serial/Makefile
+===================================================================
+--- linux-2.6.25.4.orig/drivers/serial/Makefile
++++ linux-2.6.25.4/drivers/serial/Makefile
+@@ -67,3 +67,4 @@ obj-$(CONFIG_SERIAL_NETX) += netx-serial
obj-$(CONFIG_SERIAL_OF_PLATFORM) += of_serial.o
obj-$(CONFIG_SERIAL_KS8695) += serial_ks8695.o
obj-$(CONFIG_SERIAL_QE) += ucc_uart.o
+obj-$(CONFIG_BCM963XX) += bcm63xx_cons.o
---
-1.5.5.1
-
drivers/mtd/redboot.c | 13 ++++++++++---
3 files changed, 18 insertions(+), 3 deletions(-)
-diff --git a/drivers/mtd/maps/Kconfig b/drivers/mtd/maps/Kconfig
-index 12c2536..38b8d94 100644
---- a/drivers/mtd/maps/Kconfig
-+++ b/drivers/mtd/maps/Kconfig
+Index: linux-2.6.25.4/drivers/mtd/maps/Kconfig
+===================================================================
+--- linux-2.6.25.4.orig/drivers/mtd/maps/Kconfig
++++ linux-2.6.25.4/drivers/mtd/maps/Kconfig
@@ -262,6 +262,13 @@ config MTD_MTX1
Flash memory access on 4G Systems MTX-1 Board. If you have one of
these boards and would like to use the flash chips on it, say 'Y'.
config MTD_DILNETPC
tristate "CFI Flash device mapped on DIL/Net PC"
depends on X86 && MTD_CONCAT && MTD_PARTITIONS && MTD_CFI_INTELEXT
-diff --git a/drivers/mtd/maps/Makefile b/drivers/mtd/maps/Makefile
-index a9cbe80..e2c10be 100644
---- a/drivers/mtd/maps/Makefile
-+++ b/drivers/mtd/maps/Makefile
+Index: linux-2.6.25.4/drivers/mtd/maps/Makefile
+===================================================================
+--- linux-2.6.25.4.orig/drivers/mtd/maps/Makefile
++++ linux-2.6.25.4/drivers/mtd/maps/Makefile
@@ -68,3 +68,4 @@ obj-$(CONFIG_MTD_PLATRAM) += plat-ram.o
obj-$(CONFIG_MTD_OMAP_NOR) += omap_nor.o
obj-$(CONFIG_MTD_MTX1) += mtx-1_flash.o
obj-$(CONFIG_MTD_INTEL_VR_NOR) += intel_vr_nor.o
+obj-$(CONFIG_MTD_BCM963XX) += bcm963xx-flash.o
-diff --git a/drivers/mtd/redboot.c b/drivers/mtd/redboot.c
-index 4747490..4f500af 100644
---- a/drivers/mtd/redboot.c
-+++ b/drivers/mtd/redboot.c
-@@ -39,7 +39,7 @@ static inline int redboot_checksum(struct fis_image_desc *img)
+Index: linux-2.6.25.4/drivers/mtd/redboot.c
+===================================================================
+--- linux-2.6.25.4.orig/drivers/mtd/redboot.c
++++ linux-2.6.25.4/drivers/mtd/redboot.c
+@@ -39,7 +39,7 @@ static inline int redboot_checksum(struc
return 1;
}
struct mtd_partition **pparts,
unsigned long fis_origin)
{
-@@ -161,6 +161,14 @@ static int parse_redboot_partitions(struct mtd_info *master,
+@@ -161,6 +161,14 @@ static int parse_redboot_partitions(stru
goto out;
}
for (i = 0; i < numslots; i++) {
struct fis_list *new_fl, **prev;
-@@ -183,9 +191,8 @@ static int parse_redboot_partitions(struct mtd_info *master,
+@@ -183,9 +191,8 @@ static int parse_redboot_partitions(stru
new_fl->img = &buf[i];
if (fis_origin) {
buf[i].flash_base -= fis_origin;
/* I'm sure the JFFS2 code has done me permanent damage.
* I now think the following is _normal_
---
-1.5.5.1
-
arch/mips/Makefile | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
-diff --git a/arch/mips/Makefile b/arch/mips/Makefile
-index 16a29e1..6551951 100644
---- a/arch/mips/Makefile
-+++ b/arch/mips/Makefile
-@@ -562,7 +562,7 @@ load-$(CONFIG_BCM47XX) := 0xffffffff80001000
+Index: linux-2.6.25.4/arch/mips/Makefile
+===================================================================
+--- linux-2.6.25.4.orig/arch/mips/Makefile
++++ linux-2.6.25.4/arch/mips/Makefile
+@@ -562,7 +562,7 @@ load-$(CONFIG_BCM47XX) := 0xffffffff800
core-$(CONFIG_BCM963XX) += arch/mips/bcm963xx/
cflags-$(CONFIG_BCM963XX) += -Iinclude/asm-mips/mach-bcm963xx
#
# SNI RM
---
-1.5.5.1
-
include/asm-mips/mach-bcm963xx/bcm_intr.h | 18 +--
3 files changed, 119 insertions(+), 220 deletions(-)
-diff --git a/arch/mips/bcm963xx/irq.c b/arch/mips/bcm963xx/irq.c
-index 62a848b..11583c9 100644
---- a/arch/mips/bcm963xx/irq.c
-+++ b/arch/mips/bcm963xx/irq.c
+Index: linux-2.6.25.4/arch/mips/bcm963xx/irq.c
+===================================================================
+--- linux-2.6.25.4.orig/arch/mips/bcm963xx/irq.c
++++ linux-2.6.25.4/arch/mips/bcm963xx/irq.c
@@ -1,259 +1,159 @@
/*
-<:copyright-gpl
-void end_brcm_none(unsigned int irq)
-{
+-}
+ for (irq = 0, bit = 1; irq < 32; irq++, bit <<= 1) {
+ if (pending & bit) {
+ bcm963xx_ack_irq(irq + bcm963xx_irq_base);
+ }
+
+ spurious_interrupt();
- }
++}
++
++static struct irq_chip bcm963xx_irq_type = {
++ .name = "bcm963xx",
++ .unmask = bcm963xx_unmask_irq,
++ .mask = bcm963xx_mask_irq,
++ .ack = bcm963xx_ack_irq
++};
-static struct hw_interrupt_type brcm_irq_type = {
- .typename = "MIPS",
- .ack = ack_brcm_irq,
- .end = end_brcm_irq,
- .set_affinity = NULL
-+static struct irq_chip bcm963xx_irq_type = {
-+ .name = "bcm963xx",
-+ .unmask = bcm963xx_unmask_irq,
-+ .mask = bcm963xx_mask_irq,
-+ .ack = bcm963xx_ack_irq
++static struct irq_chip bcm963xx_ext_irq_type = {
++ .name = "bcm963xx_ext",
++ .unmask = bcm963xx_unmask_ext_irq,
++ .mask = bcm963xx_mask_ext_irq,
++ .ack = bcm963xx_ack_ext_irq,
};
-static struct hw_interrupt_type brcm_irq_no_end_type = {
- .ack = ack_brcm_irq,
- .end = end_brcm_none,
- .set_affinity = NULL
-+static struct irq_chip bcm963xx_ext_irq_type = {
-+ .name = "bcm963xx_ext",
-+ .unmask = bcm963xx_unmask_ext_irq,
-+ .mask = bcm963xx_mask_ext_irq,
-+ .ack = bcm963xx_ack_ext_irq,
- };
-
--void __init arch_init_irq(void)
+static struct irqaction bcm963xx_cascade_action = {
+ .handler = no_action,
+ .name = "BCM963xx cascade interrupt"
-+};
-+
+ };
+
+-void __init arch_init_irq(void)
+static void __init bcm963xx_irq_init(int base)
{
int i;
- clear_c0_status(ST0_BEV);
- change_c0_status(ST0_IM, (IE_IRQ0 | IE_IRQ1 | IE_IRQ2 | IE_IRQ3 | IE_IRQ4));
--
++ bcm963xx_irq_base = base;
+
- for (i = 0; i < NR_IRQS; i++) {
- irq_desc[i].status = IRQ_DISABLED;
- irq_desc[i].action = 0;
- irq_desc[i].depth = 1;
- irq_desc[i].chip = &brcm_irq_type;
-+ bcm963xx_irq_base = base;
-+
+- }
+ /* External IRQs */
+ set_irq_chip_and_handler(INTERRUPT_ID_EXTERNAL_0, &bcm963xx_ext_irq_type,
+ handle_level_irq);
+ for (i = 0; i < 32; i++) {
+ set_irq_chip_and_handler(base + i, &bcm963xx_irq_type,
+ handle_level_irq);
- }
++ }
+
+ setup_irq(2, &bcm963xx_cascade_action);
+ setup_irq(bcm963xx_irq_base, &bcm963xx_cascade_action);
+asmlinkage void plat_irq_dispatch(void)
{
- unsigned long flags;
+-
+- local_irq_save(flags);
+ unsigned int pending = read_c0_status() & read_c0_cause() & ST0_IM;
-- local_irq_save(flags);
--
- PERF->ExtIrqCfg |= (1 << (irq - INTERRUPT_ID_EXTERNAL_0 + EI_CLEAR_SHFT)); // Clear
- PERF->ExtIrqCfg &= ~(1 << (irq - INTERRUPT_ID_EXTERNAL_0 + EI_MASK_SHFT)); // Mask
- PERF->ExtIrqCfg &= ~(1 << (irq - INTERRUPT_ID_EXTERNAL_0 + EI_INSENS_SHFT)); // Edge insesnsitive
-EXPORT_SYMBOL(request_external_irq);
-EXPORT_SYMBOL(BcmHalMapInterrupt);
-
-diff --git a/drivers/serial/bcm63xx_cons.c b/drivers/serial/bcm63xx_cons.c
-index 8fff16d..2302ea6 100644
---- a/drivers/serial/bcm63xx_cons.c
-+++ b/drivers/serial/bcm63xx_cons.c
-@@ -267,7 +267,7 @@ static void bcm_interrupt(int irq, void *dev, struct pt_regs *regs)
+Index: linux-2.6.25.4/drivers/serial/bcm63xx_cons.c
+===================================================================
+--- linux-2.6.25.4.orig/drivers/serial/bcm63xx_cons.c
++++ linux-2.6.25.4/drivers/serial/bcm63xx_cons.c
+@@ -267,7 +267,7 @@ static void bcm_interrupt(int irq, void
}
// Clear the interrupt
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
return IRQ_HANDLED;
#endif
-@@ -880,7 +880,7 @@ static int bcm63xx_cons_open(struct tty_struct *tty, struct file *filp)
+@@ -880,7 +880,7 @@ static int bcm63xx_cons_open(struct tty_
info->count++;
tty->driver_data = info;
info->tty = tty;
struct bcm_serial *info;
// Print the driver version information
-@@ -981,7 +981,12 @@ static int __init bcm63xx_serialinit(void)
+@@ -981,7 +981,12 @@ static int __init bcm63xx_serialinit(voi
*/
if (!info->port)
return 0;
}
/* order matters here... the trick is that flags
-diff --git a/include/asm-mips/mach-bcm963xx/bcm_intr.h b/include/asm-mips/mach-bcm963xx/bcm_intr.h
-index 8c56840..920f783 100644
---- a/include/asm-mips/mach-bcm963xx/bcm_intr.h
-+++ b/include/asm-mips/mach-bcm963xx/bcm_intr.h
+Index: linux-2.6.25.4/include/asm-mips/mach-bcm963xx/bcm_intr.h
+===================================================================
+--- linux-2.6.25.4.orig/include/asm-mips/mach-bcm963xx/bcm_intr.h
++++ linux-2.6.25.4/include/asm-mips/mach-bcm963xx/bcm_intr.h
@@ -39,18 +39,12 @@ struct pt_regs;
typedef int (*FN_HANDLER) (int, void *);
#ifdef __cplusplus
}
---
-1.5.5.1
-
drivers/serial/bcm63xx_cons.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
-diff --git a/drivers/serial/bcm63xx_cons.c b/drivers/serial/bcm63xx_cons.c
-index 2302ea6..c60b8f0 100644
---- a/drivers/serial/bcm63xx_cons.c
-+++ b/drivers/serial/bcm63xx_cons.c
-@@ -258,8 +258,14 @@ static void bcm_interrupt(int irq, void *dev, struct pt_regs *regs)
+Index: linux-2.6.25.4/drivers/serial/bcm63xx_cons.c
+===================================================================
+--- linux-2.6.25.4.orig/drivers/serial/bcm63xx_cons.c
++++ linux-2.6.25.4/drivers/serial/bcm63xx_cons.c
+@@ -258,8 +258,14 @@ static void bcm_interrupt(int irq, void
while (intStat) {
if (intStat & RXINT)
receive_chars(info);
else /* don't know what it was, so let's mask it */
info->port->intMask &= ~intStat;
---
-1.5.5.1
-
2 files changed, 1 insertions(+), 60 deletions(-)
delete mode 100644 arch/mips/bcm963xx/int-handler.S
-diff --git a/arch/mips/bcm963xx/Makefile b/arch/mips/bcm963xx/Makefile
-index a9d1e55..77fbd84 100644
---- a/arch/mips/bcm963xx/Makefile
-+++ b/arch/mips/bcm963xx/Makefile
+Index: linux-2.6.25.4/arch/mips/bcm963xx/Makefile
+===================================================================
+--- linux-2.6.25.4.orig/arch/mips/bcm963xx/Makefile
++++ linux-2.6.25.4/arch/mips/bcm963xx/Makefile
@@ -3,7 +3,7 @@
#
# Copyright (C) 2004 Broadcom Corporation
SRCBASE := $(TOPDIR)
EXTRA_CFLAGS += -I$(SRCBASE)/include
-diff --git a/arch/mips/bcm963xx/int-handler.S b/arch/mips/bcm963xx/int-handler.S
-deleted file mode 100644
-index a7a9c9d..0000000
---- a/arch/mips/bcm963xx/int-handler.S
+Index: linux-2.6.25.4/arch/mips/bcm963xx/int-handler.S
+===================================================================
+--- linux-2.6.25.4.orig/arch/mips/bcm963xx/int-handler.S
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- nop
-
- END(brcmIRQ)
---
-1.5.5.1
-
arch/mips/bcm963xx/time.c | 29 -----------------------------
2 files changed, 0 insertions(+), 31 deletions(-)
-diff --git a/arch/mips/bcm963xx/setup.c b/arch/mips/bcm963xx/setup.c
-index 5847278..982cba0 100644
---- a/arch/mips/bcm963xx/setup.c
-+++ b/arch/mips/bcm963xx/setup.c
+Index: linux-2.6.25.4/arch/mips/bcm963xx/setup.c
+===================================================================
+--- linux-2.6.25.4.orig/arch/mips/bcm963xx/setup.c
++++ linux-2.6.25.4/arch/mips/bcm963xx/setup.c
@@ -465,8 +465,6 @@ void __init plat_mem_setup(void)
_machine_halt = brcm_machine_halt;
pm_power_off = brcm_machine_halt;
/* mpi initialization */
mpi_init();
}
-diff --git a/arch/mips/bcm963xx/time.c b/arch/mips/bcm963xx/time.c
-index fa0fa71..8a5007e 100644
---- a/arch/mips/bcm963xx/time.c
-+++ b/arch/mips/bcm963xx/time.c
-@@ -71,26 +71,6 @@ static inline unsigned long __init cal_r4koff(void)
+Index: linux-2.6.25.4/arch/mips/bcm963xx/time.c
+===================================================================
+--- linux-2.6.25.4.orig/arch/mips/bcm963xx/time.c
++++ linux-2.6.25.4/arch/mips/bcm963xx/time.c
+@@ -71,26 +71,6 @@ static inline unsigned long __init cal_r
return (mips_hpt_frequency / HZ);
}
- set_c0_status(IE_IRQ5);
-}
-#endif
---
-1.5.5.1
-
arch/mips/bcm963xx/time.c | 64 ++++++++++++++++++++------------------------
2 files changed, 31 insertions(+), 35 deletions(-)
-diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
-index 1b1c4bf..3f8be3f 100644
---- a/arch/mips/Kconfig
-+++ b/arch/mips/Kconfig
+Index: linux-2.6.25.4/arch/mips/Kconfig
+===================================================================
+--- linux-2.6.25.4.orig/arch/mips/Kconfig
++++ linux-2.6.25.4/arch/mips/Kconfig
@@ -67,6 +67,8 @@ config BCM963XX
select HW_HAS_PCI
select DMA_NONCOHERENT
help
This is a fmaily of boards based on the Broadcom MIPS32
-diff --git a/arch/mips/bcm963xx/time.c b/arch/mips/bcm963xx/time.c
-index 8a5007e..9fae8fd 100644
---- a/arch/mips/bcm963xx/time.c
-+++ b/arch/mips/bcm963xx/time.c
+Index: linux-2.6.25.4/arch/mips/bcm963xx/time.c
+===================================================================
+--- linux-2.6.25.4.orig/arch/mips/bcm963xx/time.c
++++ linux-2.6.25.4/arch/mips/bcm963xx/time.c
@@ -1,6 +1,7 @@
/*
<:copyright-gpl
+
+ printk("CPU frequency %lu.%02lu MHz\n", cpu_clock / 1000000,
+ (cpu_clock % 1000000) * 100 / 1000000);
++
++ mips_hpt_frequency = cpu_clock / 2;
- printk("calculating r4koff... ");
- r4k_offset = cal_r4koff();
- printk("%08lx(%d)\n", r4k_offset, (int)r4k_offset);
-+ mips_hpt_frequency = cpu_clock / 2;
-
+-
- est_freq = 2 * r4k_offset * HZ;
- est_freq += 5000; /* round */
- est_freq -= est_freq % 10000;
+ write_c0_count(0);
+ write_c0_compare(0xffff);
}
---
-1.5.5.1
-
drivers/mtd/maps/bcm963xx-flash.c | 11 ++++++-----
1 files changed, 6 insertions(+), 5 deletions(-)
-diff --git a/drivers/mtd/maps/bcm963xx-flash.c b/drivers/mtd/maps/bcm963xx-flash.c
-index c4c4526..4da672b 100644
---- a/drivers/mtd/maps/bcm963xx-flash.c
-+++ b/drivers/mtd/maps/bcm963xx-flash.c
+Index: linux-2.6.25.4/drivers/mtd/maps/bcm963xx-flash.c
+===================================================================
+--- linux-2.6.25.4.orig/drivers/mtd/maps/bcm963xx-flash.c
++++ linux-2.6.25.4/drivers/mtd/maps/bcm963xx-flash.c
@@ -1,8 +1,7 @@
/*
- * $Id$
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
-@@ -184,11 +183,13 @@ static int bcm963xx_parts_size = sizeof(bcm963xx_parts) / sizeof(bcm963xx_parts[
+@@ -184,11 +183,13 @@ static int bcm963xx_parts_size = sizeof(
static int bcm963xx_detect_cfe(struct mtd_info *master)
{
int idoffset = 0x4e0;
ret = master->read(master, idoffset, 8, &retlen, (void *)buf);
printk("bcm963xx: Read Signature value of %s\n", buf);
return strcmp(idstring,buf);
---
-1.5.5.1
-
include/asm-mips/mach-bcm963xx/board.h | 2 ++
4 files changed, 25 insertions(+), 11 deletions(-)
-diff --git a/arch/mips/bcm963xx/setup.c b/arch/mips/bcm963xx/setup.c
-index 982cba0..c12c9c3 100644
---- a/arch/mips/bcm963xx/setup.c
-+++ b/arch/mips/bcm963xx/setup.c
+Index: linux-2.6.25.4/arch/mips/bcm963xx/setup.c
+===================================================================
+--- linux-2.6.25.4.orig/arch/mips/bcm963xx/setup.c
++++ linux-2.6.25.4/arch/mips/bcm963xx/setup.c
@@ -43,6 +43,7 @@
#include <asm/bootinfo.h>
#include <asm/cpu.h>
+ mpi_init();
+ }
}
-diff --git a/arch/mips/bcm963xx/time.c b/arch/mips/bcm963xx/time.c
-index 75f751a..22ad56d 100644
---- a/arch/mips/bcm963xx/time.c
-+++ b/arch/mips/bcm963xx/time.c
-@@ -39,6 +39,8 @@
+Index: linux-2.6.25.4/arch/mips/bcm963xx/time.c
+===================================================================
+--- linux-2.6.25.4.orig/arch/mips/bcm963xx/time.c
++++ linux-2.6.25.4/arch/mips/bcm963xx/time.c
+@@ -40,6 +40,8 @@
#include <6348_intr.h>
#include <bcm_map_part.h>
#include <bcm_intr.h>
/*
* calculateCpuSpeed()
-@@ -62,11 +64,12 @@ static inline unsigned long __init calculateCpuSpeed(void)
+@@ -63,11 +65,12 @@ static inline unsigned long __init calcu
}
printk("CPU frequency %lu.%02lu MHz\n", cpu_clock / 1000000,
(cpu_clock % 1000000) * 100 / 1000000);
-diff --git a/arch/mips/pci/pci-bcm96348.c b/arch/mips/pci/pci-bcm96348.c
-index bea3b7b..1e82283 100644
---- a/arch/mips/pci/pci-bcm96348.c
-+++ b/arch/mips/pci/pci-bcm96348.c
+Index: linux-2.6.25.4/arch/mips/pci/pci-bcm96348.c
+===================================================================
+--- linux-2.6.25.4.orig/arch/mips/pci/pci-bcm96348.c
++++ linux-2.6.25.4/arch/mips/pci/pci-bcm96348.c
@@ -21,6 +21,8 @@
#include <linux/kernel.h>
#include <linux/init.h>
#include <bcmpci.h>
static struct resource bcm_pci_io_resource = {
-@@ -47,16 +49,19 @@ struct pci_controller bcm96348_controller = {
+@@ -47,16 +49,19 @@ struct pci_controller bcm96348_controlle
static __init int bcm96348_pci_init(void)
{
- /* Avoid ISA compat ranges. */
- PCIBIOS_MIN_IO = 0x00000000;
- PCIBIOS_MIN_MEM = 0x00000000;
+-
+- /* Set I/O resource limits. */
+- ioport_resource.end = 0x1fffffff;
+- iomem_resource.end = 0xffffffff;
+ if (!ISBCM(0x6345)) {
+ /* Avoid ISA compat ranges. */
+ PCIBIOS_MIN_IO = 0x00000000;
+ PCIBIOS_MIN_MEM = 0x00000000;
-
-- /* Set I/O resource limits. */
-- ioport_resource.end = 0x1fffffff;
-- iomem_resource.end = 0xffffffff;
++
+ /* Set I/O resource limits. */
+ ioport_resource.end = 0x1fffffff;
+ iomem_resource.end = 0xffffffff;
}
arch_initcall(bcm96348_pci_init);
-diff --git a/include/asm-mips/mach-bcm963xx/board.h b/include/asm-mips/mach-bcm963xx/board.h
-index e674cb1..73fa924 100644
---- a/include/asm-mips/mach-bcm963xx/board.h
-+++ b/include/asm-mips/mach-bcm963xx/board.h
+Index: linux-2.6.25.4/include/asm-mips/mach-bcm963xx/board.h
+===================================================================
+--- linux-2.6.25.4.orig/include/asm-mips/mach-bcm963xx/board.h
++++ linux-2.6.25.4/include/asm-mips/mach-bcm963xx/board.h
@@ -369,5 +369,7 @@ void kerSysWakeupMonitorTask( void );
extern int boot_loader_type;
+
#endif /* _BOARD_H */
---
-1.5.5.1
-
-diff -urN linux-2.6.24/arch/mips/Kconfig linux-2.6.24.new/arch/mips/Kconfig
---- linux-2.6.24/arch/mips/Kconfig 2008-01-24 23:58:37.000000000 +0100
-+++ linux-2.6.24.new/arch/mips/Kconfig 2008-02-13 16:20:49.000000000 +0100
-@@ -67,6 +67,17 @@
+Index: linux-2.6.24.7/arch/mips/Kconfig
+===================================================================
+--- linux-2.6.24.7.orig/arch/mips/Kconfig
++++ linux-2.6.24.7/arch/mips/Kconfig
+@@ -67,6 +67,17 @@ config BCM47XX
help
Support for BCM47XX based boards
config MIPS_COBALT
bool "Cobalt Server"
select CEVT_R4K
-diff -urN linux-2.6.24/arch/mips/kernel/cpu-probe.c linux-2.6.24.new/arch/mips/kernel/cpu-probe.c
---- linux-2.6.24/arch/mips/kernel/cpu-probe.c 2008-01-24 23:58:37.000000000 +0100
-+++ linux-2.6.24.new/arch/mips/kernel/cpu-probe.c 2008-02-13 16:23:21.000000000 +0100
-@@ -796,6 +796,18 @@
+Index: linux-2.6.24.7/arch/mips/kernel/cpu-probe.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/mips/kernel/cpu-probe.c
++++ linux-2.6.24.7/arch/mips/kernel/cpu-probe.c
+@@ -796,6 +796,18 @@ static inline void cpu_probe_broadcom(st
case PRID_IMP_BCM4710:
c->cputype = CPU_BCM4710;
break;
default:
c->cputype = CPU_UNKNOWN;
break;
-@@ -878,6 +890,10 @@
+@@ -878,6 +890,10 @@ static __init const char *cpu_to_name(st
case CPU_SR71000: name = "Sandcraft SR71000"; break;
case CPU_BCM3302: name = "Broadcom BCM3302"; break;
case CPU_BCM4710: name = "Broadcom BCM4710"; break;
case CPU_PR4450: name = "Philips PR4450"; break;
case CPU_LOONGSON2: name = "ICT Loongson-2"; break;
default:
-diff -urN linux-2.6.24/arch/mips/Makefile linux-2.6.24.new/arch/mips/Makefile
---- linux-2.6.24/arch/mips/Makefile 2008-01-24 23:58:37.000000000 +0100
-+++ linux-2.6.24.new/arch/mips/Makefile 2008-02-13 16:21:21.000000000 +0100
-@@ -543,6 +543,10 @@
+Index: linux-2.6.24.7/arch/mips/Makefile
+===================================================================
+--- linux-2.6.24.7.orig/arch/mips/Makefile
++++ linux-2.6.24.7/arch/mips/Makefile
+@@ -543,6 +543,10 @@ core-$(CONFIG_BCM47XX) += arch/mips/bcm
cflags-$(CONFIG_BCM47XX) += -Iinclude/asm-mips/mach-bcm47xx
load-$(CONFIG_BCM47XX) := 0xffffffff80001000
#
# SNI RM
#
-diff -urN linux-2.6.24/arch/mips/mm/c-r4k.c linux-2.6.24.new/arch/mips/mm/c-r4k.c
---- linux-2.6.24/arch/mips/mm/c-r4k.c 2008-01-24 23:58:37.000000000 +0100
-+++ linux-2.6.24.new/arch/mips/mm/c-r4k.c 2008-02-13 16:24:29.000000000 +0100
-@@ -878,6 +878,13 @@
+Index: linux-2.6.24.7/arch/mips/mm/c-r4k.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/mips/mm/c-r4k.c
++++ linux-2.6.24.7/arch/mips/mm/c-r4k.c
+@@ -878,6 +878,13 @@ static void __init probe_pcache(void)
if (!(config & MIPS_CONF_M))
panic("Don't know how to probe P-caches on this cpu.");
/*
* So we seem to be a MIPS32 or MIPS64 CPU
* So let's probe the I-cache ...
-diff -urN linux-2.6.24/arch/mips/mm/tlbex.c linux-2.6.24.new/arch/mips/mm/tlbex.c
---- linux-2.6.24/arch/mips/mm/tlbex.c 2008-01-24 23:58:37.000000000 +0100
-+++ linux-2.6.24.new/arch/mips/mm/tlbex.c 2008-02-13 16:25:08.000000000 +0100
-@@ -910,6 +910,10 @@
+Index: linux-2.6.24.7/arch/mips/mm/tlbex.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/mips/mm/tlbex.c
++++ linux-2.6.24.7/arch/mips/mm/tlbex.c
+@@ -909,6 +909,10 @@ static __init void build_tlb_write_entry
case CPU_25KF:
case CPU_BCM3302:
case CPU_BCM4710:
case CPU_LOONGSON2:
if (m4kc_tlbp_war())
i_nop(p);
-diff -urN linux-2.6.24/arch/mips/pci/Makefile linux-2.6.24.new/arch/mips/pci/Makefile
---- linux-2.6.24/arch/mips/pci/Makefile 2008-01-24 23:58:37.000000000 +0100
-+++ linux-2.6.24.new/arch/mips/pci/Makefile 2008-02-13 16:27:33.000000000 +0100
-@@ -48,3 +48,4 @@
+Index: linux-2.6.24.7/arch/mips/pci/Makefile
+===================================================================
+--- linux-2.6.24.7.orig/arch/mips/pci/Makefile
++++ linux-2.6.24.7/arch/mips/pci/Makefile
+@@ -48,3 +48,4 @@ obj-$(CONFIG_TOSHIBA_RBTX4938) += fixup-
obj-$(CONFIG_VICTOR_MPC30X) += fixup-mpc30x.o
obj-$(CONFIG_ZAO_CAPCELLA) += fixup-capcella.o
obj-$(CONFIG_WR_PPMC) += fixup-wrppmc.o
+obj-$(CONFIG_BCM963XX) += fixup-bcm96348.o pci-bcm96348.o ops-bcm96348.o
-diff -urN linux-2.6.24/include/asm-mips/bootinfo.h linux-2.6.24.new/include/asm-mips/bootinfo.h
---- linux-2.6.24/include/asm-mips/bootinfo.h 2008-01-24 23:58:37.000000000 +0100
-+++ linux-2.6.24.new/include/asm-mips/bootinfo.h 2008-02-13 16:26:05.000000000 +0100
+Index: linux-2.6.24.7/include/asm-mips/bootinfo.h
+===================================================================
+--- linux-2.6.24.7.orig/include/asm-mips/bootinfo.h
++++ linux-2.6.24.7/include/asm-mips/bootinfo.h
@@ -197,6 +197,10 @@
*/
#define MACH_GROUP_BRCM 23 /* Broadcom */
#define CL_SIZE COMMAND_LINE_SIZE
-diff -urN linux-2.6.24/include/asm-mips/cpu.h linux-2.6.24.new/include/asm-mips/cpu.h
---- linux-2.6.24/include/asm-mips/cpu.h 2008-01-24 23:58:37.000000000 +0100
-+++ linux-2.6.24.new/include/asm-mips/cpu.h 2008-02-13 16:27:13.000000000 +0100
+Index: linux-2.6.24.7/include/asm-mips/cpu.h
+===================================================================
+--- linux-2.6.24.7.orig/include/asm-mips/cpu.h
++++ linux-2.6.24.7/include/asm-mips/cpu.h
@@ -111,6 +111,10 @@
#define PRID_IMP_BCM4710 0x4000
/*
* Definitions for 7:0 on legacy processors
-@@ -196,7 +200,8 @@
+@@ -196,7 +200,8 @@ enum cpu_type_enum {
*/
CPU_4KC, CPU_4KEC, CPU_4KSC, CPU_24K, CPU_34K, CPU_74K, CPU_AU1000,
CPU_AU1100, CPU_AU1200, CPU_AU1500, CPU_AU1550, CPU_PR4450,
-diff -urN linux-2.6.24/drivers/serial/Makefile linux-2.6.24.new/drivers/serial/Makefile
---- linux-2.6.24/drivers/serial/Makefile 2008-02-13 16:44:47.000000000 +0100
-+++ linux-2.6.24.new/drivers/serial/Makefile 2008-02-13 16:45:12.000000000 +0100
-@@ -65,3 +65,4 @@
+Index: linux-2.6.24.7/drivers/serial/Makefile
+===================================================================
+--- linux-2.6.24.7.orig/drivers/serial/Makefile
++++ linux-2.6.24.7/drivers/serial/Makefile
+@@ -65,3 +65,4 @@ obj-$(CONFIG_SERIAL_NETX) += netx-serial
obj-$(CONFIG_SERIAL_OF_PLATFORM) += of_serial.o
obj-$(CONFIG_SERIAL_KS8695) += serial_ks8695.o
obj-$(CONFIG_SERIAL_QE) += ucc_uart.o
-diff -urN linux-2.6.19/drivers/mtd/maps/Kconfig linux-2.6.19.new/drivers/mtd/maps/Kconfig
---- linux-2.6.19/drivers/mtd/maps/Kconfig 2006-11-29 22:57:37.000000000 +0100
-+++ linux-2.6.19.new/drivers/mtd/maps/Kconfig 2006-12-18 17:21:07.000000000 +0100
-@@ -283,6 +283,13 @@
+Index: linux-2.6.24.7/drivers/mtd/maps/Kconfig
+===================================================================
+--- linux-2.6.24.7.orig/drivers/mtd/maps/Kconfig
++++ linux-2.6.24.7/drivers/mtd/maps/Kconfig
+@@ -269,6 +269,13 @@ config MTD_MTX1
Flash memory access on 4G Systems MTX-1 Board. If you have one of
these boards and would like to use the flash chips on it, say 'Y'.
config MTD_DILNETPC
tristate "CFI Flash device mapped on DIL/Net PC"
depends on X86 && MTD_CONCAT && MTD_PARTITIONS && MTD_CFI_INTELEXT
-diff -urN linux-2.6.19/drivers/mtd/redboot.c linux-2.6.19.new/drivers/mtd/redboot.c
---- linux-2.6.19/drivers/mtd/redboot.c 2006-12-18 17:09:14.000000000 +0100
-+++ linux-2.6.19.new/drivers/mtd/redboot.c 2006-12-18 17:14:26.000000000 +0100
-@@ -39,7 +39,7 @@
+Index: linux-2.6.24.7/drivers/mtd/redboot.c
+===================================================================
+--- linux-2.6.24.7.orig/drivers/mtd/redboot.c
++++ linux-2.6.24.7/drivers/mtd/redboot.c
+@@ -39,7 +39,7 @@ static inline int redboot_checksum(struc
return 1;
}
struct mtd_partition **pparts,
unsigned long fis_origin)
{
-@@ -146,6 +146,14 @@
+@@ -146,6 +146,14 @@ static int parse_redboot_partitions(stru
goto out;
}
for (i = 0; i < numslots; i++) {
struct fis_list *new_fl, **prev;
-@@ -168,9 +176,8 @@
+@@ -168,9 +176,8 @@ static int parse_redboot_partitions(stru
new_fl->img = &buf[i];
if (fis_origin) {
buf[i].flash_base -= fis_origin;
/* I'm sure the JFFS2 code has done me permanent damage.
* I now think the following is _normal_
-diff -urN linux-2.6.24/drivers/mtd/maps/Makefile linux-2.6.24.new/drivers/mtd/maps/Makefile
---- linux-2.6.24/drivers/mtd/maps/Makefile 2008-01-24 23:58:37.000000000 +0100
-+++ linux-2.6.24.new/drivers/mtd/maps/Makefile 2008-02-13 16:30:02.000000000 +0100
-@@ -69,3 +69,4 @@
+Index: linux-2.6.24.7/drivers/mtd/maps/Makefile
+===================================================================
+--- linux-2.6.24.7.orig/drivers/mtd/maps/Makefile
++++ linux-2.6.24.7/drivers/mtd/maps/Makefile
+@@ -69,3 +69,4 @@ obj-$(CONFIG_MTD_PLATRAM) += plat-ram.o
obj-$(CONFIG_MTD_OMAP_NOR) += omap_nor.o
obj-$(CONFIG_MTD_MTX1) += mtx-1_flash.o
obj-$(CONFIG_MTD_INTEL_VR_NOR) += intel_vr_nor.o