isp_target.c (2f9e7606fed79fa2b2817e33beb95dd0f403a3e7) isp_target.c (ac9d0a02cf4282519635973e7d73183cae8bbd2a)
1/* $FreeBSD$ */
2/*
3 * Machine and OS Independent Target Mode Code for the Qlogic SCSI/FC adapters.
4 *
5 * Copyright (c) 1999, 2000, 2001 by Matthew Jacob
6 * All rights reserved.
7 * mjacob@feral.com
8 *

--- 145 unchanged lines hidden (view full) ---

154 case RQSTYPE_CTIO:
155 isp_get_ctio(isp, ctiop, (ct_entry_t *) local);
156 isp_handle_ctio(isp, (ct_entry_t *) local);
157 break;
158 case RQSTYPE_ATIO2:
159 isp_get_atio2(isp, at2iop, (at2_entry_t *) local);
160 isp_handle_atio2(isp, (at2_entry_t *) local);
161 break;
1/* $FreeBSD$ */
2/*
3 * Machine and OS Independent Target Mode Code for the Qlogic SCSI/FC adapters.
4 *
5 * Copyright (c) 1999, 2000, 2001 by Matthew Jacob
6 * All rights reserved.
7 * mjacob@feral.com
8 *

--- 145 unchanged lines hidden (view full) ---

154 case RQSTYPE_CTIO:
155 isp_get_ctio(isp, ctiop, (ct_entry_t *) local);
156 isp_handle_ctio(isp, (ct_entry_t *) local);
157 break;
158 case RQSTYPE_ATIO2:
159 isp_get_atio2(isp, at2iop, (at2_entry_t *) local);
160 isp_handle_atio2(isp, (at2_entry_t *) local);
161 break;
162 case RQSTYPE_CTIO3:
162 case RQSTYPE_CTIO2:
163 isp_get_ctio2(isp, ct2iop, (ct2_entry_t *) local);
164 isp_handle_ctio2(isp, (ct2_entry_t *) local);
165 break;
166 case RQSTYPE_ENABLE_LUN:
167 case RQSTYPE_MODIFY_LUN:
168 isp_get_enable_lun(isp, lunenp, (lun_entry_t *) local);
169 (void) isp_async(isp, ISPASYNC_TARGET_ACTION, local);

--- 977 unchanged lines hidden (view full) ---

1147 /*
1148 * There may be more than one CTIO for a data transfer,
1149 * or this may be a status CTIO we're not monitoring.
1150 *
1151 * The assumption is that they'll all be returned in the
1152 * order we got them.
1153 */
1154 if (ct->ct_syshandle == 0) {
163 case RQSTYPE_CTIO2:
164 isp_get_ctio2(isp, ct2iop, (ct2_entry_t *) local);
165 isp_handle_ctio2(isp, (ct2_entry_t *) local);
166 break;
167 case RQSTYPE_ENABLE_LUN:
168 case RQSTYPE_MODIFY_LUN:
169 isp_get_enable_lun(isp, lunenp, (lun_entry_t *) local);
170 (void) isp_async(isp, ISPASYNC_TARGET_ACTION, local);

--- 977 unchanged lines hidden (view full) ---

1148 /*
1149 * There may be more than one CTIO for a data transfer,
1150 * or this may be a status CTIO we're not monitoring.
1151 *
1152 * The assumption is that they'll all be returned in the
1153 * order we got them.
1154 */
1155 if (ct->ct_syshandle == 0) {
1155 if ((ct->ct_flags & CT_SENDSTATUS) == 0) {
1156 if ((ct->ct_flags & CT2_SENDSTATUS) == 0) {
1156 isp_prt(isp, pl,
1157 "intermediate CTIO completed ok");
1158 } else {
1159 isp_prt(isp, pl,
1160 "unmonitored CTIO completed ok");
1161 }
1162 } else {
1163 isp_prt(isp, pl,
1164 "NO xs for CTIO (handle 0x%x) status 0x%x",
1165 ct->ct_syshandle, ct->ct_status & ~QLTM_SVALID);
1166 }
1167 } else {
1168 if ((ct->ct_flags & CT2_DATAMASK) != CT2_NO_DATA) {
1169 ISP_DMAFREE(isp, xs, ct->ct_syshandle);
1170 }
1157 isp_prt(isp, pl,
1158 "intermediate CTIO completed ok");
1159 } else {
1160 isp_prt(isp, pl,
1161 "unmonitored CTIO completed ok");
1162 }
1163 } else {
1164 isp_prt(isp, pl,
1165 "NO xs for CTIO (handle 0x%x) status 0x%x",
1166 ct->ct_syshandle, ct->ct_status & ~QLTM_SVALID);
1167 }
1168 } else {
1169 if ((ct->ct_flags & CT2_DATAMASK) != CT2_NO_DATA) {
1170 ISP_DMAFREE(isp, xs, ct->ct_syshandle);
1171 }
1171 if (ct->ct_flags & CT_SENDSTATUS) {
1172 if (ct->ct_flags & CT2_SENDSTATUS) {
1172 /*
1173 * Sent status and command complete.
1174 *
1175 * We're now really done with this command, so we
1176 * punt to the platform dependent layers because
1177 * only there can we do the appropriate command
1178 * complete thread synchronization.
1179 */

--- 15 unchanged lines hidden ---
1173 /*
1174 * Sent status and command complete.
1175 *
1176 * We're now really done with this command, so we
1177 * punt to the platform dependent layers because
1178 * only there can we do the appropriate command
1179 * complete thread synchronization.
1180 */

--- 15 unchanged lines hidden ---