1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-18 10:35:55 +00:00

Change the inb and outb routines slightly. It seems that waiting for

SPIORDY after polling REQINIT is a bad idea.
This commit is contained in:
Justin T. Gibbs 1996-01-09 16:14:03 +00:00
parent fa913fbd87
commit bff79954c2
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=13360

View File

@ -512,12 +512,8 @@ p_mesgout_loop:
cmp DINDEX,1 jne p_mesgout_outb /* last byte? */
mvi CLRSINT1,CLRATNO /* drop ATN */
p_mesgout_outb:
or SXFRCTL0, CLRSTCNT
mvi STCNT0, 1
dec DINDEX
mov SCSIDATL,SINDIR
p_mesgout_outb_wait:
test SSTAT0,SDONE jz p_mesgout_outb_wait
p_mesgout4:
test DINDEX,0xff jnz p_mesgout_loop
@ -885,19 +881,15 @@ mk_mesg1:
*/
inb_next:
call inb_last
inb_first:
mov NONE,SCSIDATL /*dummy read from latch to ACK*/
inb_next_wait:
test SSTAT1,PHASEMIS jnz mesgin_phasemis
test SSTAT0,SPIORDY jz inb_first /* wait for next byte */
test SSTAT0,SPIORDY jz inb_next_wait /* wait for next byte */
inb_first:
mov DINDEX,SINDEX
mov DINDIR,SCSIBUSL ret /*read byte directly from bus*/
inb_last:
or SXFRCTL0,CLRSTCNT
mvi STCNT0,0x01
mov NONE,SCSIDATL /*dummy read from latch to ACK*/
inb_last_wait:
test SSTAT0,SDONE jz inb_last_wait /* Wait for completion */
ret
mov NONE,SCSIDATL ret /*dummy read from latch to ACK*/
mesgin_phasemis:
/*