diff options
author | Arnd Bergmann <arnd@arndb.de> | 2018-03-07 21:46:52 +0100 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2018-03-09 23:20:01 +0100 |
commit | b8c9c8f0190f4004d3d4364edb2dea5978dfc824 (patch) | |
tree | 8bc377829b6452cb3b9c17253916c64e93cb695f /arch/score/include/asm/pgalloc.h | |
parent | arch: remove m32r port (diff) | |
download | wireguard-linux-b8c9c8f0190f4004d3d4364edb2dea5978dfc824.tar.xz wireguard-linux-b8c9c8f0190f4004d3d4364edb2dea5978dfc824.zip |
arch: remove score port
The Sunplus S+core architecture was added in 2009 by Chen Liqin,
who has been co-maintaining it with Lennox Wu <lennox.wu@gmail.com>
since then, but after they both left the company, nobody else has shown
any interest in the port and it has seen almost no activity other than
tree-wide changes.
The gcc port was removed a few years ago due to the inactivity.
While the sunplus website still advertises products with unspecified
RISC cores that might be S+core based, it's very clear that the Linux
port is completely abandoned at this point.
This removes all files related to the architecture.
Acked-by: Lennox Wu <lennox.wu@gmail.com>
Link: http://www.sunplus.com/
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch/score/include/asm/pgalloc.h')
-rw-r--r-- | arch/score/include/asm/pgalloc.h | 86 |
1 files changed, 0 insertions, 86 deletions
diff --git a/arch/score/include/asm/pgalloc.h b/arch/score/include/asm/pgalloc.h deleted file mode 100644 index 7dfc5c163093..000000000000 --- a/arch/score/include/asm/pgalloc.h +++ /dev/null @@ -1,86 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0 */ -#ifndef _ASM_SCORE_PGALLOC_H -#define _ASM_SCORE_PGALLOC_H - -#include <linux/mm.h> -#include <linux/highmem.h> -static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, - pte_t *pte) -{ - set_pmd(pmd, __pmd((unsigned long)pte)); -} - -static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, - pgtable_t pte) -{ - set_pmd(pmd, __pmd((unsigned long)page_address(pte))); -} - -#define pmd_pgtable(pmd) pmd_page(pmd) - -static inline pgd_t *pgd_alloc(struct mm_struct *mm) -{ - pgd_t *ret, *init; - - ret = (pgd_t *) __get_free_pages(GFP_KERNEL, PGD_ORDER); - if (ret) { - init = pgd_offset(&init_mm, 0UL); - pgd_init((unsigned long)ret); - memcpy(ret + USER_PTRS_PER_PGD, init + USER_PTRS_PER_PGD, - (PTRS_PER_PGD - USER_PTRS_PER_PGD) * sizeof(pgd_t)); - } - - return ret; -} - -static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) -{ - free_pages((unsigned long)pgd, PGD_ORDER); -} - -static inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm, - unsigned long address) -{ - pte_t *pte; - - pte = (pte_t *) __get_free_pages(GFP_KERNEL|__GFP_ZERO, PTE_ORDER); - - return pte; -} - -static inline struct page *pte_alloc_one(struct mm_struct *mm, - unsigned long address) -{ - struct page *pte; - - pte = alloc_pages(GFP_KERNEL, PTE_ORDER); - if (!pte) - return NULL; - clear_highpage(pte); - if (!pgtable_page_ctor(pte)) { - __free_page(pte); - return NULL; - } - return pte; -} - -static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) -{ - free_pages((unsigned long)pte, PTE_ORDER); -} - -static inline void pte_free(struct mm_struct *mm, pgtable_t pte) -{ - pgtable_page_dtor(pte); - __free_pages(pte, PTE_ORDER); -} - -#define __pte_free_tlb(tlb, pte, buf) \ -do { \ - pgtable_page_dtor(pte); \ - tlb_remove_page((tlb), pte); \ -} while (0) - -#define check_pgt_cache() do {} while (0) - -#endif /* _ASM_SCORE_PGALLOC_H */ |