ccb_p
ccb_p nego_cp; /* CCB used for the nego */
ccb_p link_ccbh; /* Host adapter CCB hash chain */
ccb_p ccbh[CCB_HASH_SIZE]; /* CCB hashed by DSA value */
ccb_p last_cp;
static int sym_prepare_nego (hcb_p np, ccb_p cp, int nego, u_char *msgptr);
static void sym_put_start_queue (hcb_p np, ccb_p cp);
static void sym_setsync (hcb_p np, ccb_p cp, u_char ofs, u_char per,
static void sym_setwide (hcb_p np, ccb_p cp, u_char wide);
static void sym_setpprot(hcb_p np, ccb_p cp, u_char dt, u_char ofs,
static void sym_settrans(hcb_p np, ccb_p cp, u_char dt, u_char ofs,
static void sym_sir_bad_scsi_status (hcb_p np, ccb_p cp);
static int sym_evaluate_dp (hcb_p np, ccb_p cp, u32 scr, int *ofs);
static void sym_modify_dp(hcb_p np, ccb_p cp, int ofs);
static int sym_compute_residual (hcb_p np, ccb_p cp);
static void sym_print_msg (ccb_p cp, char *label, u_char *msg);
static void sym_sync_nego (hcb_p np, tcb_p tp, ccb_p cp);
static void sym_ppr_nego (hcb_p np, tcb_p tp, ccb_p cp);
static void sym_wide_nego (hcb_p np, tcb_p tp, ccb_p cp);
static void sym_nego_default (hcb_p np, tcb_p tp, ccb_p cp);
static void sym_nego_rejected (hcb_p np, tcb_p tp, ccb_p cp);
static void sym_free_ccb (hcb_p np, ccb_p cp);
static ccb_p sym_get_ccb (hcb_p np, u_char tn, u_char ln, u_char tag_order);
static ccb_p sym_alloc_ccb (hcb_p np);
static ccb_p sym_ccb_from_dsa (hcb_p np, u32 dsa);
static void sym_complete_ok (hcb_p np, ccb_p cp);
static void sym_complete_error (hcb_p np, ccb_p cp);
static int sym_setup_cdb (hcb_p np, struct ccb_scsiio *csio, ccb_p cp);
ccb_p cp);
static int sym_fast_scatter_sg_physical(hcb_p np, ccb_p cp,
static int sym_scatter_sg_physical (hcb_p np, ccb_p cp,
static void PRINT_ADDR (ccb_p cp)
static void sym_enqueue_cam_ccb(ccb_p cp)
static void sym_xpt_done(hcb_p np, union ccb *ccb, ccb_p cp)
static int sym_prepare_nego(hcb_p np, ccb_p cp, int nego, u_char *msgptr)
static void sym_put_start_queue(hcb_p np, ccb_p cp)
ccb_p cp;
static void sym_setwide(hcb_p np, ccb_p cp, u_char wide)
sym_setsync(hcb_p np, ccb_p cp, u_char ofs, u_char per, u_char div, u_char fak)
static void sym_setpprot(hcb_p np, ccb_p cp, u_char dt, u_char ofs,
static void sym_settrans(hcb_p np, ccb_p cp, u_char dt, u_char ofs,
ccb_p cp = sym_ccb_from_dsa(np, dsa);
ccb_p cp = sym_ccb_from_dsa(np, dsa);
ccb_p cp;
ccb_p cp;
ccb_p cp;
static void sym_sir_bad_scsi_status(hcb_p np, ccb_p cp)
ccb_p cp;
ccb_p cp;
static int sym_evaluate_dp(hcb_p np, ccb_p cp, u32 scr, int *ofs)
static void sym_modify_dp(hcb_p np, ccb_p cp, int ofs)
static int sym_compute_residual(hcb_p np, ccb_p cp)
static void sym_print_msg (ccb_p cp, char *label, u_char *msg)
static void sym_sync_nego(hcb_p np, tcb_p tp, ccb_p cp)
static void sym_ppr_nego(hcb_p np, tcb_p tp, ccb_p cp)
static void sym_wide_nego(hcb_p np, tcb_p tp, ccb_p cp)
static void sym_nego_default(hcb_p np, tcb_p tp, ccb_p cp)
static void sym_nego_rejected(hcb_p np, tcb_p tp, ccb_p cp)
ccb_p cp = sym_ccb_from_dsa(np, dsa);
static ccb_p sym_get_ccb (hcb_p np, u_char tn, u_char ln, u_char tag_order)
ccb_p cp = (ccb_p) NULL;
static void sym_free_ccb(hcb_p np, ccb_p cp)
static ccb_p sym_alloc_ccb(hcb_p np)
ccb_p cp = NULL;
static ccb_p sym_ccb_from_dsa(hcb_p np, u32 dsa)
ccb_p cp;
static void sym_print_xerr(ccb_p cp, int x_status)
static void sym_complete_error (hcb_p np, ccb_p cp)
static void sym_complete_ok (hcb_p np, ccb_p cp)
ccb_p cp;
ccb_p cp2 = sym_que_entry(qp, struct sym_ccb, link_ccbq);
ccb_p cp;
static int sym_setup_cdb(hcb_p np, struct ccb_scsiio *csio, ccb_p cp)
sym_setup_data_pointers(hcb_p np, ccb_p cp, int dir)
ccb_p cp;
cp = (ccb_p) arg;
sym_setup_data_and_start(hcb_p np, struct ccb_scsiio *csio, ccb_p cp)
sym_fast_scatter_sg_physical(hcb_p np, ccb_p cp,
sym_scatter_sg_physical(hcb_p np, ccb_p cp, bus_dma_segment_t *psegs, int nsegs)
ccb_p cp;