OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [linux/] [linux-2.4/] [include/] [asm-m68k/] [machw.h] - Blame information for rev 1765

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 1276 phoenix
/*
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
#if 0
29
/* Mac SCSI Controller 5380 */
30
 
31
#define MAC_5380_BAS    (0x50F10000) /* This is definitely wrong!! */
32
struct MAC_5380 {
33
        u_char  scsi_data;
34
        u_char  char_dummy1;
35
        u_char  scsi_icr;
36
        u_char  char_dummy2;
37
        u_char  scsi_mode;
38
        u_char  char_dummy3;
39
        u_char  scsi_tcr;
40
        u_char  char_dummy4;
41
        u_char  scsi_idstat;
42
        u_char  char_dummy5;
43
        u_char  scsi_dmastat;
44
        u_char  char_dummy6;
45
        u_char  scsi_targrcv;
46
        u_char  char_dummy7;
47
        u_char  scsi_inircv;
48
};
49
#define mac_scsi       ((*(volatile struct MAC_5380 *)MAC_5380_BAS))
50
 
51
/*
52
** SCC Z8530
53
*/
54
 
55
#define MAC_SCC_BAS (0x50F04000)
56
struct MAC_SCC
57
 {
58
  u_char cha_a_ctrl;
59
  u_char char_dummy1;
60
  u_char cha_a_data;
61
  u_char char_dummy2;
62
  u_char cha_b_ctrl;
63
  u_char char_dummy3;
64
  u_char cha_b_data;
65
 };
66
# define mac_scc ((*(volatile struct SCC*)MAC_SCC_BAS))
67
#endif
68
 
69
/* hardware stuff */
70
 
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)
74
 
75
struct mac_hw_present {
76
  /* video hardware */
77
  /* sound hardware */
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. */
85
  /* DMA */
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+ */
93
  /* NUBUS */
94
  MACHW_DECLARE(NUBUS);           /* NUBUS */
95
};
96
 
97
extern struct mac_hw_present mac_hw_present;
98
 
99
#endif /* __ASSEMBLY__ */
100
 
101
#endif /* linux/machw.h */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.