Fixing the SCSI DMA EOP problem.
This commit is contained in:
parent
757cce049d
commit
61a498a571
|
@ -30,7 +30,7 @@
|
|||
*
|
||||
* dp.h: defines for the dp driver.
|
||||
*
|
||||
* $Id: dpreg.h,v 1.2 1993/10/01 22:59:44 phil Exp $
|
||||
* dpreg.h,v 1.2 1993/10/01 22:59:44 phil Exp
|
||||
*/
|
||||
|
||||
/* Most of this comes from the Minix dp driver by Bruce Culbertson. */
|
||||
|
@ -39,7 +39,7 @@
|
|||
*/
|
||||
#define DP_CTL 0xffd00000 /* base for control registers */
|
||||
#define DP_DMA 0xffe00000 /* base for data registers */
|
||||
#define DP_DMA_EOP (DP_DMA | 0xe0000) /* SCSI DMA with EOP asserted */
|
||||
#define DP_DMA_EOP (DP_DMA | 0xf0000) /* SCSI DMA with EOP asserted */
|
||||
#define DP_CURDATA (DP_CTL+0)
|
||||
#define DP_OUTDATA (DP_CTL+0)
|
||||
#define DP_ICMD (DP_CTL+1)
|
||||
|
|
|
@ -163,21 +163,24 @@ _low_level_init ()
|
|||
|
||||
/* SCSI Polled (Reduced space.) Addresses FFD00000 - FFDFFFFF */
|
||||
for (ix = 0x100; ix < 0x200; ix++)
|
||||
WR_ADR(int,p1 + ix*4, 0x30000043 + ((ix - 0x100)<<12));
|
||||
WR_ADR(int, p1 + ix*4, 0x30000043 + ((ix - 0x100)<<12));
|
||||
|
||||
/* SCSI "DMA" (Reduced space.) Addresses FFE00000 - FFEFFFFF */
|
||||
for (ix = 0x200; ix < 0x300; ix++)
|
||||
WR_ADR(int,p1 + ix*4, 0x38000043 + ((ix - 0x200)<<12));
|
||||
/* SCSI "DMA" (Reduced space.) Addresses FFE00000 - FFEEFFFF */
|
||||
for (ix = 0x200; ix < 0x2ff; ix++)
|
||||
WR_ADR(int, p1 + ix*4, 0x38000043 + ((ix - 0x200)<<12));
|
||||
|
||||
/* SCSI "DMA" With A22 (EOP) Addresses FFEF0000 - FFEFFFFF */
|
||||
WR_ADR(int, p1 + 0x2ff*4, 0x388ff043);
|
||||
|
||||
/* The e-prom Addresses FFF00000 - FFF3FFFF */
|
||||
for (ix = 0x300; ix < 0x340; ix++)
|
||||
WR_ADR(int,p1 + ix*4, 0x10000043 + ((ix - 0x300)<<12));
|
||||
WR_ADR(int, p1 + ix*4, 0x10000043 + ((ix - 0x300)<<12));
|
||||
|
||||
/* Finally the ICU! Addresses FFFFF000 - FFFFFFFF */
|
||||
WR_ADR(int, p1+4*0x3ff, 0xFFFFF043);
|
||||
|
||||
/* Add the memory mapped I/O entry in the directory. */
|
||||
WR_ADR(int,p0+4*1023, p1 + 0x43);
|
||||
WR_ADR(int, p0+4*1023, p1 + 0x43);
|
||||
|
||||
|
||||
/* Map the kernel pages starting at FE00000 and at 0.
|
||||
|
|
Loading…
Reference in New Issue