ispreg.h (61769) | ispreg.h (62170) |
---|---|
1/* $FreeBSD: head/sys/dev/isp/ispreg.h 61769 2000-06-18 04:43:55Z mjacob $ */ | 1/* $FreeBSD: head/sys/dev/isp/ispreg.h 62170 2000-06-27 19:15:43Z mjacob $ */ |
2/* 3 * Machine Independent (well, as best as possible) register 4 * definitions for Qlogic ISP SCSI adapters. 5 * 6 * Copyright (c) 1997, 1998, 1999 by Matthew Jacob 7 * NASA/Ames Research Center 8 * All rights reserved. 9 * --- 210 unchanged lines hidden (view full) --- 220#define BIU2100_ISR_RISC_INT 0x0008 /* Risc interrupt pending */ 221#define BIU2100_ISR_CDMA_INT 0x0004 /* CDMA interrupt pending */ 222#define BIU2100_ISR_RXDMA_INT_PENDING 0x0002 /* Global interrupt pending */ 223#define BIU2100_ISR_TXDMA_INT_PENDING 0x0001 /* Global interrupt pending */ 224 225#define INT_PENDING(isp, isr) (IS_FC(isp)? \ 226 ((isr & BIU2100_ISR_RISC_INT) != 0) : ((isr & BIU_ISR_RISC_INT) != 0)) 227 | 2/* 3 * Machine Independent (well, as best as possible) register 4 * definitions for Qlogic ISP SCSI adapters. 5 * 6 * Copyright (c) 1997, 1998, 1999 by Matthew Jacob 7 * NASA/Ames Research Center 8 * All rights reserved. 9 * --- 210 unchanged lines hidden (view full) --- 220#define BIU2100_ISR_RISC_INT 0x0008 /* Risc interrupt pending */ 221#define BIU2100_ISR_CDMA_INT 0x0004 /* CDMA interrupt pending */ 222#define BIU2100_ISR_RXDMA_INT_PENDING 0x0002 /* Global interrupt pending */ 223#define BIU2100_ISR_TXDMA_INT_PENDING 0x0001 /* Global interrupt pending */ 224 225#define INT_PENDING(isp, isr) (IS_FC(isp)? \ 226 ((isr & BIU2100_ISR_RISC_INT) != 0) : ((isr & BIU_ISR_RISC_INT) != 0)) 227 |
228#define INT_PENDING_MASK(isp) \ 229 (IS_FC(isp)? BIU2100_ISR_RISC_INT: BIU_ISR_RISC_INT) 230 |
|
228/* BUS SEMAPHORE REGISTER */ 229#define BIU_SEMA_STATUS 0x0002 /* Semaphore Status Bit */ 230#define BIU_SEMA_LOCK 0x0001 /* Semaphore Lock Bit */ 231 232/* NVRAM SEMAPHORE REGISTER */ 233#define BIU_NVRAM_CLOCK 0x0001 234#define BIU_NVRAM_SELECT 0x0002 235#define BIU_NVRAM_DATAOUT 0x0004 --- 96 unchanged lines hidden (view full) --- 332#define OUTMAILBOX1 (MBOX_BLOCK+0x2) 333#define OUTMAILBOX2 (MBOX_BLOCK+0x4) 334#define OUTMAILBOX3 (MBOX_BLOCK+0x6) 335#define OUTMAILBOX4 (MBOX_BLOCK+0x8) 336#define OUTMAILBOX5 (MBOX_BLOCK+0xA) 337#define OUTMAILBOX6 (MBOX_BLOCK+0xC) 338#define OUTMAILBOX7 (MBOX_BLOCK+0xE) 339 | 231/* BUS SEMAPHORE REGISTER */ 232#define BIU_SEMA_STATUS 0x0002 /* Semaphore Status Bit */ 233#define BIU_SEMA_LOCK 0x0001 /* Semaphore Lock Bit */ 234 235/* NVRAM SEMAPHORE REGISTER */ 236#define BIU_NVRAM_CLOCK 0x0001 237#define BIU_NVRAM_SELECT 0x0002 238#define BIU_NVRAM_DATAOUT 0x0004 --- 96 unchanged lines hidden (view full) --- 335#define OUTMAILBOX1 (MBOX_BLOCK+0x2) 336#define OUTMAILBOX2 (MBOX_BLOCK+0x4) 337#define OUTMAILBOX3 (MBOX_BLOCK+0x6) 338#define OUTMAILBOX4 (MBOX_BLOCK+0x8) 339#define OUTMAILBOX5 (MBOX_BLOCK+0xA) 340#define OUTMAILBOX6 (MBOX_BLOCK+0xC) 341#define OUTMAILBOX7 (MBOX_BLOCK+0xE) 342 |
340#define OMBOX_OFFN(n) (MBOX_BLOCK + (n * 2)) | 343#define MBOX_OFF(n) (MBOX_BLOCK + ((n) << 1)) |
341#define NMBOX(isp) \ 342 (((((isp)->isp_type & ISP_HA_SCSI) >= ISP_HA_SCSI_1040A) || \ 343 ((isp)->isp_type & ISP_HA_FC))? 8 : 6) | 344#define NMBOX(isp) \ 345 (((((isp)->isp_type & ISP_HA_SCSI) >= ISP_HA_SCSI_1040A) || \ 346 ((isp)->isp_type & ISP_HA_FC))? 8 : 6) |
347#define NMBOX_BMASK(isp) \ 348 (((((isp)->isp_type & ISP_HA_SCSI) >= ISP_HA_SCSI_1040A) || \ 349 ((isp)->isp_type & ISP_HA_FC))? 0xff : 0x3f) |
|
344 | 350 |
351#define MAX_MAILBOX 8 352 |
|
345/* 346 * SXP Block Register Offsets 347 */ 348#define SXP_PART_ID (SXP_BLOCK+0x0) /* R : Part ID Code */ 349#define SXP_CONFIG1 (SXP_BLOCK+0x2) /* RW*: Configuration Reg #1 */ 350#define SXP_CONFIG2 (SXP_BLOCK+0x4) /* RW*: Configuration Reg #2 */ 351#define SXP_CONFIG3 (SXP_BLOCK+0x6) /* RW*: Configuration Reg #2 */ 352#define SXP_INSTRUCTION (SXP_BLOCK+0xC) /* RW*: Instruction Pointer */ --- 580 unchanged lines hidden --- | 353/* 354 * SXP Block Register Offsets 355 */ 356#define SXP_PART_ID (SXP_BLOCK+0x0) /* R : Part ID Code */ 357#define SXP_CONFIG1 (SXP_BLOCK+0x2) /* RW*: Configuration Reg #1 */ 358#define SXP_CONFIG2 (SXP_BLOCK+0x4) /* RW*: Configuration Reg #2 */ 359#define SXP_CONFIG3 (SXP_BLOCK+0x6) /* RW*: Configuration Reg #2 */ 360#define SXP_INSTRUCTION (SXP_BLOCK+0xC) /* RW*: Instruction Pointer */ --- 580 unchanged lines hidden --- |