#ifndef _ASM_M32R_PGTABLE_H #define _ASM_M32R_PGTABLE_H #include #ifdef __KERNEL__ /* * The Linux memory management assumes a three-level page table setup. On * the M32R, we use that, but "fold" the mid level into the top-level page * table, so that we physically have the same two-level page table as the * M32R mmu expects. * * This file contains the functions and defines necessary to modify and use * the M32R page table tree. */ /* CAUTION!: If you change macro definitions in this file, you might have to * change arch/m32r/mmu.S manually. */ #ifndef __ASSEMBLY__ #include #include #include #include #include struct mm_struct; struct vm_area_struct; extern pgd_t swapper_pg_dir[1024]; extern void paging_init(void); /* * ZERO_PAGE is a global shared page that is always zero: used * for zero-mapped memory areas etc.. */ extern unsigned long empty_zero_page[1024]; #define ZERO_PAGE(vaddr) (virt_to_page(empty_zero_page))