Viewing file: cpu-single.h (1.04 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/* SPDX-License-Identifier: GPL-2.0-only */ /* * linux/arch/unicore32/include/asm/cpu-single.h * * Code specific to PKUnity SoC and UniCore ISA * * Copyright (C) 2001-2010 GUAN Xue-tao */ #ifndef __UNICORE_CPU_SINGLE_H__ #define __UNICORE_CPU_SINGLE_H__
#include <asm/page.h> #include <asm/memory.h>
#ifdef __KERNEL__ #ifndef __ASSEMBLY__
#define cpu_switch_mm(pgd, mm) cpu_do_switch_mm(virt_to_phys(pgd), mm)
#define cpu_get_pgd() \ ({ \ unsigned long pg; \ __asm__("movc %0, p0.c2, #0" \ : "=r" (pg) : : "cc"); \ pg &= ~0x0fff; \ (pgd_t *)phys_to_virt(pg); \ })
struct mm_struct;
/* declare all the functions as extern */ extern void cpu_proc_fin(void); extern int cpu_do_idle(void); extern void cpu_dcache_clean_area(void *, int); extern void cpu_do_switch_mm(unsigned long pgd_phys, struct mm_struct *mm); extern void cpu_set_pte(pte_t *ptep, pte_t pte); extern void cpu_reset(unsigned long addr) __attribute__((noreturn));
#endif /* __ASSEMBLY__ */ #endif /* __KERNEL__ */
#endif /* __UNICORE_CPU_SINGLE_H__ */
|