Lines Matching refs:ccb_h

98 	    (scb->ccb->ccb_h.status & CAM_RELEASE_SIMQ) == 0) {  in aic_free_scb()
99 scb->ccb->ccb_h.status |= CAM_RELEASE_SIMQ; in aic_free_scb()
111 CAM_DEBUG(ccb->ccb_h.path, CAM_DEBUG_TRACE, ("aic_action\n")); in aic_action()
116 switch (ccb->ccb_h.func_code) { in aic_action()
125 ccb->ccb_h.status = CAM_REQUEUE_REQ; in aic_action()
131 ccb->ccb_h.ccb_scb_ptr = scb; in aic_action()
132 ccb->ccb_h.ccb_aic_ptr = aic; in aic_action()
134 scb->target = ccb->ccb_h.target_id; in aic_action()
135 scb->lun = ccb->ccb_h.target_lun; in aic_action()
137 if (ccb->ccb_h.func_code == XPT_SCSI_IO) { in aic_action()
139 if (ccb->ccb_h.flags & CAM_CDB_POINTER) { in aic_action()
140 if (ccb->ccb_h.flags & CAM_CDB_PHYS) { in aic_action()
141 ccb->ccb_h.status = CAM_REQ_INVALID; in aic_action()
150 if ((ccb->ccb_h.flags & CAM_DIR_MASK) != CAM_DIR_NONE) { in aic_action()
151 if ((ccb->ccb_h.flags & CAM_DATA_MASK) != in aic_action()
153 ccb->ccb_h.status = CAM_REQ_INVALID; in aic_action()
174 struct aic_tinfo *ti = &aic->tinfo[ccb->ccb_h.target_id]; in aic_action()
217 ccb->ccb_h.status = CAM_REQ_CMP; in aic_action()
224 struct aic_tinfo *ti = &aic->tinfo[ccb->ccb_h.target_id]; in aic_action()
257 ccb->ccb_h.status = CAM_REQ_CMP; in aic_action()
269 ccb->ccb_h.status = CAM_REQ_CMP; in aic_action()
294 cpi->ccb_h.status = CAM_REQ_CMP; in aic_action()
299 ccb->ccb_h.status = CAM_REQ_INVALID; in aic_action()
310 struct aic_softc *aic = (struct aic_softc *)ccb->ccb_h.ccb_aic_ptr; in aic_execute_scb()
314 if (ccb->ccb_h.status != CAM_REQ_INPROG) { in aic_execute_scb()
321 ccb->ccb_h.status |= CAM_SIM_QUEUED; in aic_execute_scb()
322 TAILQ_INSERT_TAIL(&aic->pending_ccbs, &ccb->ccb_h, sim_links.tqe); in aic_execute_scb()
324 callout_reset_sbt(&scb->timer, SBT_1MS * ccb->ccb_h.timeout, 0, in aic_execute_scb()
336 struct ccb_hdr *ccb_h; in aic_start() local
342 TAILQ_FOREACH(ccb_h, &aic->pending_ccbs, sim_links.tqe) { in aic_start()
343 ti = &aic->tinfo[ccb_h->target_id]; in aic_start()
344 if ((ti->lubusy & (1 << ccb_h->target_lun)) == 0) { in aic_start()
345 TAILQ_REMOVE(&aic->pending_ccbs, ccb_h, sim_links.tqe); in aic_start()
346 aic->nexus = (struct aic_scb *)ccb_h->ccb_scb_ptr; in aic_start()
367 CAM_DEBUG(scb->ccb->ccb_h.path, CAM_DEBUG_TRACE, in aic_select()
393 CAM_DEBUG(ccb->ccb_h.path, CAM_DEBUG_TRACE, in aic_selected()
405 (ccb->ccb_h.flags & CAM_TAG_ACTION_VALID) != 0) in aic_selected()
438 &aic->nexus->ccb->ccb_h, sim_links.tqe); in aic_reselected()
495 struct ccb_hdr *ccb_h; in aic_reconnect() local
501 TAILQ_FOREACH(ccb_h, &aic->nexus_ccbs, sim_links.tqe) { in aic_reconnect()
502 scb = (struct aic_scb *)ccb_h->ccb_scb_ptr; in aic_reconnect()
509 if (!ccb_h) { in aic_reconnect()
519 TAILQ_REMOVE(&aic->nexus_ccbs, ccb_h, sim_links.tqe); in aic_reconnect()
605 struct ccb_hdr *ccb_h; in aic_handle_msgin() local
636 ccb_h = &scb->ccb->ccb_h; in aic_handle_msgin()
643 ccb_h->status |= in aic_handle_msgin()
647 ccb_h->status |= CAM_AUTOSENSE_FAIL; in aic_handle_msgin()
649 ccb_h, scb->status); in aic_handle_msgin()
656 ccb_h->status |= CAM_REQ_CMP; in aic_handle_msgin()
657 } else if ((ccb_h->flags & CAM_DIS_AUTOSENSE) == 0 && in aic_handle_msgin()
665 ccb_h->status |= CAM_SCSI_STATUS_ERROR; in aic_handle_msgin()
703 ccb_h = &scb->ccb->ccb_h; in aic_handle_msgin()
704 xpt_setup_ccb(&neg.ccb_h, ccb_h->path, 1); in aic_handle_msgin()
705 xpt_async(AC_TRANSFER_NEG, ccb_h->path, &neg); in aic_handle_msgin()
715 ccb_h = &scb->ccb->ccb_h; in aic_handle_msgin()
716 TAILQ_INSERT_TAIL(&aic->nexus_ccbs, ccb_h, sim_links.tqe); in aic_handle_msgin()
720 CAM_DEBUG(ccb_h->path, CAM_DEBUG_TRACE, ("disconnected\n")); in aic_handle_msgin()
747 ccb_h = &scb->ccb->ccb_h; in aic_handle_msgin()
748 xpt_setup_ccb(&neg.ccb_h, ccb_h->path, 1); in aic_handle_msgin()
749 xpt_async(AC_TRANSFER_NEG, ccb_h->path, &neg); in aic_handle_msgin()
811 !(ccb->ccb_h.flags & CAM_DIS_DISCONNECT)); in aic_msgout()
1046 CAM_DEBUG(ccb->ccb_h.path, CAM_DEBUG_TRACE, in aic_done()
1048 ccb, ccb->ccb_h.status, ccb->csio.resid)); in aic_done()
1053 ccb->ccb_h.func_code != XPT_RESET_DEV) { in aic_done()
1055 struct ccb_hdr *ccb_h; in aic_done() local
1068 ccb_h = TAILQ_FIRST(&aic->pending_ccbs); in aic_done()
1069 while (ccb_h != NULL) { in aic_done()
1072 pending_scb = (struct aic_scb *)ccb_h->ccb_scb_ptr; in aic_done()
1073 if (ccb_h->target_id == scb->target) { in aic_done()
1074 ccb_h->status |= CAM_BDR_SENT; in aic_done()
1075 ccb_h = TAILQ_NEXT(ccb_h, sim_links.tqe); in aic_done()
1077 &pending_scb->ccb->ccb_h, sim_links.tqe); in aic_done()
1081 SBT_1MS * ccb_h->timeout, 0, aic_timeout, in aic_done()
1083 ccb_h = TAILQ_NEXT(ccb_h, sim_links.tqe); in aic_done()
1087 ccb_h = TAILQ_FIRST(&aic->nexus_ccbs); in aic_done()
1088 while (ccb_h != NULL) { in aic_done()
1091 nexus_scb = (struct aic_scb *)ccb_h->ccb_scb_ptr; in aic_done()
1092 if (ccb_h->target_id == scb->target) { in aic_done()
1093 ccb_h->status |= CAM_BDR_SENT; in aic_done()
1094 ccb_h = TAILQ_NEXT(ccb_h, sim_links.tqe); in aic_done()
1096 &nexus_scb->ccb->ccb_h, sim_links.tqe); in aic_done()
1100 SBT_1MS * ccb_h->timeout, 0, aic_timeout, in aic_done()
1102 ccb_h = TAILQ_NEXT(ccb_h, sim_links.tqe); in aic_done()
1128 struct aic_softc *aic = (struct aic_softc *)ccb->ccb_h.ccb_aic_ptr; in aic_timeout()
1131 xpt_print_path(ccb->ccb_h.path); in aic_timeout()
1138 xpt_print_path(ccb->ccb_h.path); in aic_timeout()
1144 struct ccb_hdr *ccb_h = &scb->ccb->ccb_h; in aic_timeout() local
1147 if ((ccb_h->status & CAM_RELEASE_SIMQ) == 0) { in aic_timeout()
1149 ccb_h->status |= CAM_RELEASE_SIMQ; in aic_timeout()
1152 TAILQ_FOREACH(ccb_h, &aic->pending_ccbs, sim_links.tqe) { in aic_timeout()
1153 pending_scb = ccb_h->ccb_scb_ptr; in aic_timeout()
1157 TAILQ_FOREACH(ccb_h, &aic->nexus_ccbs, sim_links.tqe) { in aic_timeout()
1158 pending_scb = ccb_h->ccb_scb_ptr; in aic_timeout()
1167 ccb->ccb_h.status |= CAM_CMD_TIMEOUT; in aic_timeout()
1235 ccb->ccb_h.status = CAM_SEL_TIMEOUT; in aic_intr_locked()
1250 ccb->ccb_h.status = CAM_UNEXP_BUSFREE; in aic_intr_locked()
1254 if (ccb->ccb_h.func_code == XPT_RESET_DEV) { in aic_intr_locked()
1256 ccb->ccb_h.path, NULL); in aic_intr_locked()
1257 ccb->ccb_h.status |= CAM_REQ_CMP; in aic_intr_locked()
1259 ccb->ccb_h.status |= CAM_CMD_TIMEOUT; in aic_intr_locked()
1379 struct ccb_hdr *ccb_h; in aic_reset() local
1389 while ((ccb_h = TAILQ_FIRST(&aic->pending_ccbs)) != NULL) { in aic_reset()
1390 TAILQ_REMOVE(&aic->pending_ccbs, ccb_h, sim_links.tqe); in aic_reset()
1391 ccb_h->status |= CAM_SCSI_BUS_RESET; in aic_reset()
1392 aic_done(aic, (struct aic_scb *)ccb_h->ccb_scb_ptr); in aic_reset()
1395 while ((ccb_h = TAILQ_FIRST(&aic->nexus_ccbs)) != NULL) { in aic_reset()
1396 TAILQ_REMOVE(&aic->nexus_ccbs, ccb_h, sim_links.tqe); in aic_reset()
1397 ccb_h->status |= CAM_SCSI_BUS_RESET; in aic_reset()
1398 aic_done(aic, (struct aic_scb *)ccb_h->ccb_scb_ptr); in aic_reset()
1402 ccb_h = &aic->nexus->ccb->ccb_h; in aic_reset()
1403 ccb_h->status |= CAM_SCSI_BUS_RESET; in aic_reset()