diff options
author | Felix Fietkau <nbd@openwrt.org> | 2010-05-07 11:48:15 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2010-05-07 11:48:15 +0000 |
commit | 84407eb7cb30db11ee4c45e715f4712ecab3ab18 (patch) | |
tree | ef1ee54e7289caf5594923ad9c7d2988705bd49a | |
parent | 290c073d25ff02010c8ae6d6cfea505ef890515f (diff) | |
download | upstream-84407eb7cb30db11ee4c45e715f4712ecab3ab18.tar.gz upstream-84407eb7cb30db11ee4c45e715f4712ecab3ab18.tar.bz2 upstream-84407eb7cb30db11ee4c45e715f4712ecab3ab18.zip |
brcm47xx: adjust the brcm4710 cache workaround code so that it does not break bcm4716 (patch by Bernhard Loos)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21395 3c298f89-4303-0410-b956-a3cf2f4a3e73
6 files changed, 9 insertions, 9 deletions
diff --git a/target/linux/brcm47xx/patches-2.6.32/150-cpu_fixes.patch b/target/linux/brcm47xx/patches-2.6.32/150-cpu_fixes.patch index e6ac4c8e8a..16bfd7fc6c 100644 --- a/target/linux/brcm47xx/patches-2.6.32/150-cpu_fixes.patch +++ b/target/linux/brcm47xx/patches-2.6.32/150-cpu_fixes.patch @@ -7,7 +7,7 @@ +#ifdef CONFIG_BCM47XX +#include <asm/paccess.h> +#include <linux/ssb/ssb.h> -+#define BCM4710_DUMMY_RREG() ((void) *((u8 *) KSEG1ADDR(SSB_ENUM_BASE + SSB_IMSTATE))) ++#define BCM4710_DUMMY_RREG() ((void) *((u8 *) KSEG1ADDR(SSB_ENUM_BASE))) + +#define BCM4710_FILL_TLB(addr) (*(volatile unsigned long *)(addr)) +#define BCM4710_PROTECTED_FILL_TLB(addr) ({ unsigned long x; get_dbe(x, (volatile unsigned long *)(addr)); }) diff --git a/target/linux/brcm47xx/patches-2.6.32/920-cache-wround.patch b/target/linux/brcm47xx/patches-2.6.32/920-cache-wround.patch index 688d3e1389..7b889d8995 100644 --- a/target/linux/brcm47xx/patches-2.6.32/920-cache-wround.patch +++ b/target/linux/brcm47xx/patches-2.6.32/920-cache-wround.patch @@ -4,11 +4,11 @@ #ifdef CONFIG_BCM47XX #include <asm/paccess.h> #include <linux/ssb/ssb.h> --#define BCM4710_DUMMY_RREG() ((void) *((u8 *) KSEG1ADDR(SSB_ENUM_BASE + SSB_IMSTATE))) +-#define BCM4710_DUMMY_RREG() ((void) *((u8 *) KSEG1ADDR(SSB_ENUM_BASE))) +#define BCM4710_DUMMY_RREG() bcm4710_dummy_rreg() + +static inline unsigned long bcm4710_dummy_rreg(void) { -+ return (*(volatile unsigned long *)(KSEG1ADDR(SSB_ENUM_BASE + SSB_IMSTATE))); ++ return (*(volatile unsigned long *)(KSEG1ADDR(SSB_ENUM_BASE))); +} + +#define BCM4710_FILL_TLB(addr) bcm4710_fill_tlb((void*)(addr)) diff --git a/target/linux/brcm47xx/patches-2.6.33/150-cpu_fixes.patch b/target/linux/brcm47xx/patches-2.6.33/150-cpu_fixes.patch index 4198614441..c073b3663a 100644 --- a/target/linux/brcm47xx/patches-2.6.33/150-cpu_fixes.patch +++ b/target/linux/brcm47xx/patches-2.6.33/150-cpu_fixes.patch @@ -7,7 +7,7 @@ +#ifdef CONFIG_BCM47XX +#include <asm/paccess.h> +#include <linux/ssb/ssb.h> -+#define BCM4710_DUMMY_RREG() ((void) *((u8 *) KSEG1ADDR(SSB_ENUM_BASE + SSB_IMSTATE))) ++#define BCM4710_DUMMY_RREG() ((void) *((u8 *) KSEG1ADDR(SSB_ENUM_BASE))) + +#define BCM4710_FILL_TLB(addr) (*(volatile unsigned long *)(addr)) +#define BCM4710_PROTECTED_FILL_TLB(addr) ({ unsigned long x; get_dbe(x, (volatile unsigned long *)(addr)); }) diff --git a/target/linux/brcm47xx/patches-2.6.33/920-cache-wround.patch b/target/linux/brcm47xx/patches-2.6.33/920-cache-wround.patch index 3edf04bf05..c5441f9747 100644 --- a/target/linux/brcm47xx/patches-2.6.33/920-cache-wround.patch +++ b/target/linux/brcm47xx/patches-2.6.33/920-cache-wround.patch @@ -4,11 +4,11 @@ #ifdef CONFIG_BCM47XX #include <asm/paccess.h> #include <linux/ssb/ssb.h> --#define BCM4710_DUMMY_RREG() ((void) *((u8 *) KSEG1ADDR(SSB_ENUM_BASE + SSB_IMSTATE))) +-#define BCM4710_DUMMY_RREG() ((void) *((u8 *) KSEG1ADDR(SSB_ENUM_BASE))) +#define BCM4710_DUMMY_RREG() bcm4710_dummy_rreg() + +static inline unsigned long bcm4710_dummy_rreg(void) { -+ return (*(volatile unsigned long *)(KSEG1ADDR(SSB_ENUM_BASE + SSB_IMSTATE))); ++ return (*(volatile unsigned long *)(KSEG1ADDR(SSB_ENUM_BASE))); +} + +#define BCM4710_FILL_TLB(addr) bcm4710_fill_tlb((void*)(addr)) diff --git a/target/linux/brcm47xx/patches-2.6.34/150-cpu_fixes.patch b/target/linux/brcm47xx/patches-2.6.34/150-cpu_fixes.patch index 56fdbbc62b..f9fb25e71f 100644 --- a/target/linux/brcm47xx/patches-2.6.34/150-cpu_fixes.patch +++ b/target/linux/brcm47xx/patches-2.6.34/150-cpu_fixes.patch @@ -7,7 +7,7 @@ +#ifdef CONFIG_BCM47XX +#include <asm/paccess.h> +#include <linux/ssb/ssb.h> -+#define BCM4710_DUMMY_RREG() ((void) *((u8 *) KSEG1ADDR(SSB_ENUM_BASE + SSB_IMSTATE))) ++#define BCM4710_DUMMY_RREG() ((void) *((u8 *) KSEG1ADDR(SSB_ENUM_BASE))) + +#define BCM4710_FILL_TLB(addr) (*(volatile unsigned long *)(addr)) +#define BCM4710_PROTECTED_FILL_TLB(addr) ({ unsigned long x; get_dbe(x, (volatile unsigned long *)(addr)); }) diff --git a/target/linux/brcm47xx/patches-2.6.34/920-cache-wround.patch b/target/linux/brcm47xx/patches-2.6.34/920-cache-wround.patch index a308335b54..6291a222d0 100644 --- a/target/linux/brcm47xx/patches-2.6.34/920-cache-wround.patch +++ b/target/linux/brcm47xx/patches-2.6.34/920-cache-wround.patch @@ -4,11 +4,11 @@ #ifdef CONFIG_BCM47XX #include <asm/paccess.h> #include <linux/ssb/ssb.h> --#define BCM4710_DUMMY_RREG() ((void) *((u8 *) KSEG1ADDR(SSB_ENUM_BASE + SSB_IMSTATE))) +-#define BCM4710_DUMMY_RREG() ((void) *((u8 *) KSEG1ADDR(SSB_ENUM_BASE))) +#define BCM4710_DUMMY_RREG() bcm4710_dummy_rreg() + +static inline unsigned long bcm4710_dummy_rreg(void) { -+ return (*(volatile unsigned long *)(KSEG1ADDR(SSB_ENUM_BASE + SSB_IMSTATE))); ++ return (*(volatile unsigned long *)(KSEG1ADDR(SSB_ENUM_BASE))); +} + +#define BCM4710_FILL_TLB(addr) bcm4710_fill_tlb((void*)(addr)) |