powerpc/mm/radix: Update PTCR on secondary CPUs
authorAneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Fri, 29 Apr 2016 13:26:12 +0000 (23:26 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 11 May 2016 11:53:48 +0000 (21:53 +1000)
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/mm/hash_utils_64.c

index e6b53cd..faaadef 100644 (file)
@@ -896,9 +896,13 @@ void __init hash__early_init_mmu(void)
 void hash__early_init_mmu_secondary(void)
 {
        /* Initialize hash table for that CPU */
-       if (!firmware_has_feature(FW_FEATURE_LPAR))
-               mtspr(SPRN_SDR1, _SDR1);
-
+       if (!firmware_has_feature(FW_FEATURE_LPAR)) {
+               if (!cpu_has_feature(CPU_FTR_ARCH_300))
+                       mtspr(SPRN_SDR1, _SDR1);
+               else
+                       mtspr(SPRN_PTCR,
+                             __pa(partition_tb) | (PATB_SIZE_SHIFT - 12));
+       }
        /* Initialize SLB */
        slb_initialize();
 }