pmap.h revision 1.18
1/*	$NetBSD: pmap.h,v 1.18 2025/11/24 16:58:01 thorpej Exp $	*/
2
3#ifndef _NEWS68K_PMAP_H_
4#define	_NEWS68K_PMAP_H_
5
6#ifdef __HAVE_NEW_PMAP_68K
7#include <m68k/pmap_68k.h>
8#else
9#include <m68k/pmap_motorola.h>
10#endif /* __HAVE_NEW_PMAP_68K */
11
12#include <m68k/mmu_30.h>
13
14/*
15 * Transparent translation register values for:
16 *
17 * I/O space: 0xe0000000-0xffffffff
18 * RAM to use PROM calls: 0xc0000000-0xdfffffff
19 *
20 * Both use Function Codes 4-7 (to get SUPERD and SUPERP).
21 * XXX I/O space can probably just use SUPERD.
22 */
23
24#define	NEWS68K_PROM_TT_BASE	0xc0000000
25#define	NEWS68K_PROM_TT_SIZE	0x20000000
26
27#define	NEWS68K_IO_TT_BASE	0xe0000000
28#define	NEWS68K_IO_TT_SIZE	0x20000000
29
30#define	NEWS68K_TT_IO		(NEWS68K_IO_TT_BASE |			\
31				 __SHIFTIN(0x1f,TT30_LAM) |		\
32				 TT30_E | TT30_CI | TT30_RWM |		\
33				 __SHIFTIN(4,TT30_FCBASE) |		\
34				 __SHIFTIN(3,TT30_FCMASK))
35
36#define	NEWS68K_TT_PROM		(NEWS68K_PROM_TT_BASE |			\
37				 __SHIFTIN(0x1f,TT30_LAM) |		\
38				 TT30_E | TT30_RWM |			\
39				 __SHIFTIN(4,TT30_FCBASE) |		\
40				 __SHIFTIN(3,TT30_FCMASK))
41
42#endif /* _NEWS68K_PMAP_H_ */
43