Blame view

kernel/linux-rt-4.4.41/arch/m68k/include/asm/mvme16xhw.h 2.13 KB
5113f6f70   김현기   kernel add
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
  #ifndef _M68K_MVME16xHW_H_
  #define _M68K_MVME16xHW_H_
  
  #include <asm/irq.h>
  
  
  typedef struct {
  	u_char	ack_icr,
  		flt_icr,
  		sel_icr,
  		pe_icr,
  		bsy_icr,
  		spare1,
  		isr,
  		cr,
  		spare2,
  		spare3,
  		spare4,
  		data;
  } MVMElp, *MVMElpPtr;
  
  #define MVME_LPR_BASE	0xfff42030
  
  #define mvmelp   ((*(volatile MVMElpPtr)(MVME_LPR_BASE)))
  
  typedef struct {
  	unsigned char
  		ctrl,
  		bcd_sec,
  		bcd_min,
  		bcd_hr,
  		bcd_dow,
  		bcd_dom,
  		bcd_mth,
  		bcd_year;
  } MK48T08_t, *MK48T08ptr_t;
  
  #define RTC_WRITE	0x80
  #define RTC_READ	0x40
  #define RTC_STOP	0x20
  
  #define MVME_RTC_BASE	0xfffc1ff8
  
  #define MVME_I596_BASE	0xfff46000
  
  #define MVME_SCC_A_ADDR	0xfff45005
  #define MVME_SCC_B_ADDR	0xfff45001
  #define MVME_SCC_PCLK	10000000
  
  #define MVME162_IRQ_TYPE_PRIO	0
  
  #define MVME167_IRQ_PRN		(IRQ_USER+20)
  #define MVME16x_IRQ_I596	(IRQ_USER+23)
  #define MVME16x_IRQ_SCSI	(IRQ_USER+21)
  #define MVME16x_IRQ_FLY		(IRQ_USER+63)
  #define MVME167_IRQ_SER_ERR	(IRQ_USER+28)
  #define MVME167_IRQ_SER_MODEM	(IRQ_USER+29)
  #define MVME167_IRQ_SER_TX	(IRQ_USER+30)
  #define MVME167_IRQ_SER_RX	(IRQ_USER+31)
  #define MVME16x_IRQ_TIMER	(IRQ_USER+25)
  #define MVME167_IRQ_ABORT	(IRQ_USER+46)
  #define MVME162_IRQ_ABORT	(IRQ_USER+30)
  
  /* SCC interrupts, for MVME162 */
  #define MVME162_IRQ_SCC_BASE		(IRQ_USER+0)
  #define MVME162_IRQ_SCCB_TX		(IRQ_USER+0)
  #define MVME162_IRQ_SCCB_STAT		(IRQ_USER+2)
  #define MVME162_IRQ_SCCB_RX		(IRQ_USER+4)
  #define MVME162_IRQ_SCCB_SPCOND		(IRQ_USER+6)
  #define MVME162_IRQ_SCCA_TX		(IRQ_USER+8)
  #define MVME162_IRQ_SCCA_STAT		(IRQ_USER+10)
  #define MVME162_IRQ_SCCA_RX		(IRQ_USER+12)
  #define MVME162_IRQ_SCCA_SPCOND		(IRQ_USER+14)
  
  /* MVME162 version register */
  
  #define MVME162_VERSION_REG	0xfff4202e
  
  extern unsigned short mvme16x_config;
  
  /* Lower 8 bits must match the revision register in the MC2 chip */
  
  #define MVME16x_CONFIG_SPEED_32		0x0001
  #define MVME16x_CONFIG_NO_VMECHIP2	0x0002
  #define MVME16x_CONFIG_NO_SCSICHIP	0x0004
  #define MVME16x_CONFIG_NO_ETHERNET	0x0008
  #define MVME16x_CONFIG_GOT_FPU		0x0010
  
  #define MVME16x_CONFIG_GOT_LP		0x0100
  #define MVME16x_CONFIG_GOT_CD2401	0x0200
  #define MVME16x_CONFIG_GOT_SCCA		0x0400
  #define MVME16x_CONFIG_GOT_SCCB		0x0800
  
  #endif