Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs | Functions
sym_hipd.h File Reference
#include <linux/gfp.h>

Go to the source code of this file.

Data Structures

struct  sym_trans
 
struct  sym_tcbh
 
struct  sym_tcb
 
struct  sym_lcbh
 
struct  sym_lcb
 
struct  sym_actscr
 
struct  sym_pmc
 
struct  sym_ccbh
 
struct  sym_dsb
 
struct  sym_ccb
 
struct  sym_hcb
 
struct  sym_m_link
 
struct  sym_m_vtob
 
struct  sym_m_pool
 

Macros

#define DEBUG_ALLOC   (0x0001)
 
#define DEBUG_PHASE   (0x0002)
 
#define DEBUG_POLL   (0x0004)
 
#define DEBUG_QUEUE   (0x0008)
 
#define DEBUG_RESULT   (0x0010)
 
#define DEBUG_SCATTER   (0x0020)
 
#define DEBUG_SCRIPT   (0x0040)
 
#define DEBUG_TINY   (0x0080)
 
#define DEBUG_TIMING   (0x0100)
 
#define DEBUG_NEGO   (0x0200)
 
#define DEBUG_TAGS   (0x0400)
 
#define DEBUG_POINTER   (0x0800)
 
#define DEBUG_FLAGS   (0x0000)
 
#define sym_verbose   (np->verbose)
 
#define assert(expression)
 
#define SYM_CONF_MAX_TASK   (1<<SYM_CONF_MAX_TAG_ORDER)
 
#define SYM_CONF_MAX_TAG   SYM_CONF_MAX_TASK
 
#define NO_TAG   (256)
 
#define SYM_CONF_MIN_ASYNC   (40)
 
#define SYM_MEM_WARN   1 /* Warn on failed operations */
 
#define SYM_MEM_PAGE_ORDER   0 /* 1 PAGE maximum */
 
#define SYM_MEM_CLUSTER_SHIFT   (PAGE_SHIFT+SYM_MEM_PAGE_ORDER)
 
#define SYM_MEM_FREE_UNUSED   /* Free unused pages immediately */
 
#define SYM_MEM_SHIFT   4
 
#define SYM_MEM_CLUSTER_SIZE   (1UL << SYM_MEM_CLUSTER_SHIFT)
 
#define SYM_MEM_CLUSTER_MASK   (SYM_MEM_CLUSTER_SIZE-1)
 
#define SYM_CONF_MAX_QUEUE   (7*SYM_CONF_MAX_TASK+2)
 
#define SYM_CONF_MAX_START   (SYM_CONF_MAX_QUEUE-2)
 
#define SYM_CONF_MAX_QUEUE   (SYM_MEM_CLUSTER_SIZE/8)
 
#define SYM_CONF_MAX_START   (SYM_CONF_MAX_QUEUE-2)
 
#define MAX_QUEUE   SYM_CONF_MAX_QUEUE
 
#define INB_OFF(np, o)   ioread8(np->s.ioaddr + (o))
 
#define INW_OFF(np, o)   ioread16(np->s.ioaddr + (o))
 
#define INL_OFF(np, o)   ioread32(np->s.ioaddr + (o))
 
#define OUTB_OFF(np, o, val)   iowrite8((val), np->s.ioaddr + (o))
 
#define OUTW_OFF(np, o, val)   iowrite16((val), np->s.ioaddr + (o))
 
#define OUTL_OFF(np, o, val)   iowrite32((val), np->s.ioaddr + (o))
 
#define INB(np, r)   INB_OFF(np, offsetof(struct sym_reg, r))
 
#define INW(np, r)   INW_OFF(np, offsetof(struct sym_reg, r))
 
#define INL(np, r)   INL_OFF(np, offsetof(struct sym_reg, r))
 
#define OUTB(np, r, v)   OUTB_OFF(np, offsetof(struct sym_reg, r), (v))
 
#define OUTW(np, r, v)   OUTW_OFF(np, offsetof(struct sym_reg, r), (v))
 
#define OUTL(np, r, v)   OUTL_OFF(np, offsetof(struct sym_reg, r), (v))
 
#define OUTONB(np, r, m)   OUTB(np, r, INB(np, r) | (m))
 
#define OUTOFFB(np, r, m)   OUTB(np, r, INB(np, r) & ~(m))
 
#define OUTONW(np, r, m)   OUTW(np, r, INW(np, r) | (m))
 
#define OUTOFFW(np, r, m)   OUTW(np, r, INW(np, r) & ~(m))
 
#define OUTONL(np, r, m)   OUTL(np, r, INL(np, r) | (m))
 
#define OUTOFFL(np, r, m)   OUTL(np, r, INL(np, r) & ~(m))
 
#define OUTL_DSP(np, v)
 
#define OUTONB_STD()
 
#define HS_IDLE   (0)
 
#define HS_BUSY   (1)
 
#define HS_NEGOTIATE   (2) /* sync/wide data transfer*/
 
#define HS_DISCONNECT   (3) /* Disconnected by target */
 
#define HS_WAIT   (4) /* waiting for resource */
 
#define HS_DONEMASK   (0x80)
 
#define HS_COMPLETE   (4|HS_DONEMASK)
 
#define HS_SEL_TIMEOUT   (5|HS_DONEMASK) /* Selection timeout */
 
#define HS_UNEXPECTED   (6|HS_DONEMASK) /* Unexpected disconnect */
 
#define HS_COMP_ERR   (7|HS_DONEMASK) /* Completed with error */
 
#define SIR_BAD_SCSI_STATUS   (1)
 
#define SIR_SEL_ATN_NO_MSG_OUT   (2)
 
#define SIR_MSG_RECEIVED   (3)
 
#define SIR_MSG_WEIRD   (4)
 
#define SIR_NEGO_FAILED   (5)
 
#define SIR_NEGO_PROTO   (6)
 
#define SIR_SCRIPT_STOPPED   (7)
 
#define SIR_REJECT_TO_SEND   (8)
 
#define SIR_SWIDE_OVERRUN   (9)
 
#define SIR_SODL_UNDERRUN   (10)
 
#define SIR_RESEL_NO_MSG_IN   (11)
 
#define SIR_RESEL_NO_IDENTIFY   (12)
 
#define SIR_RESEL_BAD_LUN   (13)
 
#define SIR_TARGET_SELECTED   (14)
 
#define SIR_RESEL_BAD_I_T_L   (15)
 
#define SIR_RESEL_BAD_I_T_L_Q   (16)
 
#define SIR_ABORT_SENT   (17)
 
#define SIR_RESEL_ABORTED   (18)
 
#define SIR_MSG_OUT_DONE   (19)
 
#define SIR_COMPLETE_ERROR   (20)
 
#define SIR_DATA_OVERRUN   (21)
 
#define SIR_BAD_PHASE   (22)
 
#define SIR_MAX   (22)
 
#define XE_EXTRA_DATA   (1) /* unexpected data phase */
 
#define XE_BAD_PHASE   (1<<1) /* illegal phase (4/5) */
 
#define XE_PARITY_ERR   (1<<2) /* unrecovered SCSI parity error */
 
#define XE_SODL_UNRUN   (1<<3) /* ODD transfer in DATA OUT phase */
 
#define XE_SWIDE_OVRUN   (1<<4) /* ODD transfer in DATA IN phase */
 
#define NS_SYNC   (1)
 
#define NS_WIDE   (2)
 
#define NS_PPR   (3)
 
#define CCB_HASH_SHIFT   8
 
#define CCB_HASH_SIZE   (1UL << CCB_HASH_SHIFT)
 
#define CCB_HASH_MASK   (CCB_HASH_SIZE-1)
 
#define CCB_HASH_CODE(dsa)   (((dsa) >> (_LGRU16_(sizeof(struct sym_ccb)))) & CCB_HASH_MASK)
 
#define SYM_DISC_ENABLED   (1)
 
#define SYM_TAGS_ENABLED   (1<<1)
 
#define SYM_SCAN_BOOT_DISABLED   (1<<2)
 
#define SYM_SCAN_LUNS_DISABLED   (1<<3)
 
#define SYM_AVOID_BUS_RESET   (1)
 
#define SYM_SNOOP_TIMEOUT   (10000000)
 
#define BUS_8_BIT   0
 
#define BUS_16_BIT   1
 
#define sym_lp(tp, lun)   (!lun) ? (tp)->lun0p : NULL
 
#define HX_REG   scr0
 
#define HX_PRT   nc_scr0
 
#define HS_REG   scr1
 
#define HS_PRT   nc_scr1
 
#define SS_REG   scr2
 
#define SS_PRT   nc_scr2
 
#define HF_REG   scr3
 
#define HF_PRT   nc_scr3
 
#define host_xflags   phys.head.status[0]
 
#define host_status   phys.head.status[1]
 
#define ssss_status   phys.head.status[2]
 
#define host_flags   phys.head.status[3]
 
#define HF_IN_PM0   1u
 
#define HF_IN_PM1   (1u<<1)
 
#define HF_ACT_PM   (1u<<2)
 
#define HF_DP_SAVED   (1u<<3)
 
#define HF_SENSE   (1u<<4)
 
#define HF_EXT_ERR   (1u<<5)
 
#define HF_DATA_IN   (1u<<6)
 
#define sym_set_script_dp(np, cp, dp)
 
#define sym_get_script_dp(np, cp)   (cp->phys.head.lastp)
 
#define SYM_SNS_BBUF_LEN   32
 
#define CCB_BA(cp, lbl)   cpu_to_scr(cp->ccb_ba + offsetof(struct sym_ccb, lbl))
 
#define use_dac(np)   0
 
#define set_dac(np)   do { } while (0)
 
#define HCB_BA(np, lbl)   (np->hcb_ba + offsetof(struct sym_hcb, lbl))
 
#define DMA_DAC_MASK   DMA_BIT_MASK(32)
 
#define sym_build_sge(np, data, badd, len)
 
#define sym_get_mem_cluster()   (void *) __get_free_pages(GFP_ATOMIC, SYM_MEM_PAGE_ORDER)
 
#define sym_free_mem_cluster(p)   free_pages((unsigned long)p, SYM_MEM_PAGE_ORDER)
 
#define VTOB_HASH_SHIFT   5
 
#define VTOB_HASH_SIZE   (1UL << VTOB_HASH_SHIFT)
 
#define VTOB_HASH_MASK   (VTOB_HASH_SIZE-1)
 
#define VTOB_HASH_CODE(m)   ((((unsigned long)(m)) >> SYM_MEM_CLUSTER_SHIFT) & VTOB_HASH_MASK)
 
#define M_GET_MEM_CLUSTER()   mp->get_mem_cluster(mp)
 
#define M_FREE_MEM_CLUSTER(p)   mp->free_mem_cluster(mp, p)
 
#define _uvptv_(p)   ((void *)((u_long)(p)))
 
#define _sym_calloc_dma(np, l, n)   __sym_calloc_dma(np->bus_dmat, l, n)
 
#define _sym_mfree_dma(np, p, l, n)   __sym_mfree_dma(np->bus_dmat, _uvptv_(p), l, n)
 
#define sym_calloc_dma(l, n)   _sym_calloc_dma(np, l, n)
 
#define sym_mfree_dma(p, l, n)   _sym_mfree_dma(np, p, l, n)
 
#define vtobus(p)   __vtobus(np->bus_dmat, _uvptv_(p))
 
#define sym_m_pool_match(mp_id1, mp_id2)   (mp_id1 == mp_id2)
 

Typedefs

typedef struct devicem_pool_ident_t
 
typedef struct sym_m_linkm_link_p
 
typedef struct sym_m_vtobm_vtob_p
 
typedef struct sym_m_poolm_pool_p
 

Functions

struct sym_fwsym_find_firmware (struct sym_chip *chip)
 
void sym_fw_bind_script (struct sym_hcb *np, u32 *start, int len)
 
charsym_driver_name (void)
 
void sym_print_xerr (struct scsi_cmnd *cmd, int x_status)
 
int sym_reset_scsi_bus (struct sym_hcb *np, int enab_int)
 
struct sym_chipsym_lookup_chip_table (u_short device_id, u_char revision)
 
void sym_put_start_queue (struct sym_hcb *np, struct sym_ccb *cp)
 
void sym_start_up (struct Scsi_Host *, int reason)
 
irqreturn_t sym_interrupt (struct Scsi_Host *)
 
int sym_clear_tasks (struct sym_hcb *np, int cam_status, int target, int lun, int task)
 
struct sym_ccbsym_get_ccb (struct sym_hcb *np, struct scsi_cmnd *cmd, u_char tag_order)
 
void sym_free_ccb (struct sym_hcb *np, struct sym_ccb *cp)
 
struct sym_lcbsym_alloc_lcb (struct sym_hcb *np, u_char tn, u_char ln)
 
int sym_free_lcb (struct sym_hcb *np, u_char tn, u_char ln)
 
int sym_queue_scsiio (struct sym_hcb *np, struct scsi_cmnd *csio, struct sym_ccb *cp)
 
int sym_abort_scsiio (struct sym_hcb *np, struct scsi_cmnd *ccb, int timed_out)
 
int sym_reset_scsi_target (struct sym_hcb *np, int target)
 
void sym_hcb_free (struct sym_hcb *np)
 
int sym_hcb_attach (struct Scsi_Host *shost, struct sym_fw *fw, struct sym_nvram *nvram)
 
void__sym_calloc_dma (m_pool_ident_t dev_dmat, int size, char *name)
 
void __sym_mfree_dma (m_pool_ident_t dev_dmat, void *m, int size, char *name)
 
dma_addr_t __vtobus (m_pool_ident_t dev_dmat, void *m)
 

Macro Definition Documentation

#define _sym_calloc_dma (   np,
  l,
  n 
)    __sym_calloc_dma(np->bus_dmat, l, n)

Definition at line 1192 of file sym_hipd.h.

#define _sym_mfree_dma (   np,
  p,
  l,
  n 
)    __sym_mfree_dma(np->bus_dmat, _uvptv_(p), l, n)

Definition at line 1193 of file sym_hipd.h.

#define _uvptv_ (   p)    ((void *)((u_long)(p)))

Definition at line 1190 of file sym_hipd.h.

#define assert (   expression)
Value:
{ \
if (!(expression)) { \
(void)panic( \
"assertion \"%s\" failed: file \"%s\", line %d\n", \
#expression, \
__FILE__, __LINE__); \
} \
}

Definition at line 95 of file sym_hipd.h.

#define BUS_16_BIT   1

Definition at line 344 of file sym_hipd.h.

#define BUS_8_BIT   0

Definition at line 343 of file sym_hipd.h.

#define CCB_BA (   cp,
  lbl 
)    cpu_to_scr(cp->ccb_ba + offsetof(struct sym_ccb, lbl))

Definition at line 803 of file sym_hipd.h.

#define CCB_HASH_CODE (   dsa)    (((dsa) >> (_LGRU16_(sizeof(struct sym_ccb)))) & CCB_HASH_MASK)

Definition at line 310 of file sym_hipd.h.

#define CCB_HASH_MASK   (CCB_HASH_SIZE-1)

Definition at line 308 of file sym_hipd.h.

#define CCB_HASH_SHIFT   8

Definition at line 306 of file sym_hipd.h.

#define CCB_HASH_SIZE   (1UL << CCB_HASH_SHIFT)

Definition at line 307 of file sym_hipd.h.

#define DEBUG_ALLOC   (0x0001)

Definition at line 70 of file sym_hipd.h.

#define DEBUG_FLAGS   (0x0000)

Definition at line 84 of file sym_hipd.h.

#define DEBUG_NEGO   (0x0200)

Definition at line 79 of file sym_hipd.h.

#define DEBUG_PHASE   (0x0002)

Definition at line 71 of file sym_hipd.h.

#define DEBUG_POINTER   (0x0800)

Definition at line 81 of file sym_hipd.h.

#define DEBUG_POLL   (0x0004)

Definition at line 72 of file sym_hipd.h.

#define DEBUG_QUEUE   (0x0008)

Definition at line 73 of file sym_hipd.h.

#define DEBUG_RESULT   (0x0010)

Definition at line 74 of file sym_hipd.h.

#define DEBUG_SCATTER   (0x0020)

Definition at line 75 of file sym_hipd.h.

#define DEBUG_SCRIPT   (0x0040)

Definition at line 76 of file sym_hipd.h.

#define DEBUG_TAGS   (0x0400)

Definition at line 80 of file sym_hipd.h.

#define DEBUG_TIMING   (0x0100)

Definition at line 78 of file sym_hipd.h.

#define DEBUG_TINY   (0x0080)

Definition at line 77 of file sym_hipd.h.

#define DMA_DAC_MASK   DMA_BIT_MASK(32)

Definition at line 1085 of file sym_hipd.h.

#define HCB_BA (   np,
  lbl 
)    (np->hcb_ba + offsetof(struct sym_hcb, lbl))

Definition at line 1042 of file sym_hipd.h.

#define HF_ACT_PM   (1u<<2)

Definition at line 621 of file sym_hipd.h.

#define HF_DATA_IN   (1u<<6)

Definition at line 625 of file sym_hipd.h.

#define HF_DP_SAVED   (1u<<3)

Definition at line 622 of file sym_hipd.h.

#define HF_EXT_ERR   (1u<<5)

Definition at line 624 of file sym_hipd.h.

#define HF_IN_PM0   1u

Definition at line 619 of file sym_hipd.h.

#define HF_IN_PM1   (1u<<1)

Definition at line 620 of file sym_hipd.h.

#define HF_PRT   nc_scr3

Definition at line 606 of file sym_hipd.h.

#define HF_REG   scr3

Definition at line 605 of file sym_hipd.h.

#define HF_SENSE   (1u<<4)

Definition at line 623 of file sym_hipd.h.

#define host_flags   phys.head.status[3]

Definition at line 614 of file sym_hipd.h.

#define host_status   phys.head.status[1]

Definition at line 612 of file sym_hipd.h.

#define host_xflags   phys.head.status[0]

Definition at line 611 of file sym_hipd.h.

#define HS_BUSY   (1)

Definition at line 241 of file sym_hipd.h.

#define HS_COMP_ERR   (7|HS_DONEMASK) /* Completed with error */

Definition at line 250 of file sym_hipd.h.

#define HS_COMPLETE   (4|HS_DONEMASK)

Definition at line 247 of file sym_hipd.h.

#define HS_DISCONNECT   (3) /* Disconnected by target */

Definition at line 243 of file sym_hipd.h.

#define HS_DONEMASK   (0x80)

Definition at line 246 of file sym_hipd.h.

#define HS_IDLE   (0)

Definition at line 240 of file sym_hipd.h.

#define HS_NEGOTIATE   (2) /* sync/wide data transfer*/

Definition at line 242 of file sym_hipd.h.

#define HS_PRT   nc_scr1

Definition at line 602 of file sym_hipd.h.

#define HS_REG   scr1

Definition at line 601 of file sym_hipd.h.

#define HS_SEL_TIMEOUT   (5|HS_DONEMASK) /* Selection timeout */

Definition at line 248 of file sym_hipd.h.

#define HS_UNEXPECTED   (6|HS_DONEMASK) /* Unexpected disconnect */

Definition at line 249 of file sym_hipd.h.

#define HS_WAIT   (4) /* waiting for resource */

Definition at line 244 of file sym_hipd.h.

#define HX_PRT   nc_scr0

Definition at line 600 of file sym_hipd.h.

#define HX_REG   scr0

Definition at line 599 of file sym_hipd.h.

#define INB (   np,
  r 
)    INB_OFF(np, offsetof(struct sym_reg, r))

Definition at line 205 of file sym_hipd.h.

#define INB_OFF (   np,
 
)    ioread8(np->s.ioaddr + (o))

Definition at line 197 of file sym_hipd.h.

#define INL (   np,
  r 
)    INL_OFF(np, offsetof(struct sym_reg, r))

Definition at line 207 of file sym_hipd.h.

#define INL_OFF (   np,
 
)    ioread32(np->s.ioaddr + (o))

Definition at line 199 of file sym_hipd.h.

#define INW (   np,
  r 
)    INW_OFF(np, offsetof(struct sym_reg, r))

Definition at line 206 of file sym_hipd.h.

#define INW_OFF (   np,
 
)    ioread16(np->s.ioaddr + (o))

Definition at line 198 of file sym_hipd.h.

#define M_FREE_MEM_CLUSTER (   p)    mp->free_mem_cluster(mp, p)

Definition at line 1170 of file sym_hipd.h.

#define M_GET_MEM_CLUSTER ( )    mp->get_mem_cluster(mp)

Definition at line 1169 of file sym_hipd.h.

#define MAX_QUEUE   SYM_CONF_MAX_QUEUE

Definition at line 191 of file sym_hipd.h.

#define NO_TAG   (256)

Definition at line 127 of file sym_hipd.h.

#define NS_PPR   (3)

Definition at line 300 of file sym_hipd.h.

#define NS_SYNC   (1)

Definition at line 298 of file sym_hipd.h.

#define NS_WIDE   (2)

Definition at line 299 of file sym_hipd.h.

#define OUTB (   np,
  r,
  v 
)    OUTB_OFF(np, offsetof(struct sym_reg, r), (v))

Definition at line 209 of file sym_hipd.h.

#define OUTB_OFF (   np,
  o,
  val 
)    iowrite8((val), np->s.ioaddr + (o))

Definition at line 201 of file sym_hipd.h.

#define OUTL (   np,
  r,
  v 
)    OUTL_OFF(np, offsetof(struct sym_reg, r), (v))

Definition at line 211 of file sym_hipd.h.

#define OUTL_DSP (   np,
  v 
)
Value:
do { \
MEMORY_WRITE_BARRIER(); \
OUTL(np, nc_dsp, (v)); \
} while (0)

Definition at line 225 of file sym_hipd.h.

#define OUTL_OFF (   np,
  o,
  val 
)    iowrite32((val), np->s.ioaddr + (o))

Definition at line 203 of file sym_hipd.h.

#define OUTOFFB (   np,
  r,
  m 
)    OUTB(np, r, INB(np, r) & ~(m))

Definition at line 214 of file sym_hipd.h.

#define OUTOFFL (   np,
  r,
  m 
)    OUTL(np, r, INL(np, r) & ~(m))

Definition at line 218 of file sym_hipd.h.

#define OUTOFFW (   np,
  r,
  m 
)    OUTW(np, r, INW(np, r) & ~(m))

Definition at line 216 of file sym_hipd.h.

#define OUTONB (   np,
  r,
  m 
)    OUTB(np, r, INB(np, r) | (m))

Definition at line 213 of file sym_hipd.h.

#define OUTONB_STD ( )
Value:
do { \
MEMORY_WRITE_BARRIER(); \
OUTONB(np, nc_dcntl, (STD|NOCOM)); \
} while (0)

Definition at line 231 of file sym_hipd.h.

#define OUTONL (   np,
  r,
  m 
)    OUTL(np, r, INL(np, r) | (m))

Definition at line 217 of file sym_hipd.h.

#define OUTONW (   np,
  r,
  m 
)    OUTW(np, r, INW(np, r) | (m))

Definition at line 215 of file sym_hipd.h.

#define OUTW (   np,
  r,
  v 
)    OUTW_OFF(np, offsetof(struct sym_reg, r), (v))

Definition at line 210 of file sym_hipd.h.

#define OUTW_OFF (   np,
  o,
  val 
)    iowrite16((val), np->s.ioaddr + (o))

Definition at line 202 of file sym_hipd.h.

#define set_dac (   np)    do { } while (0)

Definition at line 1036 of file sym_hipd.h.

#define SIR_ABORT_SENT   (17)

Definition at line 271 of file sym_hipd.h.

#define SIR_BAD_PHASE   (22)

Definition at line 276 of file sym_hipd.h.

#define SIR_BAD_SCSI_STATUS   (1)

Definition at line 255 of file sym_hipd.h.

#define SIR_COMPLETE_ERROR   (20)

Definition at line 274 of file sym_hipd.h.

#define SIR_DATA_OVERRUN   (21)

Definition at line 275 of file sym_hipd.h.

#define SIR_MAX   (22)

Definition at line 281 of file sym_hipd.h.

#define SIR_MSG_OUT_DONE   (19)

Definition at line 273 of file sym_hipd.h.

#define SIR_MSG_RECEIVED   (3)

Definition at line 257 of file sym_hipd.h.

#define SIR_MSG_WEIRD   (4)

Definition at line 258 of file sym_hipd.h.

#define SIR_NEGO_FAILED   (5)

Definition at line 259 of file sym_hipd.h.

#define SIR_NEGO_PROTO   (6)

Definition at line 260 of file sym_hipd.h.

#define SIR_REJECT_TO_SEND   (8)

Definition at line 262 of file sym_hipd.h.

#define SIR_RESEL_ABORTED   (18)

Definition at line 272 of file sym_hipd.h.

#define SIR_RESEL_BAD_I_T_L   (15)

Definition at line 269 of file sym_hipd.h.

#define SIR_RESEL_BAD_I_T_L_Q   (16)

Definition at line 270 of file sym_hipd.h.

#define SIR_RESEL_BAD_LUN   (13)

Definition at line 267 of file sym_hipd.h.

#define SIR_RESEL_NO_IDENTIFY   (12)

Definition at line 266 of file sym_hipd.h.

#define SIR_RESEL_NO_MSG_IN   (11)

Definition at line 265 of file sym_hipd.h.

#define SIR_SCRIPT_STOPPED   (7)

Definition at line 261 of file sym_hipd.h.

#define SIR_SEL_ATN_NO_MSG_OUT   (2)

Definition at line 256 of file sym_hipd.h.

#define SIR_SODL_UNDERRUN   (10)

Definition at line 264 of file sym_hipd.h.

#define SIR_SWIDE_OVERRUN   (9)

Definition at line 263 of file sym_hipd.h.

#define SIR_TARGET_SELECTED   (14)

Definition at line 268 of file sym_hipd.h.

#define SS_PRT   nc_scr2

Definition at line 604 of file sym_hipd.h.

#define SS_REG   scr2

Definition at line 603 of file sym_hipd.h.

#define ssss_status   phys.head.status[2]

Definition at line 613 of file sym_hipd.h.

#define SYM_AVOID_BUS_RESET   (1)

Definition at line 337 of file sym_hipd.h.

#define sym_build_sge (   np,
  data,
  badd,
  len 
)
Value:
do { \
(data)->addr = cpu_to_scr(badd); \
(data)->size = cpu_to_scr(len); \
} while (0)

Definition at line 1086 of file sym_hipd.h.

#define sym_calloc_dma (   l,
  n 
)    _sym_calloc_dma(np, l, n)

Definition at line 1195 of file sym_hipd.h.

#define SYM_CONF_MAX_QUEUE   (7*SYM_CONF_MAX_TASK+2)

Definition at line 183 of file sym_hipd.h.

#define SYM_CONF_MAX_QUEUE   (SYM_MEM_CLUSTER_SIZE/8)

Definition at line 183 of file sym_hipd.h.

#define SYM_CONF_MAX_START   (SYM_CONF_MAX_QUEUE-2)

Definition at line 185 of file sym_hipd.h.

#define SYM_CONF_MAX_START   (SYM_CONF_MAX_QUEUE-2)

Definition at line 185 of file sym_hipd.h.

#define SYM_CONF_MAX_TAG   SYM_CONF_MAX_TASK

Definition at line 117 of file sym_hipd.h.

#define SYM_CONF_MAX_TASK   (1<<SYM_CONF_MAX_TAG_ORDER)

Definition at line 111 of file sym_hipd.h.

#define SYM_CONF_MIN_ASYNC   (40)

Definition at line 147 of file sym_hipd.h.

#define SYM_DISC_ENABLED   (1)

Definition at line 329 of file sym_hipd.h.

#define sym_free_mem_cluster (   p)    free_pages((unsigned long)p, SYM_MEM_PAGE_ORDER)

Definition at line 1127 of file sym_hipd.h.

#define sym_get_mem_cluster ( )    (void *) __get_free_pages(GFP_ATOMIC, SYM_MEM_PAGE_ORDER)

Definition at line 1125 of file sym_hipd.h.

#define sym_get_script_dp (   np,
  cp 
)    (cp->phys.head.lastp)

Definition at line 693 of file sym_hipd.h.

#define sym_lp (   tp,
  lun 
)    (!lun) ? (tp)->lun0p : NULL

Definition at line 581 of file sym_hipd.h.

#define sym_m_pool_match (   mp_id1,
  mp_id2 
)    (mp_id1 == mp_id2)

Definition at line 1204 of file sym_hipd.h.

#define SYM_MEM_CLUSTER_MASK   (SYM_MEM_CLUSTER_SIZE-1)

Definition at line 166 of file sym_hipd.h.

#define SYM_MEM_CLUSTER_SHIFT   (PAGE_SHIFT+SYM_MEM_PAGE_ORDER)

Definition at line 157 of file sym_hipd.h.

#define SYM_MEM_CLUSTER_SIZE   (1UL << SYM_MEM_CLUSTER_SHIFT)

Definition at line 165 of file sym_hipd.h.

#define SYM_MEM_FREE_UNUSED   /* Free unused pages immediately */

Definition at line 158 of file sym_hipd.h.

#define SYM_MEM_PAGE_ORDER   0 /* 1 PAGE maximum */

Definition at line 156 of file sym_hipd.h.

#define SYM_MEM_SHIFT   4

Definition at line 164 of file sym_hipd.h.

#define SYM_MEM_WARN   1 /* Warn on failed operations */

Definition at line 154 of file sym_hipd.h.

#define sym_mfree_dma (   p,
  l,
  n 
)    _sym_mfree_dma(np, p, l, n)

Definition at line 1196 of file sym_hipd.h.

#define SYM_SCAN_BOOT_DISABLED   (1<<2)

Definition at line 331 of file sym_hipd.h.

#define SYM_SCAN_LUNS_DISABLED   (1<<3)

Definition at line 332 of file sym_hipd.h.

#define sym_set_script_dp (   np,
  cp,
  dp 
)
Value:
do { \
cp->phys.head.lastp = cpu_to_scr(dp); \
} while (0)

Definition at line 688 of file sym_hipd.h.

#define SYM_SNOOP_TIMEOUT   (10000000)

Definition at line 342 of file sym_hipd.h.

#define SYM_SNS_BBUF_LEN   32

Definition at line 747 of file sym_hipd.h.

#define SYM_TAGS_ENABLED   (1<<1)

Definition at line 330 of file sym_hipd.h.

#define sym_verbose   (np->verbose)

Definition at line 88 of file sym_hipd.h.

#define use_dac (   np)    0

Definition at line 1035 of file sym_hipd.h.

#define VTOB_HASH_CODE (   m)    ((((unsigned long)(m)) >> SYM_MEM_CLUSTER_SHIFT) & VTOB_HASH_MASK)

Definition at line 1151 of file sym_hipd.h.

#define VTOB_HASH_MASK   (VTOB_HASH_SIZE-1)

Definition at line 1150 of file sym_hipd.h.

#define VTOB_HASH_SHIFT   5

Definition at line 1148 of file sym_hipd.h.

#define VTOB_HASH_SIZE   (1UL << VTOB_HASH_SHIFT)

Definition at line 1149 of file sym_hipd.h.

#define vtobus (   p)    __vtobus(np->bus_dmat, _uvptv_(p))

Definition at line 1197 of file sym_hipd.h.

#define XE_BAD_PHASE   (1<<1) /* illegal phase (4/5) */

Definition at line 289 of file sym_hipd.h.

#define XE_EXTRA_DATA   (1) /* unexpected data phase */

Definition at line 288 of file sym_hipd.h.

#define XE_PARITY_ERR   (1<<2) /* unrecovered SCSI parity error */

Definition at line 290 of file sym_hipd.h.

#define XE_SODL_UNRUN   (1<<3) /* ODD transfer in DATA OUT phase */

Definition at line 291 of file sym_hipd.h.

#define XE_SWIDE_OVRUN   (1<<4) /* ODD transfer in DATA IN phase */

Definition at line 292 of file sym_hipd.h.

Typedef Documentation

Definition at line 805 of file sym_hipd.h.

Function Documentation

void* __sym_calloc_dma ( m_pool_ident_t  dev_dmat,
int  size,
char name 
)

Definition at line 312 of file sym_malloc.c.

void __sym_mfree_dma ( m_pool_ident_t  dev_dmat,
void m,
int  size,
char name 
)

Definition at line 335 of file sym_malloc.c.

dma_addr_t __vtobus ( m_pool_ident_t  dev_dmat,
void m 
)

Definition at line 357 of file sym_malloc.c.

int sym_abort_scsiio ( struct sym_hcb np,
struct scsi_cmnd ccb,
int  timed_out 
)

Definition at line 5326 of file sym_hipd.c.

struct sym_lcb* sym_alloc_lcb ( struct sym_hcb np,
u_char  tn,
u_char  ln 
)
read

Definition at line 4969 of file sym_hipd.c.

int sym_clear_tasks ( struct sym_hcb np,
int  cam_status,
int  target,
int  lun,
int  task 
)

Definition at line 3194 of file sym_hipd.c.

char* sym_driver_name ( void  )
struct sym_fw* sym_find_firmware ( struct sym_chip chip)
read

Definition at line 350 of file sym_fw.c.

void sym_free_ccb ( struct sym_hcb np,
struct sym_ccb cp 
)

Definition at line 4773 of file sym_hipd.c.

int sym_free_lcb ( struct sym_hcb np,
u_char  tn,
u_char  ln 
)

Definition at line 5100 of file sym_hipd.c.

void sym_fw_bind_script ( struct sym_hcb np,
u32 start,
int  len 
)

Definition at line 365 of file sym_fw.c.

struct sym_ccb* sym_get_ccb ( struct sym_hcb np,
struct scsi_cmnd cmd,
u_char  tag_order 
)
read

Definition at line 4646 of file sym_hipd.c.

int sym_hcb_attach ( struct Scsi_Host shost,
struct sym_fw fw,
struct sym_nvram nvram 
)

Definition at line 5576 of file sym_hipd.c.

void sym_hcb_free ( struct sym_hcb np)

Definition at line 5799 of file sym_hipd.c.

irqreturn_t sym_interrupt ( struct Scsi_Host )

Definition at line 2812 of file sym_hipd.c.

struct sym_chip* sym_lookup_chip_table ( u_short  device_id,
u_char  revision 
)
read

Definition at line 1292 of file sym_hipd.c.

void sym_print_xerr ( struct scsi_cmnd cmd,
int  x_status 
)

Definition at line 93 of file sym_hipd.c.

void sym_put_start_queue ( struct sym_hcb np,
struct sym_ccb cp 
)

Definition at line 1480 of file sym_hipd.c.

int sym_queue_scsiio ( struct sym_hcb np,
struct scsi_cmnd csio,
struct sym_ccb cp 
)

Definition at line 5136 of file sym_hipd.c.

int sym_reset_scsi_bus ( struct sym_hcb np,
int  enab_int 
)

Definition at line 190 of file sym_hipd.c.

int sym_reset_scsi_target ( struct sym_hcb np,
int  target 
)

Definition at line 5277 of file sym_hipd.c.

void sym_start_up ( struct Scsi_Host ,
int  reason 
)

Definition at line 1703 of file sym_hipd.c.