Separate mm initialization from enablement.

The configuration is static so it doesn't matter where it is originally
calculated. There were previously multiple paths for enablement, one
being implicit in initialization, so this splits them apart.

Bug: 139269163
Change-Id: Ic82c351b6e84b7d46e79f5886b39d07e53e6fde6
diff --git a/src/main.c b/src/main.c
index fc6cc55..3ccf6d6 100644
--- a/src/main.c
+++ b/src/main.c
@@ -66,6 +66,8 @@
 		panic("mm_init failed");
 	}
 
+	mm_cpu_init();
+
 	/* Enable locks now that mm is initialised. */
 	dlog_enable_lock();
 	mpool_enable_locks();
@@ -150,10 +152,8 @@
 	if (cpu_index(c) == 0 && !inited) {
 		inited = true;
 		one_time_init();
-	}
-
-	if (!mm_cpu_init()) {
-		panic("mm_cpu_init failed");
+	} else {
+		mm_cpu_init();
 	}
 
 	vcpu = vm_get_vcpu(vm_find(HF_PRIMARY_VM_ID), cpu_index(c));