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