1 1.1.2.1 cliff /* $NetBSD: rmixl_pcixvar.h,v 1.1.2.1 2010/04/07 19:25:48 cliff Exp $ */ 2 1.1.2.1 cliff 3 1.1.2.1 cliff #ifndef _MIPS_RMI_PCIX_VAR_H_ 4 1.1.2.1 cliff #define _MIPS_RMI_PCIX_VAR_H_ 5 1.1.2.1 cliff 6 1.1.2.1 cliff #include <dev/pci/pcivar.h> 7 1.1.2.1 cliff 8 1.1.2.1 cliff typedef struct rmixl_pcix_dispatch { 9 1.1.2.1 cliff LIST_ENTRY(rmixl_pcix_dispatch) next; 10 1.1.2.1 cliff int (*func)(void *); 11 1.1.2.1 cliff void *arg; 12 1.1.2.1 cliff u_int bitno; 13 1.1.2.1 cliff u_int irq; 14 1.1.2.1 cliff struct evcnt count; 15 1.1.2.1 cliff char count_name[32]; 16 1.1.2.1 cliff } rmixl_pcix_dispatch_t; 17 1.1.2.1 cliff 18 1.1.2.1 cliff struct rmixl_pcix_softc; 19 1.1.2.1 cliff 20 1.1.2.1 cliff typedef struct rmixl_pcix_intr { 21 1.1.2.1 cliff struct rmixl_pcix_softc *sc; 22 1.1.2.1 cliff LIST_HEAD(, rmixl_pcix_dispatch) dispatch; 23 1.1.2.1 cliff u_int intrpin; 24 1.1.2.1 cliff u_int ipl; 25 1.1.2.1 cliff bool enabled; 26 1.1.2.1 cliff void *ih; /* mips interrupt handle */ 27 1.1.2.1 cliff } rmixl_pcix_intr_t; 28 1.1.2.1 cliff 29 1.1.2.1 cliff #define RMIXL_PCIX_NINTR 4 /* PCI INT[A,B,C,D] */ 30 1.1.2.1 cliff 31 1.1.2.1 cliff typedef struct rmixl_pcix_softc { 32 1.1.2.1 cliff device_t sc_dev; 33 1.1.2.1 cliff struct mips_pci_chipset sc_pci_chipset; 34 1.1.2.1 cliff bus_space_tag_t sc_pci_cfg_memt; 35 1.1.2.1 cliff bus_space_tag_t sc_pci_ecfg_memt; 36 1.1.2.1 cliff bus_dma_tag_t sc_29bit_dmat; 37 1.1.2.1 cliff bus_dma_tag_t sc_32bit_dmat; 38 1.1.2.1 cliff bus_dma_tag_t sc_64bit_dmat; 39 1.1.2.1 cliff int sc_tmsk; 40 1.1.2.1 cliff void *sc_fatal_ih; 41 1.1.2.1 cliff void *sc_ih; 42 1.1.2.1 cliff rmixl_pcix_intr_t sc_intr[RMIXL_PCIX_NINTR]; 43 1.1.2.1 cliff bool sc_intr_init_done; 44 1.1.2.1 cliff } rmixl_pcix_softc_t; 45 1.1.2.1 cliff 46 1.1.2.1 cliff 47 1.1.2.1 cliff extern void rmixl_physaddr_init_pcix(struct extent *); 48 1.1.2.1 cliff 49 1.1.2.1 cliff #endif /* _MIPS_RMI_PCIX_VAR_H_ */ 50 1.1.2.1 cliff 51