xref: /csrg-svn/sys/news3400/include/adrsmap.h (revision 63306)
153899Smckusick /*
2*63306Sbostic  * Copyright (c) 1992, 1993
3*63306Sbostic  *	The Regents of the University of California.  All rights reserved.
453899Smckusick  *
553899Smckusick  * This code is derived from software contributed to Berkeley by
653899Smckusick  * Sony Corp. and Kazumasa Utashiro of Software Research Associates, Inc.
753899Smckusick  *
853899Smckusick  * %sccs.include.redist.c%
953899Smckusick  *
1053899Smckusick  * from: $Hdr: adrsmap.h,v 4.300 91/06/09 06:34:29 root Rel41 $ SONY
1153899Smckusick  *
12*63306Sbostic  *	@(#)adrsmap.h	8.1 (Berkeley) 06/11/93
1353899Smckusick  */
1453899Smckusick 
1553899Smckusick /*
1653899Smckusick  * adrsmap.h
1753899Smckusick  *
1853899Smckusick  * Define all hardware address map.
1953899Smckusick  */
2053899Smckusick 
2153899Smckusick #ifndef __ADRSMAP__
2253899Smckusick #define	__ADRSMAP__	1
2353899Smckusick 
2453899Smckusick #ifdef news3400
2553899Smckusick /*----------------------------------------------------------------------
2653899Smckusick  *	news3400
2753899Smckusick  *----------------------------------------------------------------------*/
2853899Smckusick /*
2953899Smckusick  * timer
3053899Smckusick  */
3153899Smckusick #define	RTC_PORT	0xbff407f8
3253899Smckusick #define	DATA_PORT	0xbff407f9
3353899Smckusick 
3453899Smckusick #ifdef notdef
3553899Smckusick #define	EN_ITIMER	0xb8000004	/*XXX:???*/
3653899Smckusick #endif
3753899Smckusick 
3853899Smckusick #define	INTEN0	0xbfc80000
3953899Smckusick #define		INTEN0_PERR	0x80
4053899Smckusick #define		INTEN0_ABORT	0x40
4153899Smckusick #define		INTEN0_BERR	0x20
4253899Smckusick #define		INTEN0_TIMINT	0x10
4353899Smckusick #define		INTEN0_KBDINT	0x08
4453899Smckusick #define		INTEN0_MSINT	0x04
4553899Smckusick #define		INTEN0_CFLT	0x02
4653899Smckusick #define		INTEN0_CBSY	0x01
4753899Smckusick 
4853899Smckusick #define	INTEN1	0xbfc80001
4953899Smckusick #define		INTEN1_BEEP	0x80
5053899Smckusick #define		INTEN1_SCC	0x40
5153899Smckusick #define		INTEN1_LANCE	0x20
5253899Smckusick #define		INTEN1_DMA	0x10
5353899Smckusick #define		INTEN1_SLOT1	0x08
5453899Smckusick #define		INTEN1_SLOT3	0x04
5553899Smckusick #define		INTEN1_EXT1	0x02
5653899Smckusick #define		INTEN1_EXT3	0x01
5753899Smckusick 
5853899Smckusick #define	INTST0	0xbfc80002
5953899Smckusick #define		INTST0_PERR	0x80
6053899Smckusick #define		INTST0_ABORT	0x40
6153899Smckusick #define		INTST0_BERR	0x00	/* N/A */
6253899Smckusick #define		INTST0_TIMINT	0x10
6353899Smckusick #define		INTST0_KBDINT	0x08
6453899Smckusick #define		INTST0_MSINT	0x04
6553899Smckusick #define		INTST0_CFLT	0x02
6653899Smckusick #define		INTST0_CBSY	0x01
6753899Smckusick #define			INTST0_PERR_BIT		7
6853899Smckusick #define			INTST0_ABORT_BIT	6
6953899Smckusick #define			INTST0_BERR_BIT		5	/* N/A */
7053899Smckusick #define			INTST0_TIMINT_BIT	4
7153899Smckusick #define			INTST0_KBDINT_BIT	3
7253899Smckusick #define			INTST0_MSINT_BIT	2
7353899Smckusick #define			INTST0_CFLT_BIT		1
7453899Smckusick #define			INTST0_CBSY_BIT		0
7553899Smckusick 
7653899Smckusick #define	INTST1	0xbfc80003
7753899Smckusick #define		INTST1_BEEP	0x80
7853899Smckusick #define		INTST1_SCC	0x40
7953899Smckusick #define		INTST1_LANCE	0x20
8053899Smckusick #define		INTST1_DMA	0x10
8153899Smckusick #define		INTST1_SLOT1	0x08
8253899Smckusick #define		INTST1_SLOT3	0x04
8353899Smckusick #define		INTST1_EXT1	0x02
8453899Smckusick #define		INTST1_EXT3	0x01
8553899Smckusick #define			INTST1_BEEP_BIT		7
8653899Smckusick #define			INTST1_SCC_BIT		6
8753899Smckusick #define			INTST1_LANCE_BIT	5
8853899Smckusick #define			INTST1_DMA_BIT		4
8953899Smckusick #define			INTST1_SLOT1_BIT	3
9053899Smckusick #define			INTST1_SLOT3_BIT	2
9153899Smckusick #define			INTST1_EXT1_BIT		1
9253899Smckusick #define			INTST1_EXT3_BIT		0
9353899Smckusick 
9453899Smckusick #define	INTCLR0	0xbfc80004
9553899Smckusick #define		INTCLR0_PERR	0x80
9653899Smckusick #define		INTCLR0_ABORT	0x40
9753899Smckusick #define		INTCLR0_BERR	0x20
9853899Smckusick #define		INTCLR0_TIMINT	0x10
9953899Smckusick #define		INTCLR0_KBDINT	0x00	/* N/A */
10053899Smckusick #define		INTCLR0_MSINT	0x00	/* N/A */
10153899Smckusick #define		INTCLR0_CFLT	0x02
10253899Smckusick #define		INTCLR0_CBSY	0x01
10353899Smckusick 
10453899Smckusick #define	INTCLR1	0xbfc80005
10553899Smckusick #define		INTCLR1_BEEP	0x80
10653899Smckusick #define		INTCLR1_SCC	0x00	/* N/A */
10753899Smckusick #define		INTCLR1_LANCE	0x00	/* N/A */
10853899Smckusick #define		INTCLR1_DMA	0x00	/* N/A */
10953899Smckusick #define		INTCLR1_SLOT1	0x00	/* N/A */
11053899Smckusick #define		INTCLR1_SLOT3	0x00	/* N/A */
11153899Smckusick #define		INTCLR1_EXT1	0x00	/* N/A */
11253899Smckusick #define		INTCLR1_EXT3	0x00	/* N/A */
11353899Smckusick 
11453899Smckusick #define	ITIMER		0xbfc80006
11553899Smckusick #define	IOCLOCK		4915200
11653899Smckusick 
11753899Smckusick #define	DIP_SWITCH	0xbfe40000
11853899Smckusick #define	IDROM		0xbfe80000
11953899Smckusick 
12053899Smckusick #define	DEBUG_PORT	0xbfcc0003
12153899Smckusick #define		DP_READ		0x00
12253899Smckusick #define		DP_WRITE	0xf0
12353899Smckusick #define		DP_LED0		0x01
12453899Smckusick #define		DP_LED1		0x02
12553899Smckusick #define		DP_LED2		0x04
12653899Smckusick #define		DP_LED3		0x08
12753899Smckusick 
12853899Smckusick 
12953899Smckusick #define	LANCE_PORT	0xbff80000
13053899Smckusick #define	LANCE_MEMORY	0xbffc0000
13153899Smckusick #define	ETHER_ID	IDROM_PORT
13253899Smckusick 
13353899Smckusick #define	LANCE_PORT1	0xb8c30000	/* expansion lance #1 */
13453899Smckusick #define	LANCE_MEMORY1	0xb8c20000
13553899Smckusick #define	ETHER_ID1	0xb8c38000
13653899Smckusick 
13753899Smckusick #define	LANCE_PORT2	0xb8c70000	/* expansion lance #2 */
13853899Smckusick #define	LANCE_MEMORY2	0xb8c60000
13953899Smckusick #define	ETHER_ID2	0xb8c78000
14053899Smckusick 
14153899Smckusick #define	IDROM_PORT	0xbfe80000
14253899Smckusick 
14353899Smckusick #define	SCCPORT0B	0xbfec0000
14453899Smckusick #define	SCCPORT0A	0xbfec0002
14553899Smckusick #define SCCPORT1B	0xb8c40100
14653899Smckusick #define SCCPORT1A	0xb8c40102
14753899Smckusick #define SCCPORT2B	0xb8c40104
14853899Smckusick #define SCCPORT2A	0xb8c40106
14953899Smckusick #define SCCPORT3B	0xb8c40110
15053899Smckusick #define SCCPORT3A	0xb8c40112
15153899Smckusick #define SCCPORT4B	0xb8c40114
15253899Smckusick #define SCCPORT4A	0xb8c40116
15353899Smckusick 
15453899Smckusick #define	SCC_STATUS0	0xbfcc0002
15553899Smckusick #define	SCC_STATUS1	0xb8c40108
15653899Smckusick #define	SCC_STATUS2	0xb8c40118
15753899Smckusick 
15853899Smckusick #define	SCCVECT		(0x1fcc0007 | MACH_UNCACHED_MEMORY_ADDR)
15953899Smckusick #define	SCC_RECV	2
16053899Smckusick #define	SCC_XMIT	0
16153899Smckusick #define	SCC_CTRL	3
16253899Smckusick #define	SCC_STAT	1
16353899Smckusick #define	SCC_INT_MASK	0x6
16453899Smckusick 
16553899Smckusick /*XXX: SHOULD BE FIX*/
16653899Smckusick #define	KEYB_DATA	0xbfd00000	/* keyboard data port */
16753899Smckusick #define KEYB_STAT	0xbfd00001	/* keyboard status port */
16853899Smckusick #define	KEYB_INTE	INTEN0		/* keyboard interrupt enable */
16953899Smckusick #define	KEYB_RESET	0xbfd00002	/* keyboard reset port*/
17053899Smckusick #define	KEYB_INIT1	0xbfd00003	/* keyboard speed */
17153899Smckusick #define	KEYB_INIT2	KEYB_INIT1	/* keyboard clock */
17253899Smckusick #define	KEYB_BUZZ	0xbfd40001	/* keyboard buzzer (length) */
17353899Smckusick #define	KEYB_BUZZF	0xbfd40000	/* keyboard buzzer frequency */
17453899Smckusick #define	MOUSE_DATA	0xbfd00004	/* mouse data port */
17553899Smckusick #define MOUSE_STAT	0xbfd00005	/* mouse status port */
17653899Smckusick #define	MOUSE_INTE	INTEN0		/* mouse interrupt enable */
17753899Smckusick #define	MOUSE_RESET	0xbfd00006	/* mouse reset port */
17853899Smckusick #define	MOUSE_INIT1	0xbfd00007	/* mouse speed */
17953899Smckusick #define	MOUSE_INIT2	MOUSE_INIT1	/* mouse clock */
18053899Smckusick 
18153899Smckusick #define	RX_MSINTE	0x04		/* Mouse Interrupt Enable */
18253899Smckusick #define RX_KBINTE	0x08		/* Keyboard Intr. Enable */
18353899Smckusick #define	RX_MSINT	0x04		/* Mouse Interrupted */
18453899Smckusick #define	RX_KBINT	0x08		/* Keyboard Interrupted */
18553899Smckusick #define	RX_MSBUF	0x01		/* Mouse data buffer Full */
18653899Smckusick #define	RX_KBBUF	0x01		/* Keyboard data Full */
18753899Smckusick #define	RX_MSRDY	0x02		/* Mouse data ready */
18853899Smckusick #define	RX_KBRDY	0x02		/* Keyboard data ready */
18953899Smckusick /*XXX: SHOULD BE FIX*/
19053899Smckusick 
19153899Smckusick #define	ABEINT_BADDR	0xbfdc0038
19253899Smckusick #endif /* news3400 */
19353899Smckusick 
19453899Smckusick #endif /* !__ADRSMAP__ */
195