| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | #ifndef _MVME147HW_H_
 | 
					
						
							|  |  |  | #define _MVME147HW_H_
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-06-25 05:47:06 -07:00
										 |  |  | #include <asm/irq.h>
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | typedef struct { | 
					
						
							|  |  |  | 	unsigned char | 
					
						
							|  |  |  | 		ctrl, | 
					
						
							|  |  |  | 		bcd_sec, | 
					
						
							|  |  |  | 		bcd_min, | 
					
						
							|  |  |  | 		bcd_hr, | 
					
						
							|  |  |  | 		bcd_dow, | 
					
						
							|  |  |  | 		bcd_dom, | 
					
						
							|  |  |  | 		bcd_mth, | 
					
						
							|  |  |  | 		bcd_year; | 
					
						
							|  |  |  | } MK48T02; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #define RTC_WRITE	0x80
 | 
					
						
							|  |  |  | #define RTC_READ	0x40
 | 
					
						
							|  |  |  | #define RTC_STOP	0x20
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #define m147_rtc ((MK48T02 * volatile)0xfffe07f8)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | struct pcc_regs { | 
					
						
							|  |  |  |    volatile u_long	dma_tadr; | 
					
						
							|  |  |  |    volatile u_long	dma_dadr; | 
					
						
							|  |  |  |    volatile u_long	dma_bcr; | 
					
						
							|  |  |  |    volatile u_long	dma_hr; | 
					
						
							|  |  |  |    volatile u_short	t1_preload; | 
					
						
							|  |  |  |    volatile u_short	t1_count; | 
					
						
							|  |  |  |    volatile u_short	t2_preload; | 
					
						
							|  |  |  |    volatile u_short	t2_count; | 
					
						
							|  |  |  |    volatile u_char	t1_int_cntrl; | 
					
						
							|  |  |  |    volatile u_char	t1_cntrl; | 
					
						
							|  |  |  |    volatile u_char	t2_int_cntrl; | 
					
						
							|  |  |  |    volatile u_char	t2_cntrl; | 
					
						
							|  |  |  |    volatile u_char	ac_fail; | 
					
						
							|  |  |  |    volatile u_char	watchdog; | 
					
						
							|  |  |  |    volatile u_char	lpt_intr; | 
					
						
							|  |  |  |    volatile u_char	lpt_cntrl; | 
					
						
							|  |  |  |    volatile u_char	dma_intr; | 
					
						
							|  |  |  |    volatile u_char	dma_cntrl; | 
					
						
							|  |  |  |    volatile u_char	bus_error; | 
					
						
							|  |  |  |    volatile u_char	dma_status; | 
					
						
							|  |  |  |    volatile u_char	abort; | 
					
						
							|  |  |  |    volatile u_char	ta_fnctl; | 
					
						
							|  |  |  |    volatile u_char	serial_cntrl; | 
					
						
							|  |  |  |    volatile u_char	general_cntrl; | 
					
						
							|  |  |  |    volatile u_char	lan_cntrl; | 
					
						
							|  |  |  |    volatile u_char	general_status; | 
					
						
							|  |  |  |    volatile u_char	scsi_interrupt; | 
					
						
							|  |  |  |    volatile u_char	slave; | 
					
						
							|  |  |  |    volatile u_char	soft1_cntrl; | 
					
						
							|  |  |  |    volatile u_char	int_base; | 
					
						
							|  |  |  |    volatile u_char	soft2_cntrl; | 
					
						
							|  |  |  |    volatile u_char	revision_level; | 
					
						
							|  |  |  |    volatile u_char	lpt_data; | 
					
						
							|  |  |  |    volatile u_char	lpt_status; | 
					
						
							|  |  |  |    }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #define m147_pcc ((struct pcc_regs * volatile)0xfffe1000)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #define PCC_INT_ENAB		0x08
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #define PCC_TIMER_INT_CLR	0x80
 | 
					
						
							|  |  |  | #define PCC_TIMER_PRELOAD	63936l
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #define PCC_LEVEL_ABORT		0x07
 | 
					
						
							|  |  |  | #define PCC_LEVEL_SERIAL	0x04
 | 
					
						
							|  |  |  | #define PCC_LEVEL_ETH		0x04
 | 
					
						
							|  |  |  | #define PCC_LEVEL_TIMER1	0x04
 | 
					
						
							|  |  |  | #define PCC_LEVEL_SCSI_PORT	0x04
 | 
					
						
							|  |  |  | #define PCC_LEVEL_SCSI_DMA	0x04
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-06-25 05:47:06 -07:00
										 |  |  | #define PCC_IRQ_AC_FAIL		(IRQ_USER+0)
 | 
					
						
							|  |  |  | #define PCC_IRQ_BERR		(IRQ_USER+1)
 | 
					
						
							|  |  |  | #define PCC_IRQ_ABORT		(IRQ_USER+2)
 | 
					
						
							|  |  |  | /* #define PCC_IRQ_SERIAL	(IRQ_USER+3) */ | 
					
						
							|  |  |  | #define PCC_IRQ_PRINTER		(IRQ_USER+7)
 | 
					
						
							|  |  |  | #define PCC_IRQ_TIMER1		(IRQ_USER+8)
 | 
					
						
							|  |  |  | #define PCC_IRQ_TIMER2		(IRQ_USER+9)
 | 
					
						
							|  |  |  | #define PCC_IRQ_SOFTWARE1	(IRQ_USER+10)
 | 
					
						
							|  |  |  | #define PCC_IRQ_SOFTWARE2	(IRQ_USER+11)
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #define M147_SCC_A_ADDR		0xfffe3002
 | 
					
						
							|  |  |  | #define M147_SCC_B_ADDR		0xfffe3000
 | 
					
						
							|  |  |  | #define M147_SCC_PCLK		5000000
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-06-25 05:47:06 -07:00
										 |  |  | #define MVME147_IRQ_SCSI_PORT	(IRQ_USER+0x45)
 | 
					
						
							|  |  |  | #define MVME147_IRQ_SCSI_DMA	(IRQ_USER+0x46)
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | /* SCC interrupts, for MVME147 */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #define MVME147_IRQ_TYPE_PRIO	0
 | 
					
						
							| 
									
										
										
										
											2006-06-25 05:47:06 -07:00
										 |  |  | #define MVME147_IRQ_SCC_BASE		(IRQ_USER+32)
 | 
					
						
							|  |  |  | #define MVME147_IRQ_SCCB_TX		(IRQ_USER+32)
 | 
					
						
							|  |  |  | #define MVME147_IRQ_SCCB_STAT		(IRQ_USER+34)
 | 
					
						
							|  |  |  | #define MVME147_IRQ_SCCB_RX		(IRQ_USER+36)
 | 
					
						
							|  |  |  | #define MVME147_IRQ_SCCB_SPCOND		(IRQ_USER+38)
 | 
					
						
							|  |  |  | #define MVME147_IRQ_SCCA_TX		(IRQ_USER+40)
 | 
					
						
							|  |  |  | #define MVME147_IRQ_SCCA_STAT		(IRQ_USER+42)
 | 
					
						
							|  |  |  | #define MVME147_IRQ_SCCA_RX		(IRQ_USER+44)
 | 
					
						
							|  |  |  | #define MVME147_IRQ_SCCA_SPCOND		(IRQ_USER+46)
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | #define MVME147_LANCE_BASE	0xfffe1800
 | 
					
						
							| 
									
										
										
										
											2006-06-25 05:47:06 -07:00
										 |  |  | #define MVME147_LANCE_IRQ	(IRQ_USER+4)
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | #define ETHERNET_ADDRESS 0xfffe0778
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #endif
 |