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 #include <linux/irq.h> 8 9 #include <asm/bootinfo-mac.h> 10 11 12 /* 13 * Apple Macintoshisms 14 */ 15 16 extern void mac_reset(void); 17 extern void mac_poweroff(void); 18 extern void mac_init_IRQ(void); 19 20 extern void mac_irq_enable(struct irq_data *data); 21 extern void mac_irq_disable(struct irq_data *data); 22 23 /* 24 * Macintosh Table 25 */ 26 27 struct mac_model 28 { 29 short ident; 30 char *name; 31 char adb_type; 32 char via_type; 33 char scsi_type; 34 char ide_type; 35 char scc_type; 36 char ether_type; 37 char expansion_type; 38 char floppy_type; 39 }; 40 41 #define MAC_ADB_NONE 0 42 #define MAC_ADB_II 1 43 #define MAC_ADB_EGRET 2 44 #define MAC_ADB_CUDA 3 45 #define MAC_ADB_PB1 4 46 #define MAC_ADB_PB2 5 47 #define MAC_ADB_IOP 6 48 49 #define MAC_VIA_II 1 50 #define MAC_VIA_IICI 2 51 #define MAC_VIA_QUADRA 3 52 53 #define MAC_SCSI_NONE 0 54 #define MAC_SCSI_OLD 1 55 #define MAC_SCSI_QUADRA 2 56 #define MAC_SCSI_QUADRA2 3 57 #define MAC_SCSI_QUADRA3 4 58 #define MAC_SCSI_IIFX 5 59 #define MAC_SCSI_DUO 6 60 #define MAC_SCSI_LC 7 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