/* SPDX-License-Identifier: GPL-2.0 */ #ifndef __ASM_MACINTOSH_H #define __ASM_MACINTOSH_H #include #include #include #include /* * Apple Macintoshisms */ extern void mac_reset(void); extern void mac_poweroff(void); extern void mac_init_IRQ(void); extern void mac_irq_enable(struct irq_data *data); extern void mac_irq_disable(struct irq_data *data); extern unsigned char mac_pram_read_byte(int); extern void mac_pram_write_byte(unsigned char, int); extern ssize_t mac_pram_get_size(void); /* * 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; char expansion_type; char floppy_type; }; #define MAC_ADB_NONE 0 #define MAC_ADB_II 1 #define MAC_ADB_EGRET 2 #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 #define MAC_VIA_IICI 2 #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 #define MAC_SCSI_IIFX 5 #define MAC_SCSI_DUO 6 #define MAC_SCSI_LC 7 #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 #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 */ #define MAC_FLOPPY_UNSUPPORTED 0 #define MAC_FLOPPY_SWIM_IOP 1 #define MAC_FLOPPY_OLD 2 #define MAC_FLOPPY_QUADRA 3 #define MAC_FLOPPY_LC 4 extern struct mac_model *macintosh_config; /* * 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; #endif