svn commit: r277018 - projects/arm_intrng/sys/arm/arm
Andrew Turner
andrew at FreeBSD.org
Sun Jan 11 19:41:53 UTC 2015
Author: andrew
Date: Sun Jan 11 19:41:52 2015
New Revision: 277018
URL: https://svnweb.freebsd.org/changeset/base/277018
Log:
Restore the non-intrng behaviour to enable IPIs depending on the config.
Modified:
projects/arm_intrng/sys/arm/arm/mp_machdep.c
Modified: projects/arm_intrng/sys/arm/arm/mp_machdep.c
==============================================================================
--- projects/arm_intrng/sys/arm/arm/mp_machdep.c Sun Jan 11 19:28:37 2015 (r277017)
+++ projects/arm_intrng/sys/arm/arm/mp_machdep.c Sun Jan 11 19:41:52 2015 (r277018)
@@ -149,7 +149,9 @@ init_secondary(int cpu)
{
struct pcpu *pc;
uint32_t loop_counter;
+#ifndef ARM_INTRNG
int start = 0, end = 0;
+#endif
cpu_setup(NULL);
setttb(pmap_pa);
@@ -200,6 +202,11 @@ init_secondary(int cpu)
mtx_unlock_spin(&ap_boot_mtx);
/* Enable ipi */
+#ifdef ARM_INTRNG
+ for (int i = 0; i < ARM_IPI_COUNT; i++)
+ arm_unmask_ipi(i);
+#else
+
#ifdef IPI_IRQ_START
start = IPI_IRQ_START;
#ifdef IPI_IRQ_END
@@ -209,12 +216,9 @@ init_secondary(int cpu)
#endif
#endif
- for (int i = 0; i < ARM_IPI_COUNT; i++)
-#ifdef ARM_INTRNG
- arm_unmask_ipi(i);
-#else
+ for (int i = start; i <= end; i++)
arm_unmask_irq(i);
-#endif
+#endif /* !ARM_INTRNG */
enable_interrupts(PSR_I);
loop_counter = 0;
More information about the svn-src-projects
mailing list