Annotation of sys/arch/sparc64/dev/sbusvar.h, Revision 1.1.1.1
1.1 nbrk 1: /* $OpenBSD: sbusvar.h,v 1.9 2007/05/29 09:54:17 sobrado Exp $ */
2: /* $NetBSD: sbusvar.h,v 1.7 1999/06/05 05:30:43 mrg Exp $ */
3:
4: /*-
5: * Copyright (c) 1998 The NetBSD Foundation, Inc.
6: * All rights reserved.
7: *
8: * This code is derived from software contributed to The NetBSD Foundation
9: * by Paul Kranenburg.
10: *
11: * Redistribution and use in source and binary forms, with or without
12: * modification, are permitted provided that the following conditions
13: * are met:
14: * 1. Redistributions of source code must retain the above copyright
15: * notice, this list of conditions and the following disclaimer.
16: * 2. Redistributions in binary form must reproduce the above copyright
17: * notice, this list of conditions and the following disclaimer in the
18: * documentation and/or other materials provided with the distribution.
19: * 3. All advertising materials mentioning features or use of this software
20: * must display the following acknowledgement:
21: * This product includes software developed by the NetBSD
22: * Foundation, Inc. and its contributors.
23: * 4. Neither the name of The NetBSD Foundation nor the names of its
24: * contributors may be used to endorse or promote products derived
25: * from this software without specific prior written permission.
26: *
27: * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
28: * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
29: * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
30: * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
31: * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
32: * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
33: * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
34: * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
35: * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
36: * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
37: * POSSIBILITY OF SUCH DAMAGE.
38: */
39:
40: /*
41: * Copyright (c) 1992, 1993
42: * The Regents of the University of California. All rights reserved.
43: *
44: * This software was developed by the Computer Systems Engineering group
45: * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
46: * contributed to Berkeley.
47: *
48: * All advertising materials mentioning features or use of this software
49: * must display the following acknowledgement:
50: * This product includes software developed by the University of
51: * California, Lawrence Berkeley Laboratory.
52: *
53: * Redistribution and use in source and binary forms, with or without
54: * modification, are permitted provided that the following conditions
55: * are met:
56: * 1. Redistributions of source code must retain the above copyright
57: * notice, this list of conditions and the following disclaimer.
58: * 2. Redistributions in binary form must reproduce the above copyright
59: * notice, this list of conditions and the following disclaimer in the
60: * documentation and/or other materials provided with the distribution.
61: * 3. Neither the name of the University nor the names of its contributors
62: * may be used to endorse or promote products derived from this software
63: * without specific prior written permission.
64: *
65: * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
66: * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
67: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
68: * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
69: * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
70: * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
71: * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
72: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
73: * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
74: * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
75: * SUCH DAMAGE.
76: *
77: * @(#)sbusvar.h 8.1 (Berkeley) 6/11/93
78: */
79:
80: #ifndef _SBUS_VAR_SPARC64_H_
81: #define _SBUS_VAR_SPARC64_H_
82:
83: #include <machine/bus.h>
84:
85: #include <sparc64/dev/iommuvar.h>
86:
87: /*
88: * Most devices are configured according to information kept in
89: * the FORTH PROMs. In particular, we extract the `name', `reg',
90: * and `address' properties of each device attached to the mainbus;
91: * other drives may also use this information. The mainbus itself
92: * (which `is' the CPU, in some sense) gets just the node, with a
93: * fake name ("mainbus").
94: */
95:
96: /* variables per SBus */
97: struct sbus_softc {
98: struct device sc_dev; /* base device */
99: bus_space_tag_t sc_bustag;
100: bus_space_handle_t sc_bh;
101: bus_dma_tag_t sc_dmatag;
102: int sc_clockfreq; /* clock frequency (in Hz) */
103: struct sbus_range *sc_range;
104: int sc_nrange;
105: int sc_burst; /* burst transfer sizes supported */
106: int *sc_intr2ipl; /* Interrupt level translation */
107: int *sc_intr_compat;/* `intr' property to sbus compat */
108:
109: int sc_ign; /* Interrupt group number for this sysio */
110: struct iommu_state sc_is; /* IOMMU state, see iommureg.h */
111: struct strbuf_ctl sc_sb; /* Streaming buffer control */
112: int64_t sc_flush; /* Streaming buffer flush */
113: struct sbus_softc *sc_master; /* main SBus */
114: };
115:
116: bus_addr_t sbus_bus_addr(bus_space_tag_t, u_int, u_int);
117:
118: #endif /* _SBUS_VAR_SPARC64_H_ */
119:
CVSweb