162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
262306a36Sopenharmony_ci#ifndef _M68KNOMMU_PGTABLE_H
362306a36Sopenharmony_ci#define _M68KNOMMU_PGTABLE_H
462306a36Sopenharmony_ci
562306a36Sopenharmony_ci#include <asm-generic/pgtable-nopud.h>
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci/*
862306a36Sopenharmony_ci * (C) Copyright 2000-2002, Greg Ungerer <gerg@snapgear.com>
962306a36Sopenharmony_ci */
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci#include <linux/slab.h>
1262306a36Sopenharmony_ci#include <asm/processor.h>
1362306a36Sopenharmony_ci#include <asm/page.h>
1462306a36Sopenharmony_ci#include <asm/io.h>
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_ci/*
1762306a36Sopenharmony_ci * Trivial page table functions.
1862306a36Sopenharmony_ci */
1962306a36Sopenharmony_ci#define pgd_present(pgd)	(1)
2062306a36Sopenharmony_ci#define pgd_none(pgd)		(0)
2162306a36Sopenharmony_ci#define pgd_bad(pgd)		(0)
2262306a36Sopenharmony_ci#define pgd_clear(pgdp)
2362306a36Sopenharmony_ci#define	pmd_offset(a, b)	((void *)0)
2462306a36Sopenharmony_ci
2562306a36Sopenharmony_ci#define PAGE_NONE	__pgprot(0)
2662306a36Sopenharmony_ci#define PAGE_SHARED	__pgprot(0)
2762306a36Sopenharmony_ci#define PAGE_COPY	__pgprot(0)
2862306a36Sopenharmony_ci#define PAGE_READONLY	__pgprot(0)
2962306a36Sopenharmony_ci#define PAGE_KERNEL	__pgprot(0)
3062306a36Sopenharmony_ci
3162306a36Sopenharmony_ciextern void paging_init(void);
3262306a36Sopenharmony_ci#define swapper_pg_dir ((pgd_t *) 0)
3362306a36Sopenharmony_ci
3462306a36Sopenharmony_ci/*
3562306a36Sopenharmony_ci * ZERO_PAGE is a global shared page that is always zero: used
3662306a36Sopenharmony_ci * for zero-mapped memory areas etc..
3762306a36Sopenharmony_ci */
3862306a36Sopenharmony_ciextern void *empty_zero_page;
3962306a36Sopenharmony_ci#define ZERO_PAGE(vaddr)	(virt_to_page(empty_zero_page))
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ci/*
4262306a36Sopenharmony_ci * All 32bit addresses are effectively valid for vmalloc...
4362306a36Sopenharmony_ci * Sort of meaningless for non-VM targets.
4462306a36Sopenharmony_ci */
4562306a36Sopenharmony_ci#define	VMALLOC_START	0
4662306a36Sopenharmony_ci#define	VMALLOC_END	0xffffffff
4762306a36Sopenharmony_ci#define	KMAP_START	0
4862306a36Sopenharmony_ci#define	KMAP_END	0xffffffff
4962306a36Sopenharmony_ci
5062306a36Sopenharmony_ci#endif /* _M68KNOMMU_PGTABLE_H */
51