Author: loos
Date: Wed May 13 01:48:47 2015
New Revision: 282828
URL: https://svnweb.freebsd.org/changeset/base/282828

Log:
  Fix the SMP initialization on RPi 2 (BCM2836).
  
  Invalidate the CPU cache before start the others CPUs.
  
  Submitted by: Michal Meloun <mel...@miracle.cz>

Modified:
  head/sys/arm/broadcom/bcm2835/bcm2836_mp.c

Modified: head/sys/arm/broadcom/bcm2835/bcm2836_mp.c
==============================================================================
--- head/sys/arm/broadcom/bcm2835/bcm2836_mp.c  Wed May 13 01:10:28 2015        
(r282827)
+++ head/sys/arm/broadcom/bcm2835/bcm2836_mp.c  Wed May 13 01:48:47 2015        
(r282828)
@@ -123,6 +123,8 @@ platform_mp_start_ap(void)
                BSWR4(MBOX3CLR_CORE(i), 0xffffffff);
        }
        wmb();
+       cpu_idcache_wbinv_all();
+       cpu_l2cache_wbinv_all();
 
        /* boot secondary CPUs */
        for (i = 1; i < mp_ncpus; i++) {
@@ -152,9 +154,6 @@ platform_mp_start_ap(void)
                /* recode AP in CPU map */
                CPU_SET(i, &all_cpus);
        }
-
-       cpu_idcache_wbinv_all();
-       cpu_l2cache_wbinv_all();
 }
 
 void
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to