pgtable.h 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. #ifndef _M68KNOMMU_PGTABLE_H
  2. #define _M68KNOMMU_PGTABLE_H
  3. #include <asm-generic/4level-fixup.h>
  4. /*
  5. * (C) Copyright 2000-2002, Greg Ungerer <gerg@snapgear.com>
  6. */
  7. #include <linux/slab.h>
  8. #include <asm/processor.h>
  9. #include <asm/page.h>
  10. #include <asm/io.h>
  11. /*
  12. * Trivial page table functions.
  13. */
  14. #define pgd_present(pgd) (1)
  15. #define pgd_none(pgd) (0)
  16. #define pgd_bad(pgd) (0)
  17. #define pgd_clear(pgdp)
  18. #define kern_addr_valid(addr) (1)
  19. #define pmd_offset(a, b) ((void *)0)
  20. #define PAGE_NONE __pgprot(0)
  21. #define PAGE_SHARED __pgprot(0)
  22. #define PAGE_COPY __pgprot(0)
  23. #define PAGE_READONLY __pgprot(0)
  24. #define PAGE_KERNEL __pgprot(0)
  25. extern void paging_init(void);
  26. #define swapper_pg_dir ((pgd_t *) 0)
  27. #define __swp_type(x) (0)
  28. #define __swp_offset(x) (0)
  29. #define __swp_entry(typ,off) ((swp_entry_t) { ((typ) | ((off) << 7)) })
  30. #define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val(pte) })
  31. #define __swp_entry_to_pte(x) ((pte_t) { (x).val })
  32. static inline int pte_file(pte_t pte) { return 0; }
  33. /*
  34. * ZERO_PAGE is a global shared page that is always zero: used
  35. * for zero-mapped memory areas etc..
  36. */
  37. #define ZERO_PAGE(vaddr) (virt_to_page(0))
  38. /*
  39. * These would be in other places but having them here reduces the diffs.
  40. */
  41. extern unsigned int kobjsize(const void *objp);
  42. extern int is_in_rom(unsigned long);
  43. /*
  44. * No page table caches to initialise.
  45. */
  46. #define pgtable_cache_init() do { } while (0)
  47. #define io_remap_pfn_range(vma, vaddr, pfn, size, prot) \
  48. remap_pfn_range(vma, vaddr, pfn, size, prot)
  49. #define MK_IOSPACE_PFN(space, pfn) (pfn)
  50. #define GET_IOSPACE(pfn) 0
  51. #define GET_PFN(pfn) (pfn)
  52. /*
  53. * All 32bit addresses are effectively valid for vmalloc...
  54. * Sort of meaningless for non-VM targets.
  55. */
  56. #define VMALLOC_START 0
  57. #define VMALLOC_END 0xffffffff
  58. #endif /* _M68KNOMMU_PGTABLE_H */