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
17 * head.S maps the videomem to VIDEOMEMBASE
20 #define VIDEOMEMBASE 0xf0000000
21 #define VIDEOMEMSIZE (4096*1024)
22 #define VIDEOMEMMASK (-4096*1024)
26 #include <linux/types.h>
29 /* Mac SCSI Controller 5380 */
31 #define MAC_5380_BAS (0x50F10000) /* This is definitely wrong!! */
49 #define mac_scsi ((*(volatile struct MAC_5380 *)MAC_5380_BAS))
55 #define MAC_SCC_BAS (0x50F04000)
66 # define mac_scc ((*(volatile struct SCC*)MAC_SCC_BAS))
71 #define MACHW_DECLARE(name) unsigned name : 1
72 #define MACHW_SET(name) (mac_hw_present.name = 1)
73 #define MACHW_PRESENT(name) (mac_hw_present.name)
75 struct mac_hw_present
{
78 /* disk storage interfaces */
79 MACHW_DECLARE(MAC_SCSI_80
); /* Directly mapped NCR5380 */
80 MACHW_DECLARE(MAC_SCSI_96
); /* 53c9[46] */
81 MACHW_DECLARE(MAC_SCSI_96_2
); /* 2nd 53c9[46] Q900 and Q950 */
82 MACHW_DECLARE(IDE
); /* IDE Interface */
83 /* other I/O hardware */
84 MACHW_DECLARE(SCC
); /* Serial Communications Contr. */
86 MACHW_DECLARE(SCSI_DMA
); /* DMA for the NCR5380 */
87 /* real time clocks */
88 MACHW_DECLARE(RTC_CLK
); /* clock chip */
89 /* supporting hardware */
90 MACHW_DECLARE(VIA1
); /* Versatile Interface Ad. 1 */
91 MACHW_DECLARE(VIA2
); /* Versatile Interface Ad. 2 */
92 MACHW_DECLARE(RBV
); /* Versatile Interface Ad. 2+ */
94 MACHW_DECLARE(NUBUS
); /* NUBUS */
97 extern struct mac_hw_present mac_hw_present
;
99 #endif /* __ASSEMBLY__ */
101 #endif /* linux/machw.h */