xref: /openbmc/linux/arch/m68k/include/asm/macintosh.h (revision cfbb9be8)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __ASM_MACINTOSH_H
3 #define __ASM_MACINTOSH_H
4 
5 #include <linux/seq_file.h>
6 #include <linux/interrupt.h>
7 
8 #include <asm/bootinfo-mac.h>
9 
10 
11 /*
12  *	Apple Macintoshisms
13  */
14 
15 extern void mac_reset(void);
16 extern void mac_poweroff(void);
17 extern void mac_init_IRQ(void);
18 
19 extern void mac_irq_enable(struct irq_data *data);
20 extern void mac_irq_disable(struct irq_data *data);
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 expansion_type;
37 	char floppy_type;
38 };
39 
40 #define MAC_ADB_NONE		0
41 #define MAC_ADB_II		1
42 #define MAC_ADB_EGRET		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 #define MAC_SCSI_IIFX		5
58 #define MAC_SCSI_DUO		6
59 #define MAC_SCSI_LC		7
60 #define MAC_SCSI_LATE		8
61 
62 #define MAC_IDE_NONE		0
63 #define MAC_IDE_QUADRA		1
64 #define MAC_IDE_PB		2
65 #define MAC_IDE_BABOON		3
66 
67 #define MAC_SCC_II		1
68 #define MAC_SCC_IOP		2
69 #define MAC_SCC_QUADRA		3
70 #define MAC_SCC_PSC		4
71 
72 #define MAC_ETHER_NONE		0
73 #define MAC_ETHER_SONIC		1
74 #define MAC_ETHER_MACE		2
75 
76 #define MAC_EXP_NONE		0
77 #define MAC_EXP_PDS		1 /* Accepts only a PDS card */
78 #define MAC_EXP_NUBUS		2 /* Accepts only NuBus card(s) */
79 #define MAC_EXP_PDS_NUBUS	3 /* Accepts PDS card and/or NuBus card(s) */
80 #define MAC_EXP_PDS_COMM	4 /* Accepts PDS card or Comm Slot card */
81 
82 #define MAC_FLOPPY_IWM		0
83 #define MAC_FLOPPY_SWIM_ADDR1	1
84 #define MAC_FLOPPY_SWIM_ADDR2	2
85 #define MAC_FLOPPY_SWIM_IOP	3
86 #define MAC_FLOPPY_AV		4
87 
88 extern struct mac_model *macintosh_config;
89 
90 
91     /*
92      * Internal representation of the Mac hardware, filled in from bootinfo
93      */
94 
95 struct mac_booter_data
96 {
97 	unsigned long videoaddr;
98 	unsigned long videorow;
99 	unsigned long videodepth;
100 	unsigned long dimensions;
101 	unsigned long boottime;
102 	unsigned long gmtbias;
103 	unsigned long videological;
104 	unsigned long sccbase;
105 	unsigned long id;
106 	unsigned long memsize;
107 	unsigned long cpuid;
108 	unsigned long rombase;
109 };
110 
111 extern struct mac_booter_data mac_bi_data;
112 
113 #endif
114