bt.c (100430) | bt.c (106521) |
---|---|
1/* 2 * Generic driver for the BusLogic MultiMaster SCSI host adapters 3 * Product specific probe and attach routines can be found in: 4 * sys/dev/buslogic/bt_isa.c BT-54X, BT-445 cards 5 * sys/dev/buslogic/bt_mca.c BT-64X, SDC3211B, SDC3211F 6 * sys/dev/buslogic/bt_eisa.c BT-74X, BT-75x cards, SDC3222F 7 * sys/dev/buslogic/bt_pci.c BT-946, BT-948, BT-956, BT-958 cards 8 * --- 16 unchanged lines hidden (view full) --- 25 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31 * SUCH DAMAGE. 32 * | 1/* 2 * Generic driver for the BusLogic MultiMaster SCSI host adapters 3 * Product specific probe and attach routines can be found in: 4 * sys/dev/buslogic/bt_isa.c BT-54X, BT-445 cards 5 * sys/dev/buslogic/bt_mca.c BT-64X, SDC3211B, SDC3211F 6 * sys/dev/buslogic/bt_eisa.c BT-74X, BT-75x cards, SDC3222F 7 * sys/dev/buslogic/bt_pci.c BT-946, BT-948, BT-956, BT-958 cards 8 * --- 16 unchanged lines hidden (view full) --- 25 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31 * SUCH DAMAGE. 32 * |
33 * $FreeBSD: head/sys/dev/buslogic/bt.c 100430 2002-07-21 05:16:56Z peter $ | 33 * $FreeBSD: head/sys/dev/buslogic/bt.c 106521 2002-11-06 20:34:38Z jhb $ |
34 */ 35 36 /* 37 * Special thanks to Leonard N. Zubkoff for writing such a complete and 38 * well documented Mylex/BusLogic MultiMaster driver for Linux. Support 39 * in this driver for the wide range of MultiMaster controllers and 40 * firmware revisions, with their otherwise undocumented quirks, would not 41 * have been possible without his efforts. --- 72 unchanged lines hidden (view full) --- 114 return (bt->bt_ccb_physbase 115 + (u_int32_t)((caddr_t)bccb - (caddr_t)bt->bt_ccb_array)); 116} 117 118static __inline struct bt_ccb * 119btccbptov(struct bt_softc *bt, u_int32_t ccb_addr) 120{ 121 return (bt->bt_ccb_array + | 34 */ 35 36 /* 37 * Special thanks to Leonard N. Zubkoff for writing such a complete and 38 * well documented Mylex/BusLogic MultiMaster driver for Linux. Support 39 * in this driver for the wide range of MultiMaster controllers and 40 * firmware revisions, with their otherwise undocumented quirks, would not 41 * have been possible without his efforts. --- 72 unchanged lines hidden (view full) --- 114 return (bt->bt_ccb_physbase 115 + (u_int32_t)((caddr_t)bccb - (caddr_t)bt->bt_ccb_array)); 116} 117 118static __inline struct bt_ccb * 119btccbptov(struct bt_softc *bt, u_int32_t ccb_addr) 120{ 121 return (bt->bt_ccb_array + |
122 ((struct bt_ccb*)ccb_addr-(struct bt_ccb*)bt->bt_ccb_physbase)); | 122 ((struct bt_ccb*)(uintptr_t)ccb_addr - (struct bt_ccb*)(uintptr_t)bt->bt_ccb_physbase)); |
123} 124 125static __inline u_int32_t 126btsensepaddr(struct bt_softc *bt, struct bt_ccb *bccb) 127{ 128 u_int index; 129 130 index = (u_int)(bccb - bt->bt_ccb_array); --- 2330 unchanged lines hidden --- | 123} 124 125static __inline u_int32_t 126btsensepaddr(struct bt_softc *bt, struct bt_ccb *bccb) 127{ 128 u_int index; 129 130 index = (u_int)(bccb - bt->bt_ccb_array); --- 2330 unchanged lines hidden --- |