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