xref: /openbsd/sys/arch/arm/include/simplebusvar.h (revision 94673892)
1*94673892Sjsg /* $OpenBSD: simplebusvar.h,v 1.1 2023/09/22 01:10:43 jsg Exp $ */
2*94673892Sjsg /*
3*94673892Sjsg  * Copyright (c) 2016 Patrick Wildt <patrick@blueri.se>
4*94673892Sjsg  *
5*94673892Sjsg  * Permission to use, copy, modify, and distribute this software for any
6*94673892Sjsg  * purpose with or without fee is hereby granted, provided that the above
7*94673892Sjsg  * copyright notice and this permission notice appear in all copies.
8*94673892Sjsg  *
9*94673892Sjsg  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10*94673892Sjsg  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11*94673892Sjsg  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12*94673892Sjsg  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13*94673892Sjsg  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14*94673892Sjsg  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15*94673892Sjsg  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16*94673892Sjsg  */
17*94673892Sjsg 
18*94673892Sjsg struct simplebus_softc {
19*94673892Sjsg 	struct device		 sc_dev;
20*94673892Sjsg 	int			 sc_node;
21*94673892Sjsg 	bus_space_tag_t		 sc_iot;
22*94673892Sjsg 	bus_dma_tag_t		 sc_dmat;
23*94673892Sjsg 	int			 sc_acells;
24*94673892Sjsg 	int			 sc_scells;
25*94673892Sjsg 	int			 sc_pacells;
26*94673892Sjsg 	int			 sc_pscells;
27*94673892Sjsg 	struct bus_space	 sc_bus;
28*94673892Sjsg 	struct arm32_bus_dma_tag sc_dma;
29*94673892Sjsg 	int			*sc_ranges;
30*94673892Sjsg 	int			 sc_rangeslen;
31*94673892Sjsg 	int			*sc_dmaranges;
32*94673892Sjsg 	int			 sc_dmarangeslen;
33*94673892Sjsg 	int			 sc_early;
34*94673892Sjsg 	int			 sc_early_nodes[64];
35*94673892Sjsg };
36*94673892Sjsg 
37*94673892Sjsg extern void simplebus_attach(struct device *, struct device *, void *);
38