1 #ifndef __ASM_MACINTOSH_H
2 #define __ASM_MACINTOSH_H
3 
4 #include <linux/seq_file.h>
5 #include <linux/interrupt.h>
6 
7 /*
8  *	Apple Macintoshisms
9  */
10 
11 extern void mac_reset(void);
12 extern void mac_poweroff(void);
13 extern void mac_init_IRQ(void);
14 extern int mac_irq_pending(unsigned int);
15 
16 /*
17  *	Floppy driver magic hook - probably shouldn't be here
18  */
19 
20 extern void via1_set_head(int);
21 
22 /*
23  *	Macintosh Table
24  */
25 
26 struct mac_model
27 {
28 	short ident;
29 	char *name;
30 	char adb_type;
31 	char via_type;
32 	char scsi_type;
33 	char ide_type;
34 	char scc_type;
35 	char ether_type;
36 	char nubus_type;
37 	char floppy_type;
38 };
39 
40 #define MAC_ADB_NONE		0
41 #define MAC_ADB_II		1
42 #define MAC_ADB_IISI		2
43 #define MAC_ADB_CUDA		3
44 #define MAC_ADB_PB1		4
45 #define MAC_ADB_PB2		5
46 #define MAC_ADB_IOP		6
47 
48 #define MAC_VIA_II		1
49 #define MAC_VIA_IIci		2
50 #define MAC_VIA_QUADRA		3
51 
52 #define MAC_SCSI_NONE		0
53 #define MAC_SCSI_OLD		1
54 #define MAC_SCSI_QUADRA		2
55 #define MAC_SCSI_QUADRA2	3
56 #define MAC_SCSI_QUADRA3	4
57 
58 #define MAC_IDE_NONE		0
59 #define MAC_IDE_QUADRA		1
60 #define MAC_IDE_PB		2
61 #define MAC_IDE_BABOON		3
62 
63 #define MAC_SCC_II		1
64 #define MAC_SCC_IOP		2
65 #define MAC_SCC_QUADRA		3
66 #define MAC_SCC_PSC		4
67 
68 #define MAC_ETHER_NONE		0
69 #define MAC_ETHER_SONIC		1
70 #define MAC_ETHER_MACE		2
71 
72 #define MAC_NO_NUBUS		0
73 #define MAC_NUBUS		1
74 
75 #define MAC_FLOPPY_IWM		0
76 #define MAC_FLOPPY_SWIM_ADDR1	1
77 #define MAC_FLOPPY_SWIM_ADDR2	2
78 #define MAC_FLOPPY_SWIM_IOP	3
79 #define MAC_FLOPPY_AV		4
80 
81 /*
82  *	Gestalt numbers
83  */
84 
85 #define MAC_MODEL_II		6
86 #define MAC_MODEL_IIX		7
87 #define MAC_MODEL_IICX		8
88 #define MAC_MODEL_SE30		9
89 #define MAC_MODEL_IICI		11
90 #define MAC_MODEL_IIFX		13	/* And well numbered it is too */
91 #define MAC_MODEL_IISI		18
92 #define MAC_MODEL_LC		19
93 #define MAC_MODEL_Q900		20
94 #define MAC_MODEL_PB170		21
95 #define MAC_MODEL_Q700		22
96 #define MAC_MODEL_CLII		23	/* aka: P200 */
97 #define MAC_MODEL_PB140		25
98 #define MAC_MODEL_Q950		26	/* aka: WGS95 */
99 #define MAC_MODEL_LCIII		27	/* aka: P450 */
100 #define MAC_MODEL_PB210		29
101 #define MAC_MODEL_C650		30
102 #define MAC_MODEL_PB230		32
103 #define MAC_MODEL_PB180		33
104 #define MAC_MODEL_PB160		34
105 #define MAC_MODEL_Q800		35	/* aka: WGS80 */
106 #define MAC_MODEL_Q650		36
107 #define MAC_MODEL_LCII		37	/* aka: P400/405/410/430 */
108 #define MAC_MODEL_PB250		38
109 #define MAC_MODEL_IIVI		44
110 #define MAC_MODEL_P600		45	/* aka: P600CD */
111 #define MAC_MODEL_IIVX		48
112 #define MAC_MODEL_CCL		49	/* aka: P250 */
113 #define MAC_MODEL_PB165C	50
114 #define MAC_MODEL_C610		52	/* aka: WGS60 */
115 #define MAC_MODEL_Q610		53
116 #define MAC_MODEL_PB145		54	/* aka: PB145B */
117 #define MAC_MODEL_P520		56	/* aka: LC520 */
118 #define MAC_MODEL_C660		60
119 #define MAC_MODEL_P460		62	/* aka: LCIII+, P466/P467 */
120 #define MAC_MODEL_PB180C	71
121 #define MAC_MODEL_PB520		72	/* aka: PB520C, PB540, PB540C, PB550C */
122 #define MAC_MODEL_PB270C	77
123 #define MAC_MODEL_Q840		78
124 #define MAC_MODEL_P550		80	/* aka: LC550, P560 */
125 #define MAC_MODEL_CCLII		83	/* aka: P275 */
126 #define MAC_MODEL_PB165		84
127 #define MAC_MODEL_PB190		85	/* aka: PB190CS */
128 #define MAC_MODEL_TV		88
129 #define MAC_MODEL_P475		89	/* aka: LC475, P476 */
130 #define MAC_MODEL_P475F		90	/* aka: P475 w/ FPU (no LC040) */
131 #define MAC_MODEL_P575		92	/* aka: LC575, P577/P578 */
132 #define MAC_MODEL_Q605		94
133 #define MAC_MODEL_Q605_ACC	95	/* Q605 accelerated to 33 MHz */
134 #define MAC_MODEL_Q630		98	/* aka: LC630, P630/631/635/636/637/638/640 */
135 #define MAC_MODEL_P588		99	/* aka: LC580, P580 */
136 #define MAC_MODEL_PB280		102
137 #define MAC_MODEL_PB280C	103
138 #define MAC_MODEL_PB150		115
139 
140 extern struct mac_model *macintosh_config;
141 
142 #endif
143