gemini_obiovar.h revision 1.1 1 /* $NetBSD: gemini_obiovar.h,v 1.1 2008/10/24 04:23:18 matt Exp $ */
2
3 /* adapted from:
4 * NetBSD: omap2_obiovar.h,v 1.1 2008/08/27 11:03:10 matt Exp
5 */
6
7 /*
8 * Copyright (c) 2007 Microsoft
9 * All rights reserved.
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 Microsoft
22 *
23 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
24 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
25 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
26 * IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTERS BE LIABLE FOR ANY DIRECT,
27 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
28 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
29 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33 * SUCH DAMAGE.
34 */
35 #ifndef _ARM_GEMINI_OBIOVAR_H_
36 #define _ARM_GEMINI_OBIOVAR_H_
37
38 #include <dev/pci/pcivar.h>
39 #include <arm/pci_machdep.h>
40
41 struct obio_attach_args {
42 bus_space_tag_t obio_iot;
43 bus_addr_t obio_addr;
44 bus_size_t obio_size;
45 int obio_intr;
46 bus_dma_tag_t obio_dmat;
47 unsigned int obio_mult;
48 unsigned int obio_intrbase;
49 };
50
51 typedef struct obio_softc {
52 struct device sc_dev;
53 bus_dma_tag_t sc_dmat;
54 bus_space_tag_t sc_iot;
55 bus_space_handle_t sc_ioh;
56 bus_addr_t sc_base;
57 bus_size_t sc_size;
58
59 /* Bus space, DMA, and PCI tags for the PCI bus. */
60 bus_space_handle_t sc_pcicfg_ioh;
61 struct arm32_bus_dma_tag sc_pci_dmat;
62 struct arm32_pci_chipset sc_pci_chipset;
63 } obio_softc_t;
64
65 extern void gemini_pci_init(pci_chipset_tag_t, void *);
66
67 #endif /* _ARM_OMAP_GEMINI_OBIOVAR_H_ */
68