diff options
Diffstat (limited to 'sys/sparc64/pci/psychovar.h')
-rw-r--r-- | sys/sparc64/pci/psychovar.h | 47 |
1 files changed, 18 insertions, 29 deletions
diff --git a/sys/sparc64/pci/psychovar.h b/sys/sparc64/pci/psychovar.h index 5532d16..0f828ee 100644 --- a/sys/sparc64/pci/psychovar.h +++ b/sys/sparc64/pci/psychovar.h @@ -36,49 +36,38 @@ * per pair of psychos. */ struct psycho_softc { - struct bus_dma_methods *sc_dma_methods; + /* + * This is here so that we can hook up the common bus interface + * methods in ofw_pci.c directly. + */ + struct ofw_pci_softc sc_ops; - device_t sc_dev; + struct iommu_state *sc_is; + struct bus_dma_methods *sc_dma_methods; struct mtx *sc_mtx; - /* Interrupt Group Number for this device */ - uint32_t sc_ign; - - bus_addr_t sc_pcictl; - - phandle_t sc_node; /* Firmware node */ - u_int sc_mode; -#define PSYCHO_MODE_SABRE 0 -#define PSYCHO_MODE_PSYCHO 1 - - /* Bus A or B of a psycho pair? */ - u_int sc_half; - - struct iommu_state *sc_is; - struct resource *sc_mem_res; struct resource *sc_irq_res[PSYCHO_NINTR]; void *sc_ihand[PSYCHO_NINTR]; - struct ofw_bus_iinfo sc_pci_iinfo; + uint8_t sc_pci_hpbcfg[16]; - /* Tags for PCI access */ - bus_space_tag_t sc_pci_cfgt; - bus_space_tag_t sc_pci_iot; - bus_dma_tag_t sc_pci_dmat; + SLIST_ENTRY(psycho_softc) sc_link; - bus_space_handle_t sc_pci_bh[PSYCHO_NRANGE]; + device_t sc_dev; - struct rman sc_pci_mem_rman; - struct rman sc_pci_io_rman; + bus_addr_t sc_pcictl; - uint8_t sc_pci_secbus; - uint8_t sc_pci_subbus; + u_int sc_mode; +#define PSYCHO_MODE_SABRE 0 +#define PSYCHO_MODE_PSYCHO 1 - uint8_t sc_pci_hpbcfg[16]; + /* Bus A or B of a psycho pair? */ + u_int sc_half; - SLIST_ENTRY(psycho_softc) sc_link; + /* Interrupt Group Number for this device */ + uint32_t sc_ign; }; #endif /* !_SPARC64_PCI_PSYCHOVAR_H_ */ |