powerpc/32s: Make Hash var static
authorChristophe Leroy <christophe.leroy@csgroup.eu>
Thu, 22 Oct 2020 06:29:31 +0000 (06:29 +0000)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 9 Dec 2020 05:46:54 +0000 (16:46 +1100)
Hash var is used only locally in mmu.c now.

No need to set it in head_32.S anymore.

Make it static and initialises it to the early hash table.

Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/786c82a89cdfdaabb32b72a44f7c312fa81d192b.1603348103.git.christophe.leroy@csgroup.eu
arch/powerpc/kernel/head_book3s_32.S
arch/powerpc/mm/book3s32/mmu.c
arch/powerpc/mm/mmu_decl.h

index a93c75c..b102eca 100644 (file)
@@ -155,10 +155,8 @@ __after_mmu_off:
 
        bl      initial_bats
        bl      load_segment_registers
-BEGIN_MMU_FTR_SECTION
        bl      reloc_offset
        bl      early_hash_table
-END_MMU_FTR_SECTION_IFSET(MMU_FTR_HPTE_TABLE)
 #if defined(CONFIG_BOOTX_TEXT)
        bl      setup_disp_bat
 #endif
@@ -922,9 +920,6 @@ early_hash_table:
        lis     r6, early_hash - PAGE_OFFSET@h
        ori     r6, r6, 3       /* 256kB table */
        mtspr   SPRN_SDR1, r6
-       lis     r6, early_hash@h
-       addis   r3, r3, Hash@ha
-       stw     r6, Hash@l(r3)
        blr
 
 load_up_mmu:
index 98d0869..4e01b7e 100644 (file)
@@ -33,7 +33,7 @@
 
 u8 __initdata early_hash[SZ_256K] __aligned(SZ_256K) = {0};
 
-struct hash_pte *Hash;
+static struct hash_pte *Hash = (struct hash_pte *)early_hash;
 static unsigned long Hash_size, Hash_mask;
 unsigned long _SDR1;
 static unsigned int hash_mb, hash_mb2;
index 0ad6d47..8326eab 100644 (file)
@@ -99,7 +99,6 @@ extern int __map_without_bats;
 extern unsigned int rtas_data, rtas_size;
 
 struct hash_pte;
-extern struct hash_pte *Hash;
 extern u8 early_hash[];
 
 #endif /* CONFIG_PPC32 */