xref: /netbsd-src/sys/arch/luna68k/include/pmap.h (revision 7897550811b0edbea4e125d224354a632e75f653)
1 /*	$NetBSD: pmap.h,v 1.11 2023/12/29 02:30:35 tsutsui Exp $	*/
2 
3 #ifndef _LUNA68K_PMAP_H_
4 
5 #include <m68k/pmap_motorola.h>
6 #include <m68k/mmu_30.h>
7 
8 /*
9  * Transparent translation register values for IO space 0x40000000-0xffffffff
10  *
11  * map via TT0: 0x40000000-0x7fffffff
12  * map via TT1: 0x80000000-0xffffffff
13  *
14  * On 030 both use Function Codes 4-7 (to get SUPERD and SUPERP).
15  * XXX: they can probably just use SUPERD.
16  */
17 
18 #define	LUNA68K_TT30_IO0	(0x40000000 |				\
19 				 __SHIFTIN(0x3f,TT30_LAM) |		\
20 				 TT30_E | TT30_CI | TT30_RWM |	\
21 				__SHIFTIN(4,TT30_FCBASE) |		\
22 				__SHIFTIN(3,TT30_FCMASK))
23 #define	LUNA68K_TT30_IO1	(0x80000000 |				\
24 				 __SHIFTIN(0x7f,TT30_LAM) |		\
25 				 TT30_E | TT30_CI | TT30_RWM |	\
26 				__SHIFTIN(4,TT30_FCBASE) |		\
27 				__SHIFTIN(3,TT30_FCMASK))
28 
29 #define	LUNA68K_TT40_IO0	(0x40000000 |				\
30 				 __SHIFTIN(0x3f,TTR40_LAM) |		\
31 				 TTR40_E | TTR40_SUPER |		\
32 				 PTE40_CM_NC_SER)
33 #define	LUNA68K_TT40_IO1	(0x80000000 |				\
34 				 __SHIFTIN(0x7f,TTR40_LAM) |		\
35 				 TTR40_E | TTR40_SUPER |		\
36 				 PTE40_CM_NC_SER)
37 
38 #endif /* _LUNA68K_PMAP_H_ */
39