idavar.h (57828) | idavar.h (59249) |
---|---|
1/*- 2 * Copyright (c) 1999,2000 Jonathan Lemon 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 9 unchanged lines hidden (view full) --- 18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24 * SUCH DAMAGE. 25 * | 1/*- 2 * Copyright (c) 1999,2000 Jonathan Lemon 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 9 unchanged lines hidden (view full) --- 18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24 * SUCH DAMAGE. 25 * |
26 * $FreeBSD: head/sys/dev/ida/idavar.h 57828 2000-03-08 16:16:31Z jlemon $ | 26 * $FreeBSD: head/sys/dev/ida/idavar.h 59249 2000-04-15 05:54:02Z phk $ |
27 */ 28 29/* 30 * software structures for the Compaq RAID controller 31 */ 32 33#ifndef _IDAVAR_H 34#define _IDAVAR_H --- 63 unchanged lines hidden (view full) --- 98 qcb_state state; 99 short flags; 100 union { 101 STAILQ_ENTRY(ida_qcb) stqe; 102 SLIST_ENTRY(ida_qcb) sle; 103 } link; 104 bus_dmamap_t dmamap; 105 bus_addr_t hwqcb_busaddr; | 27 */ 28 29/* 30 * software structures for the Compaq RAID controller 31 */ 32 33#ifndef _IDAVAR_H 34#define _IDAVAR_H --- 63 unchanged lines hidden (view full) --- 98 qcb_state state; 99 short flags; 100 union { 101 STAILQ_ENTRY(ida_qcb) stqe; 102 SLIST_ENTRY(ida_qcb) sle; 103 } link; 104 bus_dmamap_t dmamap; 105 bus_addr_t hwqcb_busaddr; |
106 struct buf *buf; /* buf associated with qcb */ | 106 struct bio *buf; /* bio associated with qcb */ |
107}; 108 109struct ida_softc; 110 111struct ida_access { 112 int (*fifo_full)(struct ida_softc *); 113 void (*submit)(struct ida_softc *, struct ida_qcb *); 114 bus_addr_t (*done)(struct ida_softc *); --- 34 unchanged lines hidden (view full) --- 149 int num_drives; 150 int num_qcbs; 151 int flags; 152 153 struct ida_hardware_qcb *hwqcbs; /* HW QCB array */ 154 struct ida_qcb *qcbs; /* kernel QCB array */ 155 SLIST_HEAD(, ida_qcb) free_qcbs; 156 STAILQ_HEAD(, ida_qcb) qcb_queue; | 107}; 108 109struct ida_softc; 110 111struct ida_access { 112 int (*fifo_full)(struct ida_softc *); 113 void (*submit)(struct ida_softc *, struct ida_qcb *); 114 bus_addr_t (*done)(struct ida_softc *); --- 34 unchanged lines hidden (view full) --- 149 int num_drives; 150 int num_qcbs; 151 int flags; 152 153 struct ida_hardware_qcb *hwqcbs; /* HW QCB array */ 154 struct ida_qcb *qcbs; /* kernel QCB array */ 155 SLIST_HEAD(, ida_qcb) free_qcbs; 156 STAILQ_HEAD(, ida_qcb) qcb_queue; |
157 struct buf_queue_head buf_queue; | 157 struct bio_queue_head bio_queue; |
158 159 struct ida_access cmd; 160}; 161 162/* 163 * drive flags 164 */ 165#define DRV_WRITEPROT 0x0001 --- 21 unchanged lines hidden (view full) --- 187extern int ida_detach(device_t dev); 188extern struct ida_softc *ida_alloc(device_t dev, struct resource *regs, 189 int regs_type, int regs_id, bus_dma_tag_t parent_dmat); 190extern void ida_free(struct ida_softc *ida); 191extern int ida_init(struct ida_softc *ida); 192extern void ida_attach(struct ida_softc *ida); 193extern int ida_command(struct ida_softc *ida, int command, void *data, 194 int datasize, int drive, int flags); | 158 159 struct ida_access cmd; 160}; 161 162/* 163 * drive flags 164 */ 165#define DRV_WRITEPROT 0x0001 --- 21 unchanged lines hidden (view full) --- 187extern int ida_detach(device_t dev); 188extern struct ida_softc *ida_alloc(device_t dev, struct resource *regs, 189 int regs_type, int regs_id, bus_dma_tag_t parent_dmat); 190extern void ida_free(struct ida_softc *ida); 191extern int ida_init(struct ida_softc *ida); 192extern void ida_attach(struct ida_softc *ida); 193extern int ida_command(struct ida_softc *ida, int command, void *data, 194 int datasize, int drive, int flags); |
195extern void ida_submit_buf(struct ida_softc *ida, struct buf *bp); | 195extern void ida_submit_buf(struct ida_softc *ida, struct bio *bp); |
196extern void ida_intr(void *data); 197 | 196extern void ida_intr(void *data); 197 |
198extern void id_intr(struct buf *bp); | 198extern void id_intr(struct bio *bp); |
199 200#endif /* _IDAVAR_H */ | 199 200#endif /* _IDAVAR_H */ |