1 |
1633 |
jcastillo |
|
2 |
|
|
/* include/asm-m68knommu/MC68332.h: '332 control registers
|
3 |
|
|
*
|
4 |
|
|
* Copyright (C) 1998 Kenneth Albanowski <kjahds@kjahds.com>,
|
5 |
|
|
* The Silver Hammer Group, Ltd.
|
6 |
|
|
*
|
7 |
|
|
*/
|
8 |
|
|
|
9 |
|
|
#ifndef _MC68332_H_
|
10 |
|
|
#define _MC68332_H_
|
11 |
|
|
|
12 |
|
|
#define BYTE_REF(addr) (*((volatile unsigned char*)addr))
|
13 |
|
|
#define WORD_REF(addr) (*((volatile unsigned short*)addr))
|
14 |
|
|
|
15 |
|
|
#define PORTE_ADDR 0xfffa11
|
16 |
|
|
#define PORTE BYTE_REF(PORTE_ADDR)
|
17 |
|
|
#define DDRE_ADDR 0xfffa15
|
18 |
|
|
#define DDRE BYTE_REF(DDRE_ADDR)
|
19 |
|
|
#define PEPAR_ADDR 0xfffa17
|
20 |
|
|
#define PEPAR BYTE_REF(PEPAR_ADDR)
|
21 |
|
|
|
22 |
|
|
#define PORTF_ADDR 0xfffa19
|
23 |
|
|
#define PORTF BYTE_REF(PORTF_ADDR)
|
24 |
|
|
#define DDRF_ADDR 0xfffa1d
|
25 |
|
|
#define DDRF BYTE_REF(DDRF_ADDR)
|
26 |
|
|
#define PFPAR_ADDR 0xfffa1f
|
27 |
|
|
#define PFPAR BYTE_REF(PFPAR_ADDR)
|
28 |
|
|
|
29 |
|
|
#define PORTQS_ADDR 0xfffc15
|
30 |
|
|
#define PORTQS BYTE_REF(PORTQS_ADDR)
|
31 |
|
|
#define DDRQS_ADDR 0xfffc17
|
32 |
|
|
#define DDRQS BYTE_REF(DDRQS_ADDR)
|
33 |
|
|
#define PQSPAR_ADDR 0xfffc16
|
34 |
|
|
#define PQSPAR BYTE_REF(PQSPAR_ADDR)
|
35 |
|
|
|
36 |
|
|
#define CSPAR0_ADDR 0xFFFA44
|
37 |
|
|
#define CSPAR0 WORD_REF(CSPAR0_ADDR)
|
38 |
|
|
#define CSPAR1_ADDR 0xFFFA46
|
39 |
|
|
#define CSPAR1 WORD_REF(CSPAR1_ADDR)
|
40 |
|
|
#define CSARBT_ADDR 0xFFFA48
|
41 |
|
|
#define CSARBT WORD_REF(CSARBT_ADDR)
|
42 |
|
|
#define CSOPBT_ADDR 0xFFFA4A
|
43 |
|
|
#define CSOPBT WORD_REF(CSOPBT_ADDR)
|
44 |
|
|
#define CSBAR0_ADDR 0xFFFA4C
|
45 |
|
|
#define CSBAR0 WORD_REF(CSBAR0_ADDR)
|
46 |
|
|
#define CSOR0_ADDR 0xFFFA4E
|
47 |
|
|
#define CSOR0 WORD_REF(CSOR0_ADDR)
|
48 |
|
|
#define CSBAR1_ADDR 0xFFFA50
|
49 |
|
|
#define CSBAR1 WORD_REF(CSBAR1_ADDR)
|
50 |
|
|
#define CSOR1_ADDR 0xFFFA52
|
51 |
|
|
#define CSOR1 WORD_REF(CSOR1_ADDR)
|
52 |
|
|
#define CSBAR2_ADDR 0xFFFA54
|
53 |
|
|
#define CSBAR2 WORD_REF(CSBAR2_ADDR)
|
54 |
|
|
#define CSOR2_ADDR 0xFFFA56
|
55 |
|
|
#define CSOR2 WORD_REF(CSOR2_ADDR)
|
56 |
|
|
#define CSBAR3_ADDR 0xFFFA58
|
57 |
|
|
#define CSBAR3 WORD_REF(CSBAR3_ADDR)
|
58 |
|
|
#define CSOR3_ADDR 0xFFFA5A
|
59 |
|
|
#define CSOR3 WORD_REF(CSOR3_ADDR)
|
60 |
|
|
#define CSBAR4_ADDR 0xFFFA5C
|
61 |
|
|
#define CSBAR4 WORD_REF(CSBAR4_ADDR)
|
62 |
|
|
#define CSOR4_ADDR 0xFFFA5E
|
63 |
|
|
#define CSOR4 WORD_REF(CSOR4_ADDR)
|
64 |
|
|
#define CSBAR5_ADDR 0xFFFA60
|
65 |
|
|
#define CSBAR5 WORD_REF(CSBAR5_ADDR)
|
66 |
|
|
#define CSOR5_ADDR 0xFFFA62
|
67 |
|
|
#define CSOR5 WORD_REF(CSOR5_ADDR)
|
68 |
|
|
#define CSBAR6_ADDR 0xFFFA64
|
69 |
|
|
#define CSBAR6 WORD_REF(CSBAR6_ADDR)
|
70 |
|
|
#define CSOR6_ADDR 0xFFFA66
|
71 |
|
|
#define CSOR6 WORD_REF(CSOR6_ADDR)
|
72 |
|
|
#define CSBAR7_ADDR 0xFFFA68
|
73 |
|
|
#define CSBAR7 WORD_REF(CSBAR7_ADDR)
|
74 |
|
|
#define CSOR7_ADDR 0xFFFA6A
|
75 |
|
|
#define CSOR7 WORD_REF(CSOR7_ADDR)
|
76 |
|
|
#define CSBAR8_ADDR 0xFFFA6C
|
77 |
|
|
#define CSBAR8 WORD_REF(CSBAR8_ADDR)
|
78 |
|
|
#define CSOR8_ADDR 0xFFFA6E
|
79 |
|
|
#define CSOR8 WORD_REF(CSOR8_ADDR)
|
80 |
|
|
#define CSBAR9_ADDR 0xFFFA70
|
81 |
|
|
#define CSBAR9 WORD_REF(CSBAR9_ADDR)
|
82 |
|
|
#define CSOR9_ADDR 0xFFFA72
|
83 |
|
|
#define CSOR9 WORD_REF(CSOR9_ADDR)
|
84 |
|
|
#define CSBAR10_ADDR 0xFFFA74
|
85 |
|
|
#define CSBAR10 WORD_REF(CSBAR10_ADDR)
|
86 |
|
|
#define CSOR10_ADDR 0xFFFA76
|
87 |
|
|
#define CSOR10 WORD_REF(CSOR10_ADDR)
|
88 |
|
|
|
89 |
|
|
#define CSOR_MODE_ASYNC 0x0000
|
90 |
|
|
#define CSOR_MODE_SYNC 0x8000
|
91 |
|
|
#define CSOR_MODE_MASK 0x8000
|
92 |
|
|
#define CSOR_BYTE_DISABLE 0x0000
|
93 |
|
|
#define CSOR_BYTE_UPPER 0x4000
|
94 |
|
|
#define CSOR_BYTE_LOWER 0x2000
|
95 |
|
|
#define CSOR_BYTE_BOTH 0x6000
|
96 |
|
|
#define CSOR_BYTE_MASK 0x6000
|
97 |
|
|
#define CSOR_RW_RSVD 0x0000
|
98 |
|
|
#define CSOR_RW_READ 0x0800
|
99 |
|
|
#define CSOR_RW_WRITE 0x1000
|
100 |
|
|
#define CSOR_RW_BOTH 0x1800
|
101 |
|
|
#define CSOR_RW_MASK 0x1800
|
102 |
|
|
#define CSOR_STROBE_DS 0x0400
|
103 |
|
|
#define CSOR_STROBE_AS 0x0000
|
104 |
|
|
#define CSOR_STROBE_MASK 0x0400
|
105 |
|
|
#define CSOR_DSACK_WAIT(x) (wait << 6)
|
106 |
|
|
#define CSOR_DSACK_FTERM (14 << 6)
|
107 |
|
|
#define CSOR_DSACK_EXTERNAL (15 << 6)
|
108 |
|
|
#define CSOR_DSACK_MASK 0x03c0
|
109 |
|
|
#define CSOR_SPACE_CPU 0x0000
|
110 |
|
|
#define CSOR_SPACE_USER 0x0010
|
111 |
|
|
#define CSOR_SPACE_SU 0x0020
|
112 |
|
|
#define CSOR_SPACE_BOTH 0x0030
|
113 |
|
|
#define CSOR_SPACE_MASK 0x0030
|
114 |
|
|
#define CSOR_IPL_ALL 0x0000
|
115 |
|
|
#define CSOR_IPL_PRIORITY(x) (x << 1)
|
116 |
|
|
#define CSOR_IPL_MASK 0x000e
|
117 |
|
|
#define CSOR_AVEC_ON 0x0001
|
118 |
|
|
#define CSOR_AVEC_OFF 0x0000
|
119 |
|
|
#define CSOR_AVEC_MASK 0x0001
|
120 |
|
|
|
121 |
|
|
#define CSBAR_ADDR(x) ((addr >> 11) << 3)
|
122 |
|
|
#define CSBAR_ADDR_MASK 0xfff8
|
123 |
|
|
#define CSBAR_BLKSIZE_2K 0x0000
|
124 |
|
|
#define CSBAR_BLKSIZE_8K 0x0001
|
125 |
|
|
#define CSBAR_BLKSIZE_16K 0x0002
|
126 |
|
|
#define CSBAR_BLKSIZE_64K 0x0003
|
127 |
|
|
#define CSBAR_BLKSIZE_128K 0x0004
|
128 |
|
|
#define CSBAR_BLKSIZE_256K 0x0005
|
129 |
|
|
#define CSBAR_BLKSIZE_512K 0x0006
|
130 |
|
|
#define CSBAR_BLKSIZE_1M 0x0007
|
131 |
|
|
#define CSBAR_BLKSIZE_MASK 0x0007
|
132 |
|
|
|
133 |
|
|
#define CSPAR_DISC 0
|
134 |
|
|
#define CSPAR_ALT 1
|
135 |
|
|
#define CSPAR_CS8 2
|
136 |
|
|
#define CSPAR_CS16 3
|
137 |
|
|
#define CSPAR_MASK 3
|
138 |
|
|
|
139 |
|
|
#define CSPAR0_CSBOOT(x) (x << 0)
|
140 |
|
|
#define CSPAR0_CS0(x) (x << 2)
|
141 |
|
|
#define CSPAR0_CS1(x) (x << 4)
|
142 |
|
|
#define CSPAR0_CS2(x) (x << 6)
|
143 |
|
|
#define CSPAR0_CS3(x) (x << 8)
|
144 |
|
|
#define CSPAR0_CS4(x) (x << 10)
|
145 |
|
|
#define CSPAR0_CS5(x) (x << 12)
|
146 |
|
|
|
147 |
|
|
#define CSPAR1_CS6(x) (x << 0)
|
148 |
|
|
#define CSPAR1_CS7(x) (x << 2)
|
149 |
|
|
#define CSPAR1_CS8(x) (x << 4)
|
150 |
|
|
#define CSPAR1_CS9(x) (x << 6)
|
151 |
|
|
#define CSPAR1_CS10(x) (x << 8)
|
152 |
|
|
|
153 |
|
|
#endif
|