2 ** linux/machw.h -- This header defines some macros and pointers for
3 ** the various Macintosh custom hardware registers.
5 ** Copyright 1997 by Michael Schmitz
7 ** This file is subject to the terms and conditions of the GNU General Public
8 ** License. See the file COPYING in the main directory of this archive
16 #include <linux/types.h>
18 /* Mac SCSI Controller 5380 */
20 #define MAC_5380_BAS (0x50F10000) /* This is definitely wrong!! */
38 #define mac_scsi ((*(volatile struct MAC_5380 *)MAC_5380_BAS))
44 #define MAC_SCC_BAS (0x50F04000)
55 # define mac_scc ((*(volatile struct SCC*)MAC_SCC_BAS))
61 #define VIA1_BAS (0x50F00000)
62 #define VIA2_BAS (0x50F02000)
63 #define VIA2_BAS_IIci (0x50F26000)
85 u_char dummy10
[0x199];
87 u_char dummy11
[0x199];
89 u_char dummy12
[0x199];
91 u_char dummy13
[0x199];
93 u_char dummy14
[0x199];
95 u_char dummy15
[0x199];
97 u_char dummy16
[0x199];
100 # define via_1 ((*(volatile struct VIA *)VIA1_BAS))
101 # define via_2 ((*(volatile struct VIA *)VIA2_BAS))
102 # define via1_regp ((volatile unsigned char *)VIA1_BAS)
105 * OSS/RBV base address
108 #define OSS_BAS 0x50f1a000
109 #define PSC_BAS 0x50f31000
111 /* move to oss.h?? */
118 #define MACHW_DECLARE(name) unsigned name : 1
119 #define MACHW_SET(name) (mac_hw_present.name = 1)
120 #define MACHW_PRESENT(name) (mac_hw_present.name)
125 /* disk storage interfaces */
126 MACHW_DECLARE(MAC_SCSI_80
); /* Directly mapped NCR5380 */
127 MACHW_DECLARE(MAC_SCSI_96
); /* 53c9[46] */
128 MACHW_DECLARE(MAC_SCSI_96_2
); /* 2nd 53c9[46] Q900 and Q950 */
129 MACHW_DECLARE(IDE
); /* IDE Interface */
130 /* other I/O hardware */
131 MACHW_DECLARE(SCC
); /* Serial Communications Contr. */
133 MACHW_DECLARE(SCSI_DMA
); /* DMA for the NCR5380 */
134 /* real time clocks */
135 MACHW_DECLARE(RTC_CLK
); /* clock chip */
136 /* supporting hardware */
137 MACHW_DECLARE(VIA1
); /* Versatile Interface Ad. 1 */
138 MACHW_DECLARE(VIA2
); /* Versatile Interface Ad. 2 */
139 MACHW_DECLARE(RBV
); /* Versatile Interface Ad. 2+ */
141 MACHW_DECLARE(NUBUS
); /* NUBUS */
144 /* extern struct mac_hw_present mac_hw_present; */
146 #endif /* linux/machw.h */