Lines Matching refs:ccb

74 static void mvs_softreset(device_t dev, union ccb *ccb);
79 static void mvs_tfd_read(device_t dev, union ccb *ccb);
80 static void mvs_tfd_write(device_t dev, union ccb *ccb);
83 static void mvs_begin_transaction(device_t dev, union ccb *ccb);
93 static void mvs_process_read_log(device_t dev, union ccb *ccb);
94 static void mvs_process_request_sense(device_t dev, union ccb *ccb);
96 static void mvsaction(struct cam_sim *sim, union ccb *ccb);
441 slot->ccb = NULL; in mvs_slotsalloc()
604 union ccb *ccb; in mvs_phy_check_events() local
615 if ((ccb = xpt_alloc_ccb_nowait()) == NULL) in mvs_phy_check_events()
617 if (xpt_create_path(&ccb->ccb_h.path, NULL, in mvs_phy_check_events()
620 xpt_free_ccb(ccb); in mvs_phy_check_events()
623 xpt_rescan(ccb); in mvs_phy_check_events()
781 ch->slot[i].ccb->ccb_h.target_id != port) in mvs_ch_intr()
845 union ccb *ccb = slot->ccb; in mvs_legacy_intr() local
856 port = ccb->ccb_h.target_id & 0x0f; in mvs_legacy_intr()
873 if (ccb->ccb_h.func_code == XPT_ATA_IO) { /* ATA PIO */ in mvs_legacy_intr()
874 ccb->ataio.res.status = status; in mvs_legacy_intr()
876 if ((ccb->ccb_h.flags & CAM_DIR_MASK) != CAM_DIR_NONE) { in mvs_legacy_intr()
878 if ((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_IN) { in mvs_legacy_intr()
887 (uint16_t *)(ccb->ataio.data_ptr + ch->donecount), in mvs_legacy_intr()
893 if (ccb->ataio.dxfer_len > ch->donecount) { in mvs_legacy_intr()
895 ch->transfersize = min(ccb->ataio.dxfer_len - ch->donecount, in mvs_legacy_intr()
898 if ((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_OUT) { in mvs_legacy_intr()
908 (uint16_t *)(ccb->ataio.data_ptr + ch->donecount), in mvs_legacy_intr()
913 if ((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_IN) in mvs_legacy_intr()
939 if ((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_IN) { in mvs_legacy_intr()
946 (uint16_t *)(ccb->csio.data_ptr + ch->donecount), in mvs_legacy_intr()
953 ch->transfersize = min(ccb->csio.dxfer_len - ch->donecount, in mvs_legacy_intr()
954 ch->curr[ccb->ccb_h.target_id].bytecount); in mvs_legacy_intr()
959 if ((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_OUT) { in mvs_legacy_intr()
966 (uint16_t *)(ccb->csio.data_ptr + ch->donecount), in mvs_legacy_intr()
971 ((uint8_t *)ccb->csio.data_ptr + ch->donecount + in mvs_legacy_intr()
979 ch->transfersize = min(ccb->csio.dxfer_len - ch->donecount, in mvs_legacy_intr()
980 ch->curr[ccb->ccb_h.target_id].bytecount); in mvs_legacy_intr()
987 if ((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_IN) { in mvs_legacy_intr()
989 (uint16_t *)(ccb->csio.data_ptr + ch->donecount), in mvs_legacy_intr()
993 else if ((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_OUT) { in mvs_legacy_intr()
995 (uint16_t *)(ccb->csio.data_ptr + ch->donecount), in mvs_legacy_intr()
1026 union ccb *ccb; in mvs_crbq_intr() local
1064 ccb = ch->slot[slot].ccb; in mvs_crbq_intr()
1065 ccb->ataio.res.status = in mvs_crbq_intr()
1092 mvs_check_collision(device_t dev, union ccb *ccb) in mvs_check_collision() argument
1096 if (ccb->ccb_h.func_code == XPT_ATA_IO) { in mvs_check_collision()
1098 if (ccb->ataio.cmd.flags & CAM_ATAIO_FPDMA) { in mvs_check_collision()
1109 ch->taggedtarget != ccb->ccb_h.target_id) in mvs_check_collision()
1113 } else if (ccb->ataio.cmd.flags & CAM_ATAIO_DMA) { in mvs_check_collision()
1126 if (ccb->ataio.cmd.flags & (CAM_ATAIO_CONTROL | CAM_ATAIO_NEEDRESULT)) { in mvs_check_collision()
1143 mvs_tfd_read(device_t dev, union ccb *ccb) in mvs_tfd_read() argument
1146 struct ata_res *res = &ccb->ataio.res; in mvs_tfd_read()
1164 mvs_tfd_write(device_t dev, union ccb *ccb) in mvs_tfd_write() argument
1167 struct ata_cmd *cmd = &ccb->ataio.cmd; in mvs_tfd_write()
1187 mvs_begin_transaction(device_t dev, union ccb *ccb) in mvs_begin_transaction() argument
1196 if (ccb->ccb_h.func_code == XPT_ATA_IO && in mvs_begin_transaction()
1197 (ccb->ataio.cmd.flags & CAM_ATAIO_CONTROL)) { in mvs_begin_transaction()
1198 mvs_softreset(dev, ccb); in mvs_begin_transaction()
1203 if ((ccb->ccb_h.func_code == XPT_ATA_IO) && in mvs_begin_transaction()
1204 (ccb->ataio.cmd.flags & CAM_ATAIO_FPDMA)) { in mvs_begin_transaction()
1206 tag = ffs(~ch->otagspd[ccb->ccb_h.target_id]) - 1; in mvs_begin_transaction()
1213 slot->ccb = ccb; in mvs_begin_transaction()
1221 ch->numrslotspd[ccb->ccb_h.target_id]++; in mvs_begin_transaction()
1222 if (ccb->ccb_h.func_code == XPT_ATA_IO) { in mvs_begin_transaction()
1223 if (ccb->ataio.cmd.flags & CAM_ATAIO_FPDMA) { in mvs_begin_transaction()
1224 ch->otagspd[ccb->ccb_h.target_id] |= (1 << slot->tag); in mvs_begin_transaction()
1226 ch->numtslotspd[ccb->ccb_h.target_id]++; in mvs_begin_transaction()
1227 ch->taggedtarget = ccb->ccb_h.target_id; in mvs_begin_transaction()
1229 } else if (ccb->ataio.cmd.flags & CAM_ATAIO_DMA) { in mvs_begin_transaction()
1236 if (ccb->ataio.cmd.flags & in mvs_begin_transaction()
1241 uint8_t *cdb = (ccb->ccb_h.flags & CAM_CDB_POINTER) ? in mvs_begin_transaction()
1242 ccb->csio.cdb_io.cdb_ptr : ccb->csio.cdb_io.cdb_bytes; in mvs_begin_transaction()
1245 if ((ccb->ccb_h.flags & CAM_DIR_MASK) != CAM_DIR_NONE && in mvs_begin_transaction()
1246 ch->curr[ccb->ccb_h.target_id].mode >= ATA_DMA && in mvs_begin_transaction()
1264 ccb, mvs_dmasetprd, slot, 0); in mvs_begin_transaction()
1302 ((slot->ccb->ccb_h.flags & CAM_DIR_IN) ? in mvs_dmasetprd()
1316 union ccb *ccb = slot->ccb; in mvs_legacy_execute_transaction() local
1317 int port = ccb->ccb_h.target_id & 0x0f; in mvs_legacy_execute_transaction()
1323 if (ccb->ccb_h.func_code == XPT_ATA_IO) { in mvs_legacy_execute_transaction()
1324 mvs_tfd_write(dev, ccb); in mvs_legacy_execute_transaction()
1326 if (ccb->ataio.cmd.command == ATA_DEVICE_RESET) { in mvs_legacy_execute_transaction()
1330 ccb->ataio.res.status = ATA_INB(ch->r_mem, ATA_STATUS); in mvs_legacy_execute_transaction()
1331 } while (ccb->ataio.res.status & ATA_S_BUSY && timeout--); in mvs_legacy_execute_transaction()
1336 if (ccb->ataio.cmd.command == ATA_READ_MUL || in mvs_legacy_execute_transaction()
1337 ccb->ataio.cmd.command == ATA_READ_MUL48 || in mvs_legacy_execute_transaction()
1338 ccb->ataio.cmd.command == ATA_WRITE_MUL || in mvs_legacy_execute_transaction()
1339 ccb->ataio.cmd.command == ATA_WRITE_MUL48) { in mvs_legacy_execute_transaction()
1340 ch->transfersize = min(ccb->ataio.dxfer_len, in mvs_legacy_execute_transaction()
1343 ch->transfersize = min(ccb->ataio.dxfer_len, 512); in mvs_legacy_execute_transaction()
1344 if ((ccb->ccb_h.flags & CAM_DIR_MASK) != CAM_DIR_NONE) in mvs_legacy_execute_transaction()
1347 if ((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_OUT) { in mvs_legacy_execute_transaction()
1357 (uint16_t *)(ccb->ataio.data_ptr + ch->donecount), in mvs_legacy_execute_transaction()
1362 ch->transfersize = min(ccb->csio.dxfer_len, in mvs_legacy_execute_transaction()
1404 (uint16_t *)((ccb->ccb_h.flags & CAM_CDB_POINTER) ? in mvs_legacy_execute_transaction()
1405 ccb->csio.cdb_io.cdb_ptr : ccb->csio.cdb_io.cdb_bytes), in mvs_legacy_execute_transaction()
1415 (((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_IN) ? in mvs_legacy_execute_transaction()
1420 callout_reset_sbt(&slot->timeout, SBT_1MS * ccb->ccb_h.timeout, 0, in mvs_legacy_execute_transaction()
1433 union ccb *ccb = slot->ccb; in mvs_execute_transaction() local
1434 int port = ccb->ccb_h.target_id & 0x0f; in mvs_execute_transaction()
1444 ((ccb->ccb_h.flags & CAM_DIR_IN) ? MVS_CRQB2E_READ : 0) | in mvs_execute_transaction()
1458 crqb2e->cmd[2] = ccb->ataio.cmd.command; in mvs_execute_transaction()
1459 crqb2e->cmd[3] = ccb->ataio.cmd.features; in mvs_execute_transaction()
1460 crqb2e->cmd[4] = ccb->ataio.cmd.lba_low; in mvs_execute_transaction()
1461 crqb2e->cmd[5] = ccb->ataio.cmd.lba_mid; in mvs_execute_transaction()
1462 crqb2e->cmd[6] = ccb->ataio.cmd.lba_high; in mvs_execute_transaction()
1463 crqb2e->cmd[7] = ccb->ataio.cmd.device; in mvs_execute_transaction()
1464 crqb2e->cmd[8] = ccb->ataio.cmd.lba_low_exp; in mvs_execute_transaction()
1465 crqb2e->cmd[9] = ccb->ataio.cmd.lba_mid_exp; in mvs_execute_transaction()
1466 crqb2e->cmd[10] = ccb->ataio.cmd.lba_high_exp; in mvs_execute_transaction()
1467 crqb2e->cmd[11] = ccb->ataio.cmd.features_exp; in mvs_execute_transaction()
1468 if (ccb->ataio.cmd.flags & CAM_ATAIO_FPDMA) { in mvs_execute_transaction()
1472 crqb2e->cmd[12] = ccb->ataio.cmd.sector_count; in mvs_execute_transaction()
1473 crqb2e->cmd[13] = ccb->ataio.cmd.sector_count_exp; in mvs_execute_transaction()
1483 ((ccb->ccb_h.flags & CAM_DIR_IN) ? MVS_CRQB_READ : 0) | in mvs_execute_transaction()
1491 if (ccb->ataio.cmd.flags & CAM_ATAIO_FPDMA) { in mvs_execute_transaction()
1492 crqb->cmd[i++] = ccb->ataio.cmd.features_exp; in mvs_execute_transaction()
1495 crqb->cmd[i++] = ccb->ataio.cmd.features; in mvs_execute_transaction()
1497 if (ccb->ataio.cmd.flags & CAM_ATAIO_FPDMA) { in mvs_execute_transaction()
1501 crqb->cmd[i++] = ccb->ataio.cmd.sector_count_exp; in mvs_execute_transaction()
1503 crqb->cmd[i++] = ccb->ataio.cmd.sector_count; in mvs_execute_transaction()
1506 crqb->cmd[i++] = ccb->ataio.cmd.lba_low_exp; in mvs_execute_transaction()
1508 crqb->cmd[i++] = ccb->ataio.cmd.lba_low; in mvs_execute_transaction()
1510 crqb->cmd[i++] = ccb->ataio.cmd.lba_mid_exp; in mvs_execute_transaction()
1512 crqb->cmd[i++] = ccb->ataio.cmd.lba_mid; in mvs_execute_transaction()
1514 crqb->cmd[i++] = ccb->ataio.cmd.lba_high_exp; in mvs_execute_transaction()
1516 crqb->cmd[i++] = ccb->ataio.cmd.lba_high; in mvs_execute_transaction()
1518 crqb->cmd[i++] = ccb->ataio.cmd.device; in mvs_execute_transaction()
1520 crqb->cmd[i++] = ccb->ataio.cmd.command; in mvs_execute_transaction()
1534 callout_reset_sbt(&slot->timeout, SBT_1MS * ccb->ccb_h.timeout, 0, in mvs_execute_transaction()
1573 SBT_1MS * slot->ccb->ccb_h.timeout / 2, 0, in mvs_rearm_timeout()
1615 union ccb *ccb = slot->ccb; in mvs_end_transaction() local
1624 if (ccb->ccb_h.func_code == XPT_ATA_IO) { in mvs_end_transaction()
1625 struct ata_res *res = &ccb->ataio.res; in mvs_end_transaction()
1628 (ccb->ataio.cmd.flags & CAM_ATAIO_NEEDRESULT)) { in mvs_end_transaction()
1629 mvs_tfd_read(dev, ccb); in mvs_end_transaction()
1633 if ((ccb->ccb_h.flags & CAM_DIR_MASK) != CAM_DIR_NONE && in mvs_end_transaction()
1635 ccb->csio.resid = ccb->csio.dxfer_len - ch->donecount; in mvs_end_transaction()
1638 if ((ccb->ccb_h.flags & CAM_DIR_MASK) != CAM_DIR_NONE) { in mvs_end_transaction()
1640 (ccb->ccb_h.flags & CAM_DIR_IN) ? in mvs_end_transaction()
1649 !(ccb->ccb_h.status & CAM_DEV_QFRZN)) { in mvs_end_transaction()
1650 xpt_freeze_devq(ccb->ccb_h.path, 1); in mvs_end_transaction()
1651 ccb->ccb_h.status |= CAM_DEV_QFRZN; in mvs_end_transaction()
1654 ccb->ccb_h.status &= ~CAM_STATUS_MASK; in mvs_end_transaction()
1657 ccb->ccb_h.status |= CAM_REQ_CMP; in mvs_end_transaction()
1658 if (ccb->ccb_h.func_code == XPT_SCSI_IO) in mvs_end_transaction()
1659 ccb->csio.scsi_status = SCSI_STATUS_OK; in mvs_end_transaction()
1663 ccb->ccb_h.status |= CAM_REQ_INVALID; in mvs_end_transaction()
1666 ccb->ccb_h.status |= CAM_REQUEUE_REQ; in mvs_end_transaction()
1670 if (ccb->ccb_h.func_code == XPT_SCSI_IO) { in mvs_end_transaction()
1671 ccb->ccb_h.status |= CAM_SCSI_STATUS_ERROR; in mvs_end_transaction()
1672 ccb->csio.scsi_status = SCSI_STATUS_CHECK_COND; in mvs_end_transaction()
1674 ccb->ccb_h.status |= CAM_ATA_STATUS_ERROR; 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_UNCOR_PARITY; in mvs_end_transaction()
1689 ccb->ccb_h.status &= ~CAM_STATUS_MASK; in mvs_end_transaction()
1690 ccb->ccb_h.status |= CAM_RELEASE_SIMQ; in mvs_end_transaction()
1692 ccb->ccb_h.status |= CAM_CMD_TIMEOUT; in mvs_end_transaction()
1696 ccb->ccb_h.status |= CAM_REQ_CMP_ERR; in mvs_end_transaction()
1703 slot->ccb = NULL; in mvs_end_transaction()
1706 ch->numrslotspd[ccb->ccb_h.target_id]--; in mvs_end_transaction()
1707 if (ccb->ccb_h.func_code == XPT_ATA_IO) { in mvs_end_transaction()
1708 if (ccb->ataio.cmd.flags & CAM_ATAIO_FPDMA) { in mvs_end_transaction()
1709 ch->otagspd[ccb->ccb_h.target_id] &= ~(1 << slot->tag); in mvs_end_transaction()
1711 ch->numtslotspd[ccb->ccb_h.target_id]--; in mvs_end_transaction()
1712 } else if (ccb->ataio.cmd.flags & CAM_ATAIO_DMA) { in mvs_end_transaction()
1729 if (ccb->ccb_h.recovery_type == RECOVERY_READ_LOG) { in mvs_end_transaction()
1730 mvs_process_read_log(dev, ccb); in mvs_end_transaction()
1732 } else if (ccb->ccb_h.recovery_type == RECOVERY_REQUEST_SENSE) { in mvs_end_transaction()
1733 mvs_process_request_sense(dev, ccb); in mvs_end_transaction()
1736 ((ccb->ccb_h.status & CAM_STATUS_MASK) == CAM_SCSI_STATUS_ERROR && in mvs_end_transaction()
1737 (ccb->ccb_h.flags & CAM_DIS_AUTOSENSE) == 0)) { in mvs_end_transaction()
1738 ch->hold[slot->slot] = ccb; in mvs_end_transaction()
1742 xpt_done(ccb); in mvs_end_transaction()
1764 union ccb *fccb = ch->frozen; in mvs_end_transaction()
1781 union ccb *ccb; in mvs_issue_recovery() local
1791 ccb = xpt_alloc_ccb_nowait(); in mvs_issue_recovery()
1792 if (ccb == NULL) { in mvs_issue_recovery()
1808 ccb->ccb_h = ch->hold[i]->ccb_h; /* Reuse old header. */ in mvs_issue_recovery()
1809 if (ccb->ccb_h.func_code == XPT_ATA_IO) { in mvs_issue_recovery()
1811 ccb->ccb_h.recovery_type = RECOVERY_READ_LOG; in mvs_issue_recovery()
1812 ccb->ccb_h.func_code = XPT_ATA_IO; in mvs_issue_recovery()
1813 ccb->ccb_h.flags = CAM_DIR_IN; in mvs_issue_recovery()
1814 ccb->ccb_h.timeout = 1000; /* 1s should be enough. */ in mvs_issue_recovery()
1815 ataio = &ccb->ataio; in mvs_issue_recovery()
1818 xpt_free_ccb(ccb); in mvs_issue_recovery()
1834 ccb->ccb_h.recovery_type = RECOVERY_REQUEST_SENSE; in mvs_issue_recovery()
1835 ccb->ccb_h.recovery_slot = i; in mvs_issue_recovery()
1836 ccb->ccb_h.func_code = XPT_SCSI_IO; in mvs_issue_recovery()
1837 ccb->ccb_h.flags = CAM_DIR_IN; in mvs_issue_recovery()
1838 ccb->ccb_h.status = 0; in mvs_issue_recovery()
1839 ccb->ccb_h.timeout = 1000; /* 1s should be enough. */ in mvs_issue_recovery()
1840 csio = &ccb->csio; in mvs_issue_recovery()
1851 mvs_begin_transaction(dev, ccb); in mvs_issue_recovery()
1855 mvs_process_read_log(device_t dev, union ccb *ccb) in mvs_process_read_log() argument
1864 data = ccb->ataio.data_ptr; in mvs_process_read_log()
1865 if ((ccb->ccb_h.status & CAM_STATUS_MASK) == CAM_REQ_CMP && in mvs_process_read_log()
1870 if (ch->hold[i]->ccb_h.target_id != ccb->ccb_h.target_id) in mvs_process_read_log()
1894 if ((ccb->ccb_h.status & CAM_STATUS_MASK) != CAM_REQ_CMP) in mvs_process_read_log()
1903 if (ch->hold[i]->ccb_h.target_id != ccb->ccb_h.target_id) in mvs_process_read_log()
1910 free(ccb->ataio.data_ptr, M_MVS); in mvs_process_read_log()
1911 xpt_free_ccb(ccb); in mvs_process_read_log()
1916 mvs_process_request_sense(device_t dev, union ccb *ccb) in mvs_process_request_sense() argument
1923 i = ccb->ccb_h.recovery_slot; in mvs_process_request_sense()
1924 if ((ccb->ccb_h.status & CAM_STATUS_MASK) == CAM_REQ_CMP) { in mvs_process_request_sense()
1933 xpt_free_ccb(ccb); in mvs_process_request_sense()
1959 union ccb *fccb = ch->frozen; in mvs_requeue_frozen()
2115 mvs_softreset(device_t dev, union ccb *ccb) in mvs_softreset() argument
2118 int port = ccb->ccb_h.target_id & 0x0f; in mvs_softreset()
2127 ccb->ccb_h.status &= ~CAM_STATUS_MASK; in mvs_softreset()
2129 if ((i = mvs_wait(dev, 0, ATA_S_BUSY, ccb->ccb_h.timeout)) < 0) { in mvs_softreset()
2130 ccb->ccb_h.status |= CAM_CMD_TIMEOUT; in mvs_softreset()
2135 ccb->ccb_h.status |= CAM_ATA_STATUS_ERROR; in mvs_softreset()
2137 ccb->ccb_h.status |= CAM_REQ_CMP; in mvs_softreset()
2143 mvs_tfd_read(dev, ccb); in mvs_softreset()
2155 mvs_wait(dev, 0, ATA_S_BUSY | ATA_S_DRQ, ccb->ccb_h.timeout); in mvs_softreset()
2158 xpt_done(ccb); in mvs_softreset()
2236 mvs_check_ids(device_t dev, union ccb *ccb) in mvs_check_ids() argument
2240 if (ccb->ccb_h.target_id > ((ch->quirks & MVS_Q_GENI) ? 0 : 15)) { in mvs_check_ids()
2241 ccb->ccb_h.status = CAM_TID_INVALID; in mvs_check_ids()
2242 xpt_done(ccb); in mvs_check_ids()
2245 if (ccb->ccb_h.target_lun != 0) { in mvs_check_ids()
2246 ccb->ccb_h.status = CAM_LUN_INVALID; in mvs_check_ids()
2247 xpt_done(ccb); in mvs_check_ids()
2253 KASSERT(ccb->ccb_h.func_code != XPT_ATA_IO || in mvs_check_ids()
2254 ((ccb->ataio.ata_flags & ATA_FLAG_AUX) == 0), in mvs_check_ids()
2260 mvsaction(struct cam_sim *sim, union ccb *ccb) in mvsaction() argument
2265 CAM_DEBUG(ccb->ccb_h.path, CAM_DEBUG_TRACE, ("mvsaction func_code=%x\n", in mvsaction()
2266 ccb->ccb_h.func_code)); in mvsaction()
2270 switch (ccb->ccb_h.func_code) { in mvsaction()
2274 if (mvs_check_ids(dev, ccb)) in mvsaction()
2278 ccb->ccb_h.target_id > 0 && ccb->ccb_h.target_id < 15)) { in mvsaction()
2279 ccb->ccb_h.status = CAM_SEL_TIMEOUT; in mvsaction()
2282 ccb->ccb_h.recovery_type = RECOVERY_NONE; in mvsaction()
2284 if (mvs_check_collision(dev, ccb)) { in mvsaction()
2286 ch->frozen = ccb; in mvsaction()
2291 mvs_begin_transaction(dev, ccb); in mvsaction()
2295 ccb->ccb_h.status = CAM_REQ_INVALID; in mvsaction()
2299 struct ccb_trans_settings *cts = &ccb->cts; in mvsaction()
2302 if (mvs_check_ids(dev, ccb)) in mvsaction()
2305 d = &ch->curr[ccb->ccb_h.target_id]; in mvsaction()
2307 d = &ch->user[ccb->ccb_h.target_id]; in mvsaction()
2324 ccb->ccb_h.status = CAM_REQ_CMP; in mvsaction()
2330 struct ccb_trans_settings *cts = &ccb->cts; in mvsaction()
2334 if (mvs_check_ids(dev, ccb)) in mvsaction()
2337 d = &ch->curr[ccb->ccb_h.target_id]; in mvsaction()
2339 d = &ch->user[ccb->ccb_h.target_id]; in mvsaction()
2347 (ccb->ccb_h.target_id == 15 || in mvsaction()
2348 (ccb->ccb_h.target_id == 0 && !ch->pm_present))) { in mvsaction()
2361 ch->user[ccb->ccb_h.target_id].caps; in mvsaction()
2382 ccb->ccb_h.status = CAM_REQ_CMP; in mvsaction()
2388 ccb->ccb_h.status = CAM_REQ_CMP; in mvsaction()
2392 ccb->ccb_h.status = CAM_REQ_INVALID; in mvsaction()
2396 struct ccb_pathinq *cpi = &ccb->cpi; in mvsaction()
2437 ccb->ccb_h.status = CAM_REQ_INVALID; in mvsaction()
2440 xpt_done(ccb); in mvsaction()