Deleted Added
full compact
aic7xxx.seq (6940) aic7xxx.seq (7118)
1# @(#)aic7xxx.seq 1.32 94/11/29 jda
2#
3# Adaptec 274x/284x/294x device driver for Linux and FreeBSD.
4# Copyright (c) 1994 The University of Calgary Department of Computer Science.
5#
6# This program is free software; you can redistribute it and/or modify
7# it under the terms of the GNU General Public License as published by
8# the Free Software Foundation; either version 2 of the License, or

--- 7 unchanged lines hidden (view full) ---

16# You should have received a copy of the GNU General Public License
17# along with this program; if not, write to the Free Software
18# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19#
20
21# FreeBSD, Twin, Wide, 2 command per target support, tagged queuing and other
22# optimizations provided by Justin T. Gibbs (gibbs@FreeBSD.org)
23#
1# @(#)aic7xxx.seq 1.32 94/11/29 jda
2#
3# Adaptec 274x/284x/294x device driver for Linux and FreeBSD.
4# Copyright (c) 1994 The University of Calgary Department of Computer Science.
5#
6# This program is free software; you can redistribute it and/or modify
7# it under the terms of the GNU General Public License as published by
8# the Free Software Foundation; either version 2 of the License, or

--- 7 unchanged lines hidden (view full) ---

16# You should have received a copy of the GNU General Public License
17# along with this program; if not, write to the Free Software
18# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19#
20
21# FreeBSD, Twin, Wide, 2 command per target support, tagged queuing and other
22# optimizations provided by Justin T. Gibbs (gibbs@FreeBSD.org)
23#
24# $Id: aic7xxx.seq,v 1.8 1995/02/22 01:37:52 gibbs Exp $
25
24
26VERSION AIC7XXX_SEQ_VERSION 1.8
25VERSION AIC7XXX_SEQ_VER "$Id: aic7xxx.seq,v 1.9 1995/03/07 09:00:44 gibbs Exp $"
27
28SCBMASK = 0x1f
29
30SCSISEQ = 0x00
31SXFRCTL0 = 0x01
32SXFRCTL1 = 0x02
33SCSISIGI = 0x03
34SCSISIGO = 0x03

--- 686 unchanged lines hidden (view full) ---

721# that the reconnection is for - find the correct SCB and switch to it,
722# clearing the "disconnected" bit so we don't "find" it by accident later.
723#
724p_mesgin5:
725 test A,0x80 jz p_mesgin6 # identify message?
726
727 test A,0x78 jnz p_mesginN # !DiscPriv|!LUNTAR|!Reserved
728
26
27SCBMASK = 0x1f
28
29SCSISEQ = 0x00
30SXFRCTL0 = 0x01
31SXFRCTL1 = 0x02
32SCSISIGI = 0x03
33SCSISIGO = 0x03

--- 686 unchanged lines hidden (view full) ---

720# that the reconnection is for - find the correct SCB and switch to it,
721# clearing the "disconnected" bit so we don't "find" it by accident later.
722#
723p_mesgin5:
724 test A,0x80 jz p_mesgin6 # identify message?
725
726 test A,0x78 jnz p_mesginN # !DiscPriv|!LUNTAR|!Reserved
727
729 and A,0x7 # lun in lower three bits
728 and A,0x07 # lun in lower three bits
730 or SAVED_TCL,A,SELID
731 and SAVED_TCL,0xf7
732 and A,0x08,SBLKCTL # B Channel??
733 or SAVED_TCL,A
734 call inb_last # Ack
735
736# Here we "snoop" the bus looking for a SIMPLE QUEUE TAG message.
737# If we get one, we use the tag returned to switch to the proper
738# SCB. Otherwise, we just use the findSCB method.
739p_mesgin5_loop:
729 or SAVED_TCL,A,SELID
730 and SAVED_TCL,0xf7
731 and A,0x08,SBLKCTL # B Channel??
732 or SAVED_TCL,A
733 call inb_last # Ack
734
735# Here we "snoop" the bus looking for a SIMPLE QUEUE TAG message.
736# If we get one, we use the tag returned to switch to the proper
737# SCB. Otherwise, we just use the findSCB method.
738p_mesgin5_loop:
740 test SSTAT1,0x8 jnz use_findSCB # BUSFREE
741 test SSTAT1,0x1 jz p_mesgin5_loop # REQINIT
739 test SSTAT1,0x08 jnz use_findSCB # BUSFREE
740 test SSTAT1,0x01 jz p_mesgin5_loop # REQINIT
742 and A,0xe0,SCSISIGI # CDI|IOI|MSGI
743 cmp A,0xe0 jne use_findSCB # Still p_mesgin?
744 mvi A call inb_first
745 cmp A,0x20 je get_tag # Simple Tag message?
746use_findSCB:
747 mov ALLZEROS call findSCB # Have to search
748
749# If a active message is present after calling findSCB, then either it

--- 508 unchanged lines hidden ---
741 and A,0xe0,SCSISIGI # CDI|IOI|MSGI
742 cmp A,0xe0 jne use_findSCB # Still p_mesgin?
743 mvi A call inb_first
744 cmp A,0x20 je get_tag # Simple Tag message?
745use_findSCB:
746 mov ALLZEROS call findSCB # Have to search
747
748# If a active message is present after calling findSCB, then either it

--- 508 unchanged lines hidden ---