Author: andrew
Date: Thu Oct 13 09:06:29 2016
New Revision: 307210
URL: https://svnweb.freebsd.org/changeset/base/307210

Log:
  Move printing the AArch64 ID registers to a new SYSINIT, the previous
  location only prints them when booting on SMP with multiple cores.
  
  MFC after:    1 week
  Sponsored by: DARPA, AFRL

Modified:
  head/sys/arm64/arm64/identcpu.c
  head/sys/arm64/arm64/mp_machdep.c

Modified: head/sys/arm64/arm64/identcpu.c
==============================================================================
--- head/sys/arm64/arm64/identcpu.c     Thu Oct 13 09:00:44 2016        
(r307209)
+++ head/sys/arm64/arm64/identcpu.c     Thu Oct 13 09:06:29 2016        
(r307210)
@@ -33,7 +33,9 @@
 __FBSDID("$FreeBSD$");
 
 #include <sys/param.h>
+#include <sys/kernel.h>
 #include <sys/pcpu.h>
+#include <sys/smp.h>
 #include <sys/sysctl.h>
 #include <sys/systm.h>
 
@@ -151,6 +153,17 @@ const struct cpu_implementers cpu_implem
        CPU_IMPLEMENTER_NONE,
 };
 
+static void
+identify_cpu_sysinit(void *dummy __unused)
+{
+       int cpu;
+
+       CPU_FOREACH(cpu) {
+               print_cpu_features(cpu);
+       }
+}
+SYSINIT(idenrity_cpu, SI_SUB_SMP, SI_ORDER_ANY, identify_cpu_sysinit, NULL);
+
 void
 print_cpu_features(u_int cpu)
 {

Modified: head/sys/arm64/arm64/mp_machdep.c
==============================================================================
--- head/sys/arm64/arm64/mp_machdep.c   Thu Oct 13 09:00:44 2016        
(r307209)
+++ head/sys/arm64/arm64/mp_machdep.c   Thu Oct 13 09:06:29 2016        
(r307210)
@@ -201,7 +201,7 @@ arm64_cpu_attach(device_t dev)
 static void
 release_aps(void *dummy __unused)
 {
-       int cpu, i;
+       int i;
 
        intr_pic_ipi_setup(IPI_AST, "ast", ipi_ast, NULL);
        intr_pic_ipi_setup(IPI_PREEMPT, "preempt", ipi_preempt, NULL);
@@ -217,14 +217,8 @@ release_aps(void *dummy __unused)
        printf("Release APs\n");
 
        for (i = 0; i < 2000; i++) {
-               if (smp_started) {
-                       for (cpu = 0; cpu <= mp_maxid; cpu++) {
-                               if (CPU_ABSENT(cpu))
-                                       continue;
-                               print_cpu_features(cpu);
-                       }
+               if (smp_started)
                        return;
-               }
                DELAY(1000);
        }
 
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to