From 64335e3ddbdf9276cf489ff914e3890e0c955fe4 Mon Sep 17 00:00:00 2001
From: Florian Fainelli <florian@openwrt.org>
Date: Tue, 19 Dec 2006 01:40:56 +0000
Subject: [PATCH] More bcm963xx fixes

SVN-Revision: 5852
---
 target/linux/brcm63xx-2.6/config                 |  7 ++-----
 .../brcm63xx-2.6/patches/001-bcm963xx.patch      | 16 +++++-----------
 2 files changed, 7 insertions(+), 16 deletions(-)

diff --git a/target/linux/brcm63xx-2.6/config b/target/linux/brcm63xx-2.6/config
index 8020ce1958..c451b88543 100644
--- a/target/linux/brcm63xx-2.6/config
+++ b/target/linux/brcm63xx-2.6/config
@@ -777,11 +777,8 @@ CONFIG_MTD_OBSOLETE_CHIPS=y
 # Mapping drivers for chip access
 #
 CONFIG_MTD_COMPLEX_MAPPINGS=y
-CONFIG_MTD_PHYSMAP=y
-CONFIG_MTD_PHYSMAP_START=0xBFC00000
-CONFIG_MTD_PHYSMAP_LEN=0x400000
-CONFIG_MTD_PHYSMAP_BANKWIDTH=2
-# CONFIG_MTD_BCM963XX is not set
+# CONFIG_MTD_PHYSMAP is not set
+CONFIG_MTD_BCM963XX=y
 # CONFIG_MTD_CSTM_MIPS_IXX is not set
 # CONFIG_MTD_PCI is not set
 # CONFIG_MTD_PLATRAM is not set
diff --git a/target/linux/brcm63xx-2.6/patches/001-bcm963xx.patch b/target/linux/brcm63xx-2.6/patches/001-bcm963xx.patch
index f7597dcc4e..0af0a7ead4 100644
--- a/target/linux/brcm63xx-2.6/patches/001-bcm963xx.patch
+++ b/target/linux/brcm63xx-2.6/patches/001-bcm963xx.patch
@@ -6899,7 +6899,7 @@ diff -urN linux-2.6.19/arch/mips/bcm963xx/irq.c linux-2.6.19.new/arch/mips/bcm96
 +		irq_desc[i].status = IRQ_DISABLED;
 +		irq_desc[i].action = 0;
 +		irq_desc[i].depth = 1;
-+		irq_desc[i].handler_data = &brcm_irq_type;
++		irq_desc[i].chip = &brcm_irq_type;
 +	}
 +}
 +
@@ -6941,7 +6941,7 @@ diff -urN linux-2.6.19/arch/mips/bcm963xx/irq.c linux-2.6.19.new/arch/mips/bcm96
 +	 * explicitly call BcmHalInterruptEnable or enable_brcm_irq.  This behavior
 +	 * is consistent with interrupt handling on VxWorks.
 +	 */
-+	irq_desc[interruptId].handler_data = &brcm_irq_no_end_type;
++	irq_desc[interruptId].chip = &brcm_irq_no_end_type;
 +
 +	if( interruptId >= INTERNAL_ISR_TABLE_OFFSET )
 +	{
@@ -7297,7 +7297,7 @@ diff -urN linux-2.6.19/arch/mips/bcm963xx/ser_init.c linux-2.6.19.new/arch/mips/
 diff -urN linux-2.6.19/arch/mips/bcm963xx/setup.c linux-2.6.19.new/arch/mips/bcm963xx/setup.c
 --- linux-2.6.19/arch/mips/bcm963xx/setup.c	1970-01-01 01:00:00.000000000 +0100
 +++ linux-2.6.19.new/arch/mips/bcm963xx/setup.c	2006-12-16 18:46:31.000000000 +0100
-@@ -0,0 +1,524 @@
+@@ -0,0 +1,523 @@
 +/*
 +<:copyright-gpl 
 + Copyright 2002 Broadcom Corp. All Rights Reserved. 
@@ -7341,7 +7341,6 @@ diff -urN linux-2.6.19/arch/mips/bcm963xx/setup.c linux-2.6.19.new/arch/mips/bcm
 +#include <asm/gdb-stub.h>
 +
 +extern void brcm_time_init(void);
-+extern void brcm_timer_setup(struct irqaction *irq);
 +extern unsigned long getMemorySize(void);
 +
 +#if defined(CONFIG_BCM96348) && defined(CONFIG_PCI)
@@ -7831,7 +7830,7 @@ diff -urN linux-2.6.19/arch/mips/bcm963xx/softdsl/AdslCoreDefs.h linux-2.6.19.ne
 diff -urN linux-2.6.19/arch/mips/bcm963xx/time.c linux-2.6.19.new/arch/mips/bcm963xx/time.c
 --- linux-2.6.19/arch/mips/bcm963xx/time.c	1970-01-01 01:00:00.000000000 +0100
 +++ linux-2.6.19.new/arch/mips/bcm963xx/time.c	2006-12-16 18:46:31.000000000 +0100
-@@ -0,0 +1,119 @@
+@@ -0,0 +1,114 @@
 +/*
 +<:copyright-gpl
 + Copyright 2004 Broadcom Corp. All Rights Reserved.
@@ -7940,17 +7939,12 @@ diff -urN linux-2.6.19/arch/mips/bcm963xx/time.c linux-2.6.19.new/arch/mips/bcm9
 +}
 +
 +
-+void __init brcm_timer_setup(struct irqaction *irq)
++void __init plat_timer_setup(struct irqaction *irq)
 +{
 +	r4k_cur = (read_c0_count() + r4k_offset);
 +	write_c0_compare(r4k_cur);
 +	set_c0_status(IE_IRQ5);
 +}
-+
-+void __init plat_timer_setup(struct irqaction *irq)
-+{
-+       brcm_timer_setup(irq);
-+}
 diff -urN linux-2.6.19/arch/mips/kernel/cpu-probe.c linux-2.6.19.new/arch/mips/kernel/cpu-probe.c
 --- linux-2.6.19/arch/mips/kernel/cpu-probe.c	2006-11-29 22:57:37.000000000 +0100
 +++ linux-2.6.19.new/arch/mips/kernel/cpu-probe.c	2006-12-16 18:46:31.000000000 +0100
-- 
2.30.2