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