Lines Matching refs:ccb

72 static void mvs_softreset(device_t dev, union ccb *ccb);
77 static void mvs_tfd_read(device_t dev, union ccb *ccb);
78 static void mvs_tfd_write(device_t dev, union ccb *ccb);
81 static void mvs_begin_transaction(device_t dev, union ccb *ccb);
91 static void mvs_process_read_log(device_t dev, union ccb *ccb);
92 static void mvs_process_request_sense(device_t dev, union ccb *ccb);
94 static void mvsaction(struct cam_sim *sim, union ccb *ccb);
439 slot->ccb = NULL; in mvs_slotsalloc()
600 union ccb *ccb; in mvs_phy_check_events() local
611 if ((ccb = xpt_alloc_ccb_nowait()) == NULL) in mvs_phy_check_events()
613 if (xpt_create_path(&ccb->ccb_h.path, NULL, in mvs_phy_check_events()
616 xpt_free_ccb(ccb); in mvs_phy_check_events()
619 xpt_rescan(ccb); in mvs_phy_check_events()
777 ch->slot[i].ccb->ccb_h.target_id != port) in mvs_ch_intr()
841 union ccb *ccb = slot->ccb; in mvs_legacy_intr() local
867 if (ccb->ccb_h.func_code == XPT_ATA_IO) { /* ATA PIO */ in mvs_legacy_intr()
868 ccb->ataio.res.status = status; in mvs_legacy_intr()
870 if ((ccb->ccb_h.flags & CAM_DIR_MASK) != CAM_DIR_NONE) { in mvs_legacy_intr()
872 if ((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_IN) { in mvs_legacy_intr()
881 (uint16_t *)(ccb->ataio.data_ptr + ch->donecount), in mvs_legacy_intr()
887 if (ccb->ataio.dxfer_len > ch->donecount) { in mvs_legacy_intr()
889 ch->transfersize = min(ccb->ataio.dxfer_len - ch->donecount, in mvs_legacy_intr()
892 if ((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_OUT) { in mvs_legacy_intr()
902 (uint16_t *)(ccb->ataio.data_ptr + ch->donecount), in mvs_legacy_intr()
907 if ((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_IN) in mvs_legacy_intr()
932 if ((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_IN) { in mvs_legacy_intr()
939 (uint16_t *)(ccb->csio.data_ptr + ch->donecount), in mvs_legacy_intr()
946 ch->transfersize = min(ccb->csio.dxfer_len - ch->donecount, in mvs_legacy_intr()
947 ch->curr[ccb->ccb_h.target_id].bytecount); in mvs_legacy_intr()
952 if ((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_OUT) { in mvs_legacy_intr()
959 (uint16_t *)(ccb->csio.data_ptr + ch->donecount), in mvs_legacy_intr()
964 ((uint8_t *)ccb->csio.data_ptr + ch->donecount + in mvs_legacy_intr()
972 ch->transfersize = min(ccb->csio.dxfer_len - ch->donecount, in mvs_legacy_intr()
973 ch->curr[ccb->ccb_h.target_id].bytecount); in mvs_legacy_intr()
980 if ((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_IN) { in mvs_legacy_intr()
982 (uint16_t *)(ccb->csio.data_ptr + ch->donecount), in mvs_legacy_intr()
986 else if ((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_OUT) { in mvs_legacy_intr()
988 (uint16_t *)(ccb->csio.data_ptr + ch->donecount), in mvs_legacy_intr()
1019 union ccb *ccb; in mvs_crbq_intr() local
1057 ccb = ch->slot[slot].ccb; in mvs_crbq_intr()
1058 ccb->ataio.res.status = in mvs_crbq_intr()
1085 mvs_check_collision(device_t dev, union ccb *ccb) in mvs_check_collision() argument
1089 if (ccb->ccb_h.func_code == XPT_ATA_IO) { in mvs_check_collision()
1091 if (ccb->ataio.cmd.flags & CAM_ATAIO_FPDMA) { in mvs_check_collision()
1102 ch->taggedtarget != ccb->ccb_h.target_id) in mvs_check_collision()
1106 } else if (ccb->ataio.cmd.flags & CAM_ATAIO_DMA) { in mvs_check_collision()
1119 if (ccb->ataio.cmd.flags & (CAM_ATAIO_CONTROL | CAM_ATAIO_NEEDRESULT)) { in mvs_check_collision()
1136 mvs_tfd_read(device_t dev, union ccb *ccb) in mvs_tfd_read() argument
1139 struct ata_res *res = &ccb->ataio.res; in mvs_tfd_read()
1157 mvs_tfd_write(device_t dev, union ccb *ccb) in mvs_tfd_write() argument
1160 struct ata_cmd *cmd = &ccb->ataio.cmd; in mvs_tfd_write()
1179 mvs_begin_transaction(device_t dev, union ccb *ccb) in mvs_begin_transaction() argument
1188 if (ccb->ccb_h.func_code == XPT_ATA_IO && in mvs_begin_transaction()
1189 (ccb->ataio.cmd.flags & CAM_ATAIO_CONTROL)) { in mvs_begin_transaction()
1190 mvs_softreset(dev, ccb); in mvs_begin_transaction()
1195 if ((ccb->ccb_h.func_code == XPT_ATA_IO) && in mvs_begin_transaction()
1196 (ccb->ataio.cmd.flags & CAM_ATAIO_FPDMA)) { in mvs_begin_transaction()
1198 tag = ffs(~ch->otagspd[ccb->ccb_h.target_id]) - 1; in mvs_begin_transaction()
1205 slot->ccb = ccb; in mvs_begin_transaction()
1213 ch->numrslotspd[ccb->ccb_h.target_id]++; in mvs_begin_transaction()
1214 if (ccb->ccb_h.func_code == XPT_ATA_IO) { in mvs_begin_transaction()
1215 if (ccb->ataio.cmd.flags & CAM_ATAIO_FPDMA) { in mvs_begin_transaction()
1216 ch->otagspd[ccb->ccb_h.target_id] |= (1 << slot->tag); in mvs_begin_transaction()
1218 ch->numtslotspd[ccb->ccb_h.target_id]++; in mvs_begin_transaction()
1219 ch->taggedtarget = ccb->ccb_h.target_id; in mvs_begin_transaction()
1221 } else if (ccb->ataio.cmd.flags & CAM_ATAIO_DMA) { in mvs_begin_transaction()
1228 if (ccb->ataio.cmd.flags & in mvs_begin_transaction()
1233 uint8_t *cdb = (ccb->ccb_h.flags & CAM_CDB_POINTER) ? in mvs_begin_transaction()
1234 ccb->csio.cdb_io.cdb_ptr : ccb->csio.cdb_io.cdb_bytes; in mvs_begin_transaction()
1237 if ((ccb->ccb_h.flags & CAM_DIR_MASK) != CAM_DIR_NONE && in mvs_begin_transaction()
1238 ch->curr[ccb->ccb_h.target_id].mode >= ATA_DMA && in mvs_begin_transaction()
1256 ccb, mvs_dmasetprd, slot, 0); in mvs_begin_transaction()
1293 ((slot->ccb->ccb_h.flags & CAM_DIR_IN) ? in mvs_dmasetprd()
1307 union ccb *ccb = slot->ccb; in mvs_legacy_execute_transaction() local
1308 int port = ccb->ccb_h.target_id & 0x0f; in mvs_legacy_execute_transaction()
1314 if (ccb->ccb_h.func_code == XPT_ATA_IO) { in mvs_legacy_execute_transaction()
1315 mvs_tfd_write(dev, ccb); in mvs_legacy_execute_transaction()
1317 if (ccb->ataio.cmd.command == ATA_DEVICE_RESET) { in mvs_legacy_execute_transaction()
1321 ccb->ataio.res.status = ATA_INB(ch->r_mem, ATA_STATUS); in mvs_legacy_execute_transaction()
1322 } while (ccb->ataio.res.status & ATA_S_BUSY && timeout--); in mvs_legacy_execute_transaction()
1327 if (ccb->ataio.cmd.command == ATA_READ_MUL || in mvs_legacy_execute_transaction()
1328 ccb->ataio.cmd.command == ATA_READ_MUL48 || in mvs_legacy_execute_transaction()
1329 ccb->ataio.cmd.command == ATA_WRITE_MUL || in mvs_legacy_execute_transaction()
1330 ccb->ataio.cmd.command == ATA_WRITE_MUL48) { in mvs_legacy_execute_transaction()
1331 ch->transfersize = min(ccb->ataio.dxfer_len, in mvs_legacy_execute_transaction()
1334 ch->transfersize = min(ccb->ataio.dxfer_len, 512); in mvs_legacy_execute_transaction()
1335 if ((ccb->ccb_h.flags & CAM_DIR_MASK) != CAM_DIR_NONE) in mvs_legacy_execute_transaction()
1338 if ((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_OUT) { in mvs_legacy_execute_transaction()
1348 (uint16_t *)(ccb->ataio.data_ptr + ch->donecount), in mvs_legacy_execute_transaction()
1353 ch->transfersize = min(ccb->csio.dxfer_len, in mvs_legacy_execute_transaction()
1395 (uint16_t *)((ccb->ccb_h.flags & CAM_CDB_POINTER) ? in mvs_legacy_execute_transaction()
1396 ccb->csio.cdb_io.cdb_ptr : ccb->csio.cdb_io.cdb_bytes), in mvs_legacy_execute_transaction()
1405 (((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_IN) ? in mvs_legacy_execute_transaction()
1410 callout_reset_sbt(&slot->timeout, SBT_1MS * ccb->ccb_h.timeout, 0, in mvs_legacy_execute_transaction()
1423 union ccb *ccb = slot->ccb; in mvs_execute_transaction() local
1424 int port = ccb->ccb_h.target_id & 0x0f; in mvs_execute_transaction()
1434 ((ccb->ccb_h.flags & CAM_DIR_IN) ? MVS_CRQB2E_READ : 0) | in mvs_execute_transaction()
1448 crqb2e->cmd[2] = ccb->ataio.cmd.command; in mvs_execute_transaction()
1449 crqb2e->cmd[3] = ccb->ataio.cmd.features; in mvs_execute_transaction()
1450 crqb2e->cmd[4] = ccb->ataio.cmd.lba_low; in mvs_execute_transaction()
1451 crqb2e->cmd[5] = ccb->ataio.cmd.lba_mid; in mvs_execute_transaction()
1452 crqb2e->cmd[6] = ccb->ataio.cmd.lba_high; in mvs_execute_transaction()
1453 crqb2e->cmd[7] = ccb->ataio.cmd.device; in mvs_execute_transaction()
1454 crqb2e->cmd[8] = ccb->ataio.cmd.lba_low_exp; in mvs_execute_transaction()
1455 crqb2e->cmd[9] = ccb->ataio.cmd.lba_mid_exp; in mvs_execute_transaction()
1456 crqb2e->cmd[10] = ccb->ataio.cmd.lba_high_exp; in mvs_execute_transaction()
1457 crqb2e->cmd[11] = ccb->ataio.cmd.features_exp; in mvs_execute_transaction()
1458 if (ccb->ataio.cmd.flags & CAM_ATAIO_FPDMA) { in mvs_execute_transaction()
1462 crqb2e->cmd[12] = ccb->ataio.cmd.sector_count; in mvs_execute_transaction()
1463 crqb2e->cmd[13] = ccb->ataio.cmd.sector_count_exp; in mvs_execute_transaction()
1473 ((ccb->ccb_h.flags & CAM_DIR_IN) ? MVS_CRQB_READ : 0) | in mvs_execute_transaction()
1481 if (ccb->ataio.cmd.flags & CAM_ATAIO_FPDMA) { in mvs_execute_transaction()
1482 crqb->cmd[i++] = ccb->ataio.cmd.features_exp; in mvs_execute_transaction()
1485 crqb->cmd[i++] = ccb->ataio.cmd.features; in mvs_execute_transaction()
1487 if (ccb->ataio.cmd.flags & CAM_ATAIO_FPDMA) { in mvs_execute_transaction()
1489 (ccb->ataio.cmd.sector_count & 0x07); in mvs_execute_transaction()
1492 crqb->cmd[i++] = ccb->ataio.cmd.sector_count_exp; in mvs_execute_transaction()
1494 crqb->cmd[i++] = ccb->ataio.cmd.sector_count; in mvs_execute_transaction()
1497 crqb->cmd[i++] = ccb->ataio.cmd.lba_low_exp; in mvs_execute_transaction()
1499 crqb->cmd[i++] = ccb->ataio.cmd.lba_low; in mvs_execute_transaction()
1501 crqb->cmd[i++] = ccb->ataio.cmd.lba_mid_exp; in mvs_execute_transaction()
1503 crqb->cmd[i++] = ccb->ataio.cmd.lba_mid; in mvs_execute_transaction()
1505 crqb->cmd[i++] = ccb->ataio.cmd.lba_high_exp; in mvs_execute_transaction()
1507 crqb->cmd[i++] = ccb->ataio.cmd.lba_high; in mvs_execute_transaction()
1509 crqb->cmd[i++] = ccb->ataio.cmd.device; in mvs_execute_transaction()
1511 crqb->cmd[i++] = ccb->ataio.cmd.command; in mvs_execute_transaction()
1525 callout_reset_sbt(&slot->timeout, SBT_1MS * ccb->ccb_h.timeout, 0, in mvs_execute_transaction()
1564 SBT_1MS * slot->ccb->ccb_h.timeout / 2, 0, in mvs_rearm_timeout()
1607 union ccb *ccb = slot->ccb; in mvs_end_transaction() local
1616 if (ccb->ccb_h.func_code == XPT_ATA_IO) { in mvs_end_transaction()
1617 struct ata_res *res = &ccb->ataio.res; in mvs_end_transaction()
1620 (ccb->ataio.cmd.flags & CAM_ATAIO_NEEDRESULT)) { in mvs_end_transaction()
1621 mvs_tfd_read(dev, ccb); in mvs_end_transaction()
1625 if ((ccb->ccb_h.flags & CAM_DIR_MASK) != CAM_DIR_NONE && in mvs_end_transaction()
1627 ccb->csio.resid = ccb->csio.dxfer_len - ch->donecount; in mvs_end_transaction()
1630 if ((ccb->ccb_h.flags & CAM_DIR_MASK) != CAM_DIR_NONE) { in mvs_end_transaction()
1632 (ccb->ccb_h.flags & CAM_DIR_IN) ? in mvs_end_transaction()
1641 !(ccb->ccb_h.status & CAM_DEV_QFRZN)) { in mvs_end_transaction()
1642 xpt_freeze_devq(ccb->ccb_h.path, 1); in mvs_end_transaction()
1643 ccb->ccb_h.status |= CAM_DEV_QFRZN; in mvs_end_transaction()
1646 ccb->ccb_h.status &= ~CAM_STATUS_MASK; in mvs_end_transaction()
1649 ccb->ccb_h.status |= CAM_REQ_CMP; in mvs_end_transaction()
1650 if (ccb->ccb_h.func_code == XPT_SCSI_IO) in mvs_end_transaction()
1651 ccb->csio.scsi_status = SCSI_STATUS_OK; in mvs_end_transaction()
1655 ccb->ccb_h.status |= CAM_REQ_INVALID; in mvs_end_transaction()
1658 ccb->ccb_h.status |= CAM_REQUEUE_REQ; in mvs_end_transaction()
1662 if (ccb->ccb_h.func_code == XPT_SCSI_IO) { in mvs_end_transaction()
1663 ccb->ccb_h.status |= CAM_SCSI_STATUS_ERROR; in mvs_end_transaction()
1664 ccb->csio.scsi_status = SCSI_STATUS_CHECK_COND; in mvs_end_transaction()
1666 ccb->ccb_h.status |= CAM_ATA_STATUS_ERROR; in mvs_end_transaction()
1673 ccb->ccb_h.status &= ~CAM_STATUS_MASK; in mvs_end_transaction()
1674 ccb->ccb_h.status |= CAM_RELEASE_SIMQ; in mvs_end_transaction()
1676 ccb->ccb_h.status |= CAM_UNCOR_PARITY; in mvs_end_transaction()
1681 ccb->ccb_h.status &= ~CAM_STATUS_MASK; in mvs_end_transaction()
1682 ccb->ccb_h.status |= CAM_RELEASE_SIMQ; in mvs_end_transaction()
1684 ccb->ccb_h.status |= CAM_CMD_TIMEOUT; in mvs_end_transaction()
1688 ccb->ccb_h.status |= CAM_REQ_CMP_ERR; in mvs_end_transaction()
1695 slot->ccb = NULL; in mvs_end_transaction()
1698 ch->numrslotspd[ccb->ccb_h.target_id]--; in mvs_end_transaction()
1699 if (ccb->ccb_h.func_code == XPT_ATA_IO) { in mvs_end_transaction()
1700 if (ccb->ataio.cmd.flags & CAM_ATAIO_FPDMA) { in mvs_end_transaction()
1701 ch->otagspd[ccb->ccb_h.target_id] &= ~(1 << slot->tag); in mvs_end_transaction()
1703 ch->numtslotspd[ccb->ccb_h.target_id]--; in mvs_end_transaction()
1704 } else if (ccb->ataio.cmd.flags & CAM_ATAIO_DMA) { in mvs_end_transaction()
1721 if (ccb->ccb_h.recovery_type == RECOVERY_READ_LOG) { in mvs_end_transaction()
1722 mvs_process_read_log(dev, ccb); in mvs_end_transaction()
1724 } else if (ccb->ccb_h.recovery_type == RECOVERY_REQUEST_SENSE) { in mvs_end_transaction()
1725 mvs_process_request_sense(dev, ccb); in mvs_end_transaction()
1728 ((ccb->ccb_h.status & CAM_STATUS_MASK) == CAM_SCSI_STATUS_ERROR && in mvs_end_transaction()
1729 (ccb->ccb_h.flags & CAM_DIS_AUTOSENSE) == 0)) { in mvs_end_transaction()
1730 ch->hold[slot->slot] = ccb; in mvs_end_transaction()
1734 xpt_done(ccb); in mvs_end_transaction()
1756 union ccb *fccb = ch->frozen; in mvs_end_transaction()
1773 union ccb *ccb; in mvs_issue_recovery() local
1783 ccb = xpt_alloc_ccb_nowait(); in mvs_issue_recovery()
1784 if (ccb == NULL) { in mvs_issue_recovery()
1800 xpt_setup_ccb(&ccb->ccb_h, ch->hold[i]->ccb_h.path, in mvs_issue_recovery()
1802 if (ccb->ccb_h.func_code == XPT_ATA_IO) { in mvs_issue_recovery()
1804 ccb->ccb_h.recovery_type = RECOVERY_READ_LOG; in mvs_issue_recovery()
1805 ccb->ccb_h.func_code = XPT_ATA_IO; in mvs_issue_recovery()
1806 ccb->ccb_h.flags = CAM_DIR_IN; in mvs_issue_recovery()
1807 ccb->ccb_h.timeout = 1000; /* 1s should be enough. */ in mvs_issue_recovery()
1808 ataio = &ccb->ataio; in mvs_issue_recovery()
1811 xpt_free_ccb(ccb); in mvs_issue_recovery()
1827 ccb->ccb_h.recovery_type = RECOVERY_REQUEST_SENSE; in mvs_issue_recovery()
1828 ccb->ccb_h.recovery_slot = i; in mvs_issue_recovery()
1829 ccb->ccb_h.func_code = XPT_SCSI_IO; in mvs_issue_recovery()
1830 ccb->ccb_h.flags = CAM_DIR_IN; in mvs_issue_recovery()
1831 ccb->ccb_h.status = 0; in mvs_issue_recovery()
1832 ccb->ccb_h.timeout = 1000; /* 1s should be enough. */ in mvs_issue_recovery()
1833 csio = &ccb->csio; in mvs_issue_recovery()
1844 mvs_begin_transaction(dev, ccb); in mvs_issue_recovery()
1848 mvs_process_read_log(device_t dev, union ccb *ccb) in mvs_process_read_log() argument
1857 data = ccb->ataio.data_ptr; in mvs_process_read_log()
1858 if ((ccb->ccb_h.status & CAM_STATUS_MASK) == CAM_REQ_CMP && in mvs_process_read_log()
1863 if (ch->hold[i]->ccb_h.target_id != ccb->ccb_h.target_id) in mvs_process_read_log()
1887 if ((ccb->ccb_h.status & CAM_STATUS_MASK) != CAM_REQ_CMP) in mvs_process_read_log()
1896 if (ch->hold[i]->ccb_h.target_id != ccb->ccb_h.target_id) in mvs_process_read_log()
1903 free(ccb->ataio.data_ptr, M_MVS); in mvs_process_read_log()
1904 xpt_free_ccb(ccb); in mvs_process_read_log()
1909 mvs_process_request_sense(device_t dev, union ccb *ccb) in mvs_process_request_sense() argument
1916 i = ccb->ccb_h.recovery_slot; in mvs_process_request_sense()
1917 if ((ccb->ccb_h.status & CAM_STATUS_MASK) == CAM_REQ_CMP) { in mvs_process_request_sense()
1926 xpt_free_ccb(ccb); in mvs_process_request_sense()
1952 union ccb *fccb = ch->frozen; in mvs_requeue_frozen()
2108 mvs_softreset(device_t dev, union ccb *ccb) in mvs_softreset() argument
2111 int port = ccb->ccb_h.target_id & 0x0f; in mvs_softreset()
2120 ccb->ccb_h.status &= ~CAM_STATUS_MASK; in mvs_softreset()
2122 if ((i = mvs_wait(dev, 0, ATA_S_BUSY, ccb->ccb_h.timeout)) < 0) { in mvs_softreset()
2123 ccb->ccb_h.status |= CAM_CMD_TIMEOUT; in mvs_softreset()
2128 ccb->ccb_h.status |= CAM_ATA_STATUS_ERROR; in mvs_softreset()
2130 ccb->ccb_h.status |= CAM_REQ_CMP; in mvs_softreset()
2136 mvs_tfd_read(dev, ccb); in mvs_softreset()
2148 mvs_wait(dev, 0, ATA_S_BUSY | ATA_S_DRQ, ccb->ccb_h.timeout); in mvs_softreset()
2151 xpt_done(ccb); in mvs_softreset()
2229 mvs_check_ids(device_t dev, union ccb *ccb) in mvs_check_ids() argument
2233 if (ccb->ccb_h.target_id > ((ch->quirks & MVS_Q_GENI) ? 0 : 15)) { in mvs_check_ids()
2234 ccb->ccb_h.status = CAM_TID_INVALID; in mvs_check_ids()
2235 xpt_done(ccb); in mvs_check_ids()
2238 if (ccb->ccb_h.target_lun != 0) { in mvs_check_ids()
2239 ccb->ccb_h.status = CAM_LUN_INVALID; in mvs_check_ids()
2240 xpt_done(ccb); in mvs_check_ids()
2246 KASSERT(ccb->ccb_h.func_code != XPT_ATA_IO || in mvs_check_ids()
2247 ((ccb->ataio.ata_flags & ATA_FLAG_AUX) == 0), in mvs_check_ids()
2253 mvsaction(struct cam_sim *sim, union ccb *ccb) in mvsaction() argument
2258 CAM_DEBUG(ccb->ccb_h.path, CAM_DEBUG_TRACE, ("mvsaction func_code=%x\n", in mvsaction()
2259 ccb->ccb_h.func_code)); in mvsaction()
2263 switch (ccb->ccb_h.func_code) { in mvsaction()
2267 if (mvs_check_ids(dev, ccb)) in mvsaction()
2271 ccb->ccb_h.target_id > 0 && ccb->ccb_h.target_id < 15)) { in mvsaction()
2272 ccb->ccb_h.status = CAM_SEL_TIMEOUT; in mvsaction()
2275 ccb->ccb_h.recovery_type = RECOVERY_NONE; in mvsaction()
2277 if (mvs_check_collision(dev, ccb)) { in mvsaction()
2279 ch->frozen = ccb; in mvsaction()
2284 mvs_begin_transaction(dev, ccb); in mvsaction()
2288 ccb->ccb_h.status = CAM_REQ_INVALID; in mvsaction()
2292 struct ccb_trans_settings *cts = &ccb->cts; in mvsaction()
2295 if (mvs_check_ids(dev, ccb)) in mvsaction()
2298 d = &ch->curr[ccb->ccb_h.target_id]; in mvsaction()
2300 d = &ch->user[ccb->ccb_h.target_id]; in mvsaction()
2317 ccb->ccb_h.status = CAM_REQ_CMP; in mvsaction()
2323 struct ccb_trans_settings *cts = &ccb->cts; in mvsaction()
2327 if (mvs_check_ids(dev, ccb)) in mvsaction()
2330 d = &ch->curr[ccb->ccb_h.target_id]; in mvsaction()
2332 d = &ch->user[ccb->ccb_h.target_id]; in mvsaction()
2340 (ccb->ccb_h.target_id == 15 || in mvsaction()
2341 (ccb->ccb_h.target_id == 0 && !ch->pm_present))) { in mvsaction()
2354 ch->user[ccb->ccb_h.target_id].caps; in mvsaction()
2375 ccb->ccb_h.status = CAM_REQ_CMP; in mvsaction()
2381 ccb->ccb_h.status = CAM_REQ_CMP; in mvsaction()
2385 ccb->ccb_h.status = CAM_REQ_INVALID; in mvsaction()
2389 struct ccb_pathinq *cpi = &ccb->cpi; in mvsaction()
2430 ccb->ccb_h.status = CAM_REQ_INVALID; in mvsaction()
2433 xpt_done(ccb); in mvsaction()