summaryrefslogtreecommitdiffstats
path: root/sys/dev/ct/bshwvar.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/ct/bshwvar.h')
-rw-r--r--sys/dev/ct/bshwvar.h32
1 files changed, 21 insertions, 11 deletions
diff --git a/sys/dev/ct/bshwvar.h b/sys/dev/ct/bshwvar.h
index 6e31b4d..17268f0 100644
--- a/sys/dev/ct/bshwvar.h
+++ b/sys/dev/ct/bshwvar.h
@@ -1,5 +1,5 @@
/* $FreeBSD$ */
-/* $NecBSD: bshwvar.h,v 1.3 1999/04/15 01:36:10 kmatsuda Exp $ */
+/* $NecBSD: bshwvar.h,v 1.3.14.3 2001/06/21 04:07:37 honda Exp $ */
/* $NetBSD$ */
/*
@@ -46,12 +46,11 @@ struct bshw {
#define BSHW_SMFIFO 0x02
#define BSHW_DOUBLE_DMACHAN 0x04
u_int hw_flags;
+ u_int hw_sregaddr;
- u_int sregaddr;
-
- int ((*dma_init) __P((struct ct_softc *)));
- void ((*dma_start) __P((struct ct_softc *)));
- void ((*dma_stop) __P((struct ct_softc *)));
+ int ((*hw_dma_init) __P((struct ct_softc *)));
+ void ((*hw_dma_start) __P((struct ct_softc *)));
+ void ((*hw_dma_stop) __P((struct ct_softc *)));
};
struct bshw_softc {
@@ -63,7 +62,8 @@ struct bshw_softc {
u_int8_t *sc_segaddr;
u_int8_t *sc_bufp;
int sc_seglen;
- int sc_tdatalen; /* temp datalen */
+ u_int sc_sdatalen; /* SMIT */
+ u_int sc_edatalen; /* SMIT */
/* private bounce */
u_int8_t *sc_bounce_phys;
@@ -71,16 +71,26 @@ struct bshw_softc {
u_int sc_bounce_size;
bus_addr_t sc_minphys;
+ /* io control */
+#define BSHW_READ_INTERRUPT_DRIVEN 0x0001
+#define BSHW_WRITE_INTERRUPT_DRIVEN 0x0002
+#define BSHW_DMA_BLOCK 0x0010
+#define BSHW_SMIT_BLOCK 0x0020
+ u_int sc_io_control;
+
/* hardware */
struct bshw *sc_hw;
+ void ((*sc_dmasync_before)) __P((struct ct_softc *));
+ void ((*sc_dmasync_after)) __P((struct ct_softc *));
};
-void bshw_synch_setup __P((struct ct_softc *, struct lun_info *));
+void bshw_synch_setup __P((struct ct_softc *, struct targ_info *));
void bshw_bus_reset __P((struct ct_softc *));
-int bshw_read_settings __P((bus_space_tag_t, bus_space_handle_t, struct bshw_softc *));
-void bshw_smit_xfer_start __P((struct ct_softc *));
+int bshw_read_settings __P((struct ct_bus_access_handle *, struct bshw_softc *));
+int bshw_smit_xfer_start __P((struct ct_softc *));
void bshw_smit_xfer_stop __P((struct ct_softc *));
-void bshw_dma_xfer_start __P((struct ct_softc *));
+int bshw_dma_xfer_start __P((struct ct_softc *));
void bshw_dma_xfer_stop __P((struct ct_softc *));
+
extern struct dvcfg_hwsel bshw_hwsel;
#endif /* !_BSHWVAR_H_ */
OpenPOWER on IntegriCloud