Lines Matching defs:chan

54 static void isp_loop_changed(ispsoftc_t *isp, int chan);
77 int chan = arg2;
80 value = FCPARAM(isp, chan)->role;
90 old = FCPARAM(isp, chan)->role;
102 error = isp_control(isp, ISPCTL_CHANGE_ROLE, chan, value);
108 isp_attach_chan(ispsoftc_t *isp, struct cam_devq *devq, int chan)
110 fcparam *fcp = FCPARAM(isp, chan);
111 struct isp_fc *fc = ISP_FC_PC(isp, chan);
127 if (xpt_bus_register(sim, isp->isp_dev, chan) != CAM_SUCCESS) {
158 isp_loop_changed(isp, chan);
161 "%s_%d", device_get_nameunit(isp->isp_osinfo.dev), chan)) {
168 if (chan > 0) {
169 snprintf(name, sizeof(name), "chan%d", chan);
193 isp, chan, isp_role_sysctl, "I", "Current role");
228 isp_detach_chan(ispsoftc_t *isp, int chan)
230 struct isp_fc *fc = ISP_FC_PC(isp, chan);
247 int chan;
257 for (chan = 0; chan < isp->isp_nchan; chan++) {
258 if (isp_attach_chan(isp, isp->isp_osinfo.devq, chan)) {
276 while (--chan >= 0)
277 isp_detach_chan(isp, chan);
287 int chan;
296 for (chan = isp->isp_nchan - 1; chan >= 0; chan -= 1)
297 isp_detach_chan(isp, chan);
305 isp_freeze_loopdown(ispsoftc_t *isp, int chan)
307 struct isp_fc *fc = ISP_FC_PC(isp, chan);
313 "Chan %d Freeze simq (loopdown)", chan);
319 "Chan %d Mark simq frozen (loopdown)", chan);
325 isp_unfreeze_loopdown(ispsoftc_t *isp, int chan)
327 struct isp_fc *fc = ISP_FC_PC(isp, chan);
335 "Chan %d Release simq", chan);
375 int nr, chan, retval = ENOTTY;
389 chan = *(int *)addr;
390 if (chan < 0 || chan >= isp->isp_nchan) {
394 *(int *)addr = FCPARAM(isp, chan)->role;
399 chan = nr >> 8;
400 if (chan < 0 || chan >= isp->isp_nchan) {
410 *(int *)addr = FCPARAM(isp, chan)->role;
411 retval = isp_control(isp, ISPCTL_CHANGE_ROLE, chan, nr);
423 chan = *(intptr_t *)addr;
424 if (chan < 0 || chan >= isp->isp_nchan) {
429 if (isp_fc_runstate(isp, chan, 5 * 1000000) != LOOP_READY) {
438 chan = *(intptr_t *)addr;
439 if (chan < 0 || chan >= isp->isp_nchan) {
444 if (isp_control(isp, ISPCTL_SEND_LIP, chan)) {
460 lp = &FCPARAM(isp, ifc->chan)->portdb[ifc->loopid];
476 int chan = hba->fc_channel;
478 if (chan < 0 || chan >= isp->isp_nchan) {
488 hba->fc_topology = FCPARAM(isp, chan)->isp_topo + 1;
489 hba->fc_loopid = FCPARAM(isp, chan)->isp_loopid;
490 hba->nvram_node_wwn = FCPARAM(isp, chan)->isp_wwnn_nvram;
491 hba->nvram_port_wwn = FCPARAM(isp, chan)->isp_wwpn_nvram;
492 hba->active_node_wwn = FCPARAM(isp, chan)->isp_wwnn;
493 hba->active_port_wwn = FCPARAM(isp, chan)->isp_wwpn;
508 chan = fct->chan;
509 if (chan < 0 || chan >= isp->isp_nchan) {
517 fcp = FCPARAM(isp, chan);
538 tmf.tmf_vpidx = ISP_GET_VPIDX(isp, chan);
574 isp_prt(isp, ISP_LOGERR, "%s: TMF of chan %d error %d",
575 __func__, chan, retval);
648 static void isp_target_mark_aborted_early(ispsoftc_t *, int chan, tstate_t *, uint32_t);
719 isp_get_atpd(ispsoftc_t *isp, int chan, uint32_t tag, void *ccb)
721 struct isp_fc *fc = ISP_FC_PC(isp, chan);
735 isp_find_atpd(ispsoftc_t *isp, int chan, uint32_t tag)
737 struct isp_fc *fc = ISP_FC_PC(isp, chan);
752 isp_find_atpd_ccb(ispsoftc_t *isp, int chan, uint32_t tag, void *ccb)
754 struct isp_fc *fc = ISP_FC_PC(isp, chan);
765 isp_put_atpd(ispsoftc_t *isp, int chan, atio_private_data_t *atp)
767 struct isp_fc *fc = ISP_FC_PC(isp, chan);
777 isp_dump_atpd(ispsoftc_t *isp, int chan)
779 struct isp_fc *fc = ISP_FC_PC(isp, chan);
787 chan, atp->tag, atp->orig_datalen, atp->bytes_xfered, (uintmax_t)atp->lun, atp->nphdl, atp->sid, atp->did, atp->oxid, states[atp->state & 0x7]);
792 isp_get_ntpd(ispsoftc_t *isp, int chan)
794 struct isp_fc *fc = ISP_FC_PC(isp, chan);
804 isp_find_ntpd(ispsoftc_t *isp, int chan, uint32_t tag_id, uint32_t seq_id)
806 struct isp_fc *fc = ISP_FC_PC(isp, chan);
817 isp_put_ntpd(ispsoftc_t *isp, int chan, inot_private_data_t *ntp)
819 struct isp_fc *fc = ISP_FC_PC(isp, chan);
1304 uint16_t chan, nphdl = NIL_HANDLE;
1319 isp_find_chan_by_did(isp, did, &chan);
1320 if (chan == ISP_NOCHAN) {
1329 chan = 0;
1335 if (isp_find_pdb_by_portid(isp, chan, sid, &lp) == 0) {
1340 __func__, aep->at_rxid, did, chan, sid);
1341 isp_dump_portdb(isp, chan);
1342 isp_endcmd(isp, aep, NIL_HANDLE, chan, ECMD_TERMINATE, 0);
1350 tptr = get_lun_statep(isp, chan, lun);
1352 tptr = get_lun_statep(isp, chan, CAM_LUN_WILDCARD);
1358 isp_endcmd(isp, aep, nphdl, chan, SCSI_STATUS_BUSY, 0);
1360 isp_endcmd(isp, aep, nphdl, chan, SCSI_STATUS_CHECK_COND | ECMD_SVALID | (0x5 << 12) | (0x25 << 16), 0);
1369 if (isp_atio_restart(isp, chan, tptr))
1376 isp_endcmd(isp, aep, nphdl, chan, SCSI_BUSY, 0);
1389 oatp = isp_find_atpd(isp, chan, aep->at_rxid);
1400 atp = isp_get_atpd(isp, chan, aep->at_rxid, atiop);
1403 isp_endcmd(isp, aep, nphdl, chan, SCSI_BUSY, 0);
1410 atiop->init_id = FC_PORTDB_TGT(isp, chan, lp);
1464 ntp = isp_get_ntpd(isp, chan);
1466 isp_endcmd(isp, aep, nphdl, chan, SCSI_STATUS_BUSY, 0);
1788 isp_prt(isp, ISP_LOGTDEBUG0, "%s: code 0x%x sid 0x%x tagval 0x%016llx chan %d lun %jx", __func__, notify->nt_ncode,
1805 isp_prt(isp, ISP_LOGWARN, "%s: no state pointer found for chan %d lun %#jx", __func__, notify->nt_channel, (uintmax_t)lun);
1811 isp_prt(isp, ISP_LOGWARN, "%s: out of immediate notify structures for chan %d lun %#jx", __func__, notify->nt_channel, (uintmax_t)lun);
1854 isp_prt(isp, ISP_LOGWARN, "%s: unknown TMF code 0x%x for chan %d lun %#jx", __func__, notify->nt_ncode, notify->nt_channel, (uintmax_t)lun);
1892 isp_target_mark_aborted_early(ispsoftc_t *isp, int chan, tstate_t *tptr, uint32_t tag_id)
1902 isp_endcmd(isp, ntp->data, NIL_HANDLE, chan,
1904 isp_put_ntpd(isp, chan, ntp);
1983 isp_make_here(ispsoftc_t *isp, fcportdb_t *fcp, int chan, int tgt)
1986 struct isp_fc *fc = ISP_FC_PC(isp, chan);
1993 isp_prt(isp, ISP_LOGWARN, "Chan %d unable to alloc CCB for rescan", chan);
2006 isp_make_gone(ispsoftc_t *isp, fcportdb_t *fcp, int chan, int tgt)
2009 struct isp_fc *fc = ISP_FC_PC(isp, chan);
2039 int chan = fc - ISP_FC_PC(isp, 0);
2046 isp_prt(isp, ISP_LOGDEBUG0, "Chan %d GDT timer expired", chan);
2048 lp = &FCPARAM(isp, chan)->portdb[dbidx];
2058 isp_prt(isp, ISP_LOGCONFIG, prom3, chan, dbidx, lp->portid, "Gone Device Timeout");
2061 isp_make_gone(isp, lp, chan, dbidx);
2080 isp_prt(isp, ISP_LOG_SANCFG, "Chan %d Stopping Gone Device Timer @ %lu", chan, (unsigned long) time_uptime);
2096 isp_loop_changed(ispsoftc_t *isp, int chan)
2098 fcparam *fcp = FCPARAM(isp, chan);
2099 struct isp_fc *fc = ISP_FC_PC(isp, chan);
2103 isp_prt(isp, ISP_LOG_SANCFG|ISP_LOGDEBUG0, "Chan %d Loop changed", chan);
2105 isp_freeze_loopdown(isp, chan);
2111 isp_loop_up(ispsoftc_t *isp, int chan)
2113 struct isp_fc *fc = ISP_FC_PC(isp, chan);
2115 isp_prt(isp, ISP_LOG_SANCFG|ISP_LOGDEBUG0, "Chan %d Loop is up", chan);
2118 isp_unfreeze_loopdown(isp, chan);
2122 isp_loop_dead(ispsoftc_t *isp, int chan)
2124 fcparam *fcp = FCPARAM(isp, chan);
2125 struct isp_fc *fc = ISP_FC_PC(isp, chan);
2131 isp_prt(isp, ISP_LOG_SANCFG|ISP_LOGDEBUG0, "Chan %d Loop is dead", chan);
2155 isp->isp_xflist[i].handle, chan, XS_TGT(xs),
2170 isp->isp_xflist[i].handle, chan, XS_TGT(xs),
2176 isp_prt(isp, ISP_LOGCONFIG, prom3, chan, dbidx, lp->portid, "Loop Down Timeout");
2179 isp_make_gone(isp, lp, chan, dbidx);
2193 isp_unfreeze_loopdown(isp, chan);
2202 int chan = fc - ISP_FC_PC(isp, 0);
2209 "Chan %d Checking FC state", chan);
2210 lb = isp_fc_runstate(isp, chan, 250000);
2212 "Chan %d FC got to %s state", chan,
2253 isp_loop_up(isp, chan);
2255 isp_loop_dead(isp, chan);
2259 "Chan %d sleep for %d seconds", chan, slp);
2270 isp_abort_atpd(ispsoftc_t *isp, int chan, atio_private_data_t *atp)
2279 cto->ct_vpidx = chan;
3176 isp_default_wwn(ispsoftc_t * isp, int chan, int isactive, int iswwnn)
3179 struct isp_fc *fc = ISP_FC_PC(isp, chan);
3188 seed = iswwnn ? FCPARAM(isp, chan)->isp_wwnn_nvram :
3189 FCPARAM(isp, chan)->isp_wwpn_nvram;
3195 if (chan > 0) {
3212 if (!iswwnn && chan > 0) {
3219 seed ^= ((uint64_t) (chan + 1) & 0xf) << 56;
3220 seed ^= ((uint64_t) ((chan + 1) >> 4) & 0xf) << 52;
3271 isp_fc_scratch_acquire(ispsoftc_t *isp, int chan)
3273 struct isp_fc *fc = ISP_FC_PC(isp, chan);
3413 isp_fcp_reset_crn(ispsoftc_t *isp, int chan, uint32_t tgt, int tgt_set)
3415 struct isp_fc *fc = ISP_FC_PC(isp, chan);
3421 "Chan %d resetting CRN on all targets", chan);
3424 "Chan %d resetting CRN on target %u", chan, tgt);
3438 uint32_t chan, tgt;
3443 chan = XS_CHANNEL(cmd);
3446 fc = ISP_FC_PC(isp, chan);