1/* 2** linux/machw.h -- This header defines some macros and pointers for 3** the various Macintosh custom hardware registers. 4** 5** Copyright 1997 by Michael Schmitz 6** 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 9** for more details. 10** 11*/ 12 13#ifndef _ASM_MACHW_H_ 14#define _ASM_MACHW_H_ 15 16/* 17 * head.S maps the videomem to VIDEOMEMBASE 18 */ 19 20#define VIDEOMEMBASE 0xf0000000 21#define VIDEOMEMSIZE (4096*1024) 22#define VIDEOMEMMASK (-4096*1024) 23 24#ifndef __ASSEMBLY__ 25 26#include <linux/types.h> 27 28 29/* hardware stuff */ 30 31#define MACHW_DECLARE(name) unsigned name : 1 32#define MACHW_SET(name) (mac_hw_present.name = 1) 33#define MACHW_PRESENT(name) (mac_hw_present.name) 34 35struct mac_hw_present { 36 /* video hardware */ 37 /* sound hardware */ 38 /* disk storage interfaces */ 39 MACHW_DECLARE(MAC_SCSI_80); /* Directly mapped NCR5380 */ 40 MACHW_DECLARE(MAC_SCSI_96); /* 53c9[46] */ 41 MACHW_DECLARE(MAC_SCSI_96_2); /* 2nd 53c9[46] Q900 and Q950 */ 42 MACHW_DECLARE(IDE); /* IDE Interface */ 43 /* other I/O hardware */ 44 MACHW_DECLARE(SCC); /* Serial Communications Contr. */ 45 /* DMA */ 46 MACHW_DECLARE(SCSI_DMA); /* DMA for the NCR5380 */ 47 /* real time clocks */ 48 MACHW_DECLARE(RTC_CLK); /* clock chip */ 49 /* supporting hardware */ 50 MACHW_DECLARE(VIA1); /* Versatile Interface Ad. 1 */ 51 MACHW_DECLARE(VIA2); /* Versatile Interface Ad. 2 */ 52 MACHW_DECLARE(RBV); /* Versatile Interface Ad. 2+ */ 53 /* NUBUS */ 54 MACHW_DECLARE(NUBUS); /* NUBUS */ 55}; 56 57extern struct mac_hw_present mac_hw_present; 58 59#endif /* __ASSEMBLY__ */ 60 61#endif /* linux/machw.h */ 62