Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
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
15extern void mac_reset(void);
16extern void mac_poweroff(void);
17extern void mac_init_IRQ(void);
18
19extern void mac_irq_enable(struct irq_data *data);
20extern void mac_irq_disable(struct irq_data *data);
21
22/*
23 * Macintosh Table
24 */
25
26struct 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
61#define MAC_IDE_NONE 0
62#define MAC_IDE_QUADRA 1
63#define MAC_IDE_PB 2
64#define MAC_IDE_BABOON 3
65
66#define MAC_SCC_II 1
67#define MAC_SCC_IOP 2
68#define MAC_SCC_QUADRA 3
69#define MAC_SCC_PSC 4
70
71#define MAC_ETHER_NONE 0
72#define MAC_ETHER_SONIC 1
73#define MAC_ETHER_MACE 2
74
75#define MAC_EXP_NONE 0
76#define MAC_EXP_PDS 1 /* Accepts only a PDS card */
77#define MAC_EXP_NUBUS 2 /* Accepts only NuBus card(s) */
78#define MAC_EXP_PDS_NUBUS 3 /* Accepts PDS card and/or NuBus card(s) */
79#define MAC_EXP_PDS_COMM 4 /* Accepts PDS card or Comm Slot card */
80
81#define MAC_FLOPPY_IWM 0
82#define MAC_FLOPPY_SWIM_ADDR1 1
83#define MAC_FLOPPY_SWIM_ADDR2 2
84#define MAC_FLOPPY_SWIM_IOP 3
85#define MAC_FLOPPY_AV 4
86
87extern struct mac_model *macintosh_config;
88
89
90 /*
91 * Internal representation of the Mac hardware, filled in from bootinfo
92 */
93
94struct mac_booter_data
95{
96 unsigned long videoaddr;
97 unsigned long videorow;
98 unsigned long videodepth;
99 unsigned long dimensions;
100 unsigned long boottime;
101 unsigned long gmtbias;
102 unsigned long videological;
103 unsigned long sccbase;
104 unsigned long id;
105 unsigned long memsize;
106 unsigned long cpuid;
107 unsigned long rombase;
108};
109
110extern struct mac_booter_data mac_bi_data;
111
112#endif