linux/brcm47xx: Broadcom BCM4710 does not belong in the BMIPS4KC family.
authorAlexandros C. Couloumbis <alex@ozo.com>
Tue, 23 Nov 2010 14:08:41 +0000 (14:08 +0000)
committerAlexandros C. Couloumbis <alex@ozo.com>
Tue, 23 Nov 2010 14:08:41 +0000 (14:08 +0000)
SVN-Revision: 24112

target/linux/brcm47xx/patches-2.6.37/150-cpu_fixes.patch
target/linux/brcm47xx/patches-2.6.37/920-cache-wround.patch

index 18d28665aba177e70c62feffc08092859dac3908..d791c7a1fb448161b793904a66982e8d99bc9e22 100644 (file)
  
 +      /* Check if special workarounds are required */
 +#ifdef CONFIG_BCM47XX
-+      if (current_cpu_data.cputype == CPU_BMIPS4KC && (current_cpu_data.processor_id & 0xff) == 0) {
++      if (current_cpu_data.cputype == CPU_BCM4710 && (current_cpu_data.processor_id & 0xff) == 0) {
 +              printk("Enabling BCM4710A0 cache workarounds.\n");
 +              bcm4710 = 1;
 +      } else
index d9866dc9e42d60dfbbf11d3cfec511fd3b016338..fb3dd60962ed232140ffc61defa1b20dfc6769d5 100644 (file)
@@ -34,7 +34,7 @@
  
 --- a/arch/mips/mm/tlbex.c
 +++ b/arch/mips/mm/tlbex.c
-@@ -711,6 +711,9 @@ build_get_pgde32(u32 **p, unsigned int t
+@@ -712,6 +712,9 @@ build_get_pgde32(u32 **p, unsigned int t
  #endif
        uasm_i_addu(p, ptr, tmp, ptr);
  #else
@@ -44,7 +44,7 @@
        UASM_i_LA_mostly(p, ptr, pgdc);
  #endif
        uasm_i_mfc0(p, tmp, C0_BADVADDR); /* get faulting address */
-@@ -872,12 +875,12 @@ static void __cpuinit build_r4000_tlb_re
+@@ -873,12 +876,12 @@ static void __cpuinit build_r4000_tlb_re
                /* No need for uasm_i_nop */
        }
  
@@ -60,7 +60,7 @@
        build_get_pgde32(&p, K0, K1); /* get pgd in K1 */
  #endif
  
-@@ -889,6 +892,9 @@ static void __cpuinit build_r4000_tlb_re
+@@ -890,6 +893,9 @@ static void __cpuinit build_r4000_tlb_re
        build_update_entries(&p, K0, K1);
        build_tlb_write_entry(&p, &l, &r, tlb_random);
        uasm_l_leave(&l, p);
@@ -70,7 +70,7 @@
        uasm_i_eret(&p); /* return from trap */
  
  #ifdef CONFIG_HUGETLB_PAGE
-@@ -1325,12 +1331,12 @@ build_r4000_tlbchange_handler_head(u32 *
+@@ -1326,12 +1332,12 @@ build_r4000_tlbchange_handler_head(u32 *
                                   struct uasm_reloc **r, unsigned int pte,
                                   unsigned int ptr)
  {
@@ -86,7 +86,7 @@
        build_get_pgde32(p, pte, ptr); /* get pgd in ptr */
  #endif
  
-@@ -1367,6 +1373,9 @@ build_r4000_tlbchange_handler_tail(u32 *
+@@ -1368,6 +1374,9 @@ build_r4000_tlbchange_handler_tail(u32 *
        build_update_entries(p, tmp, ptr);
        build_tlb_write_entry(p, l, r, tlb_indexed);
        uasm_l_leave(l, *p);