提交 73b341ef 编写于 作者: M Michael Ellerman

powerpc/mm: Drop CONFIG_PPC_HAS_HASH_64K

The relation between CONFIG_PPC_HAS_HASH_64K and CONFIG_PPC_64K_PAGES is
painfully complicated.

But if we rearrange it enough we can see that PPC_HAS_HASH_64K
essentially depends on PPC_STD_MMU_64 && PPC_64K_PAGES.

We can then notice that PPC_HAS_HASH_64K is used in files that are only
built for PPC_STD_MMU_64, meaning it's equivalent to PPC_64K_PAGES.

So replace all uses and drop it.
Signed-off-by: NMichael Ellerman <mpe@ellerman.id.au>
Reviewed-by: NAneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
上级 55f8b5b8
...@@ -519,11 +519,6 @@ config NODES_SPAN_OTHER_NODES ...@@ -519,11 +519,6 @@ config NODES_SPAN_OTHER_NODES
def_bool y def_bool y
depends on NEED_MULTIPLE_NODES depends on NEED_MULTIPLE_NODES
config PPC_HAS_HASH_64K
bool
depends on PPC64
default n
config STDBINUTILS config STDBINUTILS
bool "Using standard binutils settings" bool "Using standard binutils settings"
depends on 44x depends on 44x
...@@ -571,7 +566,6 @@ config PPC_16K_PAGES ...@@ -571,7 +566,6 @@ config PPC_16K_PAGES
config PPC_64K_PAGES config PPC_64K_PAGES
bool "64k page size" bool "64k page size"
depends on !PPC_FSL_BOOK3E && (44x || PPC_STD_MMU_64 || PPC_BOOK3E_64) depends on !PPC_FSL_BOOK3E && (44x || PPC_STD_MMU_64 || PPC_BOOK3E_64)
select PPC_HAS_HASH_64K if PPC_STD_MMU_64
config PPC_256K_PAGES config PPC_256K_PAGES
bool "256k page size" bool "256k page size"
......
...@@ -701,7 +701,7 @@ htab_pte_insert_failure: ...@@ -701,7 +701,7 @@ htab_pte_insert_failure:
#endif /* CONFIG_PPC_64K_PAGES */ #endif /* CONFIG_PPC_64K_PAGES */
#ifdef CONFIG_PPC_HAS_HASH_64K #ifdef CONFIG_PPC_64K_PAGES
/***************************************************************************** /*****************************************************************************
* * * *
...@@ -993,7 +993,7 @@ ht64_pte_insert_failure: ...@@ -993,7 +993,7 @@ ht64_pte_insert_failure:
b ht64_bail b ht64_bail
#endif /* CONFIG_PPC_HAS_HASH_64K */ #endif /* CONFIG_PPC_64K_PAGES */
/***************************************************************************** /*****************************************************************************
......
...@@ -640,7 +640,7 @@ extern u32 ht64_call_hpte_updatepp[]; ...@@ -640,7 +640,7 @@ extern u32 ht64_call_hpte_updatepp[];
static void __init htab_finish_init(void) static void __init htab_finish_init(void)
{ {
#ifdef CONFIG_PPC_HAS_HASH_64K #ifdef CONFIG_PPC_64K_PAGES
patch_branch(ht64_call_hpte_insert1, patch_branch(ht64_call_hpte_insert1,
ppc_function_entry(ppc_md.hpte_insert), ppc_function_entry(ppc_md.hpte_insert),
BRANCH_SET_LINK); BRANCH_SET_LINK);
...@@ -653,7 +653,7 @@ static void __init htab_finish_init(void) ...@@ -653,7 +653,7 @@ static void __init htab_finish_init(void)
patch_branch(ht64_call_hpte_updatepp, patch_branch(ht64_call_hpte_updatepp,
ppc_function_entry(ppc_md.hpte_updatepp), ppc_function_entry(ppc_md.hpte_updatepp),
BRANCH_SET_LINK); BRANCH_SET_LINK);
#endif /* CONFIG_PPC_HAS_HASH_64K */ #endif /* CONFIG_PPC_64K_PAGES */
patch_branch(htab_call_hpte_insert1, patch_branch(htab_call_hpte_insert1,
ppc_function_entry(ppc_md.hpte_insert), ppc_function_entry(ppc_md.hpte_insert),
...@@ -1151,12 +1151,12 @@ int hash_page_mm(struct mm_struct *mm, unsigned long ea, ...@@ -1151,12 +1151,12 @@ int hash_page_mm(struct mm_struct *mm, unsigned long ea,
check_paca_psize(ea, mm, psize, user_region); check_paca_psize(ea, mm, psize, user_region);
#endif /* CONFIG_PPC_64K_PAGES */ #endif /* CONFIG_PPC_64K_PAGES */
#ifdef CONFIG_PPC_HAS_HASH_64K #ifdef CONFIG_PPC_64K_PAGES
if (psize == MMU_PAGE_64K) if (psize == MMU_PAGE_64K)
rc = __hash_page_64K(ea, access, vsid, ptep, trap, rc = __hash_page_64K(ea, access, vsid, ptep, trap,
flags, ssize); flags, ssize);
else else
#endif /* CONFIG_PPC_HAS_HASH_64K */ #endif /* CONFIG_PPC_64K_PAGES */
{ {
int spp = subpage_protection(mm, ea); int spp = subpage_protection(mm, ea);
if (access & spp) if (access & spp)
...@@ -1264,12 +1264,12 @@ void hash_preload(struct mm_struct *mm, unsigned long ea, ...@@ -1264,12 +1264,12 @@ void hash_preload(struct mm_struct *mm, unsigned long ea,
update_flags |= HPTE_LOCAL_UPDATE; update_flags |= HPTE_LOCAL_UPDATE;
/* Hash it in */ /* Hash it in */
#ifdef CONFIG_PPC_HAS_HASH_64K #ifdef CONFIG_PPC_64K_PAGES
if (mm->context.user_psize == MMU_PAGE_64K) if (mm->context.user_psize == MMU_PAGE_64K)
rc = __hash_page_64K(ea, access, vsid, ptep, trap, rc = __hash_page_64K(ea, access, vsid, ptep, trap,
update_flags, ssize); update_flags, ssize);
else else
#endif /* CONFIG_PPC_HAS_HASH_64K */ #endif /* CONFIG_PPC_64K_PAGES */
rc = __hash_page_4K(ea, access, vsid, ptep, trap, update_flags, rc = __hash_page_4K(ea, access, vsid, ptep, trap, update_flags,
ssize, subpage_protection(mm, ea)); ssize, subpage_protection(mm, ea));
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册