macintosh.h 2.2 KB
Newer Older
1
/* SPDX-License-Identifier: GPL-2.0 */
L
Linus Torvalds 已提交
2 3 4 5 6 7
#ifndef __ASM_MACINTOSH_H
#define __ASM_MACINTOSH_H

#include <linux/seq_file.h>
#include <linux/interrupt.h>

8 9 10
#include <asm/bootinfo-mac.h>


L
Linus Torvalds 已提交
11 12 13 14 15 16 17
/*
 *	Apple Macintoshisms
 */

extern void mac_reset(void);
extern void mac_poweroff(void);
extern void mac_init_IRQ(void);
F
Finn Thain 已提交
18

19 20
extern void mac_irq_enable(struct irq_data *data);
extern void mac_irq_disable(struct irq_data *data);
L
Linus Torvalds 已提交
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35

/*
 *	Macintosh Table
 */

struct mac_model
{
	short ident;
	char *name;
	char adb_type;
	char via_type;
	char scsi_type;
	char ide_type;
	char scc_type;
	char ether_type;
36
	char expansion_type;
37
	char floppy_type;
L
Linus Torvalds 已提交
38 39 40 41
};

#define MAC_ADB_NONE		0
#define MAC_ADB_II		1
42
#define MAC_ADB_EGRET		2
L
Linus Torvalds 已提交
43 44 45 46 47 48
#define MAC_ADB_CUDA		3
#define MAC_ADB_PB1		4
#define MAC_ADB_PB2		5
#define MAC_ADB_IOP		6

#define MAC_VIA_II		1
F
Finn Thain 已提交
49
#define MAC_VIA_IICI		2
L
Linus Torvalds 已提交
50 51 52 53 54 55 56
#define MAC_VIA_QUADRA		3

#define MAC_SCSI_NONE		0
#define MAC_SCSI_OLD		1
#define MAC_SCSI_QUADRA		2
#define MAC_SCSI_QUADRA2	3
#define MAC_SCSI_QUADRA3	4
F
Finn Thain 已提交
57 58
#define MAC_SCSI_IIFX		5
#define MAC_SCSI_DUO		6
59
#define MAC_SCSI_LC		7
F
Finn Thain 已提交
60
#define MAC_SCSI_LATE		8
L
Linus Torvalds 已提交
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75

#define MAC_IDE_NONE		0
#define MAC_IDE_QUADRA		1
#define MAC_IDE_PB		2
#define MAC_IDE_BABOON		3

#define MAC_SCC_II		1
#define MAC_SCC_IOP		2
#define MAC_SCC_QUADRA		3
#define MAC_SCC_PSC		4

#define MAC_ETHER_NONE		0
#define MAC_ETHER_SONIC		1
#define MAC_ETHER_MACE		2

76 77 78 79 80
#define MAC_EXP_NONE		0
#define MAC_EXP_PDS		1 /* Accepts only a PDS card */
#define MAC_EXP_NUBUS		2 /* Accepts only NuBus card(s) */
#define MAC_EXP_PDS_NUBUS	3 /* Accepts PDS card and/or NuBus card(s) */
#define MAC_EXP_PDS_COMM	4 /* Accepts PDS card or Comm Slot card */
L
Linus Torvalds 已提交
81

82 83 84 85 86 87
#define MAC_FLOPPY_IWM		0
#define MAC_FLOPPY_SWIM_ADDR1	1
#define MAC_FLOPPY_SWIM_ADDR2	2
#define MAC_FLOPPY_SWIM_IOP	3
#define MAC_FLOPPY_AV		4

L
Linus Torvalds 已提交
88 89
extern struct mac_model *macintosh_config;

90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112

    /*
     * Internal representation of the Mac hardware, filled in from bootinfo
     */

struct mac_booter_data
{
	unsigned long videoaddr;
	unsigned long videorow;
	unsigned long videodepth;
	unsigned long dimensions;
	unsigned long boottime;
	unsigned long gmtbias;
	unsigned long videological;
	unsigned long sccbase;
	unsigned long id;
	unsigned long memsize;
	unsigned long cpuid;
	unsigned long rombase;
};

extern struct mac_booter_data mac_bi_data;

L
Linus Torvalds 已提交
113
#endif