summaryrefslogtreecommitdiff
path: root/sys/dev/pci/pciidevar.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/pci/pciidevar.h')
-rw-r--r--sys/dev/pci/pciidevar.h37
1 files changed, 36 insertions, 1 deletions
diff --git a/sys/dev/pci/pciidevar.h b/sys/dev/pci/pciidevar.h
index b552dd60036..c957ba9db2d 100644
--- a/sys/dev/pci/pciidevar.h
+++ b/sys/dev/pci/pciidevar.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: pciidevar.h,v 1.16 2004/10/17 19:00:46 grange Exp $ */
+/* $OpenBSD: pciidevar.h,v 1.17 2009/01/04 10:22:01 jsg Exp $ */
/* $NetBSD: pciidevar.h,v 1.6 2001/01/12 16:04:00 bouyer Exp $ */
/*
@@ -122,6 +122,41 @@ struct pciide_softc {
#define PCIIDE_DMATBL_WRITE(sc, chan, val) \
(sc)->sc_dmatbl_write((sc), (chan), (val))
+int pciide_mapregs_compat( struct pci_attach_args *,
+ struct pciide_channel *, int, bus_size_t *, bus_size_t *);
+int pciide_mapregs_native(struct pci_attach_args *,
+ struct pciide_channel *, bus_size_t *, bus_size_t *,
+ int (*pci_intr)(void *));
+void pciide_mapreg_dma(struct pciide_softc *,
+ struct pci_attach_args *);
+int pciide_chansetup(struct pciide_softc *, int, pcireg_t);
+void pciide_mapchan(struct pci_attach_args *,
+ struct pciide_channel *, pcireg_t, bus_size_t *, bus_size_t *,
+ int (*pci_intr)(void *));
+int pciide_chan_candisable(struct pciide_channel *);
+void pciide_map_compat_intr( struct pci_attach_args *,
+ struct pciide_channel *, int, int);
+void pciide_unmap_compat_intr( struct pci_attach_args *,
+ struct pciide_channel *, int, int);
+int pciide_compat_intr(void *);
+int pciide_pci_intr(void *);
+int pciide_intr_flag(struct pciide_channel *);
+
+u_int8_t pciide_dmacmd_read(struct pciide_softc *, int);
+void pciide_dmacmd_write(struct pciide_softc *, int, u_int8_t);
+u_int8_t pciide_dmactl_read(struct pciide_softc *, int);
+void pciide_dmactl_write(struct pciide_softc *, int, u_int8_t);
+void pciide_dmatbl_write(struct pciide_softc *, int, u_int32_t);
+
+void pciide_channel_dma_setup(struct pciide_channel *);
+int pciide_dma_table_setup(struct pciide_softc *, int, int);
+int pciide_dma_init(void *, int, int, void *, size_t, int);
+void pciide_dma_start(void *, int, int);
+int pciide_dma_finish(void *, int, int, int);
+void pciide_irqack(struct channel_softc *);
+void pciide_print_modes(struct pciide_channel *);
+void pciide_print_channels(int, pcireg_t);
+
/*
* Functions defined by machine-dependent code.
*/