Lines Matching defs:fcp
1483 fcparam *fcp;
1491 fcp = FCPARAM(isp, 0);
1492 if (fcp->role == ISP_ROLE_NONE) {
1499 icbp->icb_fwoptions = fcp->isp_fwoptions;
1532 if (fcp->role & ISP_ROLE_TARGET) {
1538 if (fcp->role & ISP_ROLE_INITIATOR) {
1549 icbp->icb_maxalloc = fcp->isp_maxalloc;
1551 isp_prt(isp, ISP_LOGERR, "bad maximum allocation (%d)- using 16", fcp->isp_maxalloc);
1559 icbp->icb_retry_delay = fcp->isp_retry_delay;
1560 icbp->icb_retry_count = fcp->isp_retry_count;
1561 icbp->icb_hardaddr = fcp->isp_loopid;
1626 if ((fcp->isp_xfwoptions & ICBXOPT_TIMER_MASK) == ICBXOPT_ZIO) {
1637 if (fcp->isp_zfwoptions & ICBZOPT_50_OHM) {
1654 if (fcp->role & ISP_ROLE_TARGET) {
1666 if (fcp->isp_wwnn && fcp->isp_wwpn && (fcp->isp_wwnn >> 60) != 2) {
1668 MAKE_NODE_NAME_FROM_WWN(icbp->icb_nodename, fcp->isp_wwnn);
1669 MAKE_NODE_NAME_FROM_WWN(icbp->icb_portname, fcp->isp_wwpn);
1672 ((uint32_t) (fcp->isp_wwnn >> 32)),
1673 ((uint32_t) (fcp->isp_wwnn)),
1674 ((uint32_t) (fcp->isp_wwpn >> 32)),
1675 ((uint32_t) (fcp->isp_wwpn)));
1676 } else if (fcp->isp_wwpn) {
1678 MAKE_NODE_NAME_FROM_WWN(icbp->icb_portname, fcp->isp_wwpn);
1681 ((uint32_t) (fcp->isp_wwpn >> 32)),
1682 ((uint32_t) (fcp->isp_wwpn)));
1711 isp_put_icb(isp, icbp, (isp_icb_t *)fcp->isp_scratch);
1717 mbs.param[2] = DMA_WD1(fcp->isp_scdma);
1718 mbs.param[3] = DMA_WD0(fcp->isp_scdma);
1719 mbs.param[6] = DMA_WD3(fcp->isp_scdma);
1720 mbs.param[7] = DMA_WD2(fcp->isp_scdma);
1723 fcp->isp_scratch, (uint32_t) ((uint64_t)fcp->isp_scdma >> 32),
1724 (uint32_t) fcp->isp_scdma);
1745 fcparam *fcp;
1754 fcp = FCPARAM(isp, chan);
1755 if (fcp->role != ISP_ROLE_NONE) {
1768 fcp = FCPARAM(isp, 0);
1781 icbp->icb_fwoptions1 = fcp->isp_fwoptions;
1782 if (fcp->role & ISP_ROLE_TARGET) {
1788 if (fcp->role & ISP_ROLE_INITIATOR) {
1821 icbp->icb_hardaddr = fcp->isp_loopid;
1831 icbp->icb_fwoptions2 = fcp->isp_xfwoptions;
1877 icbp->icb_fwoptions3 = fcp->isp_zfwoptions;
1894 if (fcp->isp_wwnn && fcp->isp_wwpn && (fcp->isp_wwnn >> 60) != 2) {
1896 MAKE_NODE_NAME_FROM_WWN(icbp->icb_portname, fcp->isp_wwpn);
1897 MAKE_NODE_NAME_FROM_WWN(icbp->icb_nodename, fcp->isp_wwnn);
1898 isp_prt(isp, ISP_LOGDEBUG1, "Setting ICB Node 0x%08x%08x Port 0x%08x%08x", ((uint32_t) (fcp->isp_wwnn >> 32)), ((uint32_t) (fcp->isp_wwnn)),
1899 ((uint32_t) (fcp->isp_wwpn >> 32)), ((uint32_t) (fcp->isp_wwpn)));
1900 } else if (fcp->isp_wwpn) {
1902 MAKE_NODE_NAME_FROM_WWN(icbp->icb_portname, fcp->isp_wwpn);
1903 isp_prt(isp, ISP_LOGDEBUG1, "Setting ICB Node to be same as Port 0x%08x%08x", ((uint32_t) (fcp->isp_wwpn >> 32)), ((uint32_t) (fcp->isp_wwpn)));
1908 icbp->icb_retry_count = fcp->isp_retry_count;
1960 ISP_MEMZERO(fcp->isp_scratch, ISP_FC_SCRLEN);
1961 isp_put_icb_2400(isp, icbp, fcp->isp_scratch);
1974 off = fcp->isp_scratch;
1995 off = fcp->isp_scratch;
2012 mbs.param[2] = DMA_WD1(fcp->isp_scdma);
2013 mbs.param[3] = DMA_WD0(fcp->isp_scdma);
2014 mbs.param[6] = DMA_WD3(fcp->isp_scdma);
2015 mbs.param[7] = DMA_WD2(fcp->isp_scdma);
2016 isp_prt(isp, ISP_LOGDEBUG0, "INIT F/W from %04x%04x%04x%04x", DMA_WD3(fcp->isp_scdma), DMA_WD2(fcp->isp_scdma), DMA_WD1(fcp->isp_scdma), DMA_WD0(fcp->isp_scdma));
2037 fcparam *fcp = FCPARAM(isp, chan);
2045 if (fcp->portdb[i].target_mode) {
2048 fcp->portdb[i].handle, fcp->portdb[i].portid);
2049 ISP_MEMZERO(&fcp->portdb[i], sizeof (fcportdb_t));
2054 ISP_MEMZERO(&fcp->portdb[i], sizeof (fcportdb_t));
2056 switch (fcp->portdb[i].state) {
2061 fcp->portdb[i].state = FC_PORTDB_STATE_PROBATIONAL;
2067 ISP_MEMZERO(&fcp->portdb[i], sizeof (fcportdb_t));
2068 fcp->portdb[i].state = FC_PORTDB_STATE_NIL;
2085 fcparam *fcp;
2124 fcp = FCPARAM(isp, chan);
2125 scp = fcp->isp_scratch;
2130 mbs.param[2] = DMA_WD1(fcp->isp_scdma);
2131 mbs.param[3] = DMA_WD0(fcp->isp_scdma);
2132 mbs.param[6] = DMA_WD3(fcp->isp_scdma);
2133 mbs.param[7] = DMA_WD2(fcp->isp_scdma);
2303 fcparam *fcp = FCPARAM(isp, chan);
2320 mbs.param[2] = DMA_WD1(fcp->isp_scdma);
2321 mbs.param[3] = DMA_WD0(fcp->isp_scdma);
2322 mbs.param[6] = DMA_WD3(fcp->isp_scdma);
2323 mbs.param[7] = DMA_WD2(fcp->isp_scdma);
2339 isp_get_pdb_24xx(isp, fcp->isp_scratch, &un.bill);
2358 isp_get_pdb_21xx(isp, fcp->isp_scratch, &un.fred);
2398 fcparam *fcp = FCPARAM(isp, chan);
2401 if (fcp->isp_fwstate < FW_READY ||
2402 fcp->isp_loopstate < LOOP_PDB_RCVD) {
2461 fcparam *fcp;
2465 fcp = FCPARAM(isp, chan);
2482 if (lwfs != fcp->isp_fwstate) {
2483 isp_prt(isp, ISP_LOGCONFIG|ISP_LOGSANCFG, "Chan %d Firmware State <%s->%s>", chan, isp_fc_fw_statename((int)lwfs), isp_fc_fw_statename((int)fcp->isp_fwstate));
2484 lwfs = fcp->isp_fwstate;
2486 if (fcp->isp_fwstate == FW_READY) {
2533 if (fcp->isp_fwstate != FW_READY) {
2553 fcp->isp_loopid = mbs.param[1];
2555 fcp->isp_loopid = mbs.param[1] & 0xff;
2559 fcp->isp_topo = TOPO_NL_PORT;
2565 fcp->isp_topo = topo;
2567 fcp->isp_portid = mbs.param[2] | (mbs.param[3] << 16);
2579 } else if (fcp->isp_topo == TOPO_FL_PORT || fcp->isp_topo == TOPO_F_PORT) {
2589 if (fcp->isp_topo == TOPO_FL_PORT || fcp->isp_topo == TOPO_NL_PORT) {
2590 uint8_t alpa = fcp->isp_portid;
2602 if (alpa_map[i] && fcp->isp_loopid != i) {
2603 isp_prt(isp, ISP_LOGSANCFG|ISP_LOGDEBUG0, "Chan %d deriving loopid %d from AL_PA map (AL_PA 0x%x) and ignoring returned value %d (AL_PA 0x%x)", chan, i, alpa_map[i], fcp->isp_loopid, alpa);
2604 fcp->isp_loopid = i;
2617 if (r && (fcp->isp_topo == TOPO_F_PORT || fcp->isp_topo == TOPO_FL_PORT)) {
2619 fcp->isp_topo = TOPO_PTP_STUB;
2626 fcp->isp_topo = TOPO_FL_PORT;
2632 fcp->isp_topo = TOPO_NL_PORT;
2639 lp = &fcp->portdb[FL_ID];
2649 fcp->inorder = (mbs.param[7] & ISP24XX_INORDER) != 0;
2651 fcp->npiv_fabric = (mbs.param[7] & ISP24XX_NPIV_SAN) != 0;
2652 if (fcp->npiv_fabric) {
2657 fcp->isp_sns_hdl = NPH_SNS_HDLBASE + chan;
2658 r = isp_plogx(isp, chan, fcp->isp_sns_hdl, SNS_PORT_ID, PLOGX_FLG_CMD_PLOGI | PLOGX_FLG_COND_PLOGI | PLOGX_FLG_SKIP_PRLI, 0);
2664 fcp->isp_sns_hdl = NPH_SNS_ID;
2668 fcp->isp_sns_hdl = SNS_ID;
2677 fcp->portdb[FL_ID].state = FC_PORTDB_STATE_NIL;
2680 fcp->isp_gbspeed = 1;
2689 fcp->isp_gbspeed = 8;
2692 fcp->isp_gbspeed = 4;
2695 fcp->isp_gbspeed = 2;
2698 fcp->isp_gbspeed = 1;
2706 isp_prt(isp, ISP_LOGSANCFG|ISP_LOGCONFIG, topology, chan, (uint32_t) (fcp->isp_wwpn >> 32), (uint32_t) fcp->isp_wwpn, fcp->isp_portid, fcp->isp_loopid, isp_fc_toponame(fcp));
2734 fcparam *fcp = FCPARAM(isp, chan);
2738 if (fcp->isp_loopstate == LOOP_READY) {
2745 if (fcp->isp_loopstate != LOOP_PDB_RCVD &&
2746 fcp->isp_loopstate != LOOP_FSCAN_DONE &&
2747 fcp->isp_loopstate != LOOP_LSCAN_DONE) {
2749 fcp->isp_loopstate);
2753 if (fcp->isp_topo == TOPO_FL_PORT ||
2754 fcp->isp_topo == TOPO_NL_PORT ||
2755 fcp->isp_topo == TOPO_N_PORT) {
2756 if (fcp->isp_loopstate < LOOP_LSCAN_DONE) {
2765 if (fcp->isp_topo == TOPO_F_PORT || fcp->isp_topo == TOPO_FL_PORT) {
2766 if (fcp->isp_loopstate < LOOP_FSCAN_DONE) {
2778 fcp->isp_loopstate = LOOP_SYNCING_PDB;
2781 lp = &fcp->portdb[dbidx];
2850 fcp->isp_dev_map[t] = dbidx + 1;
2876 fcp->loop_seen_once = 1;
2877 fcp->isp_loopstate = LOOP_READY;
2888 fcparam *fcp = FCPARAM(isp, chan);
2893 if (fcp->isp_fwstate < FW_READY ||
2894 fcp->isp_loopstate < LOOP_PDB_RCVD) {
2898 if (fcp->isp_loopstate > LOOP_SCANNING_LOOP) {
2911 switch (fcp->isp_topo) {
2919 fcp->isp_loopstate = LOOP_LSCAN_DONE;
2930 fcp->isp_loopstate = LOOP_LSCAN_DONE;
2934 fcp->isp_loopstate = LOOP_SCANNING_LOOP;
2962 if (fcp->isp_loopstate < LOOP_SCANNING_LOOP) {
2980 if (fcp->isp_loopstate < LOOP_SCANNING_LOOP) {
2989 if (fcp->isp_loopstate < LOOP_SCANNING_LOOP) {
3053 lp = &fcp->portdb[i];
3135 if (fcp->portdb[i].target_mode) {
3138 if (fcp->portdb[i].state == FC_PORTDB_STATE_NIL) {
3147 lp = &fcp->portdb[i];
3161 fcp->isp_loopstate = LOOP_LSCAN_DONE;
3202 fcparam *fcp = FCPARAM(isp, chan);
3211 rq->snscb_addr[RQRSP_ADDR0015] = DMA_WD0(fcp->isp_scdma + IGPOFF);
3212 rq->snscb_addr[RQRSP_ADDR1631] = DMA_WD1(fcp->isp_scdma + IGPOFF);
3213 rq->snscb_addr[RQRSP_ADDR3247] = DMA_WD2(fcp->isp_scdma + IGPOFF);
3214 rq->snscb_addr[RQRSP_ADDR4863] = DMA_WD3(fcp->isp_scdma + IGPOFF);
3220 isp_put_gid_ft_request(isp, rq, fcp->isp_scratch);
3226 mbs.param[2] = DMA_WD1(fcp->isp_scdma);
3227 mbs.param[3] = DMA_WD0(fcp->isp_scdma);
3228 mbs.param[6] = DMA_WD3(fcp->isp_scdma);
3229 mbs.param[7] = DMA_WD2(fcp->isp_scdma);
3245 fcparam *fcp = FCPARAM(isp, chan);
3254 uint8_t *scp = fcp->isp_scratch;
3271 pt->ctp_nphdl = fcp->isp_sns_hdl;
3278 pt->ctp_dataseg[0].ds_base = DMA_LO32(fcp->isp_scdma+XTXOFF);
3279 pt->ctp_dataseg[0].ds_basehi = DMA_HI32(fcp->isp_scdma+XTXOFF);
3281 pt->ctp_dataseg[1].ds_base = DMA_LO32(fcp->isp_scdma+IGPOFF);
3282 pt->ctp_dataseg[1].ds_basehi = DMA_HI32(fcp->isp_scdma+IGPOFF);
3312 mbs.param[2] = DMA_WD1(fcp->isp_scdma + CTXOFF);
3313 mbs.param[3] = DMA_WD0(fcp->isp_scdma + CTXOFF);
3314 mbs.param[6] = DMA_WD3(fcp->isp_scdma + CTXOFF);
3315 mbs.param[7] = DMA_WD2(fcp->isp_scdma + CTXOFF);
3344 fcparam *fcp = FCPARAM(isp, chan);
3353 if (fcp->isp_fwstate != FW_READY ||
3354 fcp->isp_loopstate < LOOP_LSCAN_DONE) {
3357 if (fcp->isp_loopstate > LOOP_SCANNING_FABRIC) {
3360 if (fcp->isp_topo != TOPO_FL_PORT && fcp->isp_topo != TOPO_F_PORT) {
3361 fcp->isp_loopstate = LOOP_FSCAN_DONE;
3367 fcp->isp_loopstate = LOOP_SCANNING_FABRIC;
3373 if (fcp->isp_loopstate < LOOP_SCANNING_FABRIC) {
3392 fcp->isp_loopstate = LOOP_PDB_RCVD;
3404 if (fcp->isp_loopstate < LOOP_SCANNING_FABRIC) {
3411 fcp->isp_loopstate = LOOP_FSCAN_DONE;
3415 fcp->isp_loopstate = LOOP_PDB_RCVD; /* try again */
3421 rs0 = (sns_gid_ft_rsp_t *) ((uint8_t *)fcp->isp_scratch+IGPOFF);
3422 rs1 = (sns_gid_ft_rsp_t *) ((uint8_t *)fcp->isp_scratch+OGPOFF);
3424 if (fcp->isp_loopstate < LOOP_SCANNING_FABRIC) {
3442 fcp->isp_loopstate = LOOP_FSCAN_DONE;
3450 fcp->portdb[FL_ID].state = FC_PORTDB_STATE_PENDING_VALID;
3549 if ((portid >> 8) == (fcp->isp_portid >> 8)) {
3555 } else if (portid == fcp->isp_portid) {
3572 lp = &fcp->portdb[dbidx];
3589 lp = &fcp->portdb[dbidx];
3609 if (fcp->isp_loopstate != LOOP_SCANNING_FABRIC) {
3657 if (fcp->isp_loopstate !=
3665 if (fcp->isp_loopstate !=
3726 for (lp = fcp->portdb; lp < &fcp->portdb[MAX_FC_TARG]; lp++) {
3727 if (lp >= &fcp->portdb[FL_ID] &&
3728 lp <= &fcp->portdb[SNS_ID]) {
3739 dbidx = lp - fcp->portdb;
3751 if (lp < &fcp->portdb[MAX_FC_TARG]) {
3771 lp = &fcp->portdb[dbidx];
3781 if (fcp->isp_loopstate != LOOP_SCANNING_FABRIC) {
3788 if (fcp->isp_loopstate != LOOP_SCANNING_FABRIC) {
3809 if (fcp->portdb[dbidx].target_mode) {
3812 if (fcp->portdb[dbidx].node_wwn == wwnn &&
3813 fcp->portdb[dbidx].port_wwn == wwpn) {
3832 if (fcp->portdb[dbidx].state != FC_PORTDB_STATE_ZOMBIE) {
3838 (long) (lp - fcp->portdb), dbidx,
3839 fcp->portdb[dbidx].state);
3851 lp = &fcp->portdb[dbidx];
3869 if (fcp->isp_loopstate != LOOP_SCANNING_FABRIC) {
3873 fcp->isp_loopstate = LOOP_FSCAN_DONE;
3987 fcparam *fcp = FCPARAM(isp, chan);
3994 reqp->snscb_addr[RQRSP_ADDR0015] = DMA_WD0(fcp->isp_scdma + 0x100);
3995 reqp->snscb_addr[RQRSP_ADDR1631] = DMA_WD1(fcp->isp_scdma + 0x100);
3996 reqp->snscb_addr[RQRSP_ADDR3247] = DMA_WD2(fcp->isp_scdma + 0x100);
3997 reqp->snscb_addr[RQRSP_ADDR4863] = DMA_WD3(fcp->isp_scdma + 0x100);
4000 reqp->snscb_data[4] = fcp->isp_portid & 0xffff;
4001 reqp->snscb_data[5] = (fcp->isp_portid >> 16) & 0xff;
4007 isp_put_sns_request(isp, reqp, (sns_screq_t *) fcp->isp_scratch);
4010 mbs.param[2] = DMA_WD1(fcp->isp_scdma);
4011 mbs.param[3] = DMA_WD0(fcp->isp_scdma);
4012 mbs.param[6] = DMA_WD3(fcp->isp_scdma);
4013 mbs.param[7] = DMA_WD2(fcp->isp_scdma);
4028 fcparam *fcp = FCPARAM(isp, chan);
4037 uint8_t *scp = fcp->isp_scratch;
4052 pt->ctp_nphdl = fcp->isp_sns_hdl;
4059 pt->ctp_dataseg[0].ds_base = DMA_LO32(fcp->isp_scdma+XTXOFF);
4060 pt->ctp_dataseg[0].ds_basehi = DMA_HI32(fcp->isp_scdma+XTXOFF);
4062 pt->ctp_dataseg[1].ds_base = DMA_LO32(fcp->isp_scdma+IGPOFF);
4063 pt->ctp_dataseg[1].ds_basehi = DMA_HI32(fcp->isp_scdma+IGPOFF);
4083 rp->rftid_portid[0] = fcp->isp_portid >> 16;
4084 rp->rftid_portid[1] = fcp->isp_portid >> 8;
4085 rp->rftid_portid[2] = fcp->isp_portid;
4096 mbs.param[2] = DMA_WD1(fcp->isp_scdma + CTXOFF);
4097 mbs.param[3] = DMA_WD0(fcp->isp_scdma + CTXOFF);
4098 mbs.param[6] = DMA_WD3(fcp->isp_scdma + CTXOFF);
4099 mbs.param[7] = DMA_WD2(fcp->isp_scdma + CTXOFF);
4229 fcparam *fcp = FCPARAM(isp, XS_CHANNEL(xs));
4231 if ((fcp->role & ISP_ROLE_INITIATOR) == 0) {
4239 if (fcp->isp_fwstate != FW_READY || fcp->isp_loopstate != LOOP_READY) {
4248 hdlidx = fcp->isp_dev_map[XS_TGT(xs)] - 1;
4254 if (fcp->portdb[hdlidx].state == FC_PORTDB_STATE_ZOMBIE) {
4257 if (fcp->portdb[hdlidx].state != FC_PORTDB_STATE_VALID) {
4261 target = fcp->portdb[hdlidx].handle;
4262 fcp->portdb[hdlidx].dirty = 1;
4514 fcparam *fcp = FCPARAM(isp, chan);
4518 hdlidx = fcp->isp_dev_map[tgt] - 1;
4525 lp = &fcp->portdb[hdlidx];
4548 mbs.param[2] = DMA_WD1(fcp->isp_scdma);
4549 mbs.param[3] = DMA_WD0(fcp->isp_scdma);
4550 mbs.param[6] = DMA_WD3(fcp->isp_scdma);
4551 mbs.param[7] = DMA_WD2(fcp->isp_scdma);
4557 isp_put_24xx_tmf(isp, tmf, fcp->isp_scratch);
4559 fcp->sendmarker = 1;
4569 &((isp24xx_statusreq_t *)fcp->isp_scratch)[1], sp);
4615 fcparam *fcp;
4619 fcp = FCPARAM(isp, chan);
4620 hdlidx = fcp->isp_dev_map[tgt] - 1;
4627 lp = &fcp->portdb[hdlidx];
4649 mbs.param[2] = DMA_WD1(fcp->isp_scdma);
4650 mbs.param[3] = DMA_WD0(fcp->isp_scdma);
4651 mbs.param[6] = DMA_WD3(fcp->isp_scdma);
4652 mbs.param[7] = DMA_WD2(fcp->isp_scdma);
4658 isp_put_24xx_abrt(isp, ab, fcp->isp_scratch);
4660 &((uint8_t *)fcp->isp_scratch)[QENTRY_LEN];
5257 "Invalid FCP Cmnd",
5258 "FCP DATA RO mismatch with FCP DATA_XFR_RDY RO",
5263 ISP_SNPRINTF(lb, sizeof lb, "Unknown FCP Response Code 0x%x", resp[FCP_RSPNS_CODE_OFFSET]);
5268 isp_xs_prt(isp, xs, ISP_LOGWARN, "FCP RESPONSE, LENGTH %u: %s CDB0=0x%02x", rlen, ptr, XS_CDBP(xs)[0] & 0xff);
5699 fcparam *fcp = FCPARAM(isp, chan);
5700 int topo = fcp->isp_topo;
5702 if (fcp->role == ISP_ROLE_NONE) {
5706 fcp->isp_fwstate = FW_CONFIG_WAIT;
5707 fcp->isp_loopstate = LOOP_LIP_RCVD;
5753 fcparam *fcp = FCPARAM(isp, chan);
5755 if (fcp->role == ISP_ROLE_NONE) {
5761 fcp->isp_fwstate = FW_CONFIG_WAIT;
5762 fcp->isp_loopstate = LOOP_LIP_RCVD;
5779 fcparam *fcp = FCPARAM(isp, chan);
5781 if (fcp->role == ISP_ROLE_NONE) {
5786 fcp->isp_fwstate = FW_CONFIG_WAIT;
5787 fcp->isp_loopstate = LOOP_NIL;
5804 fcparam *fcp = FCPARAM(isp, chan);
5806 if (fcp->role == ISP_ROLE_NONE) {
5811 fcp->isp_fwstate = FW_CONFIG_WAIT;
5812 fcp->isp_loopstate = LOOP_NIL;
5840 fcparam *fcp = FCPARAM(isp, chan);
5842 if (fcp->role == ISP_ROLE_NONE) {
5846 fcp->isp_loopstate = LOOP_PDB_RCVD;
5865 fcparam *fcp = FCPARAM(isp, chan);
5867 if (fcp->role == ISP_ROLE_NONE) {
5871 if (fcp->isp_topo == TOPO_F_PORT) {
5872 fcp->isp_loopstate = LOOP_LSCAN_DONE;
5874 fcp->isp_loopstate = LOOP_PDB_RCVD;
7310 fcparam *fcp = FCPARAM(isp, chan);
7315 fcp->isp_fwstate = mbs.param[1];
7577 fcparam *fcp = FCPARAM(isp, chan);
7582 fcp->role = GET_DEFAULT_ROLE(isp, chan);
7583 fcp->isp_maxalloc = ICB_DFLT_ALLOC;
7584 fcp->isp_retry_delay = ICB_DFLT_RDELAY;
7585 fcp->isp_retry_count = ICB_DFLT_RCOUNT;
7586 fcp->isp_loopid = DEFAULT_LOOPID(isp, chan);
7587 fcp->isp_wwnn_nvram = DEFAULT_NODEWWN(isp, chan);
7588 fcp->isp_wwpn_nvram = DEFAULT_PORTWWN(isp, chan);
7589 fcp->isp_fwoptions = 0;
7590 fcp->isp_lasthdl = NIL_HANDLE;
7593 fcp->isp_fwoptions |= ICB2400_OPT1_FAIRNESS;
7594 fcp->isp_fwoptions |= ICB2400_OPT1_HARD_ADDRESS;
7596 fcp->isp_fwoptions |= ICB2400_OPT1_FULL_DUPLEX;
7598 fcp->isp_fwoptions |= ICB2400_OPT1_BOTH_WWNS;
7600 fcp->isp_fwoptions |= ICBOPT_FAIRNESS;
7601 fcp->isp_fwoptions |= ICBOPT_PDBCHANGE_AE;
7602 fcp->isp_fwoptions |= ICBOPT_HARD_ADDRESS;
7604 fcp->isp_fwoptions |= ICBOPT_FULL_DUPLEX;
7610 fcp->isp_fwoptions &= ~ICBOPT_EXTENDED;
7634 fcp->isp_wwnn = ACTIVE_NODEWWN(isp, chan);
7635 fcp->isp_wwpn = ACTIVE_PORTWWN(isp, chan);
7637 chan, (uint32_t) (fcp->isp_wwnn >> 32), (uint32_t) (fcp->isp_wwnn),
7638 (uint32_t) (fcp->isp_wwpn >> 32), (uint32_t) (fcp->isp_wwpn),
7639 isp_class3_roles[fcp->role]);
8178 fcparam *fcp = FCPARAM(isp, 0);
8200 fcp->isp_wwpn_nvram = wwn;
8211 wwn = fcp->isp_wwpn_nvram & ~((uint64_t) 0xfff << 48);
8216 fcp->isp_wwnn_nvram = wwn;
8218 fcp->isp_maxalloc = ISP2100_NVRAM_MAXIOCBALLOCATION(nvram_data);
8223 fcp->isp_retry_delay = ISP2100_NVRAM_RETRY_DELAY(nvram_data);
8224 fcp->isp_retry_count = ISP2100_NVRAM_RETRY_COUNT(nvram_data);
8226 fcp->isp_loopid = ISP2100_NVRAM_HARDLOOPID(nvram_data);
8232 fcp->isp_fwoptions = ISP2100_NVRAM_OPTIONS(nvram_data);
8235 (uint32_t) (fcp->isp_wwnn_nvram >> 32),
8236 (uint32_t) fcp->isp_wwnn_nvram,
8237 (uint32_t) (fcp->isp_wwpn_nvram >> 32),
8238 (uint32_t) fcp->isp_wwpn_nvram,
8247 fcp->isp_xfwoptions = ISP2100_XFW_OPTIONS(nvram_data);
8248 fcp->isp_zfwoptions = ISP2100_ZFW_OPTIONS(nvram_data);
8256 fcparam *fcp = FCPARAM(isp, 0);
8276 fcp->isp_wwpn_nvram = wwn;
8284 if (wwn == 0 && (fcp->isp_wwpn_nvram >> 60) == 2) {
8285 wwn = fcp->isp_wwpn_nvram;
8288 fcp->isp_wwnn_nvram = wwn;
8291 fcp->isp_maxalloc = ISP2400_NVRAM_EXCHANGE_COUNT(nvram_data);
8298 fcp->isp_loopid = ISP2400_NVRAM_HARDLOOPID(nvram_data);
8304 fcp->isp_fwoptions = ISP2400_NVRAM_FIRMWARE_OPTIONS1(nvram_data);
8305 fcp->isp_xfwoptions = ISP2400_NVRAM_FIRMWARE_OPTIONS2(nvram_data);
8306 fcp->isp_zfwoptions = ISP2400_NVRAM_FIRMWARE_OPTIONS3(nvram_data);