summaryrefslogtreecommitdiffstats
path: root/sys/pci/ncrreg.h
diff options
context:
space:
mode:
authorse <se@FreeBSD.org>1996-12-14 13:13:33 +0000
committerse <se@FreeBSD.org>1996-12-14 13:13:33 +0000
commit0d930771c96111302a7452571de004b04afae4cc (patch)
treea835e55d8a48184469685f56fbad6ed5a0c1153a /sys/pci/ncrreg.h
parente4aef44ea4dac7ffb00e29438eff35a9ada2df49 (diff)
downloadFreeBSD-src-0d930771c96111302a7452571de004b04afae4cc.zip
FreeBSD-src-0d930771c96111302a7452571de004b04afae4cc.tar.gz
General cleanup and new features for 53c875 based cards, especially the
Tekram DC390W/U/F, whose config EEPROM can now be dumped, if the kernel is built with option NCR_TEKRAM_EEPROM. Other changes: - add brackets to expansion of OUTB/W/L macro arguments. - remove unused NCB structure element ns_async - support sync. SCSI offset of 16 (instead of only 8) on 825A and 875 - correctly identify 53c810A and 53c825A chips - preserve SCSI BIOS settings of PCI performance options - remove (already disabled) support for NCR reset because of command timeout - reverse order of reading of SCSI and DMA specific interrupt cause registers - add definition of Tekram config EEPROM contents (not currently used)
Diffstat (limited to 'sys/pci/ncrreg.h')
-rw-r--r--sys/pci/ncrreg.h21
1 files changed, 19 insertions, 2 deletions
diff --git a/sys/pci/ncrreg.h b/sys/pci/ncrreg.h
index 2f88c42..ba50afb 100644
--- a/sys/pci/ncrreg.h
+++ b/sys/pci/ncrreg.h
@@ -1,6 +1,6 @@
/**************************************************************************
**
-** $Id: ncrreg.h,v 1.3 1995/03/21 22:48:36 se Exp $
+** $Id: ncrreg.h,v 1.4 1996/10/11 19:50:12 se Exp $
**
** Device driver for the NCR 53C810 PCI-SCSI-Controller.
**
@@ -147,12 +147,18 @@ struct ncr_reg {
#define CSIGP 0x40
/*1b*/ u_char nc_ctest3;
- #define CLF 0x04 /* clear scsi fifo */
+ #define FLF 0x08 /* cmd: flush dma fifo */
+ #define CLF 0x04 /* cmd: clear dma fifo */
+ #define FM 0x02 /* mod: fetch pin mode */
+ #define WRIE 0x01 /* mod: write and invalidate enable */
/*1c*/ u_long nc_temp; /* ### Temporary stack */
/*20*/ u_char nc_dfifo;
/*21*/ u_char nc_ctest4;
+ #define BDIS 0x80 /* mod: burst disable */
+ #define MPEE 0x08 /* mod: master parity error enable */
+
/*22*/ u_char nc_ctest5;
/*23*/ u_char nc_ctest6;
@@ -163,12 +169,23 @@ struct ncr_reg {
/*34*/ u_long nc_scratcha; /* ??? Temporary register a */
/*38*/ u_char nc_dmode;
+ #define BL_2 0x80 /* mod: burst length shift value +2 */
+ #define BL_1 0x40 /* mod: burst length shift value +1 */
+ #define ERL 0x08 /* mod: enable read line */
+ #define ERMP 0x04 /* mod: enable read multiple */
+ #define BOF 0x02 /* mod: burst op code fetch */
+
/*39*/ u_char nc_dien;
/*3a*/ u_char nc_dwt;
/*3b*/ u_char nc_dcntl; /* --> Script execution control */
+ #define CLSE 0x80 /* mod: cache line size enable */
+ #define PFF 0x40 /* cmd: pre-fetch flush */
+ #define PFEN 0x20 /* mod: pre-fetch enable */
#define SSM 0x10 /* mod: single step mode */
+ #define IRQM 0x08 /* mod: irq mode (1 = totem pole !) */
#define STD 0x04 /* cmd: start dma mode */
+ #define IRQD 0x02 /* mod: irq disable */
#define NOCOM 0x01 /* cmd: protect sfbr while reselect */
/*3c*/ u_long nc_adder;
OpenPOWER on IntegriCloud