1 /*
2  * Carsten Langgaard, carstenl@mips.com
3  * Copyright (C) 2000 MIPS Technologies, Inc.  All rights reserved.
4  *
5  * ########################################################################
6  *
7  *  This program is free software; you can distribute it and/or modify it
8  *  under the terms of the GNU General Public License (Version 2) as
9  *  published by the Free Software Foundation.
10  *
11  *  This program is distributed in the hope it will be useful, but WITHOUT
12  *  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13  *  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
14  *  for more details.
15  *
16  *  You should have received a copy of the GNU General Public License along
17  *  with this program; if not, write to the Free Software Foundation, Inc.,
18  *  59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
19  *
20  * ########################################################################
21  *
22  * Register definitions for the UART part of the Philips SAA9730 chip.
23  *
24  */
25 
26 #ifndef SAA9730_UART_H
27 #define SAA9730_UART_H
28 
29 /* The SAA9730 UART register map, as seen via the PCI bus */
30 
31 #define SAA9730_UART_REGS_ADDR	0x21800
32 
33 struct uart_saa9730_regmap {
34 	volatile unsigned char Thr_Rbr;
35 	volatile unsigned char Ier;
36 	volatile unsigned char Iir_Fcr;
37 	volatile unsigned char Lcr;
38 	volatile unsigned char Mcr;
39 	volatile unsigned char Lsr;
40 	volatile unsigned char Msr;
41 	volatile unsigned char Scr;
42 	volatile unsigned char BaudDivLsb;
43 	volatile unsigned char BaudDivMsb;
44 	volatile unsigned char Junk0;
45 	volatile unsigned char Junk1;
46 	volatile unsigned int Config;		/* 0x2180c */
47 	volatile unsigned int TxStart;		/* 0x21810 */
48 	volatile unsigned int TxLength;		/* 0x21814 */
49 	volatile unsigned int TxCounter;	/* 0x21818 */
50 	volatile unsigned int RxStart;		/* 0x2181c */
51 	volatile unsigned int RxLength;		/* 0x21820 */
52 	volatile unsigned int RxCounter;	/* 0x21824 */
53 };
54 typedef volatile struct uart_saa9730_regmap t_uart_saa9730_regmap;
55 
56 /*
57  * Only a subset of the UART control bits are defined here,
58  * enough to make the serial debug port work.
59  */
60 
61 #define SAA9730_LCR_DATA8	0x03
62 
63 #define SAA9730_MCR_DTR		0x01
64 #define SAA9730_MCR_RTS		0x02
65 
66 #define SAA9730_LSR_DR		0x01
67 #define SAA9730_LSR_THRE	0x20
68 
69 #endif /* !(SAA9730_UART_H) */
70