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#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 88extern struct mac_model *macintosh_config; 89 90 91 /* 92 * Internal representation of the Mac hardware, filled in from bootinfo 93 */ 94 95struct 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 111extern struct mac_booter_data mac_bi_data; 112 113#endif 114