siop_cmd           82 dev/ic/siop.c  void	siop_table_sync(struct siop_cmd *, int);
siop_cmd           88 dev/ic/siop.c  int	siop_handle_qtag_reject(struct siop_cmd *);
siop_cmd           89 dev/ic/siop.c  void	siop_scsicmd_end(struct siop_cmd *);
siop_cmd          135 dev/ic/siop.c  siop_table_sync(siop_cmd, ops)
siop_cmd          136 dev/ic/siop.c  	struct siop_cmd *siop_cmd;
siop_cmd          139 dev/ic/siop.c  	struct siop_common_softc *sc  = siop_cmd->cmd_c.siop_sc;
siop_cmd          142 dev/ic/siop.c  	offset = siop_cmd->cmd_c.dsa -
siop_cmd          143 dev/ic/siop.c  	    siop_cmd->siop_cbdp->xferdma->dm_segs[0].ds_addr;
siop_cmd          144 dev/ic/siop.c  	bus_dmamap_sync(sc->sc_dmat, siop_cmd->siop_cbdp->xferdma, offset,
siop_cmd          340 dev/ic/siop.c  	    siop_cmd->cmd_c.dsa, \
siop_cmd          356 dev/ic/siop.c  	struct siop_cmd *siop_cmd;
siop_cmd          384 dev/ic/siop.c  	siop_cmd = NULL;
siop_cmd          390 dev/ic/siop.c  			siop_cmd = &cbdp->cmds[dsa / sizeof(struct siop_xfer)];
siop_cmd          391 dev/ic/siop.c  			siop_table_sync(siop_cmd,
siop_cmd          396 dev/ic/siop.c  	if (siop_cmd) {
siop_cmd          397 dev/ic/siop.c  		xs = siop_cmd->cmd_c.xs;
siop_cmd          398 dev/ic/siop.c  		siop_target = (struct siop_target *)siop_cmd->cmd_c.siop_target;
siop_cmd          399 dev/ic/siop.c  		target = siop_cmd->cmd_c.xs->sc_link->target;
siop_cmd          400 dev/ic/siop.c  		lun = siop_cmd->cmd_c.xs->sc_link->lun;
siop_cmd          401 dev/ic/siop.c  		tag = siop_cmd->cmd_c.tag;
siop_cmd          404 dev/ic/siop.c  		if (siop_cmd->cmd_c.status != CMDST_ACTIVE &&
siop_cmd          405 dev/ic/siop.c  		    siop_cmd->cmd_c.status != CMDST_SENSE_ACTIVE) {
siop_cmd          408 dev/ic/siop.c  			    siop_cmd->cmd_c.status);
siop_cmd          415 dev/ic/siop.c  			siop_cmd = NULL;
siop_cmd          416 dev/ic/siop.c  		} else if (siop_lun->siop_tag[tag].active != siop_cmd) {
siop_cmd          418 dev/ic/siop.c  			    "active (%p != %p)\n", lun, tag, siop_cmd,
siop_cmd          472 dev/ic/siop.c  			if (siop_cmd)
siop_cmd          474 dev/ic/siop.c  				    siop_cmd->cmd_tables->msg_in[0],
siop_cmd          476 dev/ic/siop.c  					siop_cmd->cmd_tables->status));
siop_cmd          508 dev/ic/siop.c  			if (siop_cmd)
siop_cmd          516 dev/ic/siop.c  			if (siop_cmd) {
siop_cmd          527 dev/ic/siop.c  				    SIOP_DSA, siop_cmd->cmd_c.dsa);
siop_cmd          541 dev/ic/siop.c  						siop_ma(&siop_cmd->cmd_c);
siop_cmd          554 dev/ic/siop.c  						siop_ma(&siop_cmd->cmd_c);
siop_cmd          574 dev/ic/siop.c  			if (siop_cmd)
siop_cmd          583 dev/ic/siop.c  			if (siop_cmd) {
siop_cmd          584 dev/ic/siop.c  				siop_cmd->cmd_c.status = CMDST_DONE;
siop_cmd          599 dev/ic/siop.c  			 if (siop_cmd) {
siop_cmd          600 dev/ic/siop.c  				siop_cmd->cmd_tables->status =
siop_cmd          636 dev/ic/siop.c  		if (siop_cmd) {
siop_cmd          637 dev/ic/siop.c  			siop_cmd->cmd_c.status = CMDST_DONE;
siop_cmd          663 dev/ic/siop.c  			if (siop_cmd == NULL) {
siop_cmd          669 dev/ic/siop.c  			if (siop_cmd->cmd_c.status != CMDST_ACTIVE &&
siop_cmd          670 dev/ic/siop.c  			    siop_cmd->cmd_c.status != CMDST_SENSE_ACTIVE) {
siop_cmd          674 dev/ic/siop.c  				    irqcode, siop_cmd->cmd_c.status);
siop_cmd          722 dev/ic/siop.c  			siop_cmd = siop_lun->siop_tag[tag].active;
siop_cmd          724 dev/ic/siop.c  			    SIOP_DSP, siop_cmd->cmd_c.dsa +
siop_cmd          727 dev/ic/siop.c  			siop_table_sync(siop_cmd, BUS_DMASYNC_PREWRITE);
siop_cmd          739 dev/ic/siop.c  				if (siop_cmd->cmd_tables->msg_out[0] & 0x80) {
siop_cmd          746 dev/ic/siop.c  					    siop_cmd->cmd_tables->msg_out[1];
siop_cmd          748 dev/ic/siop.c  					    siop_cmd->cmd_tables->msg_out[3];
siop_cmd          750 dev/ic/siop.c  					msg = siop_cmd->cmd_tables->msg_out[0];
siop_cmd          752 dev/ic/siop.c  					    siop_cmd->cmd_tables->msg_out[2];
siop_cmd          780 dev/ic/siop.c  					siop_sdtr_msg(&siop_cmd->cmd_c, 0,
siop_cmd          783 dev/ic/siop.c  					siop_table_sync(siop_cmd,
siop_cmd          812 dev/ic/siop.c  					    siop_cmd) == -1)
siop_cmd          835 dev/ic/siop.c  				siop_cmd->cmd_tables->t_extmsgdata.count =
siop_cmd          837 dev/ic/siop.c  				siop_table_sync(siop_cmd,
siop_cmd          847 dev/ic/siop.c  			    siop_cmd->cmd_tables->msg_in[0]);
siop_cmd          848 dev/ic/siop.c  			siop_cmd->cmd_tables->msg_out[0] = MSG_MESSAGE_REJECT;
siop_cmd          849 dev/ic/siop.c  			siop_cmd->cmd_tables->t_msgout.count =
siop_cmd          851 dev/ic/siop.c  			siop_table_sync(siop_cmd,
siop_cmd          859 dev/ic/siop.c  			    siop_cmd->cmd_tables->msg_in[2],
siop_cmd          860 dev/ic/siop.c  			    siop_cmd->cmd_tables->msg_in[1]);
siop_cmd          862 dev/ic/siop.c  			if (siop_cmd->cmd_tables->msg_in[1] >
siop_cmd          863 dev/ic/siop.c  			    sizeof(siop_cmd->cmd_tables->msg_in) - 2)
siop_cmd          866 dev/ic/siop.c  				    siop_cmd->cmd_tables->msg_in[1]);
siop_cmd          867 dev/ic/siop.c  			siop_cmd->cmd_tables->t_extmsgdata.count =
siop_cmd          869 dev/ic/siop.c  			        siop_cmd->cmd_tables->msg_in[1] - 1);
siop_cmd          870 dev/ic/siop.c  			siop_table_sync(siop_cmd,
siop_cmd          879 dev/ic/siop.c  			    siop_cmd->cmd_tables->msg_in[2]);
siop_cmd          880 dev/ic/siop.c  			for (i = 3; i < 2 + siop_cmd->cmd_tables->msg_in[1];
siop_cmd          883 dev/ic/siop.c  				    siop_cmd->cmd_tables->msg_in[i]);
siop_cmd          887 dev/ic/siop.c  			if (siop_cmd->cmd_tables->msg_in[0] ==
siop_cmd          890 dev/ic/siop.c  				if (siop_cmd->cmd_tables->msg_in[3] != 1)
siop_cmd          893 dev/ic/siop.c  					    siop_cmd->cmd_tables->msg_in[3]);
siop_cmd          894 dev/ic/siop.c  				switch (siop_iwr(&siop_cmd->cmd_c)) {
siop_cmd          896 dev/ic/siop.c  					siop_table_sync(siop_cmd,
siop_cmd          910 dev/ic/siop.c  			if (siop_cmd->cmd_tables->msg_in[2] == MSG_EXT_WDTR) {
siop_cmd          911 dev/ic/siop.c  				switch (siop_wdtr_neg(&siop_cmd->cmd_c)) {
siop_cmd          914 dev/ic/siop.c  					    siop_cmd->cmd_c.siop_target);
siop_cmd          915 dev/ic/siop.c  					siop_table_sync(siop_cmd,
siop_cmd          922 dev/ic/siop.c  					    siop_cmd->cmd_c.siop_target);
siop_cmd          931 dev/ic/siop.c  			if (siop_cmd->cmd_tables->msg_in[2] == MSG_EXT_SDTR) {
siop_cmd          932 dev/ic/siop.c  				switch (siop_sdtr_neg(&siop_cmd->cmd_c)) {
siop_cmd          935 dev/ic/siop.c  					    siop_cmd->cmd_c.siop_target);
siop_cmd          936 dev/ic/siop.c  					siop_table_sync(siop_cmd,
siop_cmd          943 dev/ic/siop.c  					    siop_cmd->cmd_c.siop_target);
siop_cmd          952 dev/ic/siop.c  			if (siop_cmd->cmd_tables->msg_in[2] == MSG_EXT_PPR) {
siop_cmd          953 dev/ic/siop.c  				switch (siop_ppr_neg(&siop_cmd->cmd_c)) {
siop_cmd          956 dev/ic/siop.c  					    siop_cmd->cmd_c.siop_target);
siop_cmd          957 dev/ic/siop.c  					siop_table_sync(siop_cmd,
siop_cmd          964 dev/ic/siop.c  					    siop_cmd->cmd_c.siop_target);
siop_cmd          974 dev/ic/siop.c  			siop_cmd->cmd_tables->msg_out[0] = MSG_MESSAGE_REJECT;
siop_cmd          975 dev/ic/siop.c  			siop_cmd->cmd_tables->t_msgout.count =
siop_cmd          977 dev/ic/siop.c  			siop_table_sync(siop_cmd,
siop_cmd          988 dev/ic/siop.c  			siop_sdp(&siop_cmd->cmd_c, offset);
siop_cmd          990 dev/ic/siop.c  			siop_cmd->saved_offset = SIOP_NOOFFSET;
siop_cmd          991 dev/ic/siop.c  			siop_table_sync(siop_cmd,
siop_cmd         1002 dev/ic/siop.c  			siop_cmd->saved_offset = offset;
siop_cmd         1015 dev/ic/siop.c  				    (u_long)siop_cmd->cmd_c.dsa);
siop_cmd         1016 dev/ic/siop.c  				siop_cmd->cmd_c.status = CMDST_FREE;
siop_cmd         1023 dev/ic/siop.c  			    "in=0x%x status=0x%x\n", (u_long)siop_cmd->cmd_c.dsa,
siop_cmd         1024 dev/ic/siop.c  			    siop_ctoh32(&sc->sc_c, siop_cmd->cmd_tables->id),
siop_cmd         1025 dev/ic/siop.c  			    siop_cmd->cmd_tables->msg_in[0],
siop_cmd         1027 dev/ic/siop.c  				siop_cmd->cmd_tables->status));
siop_cmd         1040 dev/ic/siop.c  			    siop_cmd->saved_offset != SIOP_NOOFFSET)
siop_cmd         1041 dev/ic/siop.c  				offset = siop_cmd->saved_offset;
siop_cmd         1042 dev/ic/siop.c  			siop_update_resid(&siop_cmd->cmd_c, offset);
siop_cmd         1043 dev/ic/siop.c  			if (siop_cmd->cmd_c.status == CMDST_SENSE_ACTIVE)
siop_cmd         1044 dev/ic/siop.c  				siop_cmd->cmd_c.status = CMDST_SENSE_DONE;
siop_cmd         1046 dev/ic/siop.c  				siop_cmd->cmd_c.status = CMDST_DONE;
siop_cmd         1065 dev/ic/siop.c  	    (siop_cmd == NULL) ? "== NULL" : "!= NULL");
siop_cmd         1073 dev/ic/siop.c  	xs->status = siop_ctoh32(&sc->sc_c, siop_cmd->cmd_tables->status);
siop_cmd         1079 dev/ic/siop.c  	siop_scsicmd_end(siop_cmd);
siop_cmd         1089 dev/ic/siop.c  siop_scsicmd_end(siop_cmd)
siop_cmd         1090 dev/ic/siop.c  	struct siop_cmd *siop_cmd;
siop_cmd         1092 dev/ic/siop.c  	struct scsi_xfer *xs = siop_cmd->cmd_c.xs;
siop_cmd         1093 dev/ic/siop.c  	struct siop_softc *sc = (struct siop_softc *)siop_cmd->cmd_c.siop_sc;
siop_cmd         1101 dev/ic/siop.c  	timeout_del(&siop_cmd->cmd_c.xs->stimeout);
siop_cmd         1105 dev/ic/siop.c  		xs->error = (siop_cmd->cmd_c.status == CMDST_DONE) ?
siop_cmd         1112 dev/ic/siop.c  		if (siop_cmd->cmd_c.status == CMDST_SENSE_DONE) {
siop_cmd         1118 dev/ic/siop.c  			siop_cmd->cmd_c.status = CMDST_SENSE;
siop_cmd         1134 dev/ic/siop.c  		    xs->sc_link->lun, siop_cmd->cmd_c.tag);
siop_cmd         1137 dev/ic/siop.c  		siop_cmd->cmd_c.status = CMDST_READY;
siop_cmd         1138 dev/ic/siop.c  		siop_setuptables(&siop_cmd->cmd_c);
siop_cmd         1139 dev/ic/siop.c  		siop_table_sync(siop_cmd, BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE);
siop_cmd         1140 dev/ic/siop.c  		TAILQ_INSERT_TAIL(&sc->urgent_list, siop_cmd, next);
siop_cmd         1157 dev/ic/siop.c  	if (siop_cmd->cmd_c.status != CMDST_SENSE_DONE &&
siop_cmd         1159 dev/ic/siop.c  		bus_dmamap_sync(sc->sc_c.sc_dmat, siop_cmd->cmd_c.dmamap_data, 0,
siop_cmd         1160 dev/ic/siop.c  		    siop_cmd->cmd_c.dmamap_data->dm_mapsize,
siop_cmd         1163 dev/ic/siop.c  		bus_dmamap_unload(sc->sc_c.sc_dmat, siop_cmd->cmd_c.dmamap_data);
siop_cmd         1165 dev/ic/siop.c  	if (siop_cmd->cmd_c.status == CMDST_SENSE) {
siop_cmd         1167 dev/ic/siop.c  		struct scsi_sense *cmd = (struct scsi_sense *)&siop_cmd->cmd_c.siop_tables->xscmd;
siop_cmd         1170 dev/ic/siop.c  		siop_cmd->cmd_c.siop_tables->cmd.count =
siop_cmd         1177 dev/ic/siop.c  		siop_cmd->cmd_c.flags &= ~CMDFL_TAG;
siop_cmd         1178 dev/ic/siop.c  		error = bus_dmamap_load(sc->sc_c.sc_dmat, siop_cmd->cmd_c.dmamap_data,
siop_cmd         1188 dev/ic/siop.c  		bus_dmamap_sync(sc->sc_c.sc_dmat, siop_cmd->cmd_c.dmamap_data,
siop_cmd         1189 dev/ic/siop.c  		    0, siop_cmd->cmd_c.dmamap_data->dm_mapsize,
siop_cmd         1192 dev/ic/siop.c  		siop_setuptables(&siop_cmd->cmd_c);
siop_cmd         1193 dev/ic/siop.c  		siop_table_sync(siop_cmd, BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE);
siop_cmd         1195 dev/ic/siop.c  		TAILQ_INSERT_HEAD(&sc->urgent_list, siop_cmd, next);
siop_cmd         1197 dev/ic/siop.c  	} else if (siop_cmd->cmd_c.status == CMDST_SENSE_DONE) {
siop_cmd         1198 dev/ic/siop.c  		bus_dmamap_sync(sc->sc_c.sc_dmat, siop_cmd->cmd_c.dmamap_data,
siop_cmd         1199 dev/ic/siop.c  		    0, siop_cmd->cmd_c.dmamap_data->dm_mapsize,
siop_cmd         1201 dev/ic/siop.c  		bus_dmamap_unload(sc->sc_c.sc_dmat, siop_cmd->cmd_c.dmamap_data);
siop_cmd         1206 dev/ic/siop.c  	siop_cmd->cmd_c.status = CMDST_FREE;
siop_cmd         1207 dev/ic/siop.c  	TAILQ_INSERT_TAIL(&sc->free_list, siop_cmd, next);
siop_cmd         1220 dev/ic/siop.c  siop_handle_qtag_reject(siop_cmd)
siop_cmd         1221 dev/ic/siop.c  	struct siop_cmd *siop_cmd;
siop_cmd         1223 dev/ic/siop.c  	struct siop_softc *sc = (struct siop_softc *)siop_cmd->cmd_c.siop_sc;
siop_cmd         1224 dev/ic/siop.c  	int target = siop_cmd->cmd_c.xs->sc_link->target;
siop_cmd         1225 dev/ic/siop.c  	int lun = siop_cmd->cmd_c.xs->sc_link->lun;
siop_cmd         1226 dev/ic/siop.c  	int tag = siop_cmd->cmd_tables->msg_out[2];
siop_cmd         1232 dev/ic/siop.c  	    sc->sc_c.sc_dev.dv_xname, target, lun, tag, siop_cmd->cmd_c.tag,
siop_cmd         1233 dev/ic/siop.c  	    siop_cmd->cmd_c.status);
siop_cmd         1245 dev/ic/siop.c  	siop_lun->siop_tag[0].active = siop_cmd;
siop_cmd         1246 dev/ic/siop.c  	siop_cmd->cmd_c.tag = 0;
siop_cmd         1251 dev/ic/siop.c  		    siop_cmd->cmd_c.dsa + sizeof(struct siop_common_xfer) +
siop_cmd         1253 dev/ic/siop.c  		siop_table_sync(siop_cmd, BUS_DMASYNC_PREWRITE);
siop_cmd         1269 dev/ic/siop.c  	struct siop_cmd *siop_cmd, *next_siop_cmd;
siop_cmd         1298 dev/ic/siop.c  				siop_cmd = siop_lun->siop_tag[tag].active;
siop_cmd         1299 dev/ic/siop.c  				if (siop_cmd == NULL)
siop_cmd         1302 dev/ic/siop.c  				TAILQ_INSERT_TAIL(&reset_list, siop_cmd, next);
siop_cmd         1303 dev/ic/siop.c  				sc_print_addr(siop_cmd->cmd_c.xs->sc_link);
siop_cmd         1305 dev/ic/siop.c  				    siop_cmd, tag);
siop_cmd         1317 dev/ic/siop.c  	for (siop_cmd = TAILQ_FIRST(&sc->urgent_list); siop_cmd != NULL;
siop_cmd         1318 dev/ic/siop.c  	    siop_cmd = next_siop_cmd) {
siop_cmd         1319 dev/ic/siop.c  		next_siop_cmd = TAILQ_NEXT(siop_cmd, next);
siop_cmd         1320 dev/ic/siop.c  		TAILQ_REMOVE(&sc->urgent_list, siop_cmd, next);
siop_cmd         1321 dev/ic/siop.c  		TAILQ_INSERT_TAIL(&reset_list, siop_cmd, next);
siop_cmd         1322 dev/ic/siop.c  		sc_print_addr(siop_cmd->cmd_c.xs->sc_link);
siop_cmd         1324 dev/ic/siop.c  		    siop_cmd);
siop_cmd         1327 dev/ic/siop.c  	for (siop_cmd = TAILQ_FIRST(&sc->ready_list); siop_cmd != NULL;
siop_cmd         1328 dev/ic/siop.c  	    siop_cmd = next_siop_cmd) {
siop_cmd         1329 dev/ic/siop.c  		next_siop_cmd = TAILQ_NEXT(siop_cmd, next);
siop_cmd         1330 dev/ic/siop.c  		TAILQ_REMOVE(&sc->ready_list, siop_cmd, next);
siop_cmd         1331 dev/ic/siop.c  		TAILQ_INSERT_TAIL(&reset_list, siop_cmd, next);
siop_cmd         1332 dev/ic/siop.c  		sc_print_addr(siop_cmd->cmd_c.xs->sc_link);
siop_cmd         1334 dev/ic/siop.c  		    siop_cmd);
siop_cmd         1337 dev/ic/siop.c  	for (siop_cmd = TAILQ_FIRST(&reset_list); siop_cmd != NULL;
siop_cmd         1338 dev/ic/siop.c  	    siop_cmd = next_siop_cmd) {
siop_cmd         1339 dev/ic/siop.c  		next_siop_cmd = TAILQ_NEXT(siop_cmd, next);
siop_cmd         1340 dev/ic/siop.c  		siop_cmd->cmd_c.flags &= ~CMDFL_TAG;
siop_cmd         1341 dev/ic/siop.c  		siop_cmd->cmd_c.xs->error =
siop_cmd         1342 dev/ic/siop.c  		    (siop_cmd->cmd_c.flags & CMDFL_TIMEOUT)
siop_cmd         1344 dev/ic/siop.c  		siop_cmd->cmd_c.xs->status = SCSI_SIOP_NOCHECK;
siop_cmd         1345 dev/ic/siop.c  		sc_print_addr(siop_cmd->cmd_c.xs->sc_link);
siop_cmd         1347 dev/ic/siop.c  		    siop_cmd, siop_cmd->cmd_c.status);
siop_cmd         1348 dev/ic/siop.c  		if (siop_cmd->cmd_c.status == CMDST_SENSE ||
siop_cmd         1349 dev/ic/siop.c  		    siop_cmd->cmd_c.status == CMDST_SENSE_ACTIVE) 
siop_cmd         1350 dev/ic/siop.c  			siop_cmd->cmd_c.status = CMDST_SENSE_DONE;
siop_cmd         1352 dev/ic/siop.c  			siop_cmd->cmd_c.status = CMDST_DONE;
siop_cmd         1354 dev/ic/siop.c  		    siop_cmd->cmd_c.status, siop_cmd->cmd_c.xs->error);
siop_cmd         1355 dev/ic/siop.c  		TAILQ_REMOVE(&reset_list, siop_cmd, next);
siop_cmd         1356 dev/ic/siop.c  		siop_scsicmd_end(siop_cmd);
siop_cmd         1365 dev/ic/siop.c  	struct siop_cmd *siop_cmd;
siop_cmd         1375 dev/ic/siop.c  	siop_cmd = TAILQ_FIRST(&sc->free_list);
siop_cmd         1376 dev/ic/siop.c  	if (siop_cmd == NULL) {
siop_cmd         1380 dev/ic/siop.c  	TAILQ_REMOVE(&sc->free_list, siop_cmd, next);
siop_cmd         1383 dev/ic/siop.c  	timeout_set(&xs->stimeout, siop_timeout, siop_cmd);
siop_cmd         1386 dev/ic/siop.c  	if (siop_cmd->cmd_c.status != CMDST_FREE)
siop_cmd         1440 dev/ic/siop.c  	siop_cmd->cmd_c.siop_target = sc->sc_c.targets[target];
siop_cmd         1441 dev/ic/siop.c  	siop_cmd->cmd_c.xs = xs;
siop_cmd         1442 dev/ic/siop.c  	siop_cmd->cmd_c.flags = 0;
siop_cmd         1443 dev/ic/siop.c  	siop_cmd->cmd_c.status = CMDST_READY;
siop_cmd         1445 dev/ic/siop.c  	bzero(&siop_cmd->cmd_c.siop_tables->xscmd,
siop_cmd         1446 dev/ic/siop.c  	    sizeof(siop_cmd->cmd_c.siop_tables->xscmd));
siop_cmd         1447 dev/ic/siop.c  	bcopy(xs->cmd, &siop_cmd->cmd_c.siop_tables->xscmd, xs->cmdlen);
siop_cmd         1448 dev/ic/siop.c  	siop_cmd->cmd_c.siop_tables->cmd.count =
siop_cmd         1454 dev/ic/siop.c  		    siop_cmd->cmd_c.dmamap_data, xs->data, xs->datalen,
siop_cmd         1465 dev/ic/siop.c  		    siop_cmd->cmd_c.dmamap_data, 0,
siop_cmd         1466 dev/ic/siop.c  		    siop_cmd->cmd_c.dmamap_data->dm_mapsize,
siop_cmd         1471 dev/ic/siop.c  	siop_setuptables(&siop_cmd->cmd_c);
siop_cmd         1472 dev/ic/siop.c  	siop_cmd->saved_offset = SIOP_NOOFFSET;
siop_cmd         1473 dev/ic/siop.c  	siop_table_sync(siop_cmd,
siop_cmd         1476 dev/ic/siop.c  	TAILQ_INSERT_TAIL(&sc->ready_list, siop_cmd, next);
siop_cmd         1527 dev/ic/siop.c  		siop_timeout(siop_cmd);
siop_cmd         1540 dev/ic/siop.c  	struct siop_cmd *siop_cmd, *next_siop_cmd;
siop_cmd         1579 dev/ic/siop.c  	siop_cmd = TAILQ_FIRST(&sc->urgent_list);
siop_cmd         1581 dev/ic/siop.c  	for (; siop_cmd != NULL; siop_cmd = next_siop_cmd) {
siop_cmd         1582 dev/ic/siop.c  		next_siop_cmd = TAILQ_NEXT(siop_cmd, next);
siop_cmd         1584 dev/ic/siop.c  		if (siop_cmd->cmd_c.status != CMDST_READY &&
siop_cmd         1585 dev/ic/siop.c  		    siop_cmd->cmd_c.status != CMDST_SENSE)
siop_cmd         1588 dev/ic/siop.c  		target = siop_cmd->cmd_c.xs->sc_link->target;
siop_cmd         1589 dev/ic/siop.c  		lun = siop_cmd->cmd_c.xs->sc_link->lun;
siop_cmd         1600 dev/ic/siop.c  		    siop_cmd->cmd_c.status == CMDST_READY)
siop_cmd         1603 dev/ic/siop.c  		if (siop_cmd->cmd_c.flags & CMDFL_TAG) {
siop_cmd         1613 dev/ic/siop.c  		siop_cmd->cmd_c.tag = tag;
siop_cmd         1618 dev/ic/siop.c  		if (siop_cmd->cmd_c.status != CMDST_SENSE) {
siop_cmd         1641 dev/ic/siop.c  		    (u_long)siop_cmd->cmd_c.dsa);
siop_cmd         1647 dev/ic/siop.c  			    siop_cmd->cmd_tables->t_msgout.count);
siop_cmd         1653 dev/ic/siop.c  			if (siop_cmd->cmd_c.xs->bp != NULL &&
siop_cmd         1654 dev/ic/siop.c  			    (siop_cmd->cmd_c.xs->bp->b_flags & B_ASYNC))
siop_cmd         1655 dev/ic/siop.c  				siop_cmd->cmd_tables->msg_out[1] =
siop_cmd         1658 dev/ic/siop.c  				siop_cmd->cmd_tables->msg_out[1] =
siop_cmd         1660 dev/ic/siop.c  			siop_cmd->cmd_tables->msg_out[2] = tag;
siop_cmd         1661 dev/ic/siop.c  			siop_cmd->cmd_tables->t_msgout.count =
siop_cmd         1667 dev/ic/siop.c  		if (siop_cmd->cmd_c.status == CMDST_READY) {
siop_cmd         1668 dev/ic/siop.c  			siop_cmd->cmd_c.status = CMDST_ACTIVE;
siop_cmd         1669 dev/ic/siop.c  		} else if (siop_cmd->cmd_c.status == CMDST_SENSE) {
siop_cmd         1670 dev/ic/siop.c  			siop_cmd->cmd_c.status = CMDST_SENSE_ACTIVE;
siop_cmd         1674 dev/ic/siop.c  			TAILQ_REMOVE(&sc->ready_list, siop_cmd, next);
siop_cmd         1676 dev/ic/siop.c  			TAILQ_REMOVE(&sc->urgent_list, siop_cmd, next);
siop_cmd         1677 dev/ic/siop.c  		siop_lun->siop_tag[tag].active = siop_cmd;
siop_cmd         1679 dev/ic/siop.c  		dsa = siop_cmd->cmd_c.dsa;
siop_cmd         1687 dev/ic/siop.c  		siop_xfer = (struct siop_xfer*)siop_cmd->cmd_tables;
siop_cmd         1691 dev/ic/siop.c  		siop_table_sync(siop_cmd, BUS_DMASYNC_PREWRITE);
siop_cmd         1697 dev/ic/siop.c  		if (siop_cmd->cmd_c.status == CMDST_ACTIVE) {
siop_cmd         1698 dev/ic/siop.c  			if ((siop_cmd->cmd_c.xs->flags & SCSI_POLL) == 0) {
siop_cmd         1700 dev/ic/siop.c  				timeout = (u_int64_t) siop_cmd->cmd_c.xs->timeout *
siop_cmd         1704 dev/ic/siop.c  				timeout_add(&siop_cmd->cmd_c.xs->stimeout, timeout);
siop_cmd         1721 dev/ic/siop.c  		siop_cmd = TAILQ_FIRST(&sc->ready_list);
siop_cmd         1742 dev/ic/siop.c  	struct siop_cmd *siop_cmd = v;
siop_cmd         1743 dev/ic/siop.c  	struct siop_softc *sc = (struct siop_softc *)siop_cmd->cmd_c.siop_sc;
siop_cmd         1747 dev/ic/siop.c  	timeout_del(&siop_cmd->cmd_c.xs->stimeout);
siop_cmd         1749 dev/ic/siop.c  	sc_print_addr(siop_cmd->cmd_c.xs->sc_link);
siop_cmd         1751 dev/ic/siop.c  	    siop_cmd->cmd_c.xs->cmd->opcode);
siop_cmd         1756 dev/ic/siop.c  	siop_cmd->cmd_c.flags |= CMDFL_TIMEOUT;
siop_cmd         1806 dev/ic/siop.c  	newcbd->cmds = malloc(sizeof(struct siop_cmd) * SIOP_NCMDPB,
siop_cmd         1813 dev/ic/siop.c  	bzero(newcbd->cmds, sizeof(struct siop_cmd) * SIOP_NCMDPB);
siop_cmd          239 dev/ic/siop_common.c siop_setuptables(siop_cmd)
siop_cmd          240 dev/ic/siop_common.c 	struct siop_common_cmd *siop_cmd;
siop_cmd          243 dev/ic/siop_common.c 	struct siop_common_softc *sc = siop_cmd->siop_sc;
siop_cmd          244 dev/ic/siop_common.c 	struct scsi_xfer *xs = siop_cmd->xs;
siop_cmd          251 dev/ic/siop_common.c 	siop_cmd->siop_tables->id = siop_htoc32(sc, sc->targets[target]->id);
siop_cmd          252 dev/ic/siop_common.c 	memset(siop_cmd->siop_tables->msg_out, 0,
siop_cmd          253 dev/ic/siop_common.c 	    sizeof(siop_cmd->siop_tables->msg_out));
siop_cmd          255 dev/ic/siop_common.c 	if (siop_cmd->status == CMDST_SENSE)
siop_cmd          256 dev/ic/siop_common.c 		siop_cmd->siop_tables->msg_out[0] = MSG_IDENTIFY(lun, 0);
siop_cmd          267 dev/ic/siop_common.c 		siop_cmd->siop_tables->msg_out[0] = MSG_IDENTIFY(lun, 0);
siop_cmd          269 dev/ic/siop_common.c 		siop_cmd->siop_tables->msg_out[0] = MSG_IDENTIFY(lun, 1);
siop_cmd          270 dev/ic/siop_common.c 	siop_cmd->siop_tables->t_msgout.count = siop_htoc32(sc, msgoffset);
siop_cmd          297 dev/ic/siop_common.c 			 siop_ppr_msg(siop_cmd, msgoffset, sc->dt_minsync,
siop_cmd          301 dev/ic/siop_common.c 			siop_wdtr_msg(siop_cmd, msgoffset,
siop_cmd          305 dev/ic/siop_common.c 			siop_sdtr_msg(siop_cmd, msgoffset, sc->st_minsync,
siop_cmd          313 dev/ic/siop_common.c 	    siop_cmd->status != CMDST_SENSE) {
siop_cmd          314 dev/ic/siop_common.c 		siop_cmd->flags |= CMDFL_TAG;
siop_cmd          316 dev/ic/siop_common.c 	siop_cmd->siop_tables->status =
siop_cmd          320 dev/ic/siop_common.c 	    siop_cmd->status == CMDST_SENSE) {
siop_cmd          321 dev/ic/siop_common.c 		bzero(siop_cmd->siop_tables->data,
siop_cmd          322 dev/ic/siop_common.c 		    sizeof(siop_cmd->siop_tables->data));
siop_cmd          323 dev/ic/siop_common.c 		for (i = 0; i < siop_cmd->dmamap_data->dm_nsegs; i++) {
siop_cmd          324 dev/ic/siop_common.c 			siop_cmd->siop_tables->data[i].count =
siop_cmd          326 dev/ic/siop_common.c 				siop_cmd->dmamap_data->dm_segs[i].ds_len);
siop_cmd          327 dev/ic/siop_common.c 			siop_cmd->siop_tables->data[i].addr =
siop_cmd          329 dev/ic/siop_common.c 				siop_cmd->dmamap_data->dm_segs[i].ds_addr);
siop_cmd          335 dev/ic/siop_common.c siop_wdtr_neg(siop_cmd)
siop_cmd          336 dev/ic/siop_common.c 	struct siop_common_cmd *siop_cmd;
siop_cmd          338 dev/ic/siop_common.c 	struct siop_common_softc *sc = siop_cmd->siop_sc;
siop_cmd          339 dev/ic/siop_common.c 	struct siop_common_target *siop_target = siop_cmd->siop_target;
siop_cmd          340 dev/ic/siop_common.c 	int target = siop_cmd->xs->sc_link->target;
siop_cmd          341 dev/ic/siop_common.c 	struct siop_common_xfer *tables = siop_cmd->siop_tables;
siop_cmd          380 dev/ic/siop_common.c 			siop_sdtr_msg(siop_cmd, 0, sc->st_minsync,
siop_cmd          408 dev/ic/siop_common.c 		siop_wdtr_msg(siop_cmd, 0, (siop_target->flags & TARF_ISWIDE) ?
siop_cmd          415 dev/ic/siop_common.c siop_ppr_neg(siop_cmd)
siop_cmd          416 dev/ic/siop_common.c 	struct siop_common_cmd *siop_cmd;
siop_cmd          418 dev/ic/siop_common.c 	struct siop_common_softc *sc = siop_cmd->siop_sc;
siop_cmd          419 dev/ic/siop_common.c 	struct siop_common_target *siop_target = siop_cmd->siop_target;
siop_cmd          420 dev/ic/siop_common.c 	int target = siop_cmd->xs->sc_link->target;
siop_cmd          421 dev/ic/siop_common.c 	struct siop_common_xfer *tables = siop_cmd->siop_tables;
siop_cmd          529 dev/ic/siop_common.c siop_sdtr_neg(siop_cmd)
siop_cmd          530 dev/ic/siop_common.c 	struct siop_common_cmd *siop_cmd;
siop_cmd          532 dev/ic/siop_common.c 	struct siop_common_softc *sc = siop_cmd->siop_sc;
siop_cmd          533 dev/ic/siop_common.c 	struct siop_common_target *siop_target = siop_cmd->siop_target;
siop_cmd          534 dev/ic/siop_common.c 	int target = siop_cmd->xs->sc_link->target;
siop_cmd          537 dev/ic/siop_common.c 	struct siop_common_xfer *tables = siop_cmd->siop_tables;
siop_cmd          630 dev/ic/siop_common.c 				siop_sdtr_msg(siop_cmd, 0, sync, offset);
siop_cmd          641 dev/ic/siop_common.c 		siop_sdtr_msg(siop_cmd, 0, 0, 0);
siop_cmd          663 dev/ic/siop_common.c siop_sdtr_msg(siop_cmd, offset, ssync, soff)
siop_cmd          664 dev/ic/siop_common.c 	struct siop_common_cmd *siop_cmd;
siop_cmd          668 dev/ic/siop_common.c 	siop_cmd->siop_tables->msg_out[offset + 0] = MSG_EXTENDED;
siop_cmd          669 dev/ic/siop_common.c 	siop_cmd->siop_tables->msg_out[offset + 1] = MSG_EXT_SDTR_LEN;
siop_cmd          670 dev/ic/siop_common.c 	siop_cmd->siop_tables->msg_out[offset + 2] = MSG_EXT_SDTR;
siop_cmd          671 dev/ic/siop_common.c 	siop_cmd->siop_tables->msg_out[offset + 3] = ssync;
siop_cmd          672 dev/ic/siop_common.c 	siop_cmd->siop_tables->msg_out[offset + 4] = soff;
siop_cmd          673 dev/ic/siop_common.c 	siop_cmd->siop_tables->t_msgout.count =
siop_cmd          674 dev/ic/siop_common.c 	    siop_htoc32(siop_cmd->siop_sc, offset + MSG_EXT_SDTR_LEN + 2);
siop_cmd          678 dev/ic/siop_common.c siop_wdtr_msg(siop_cmd, offset, wide)
siop_cmd          679 dev/ic/siop_common.c 	struct siop_common_cmd *siop_cmd;
siop_cmd          683 dev/ic/siop_common.c 	siop_cmd->siop_tables->msg_out[offset + 0] = MSG_EXTENDED;
siop_cmd          684 dev/ic/siop_common.c 	siop_cmd->siop_tables->msg_out[offset + 1] = MSG_EXT_WDTR_LEN;
siop_cmd          685 dev/ic/siop_common.c 	siop_cmd->siop_tables->msg_out[offset + 2] = MSG_EXT_WDTR;
siop_cmd          686 dev/ic/siop_common.c 	siop_cmd->siop_tables->msg_out[offset + 3] = wide;
siop_cmd          687 dev/ic/siop_common.c 	siop_cmd->siop_tables->t_msgout.count =
siop_cmd          688 dev/ic/siop_common.c 	    siop_htoc32(siop_cmd->siop_sc, offset + MSG_EXT_WDTR_LEN + 2);
siop_cmd          692 dev/ic/siop_common.c siop_ppr_msg(siop_cmd, offset, ssync, soff)
siop_cmd          693 dev/ic/siop_common.c 	struct siop_common_cmd *siop_cmd;
siop_cmd          697 dev/ic/siop_common.c 	siop_cmd->siop_tables->msg_out[offset + 0] = MSG_EXTENDED;
siop_cmd          698 dev/ic/siop_common.c 	siop_cmd->siop_tables->msg_out[offset + 1] = MSG_EXT_PPR_LEN;
siop_cmd          699 dev/ic/siop_common.c 	siop_cmd->siop_tables->msg_out[offset + 2] = MSG_EXT_PPR;
siop_cmd          700 dev/ic/siop_common.c 	siop_cmd->siop_tables->msg_out[offset + 3] = ssync;
siop_cmd          701 dev/ic/siop_common.c 	siop_cmd->siop_tables->msg_out[offset + 4] = 0; /* reserved */
siop_cmd          702 dev/ic/siop_common.c 	siop_cmd->siop_tables->msg_out[offset + 5] = soff;
siop_cmd          703 dev/ic/siop_common.c 	siop_cmd->siop_tables->msg_out[offset + 6] = 1; /* wide */
siop_cmd          704 dev/ic/siop_common.c 	siop_cmd->siop_tables->msg_out[offset + 7] = MSG_EXT_PPR_PROT_DT;
siop_cmd          705 dev/ic/siop_common.c 	siop_cmd->siop_tables->t_msgout.count =
siop_cmd          706 dev/ic/siop_common.c 	    siop_htoc32(siop_cmd->siop_sc, offset + MSG_EXT_PPR_LEN + 2);
siop_cmd          720 dev/ic/siop_common.c siop_ma(siop_cmd)
siop_cmd          721 dev/ic/siop_common.c 	struct siop_common_cmd *siop_cmd;
siop_cmd          724 dev/ic/siop_common.c 	struct siop_common_softc *sc = siop_cmd->siop_sc;
siop_cmd          731 dev/ic/siop_common.c 	if ((siop_cmd->xs->flags & (SCSI_DATA_OUT | SCSI_DATA_IN))
siop_cmd          741 dev/ic/siop_common.c 	table = &siop_cmd->siop_tables->data[offset];
siop_cmd          747 dev/ic/siop_common.c 	if (siop_cmd->xs->flags & SCSI_DATA_OUT) {
siop_cmd          768 dev/ic/siop_common.c 		if (siop_cmd->siop_target->flags & TARF_ISWIDE) {
siop_cmd          782 dev/ic/siop_common.c 	siop_cmd->flags |= CMDFL_RESID;
siop_cmd          783 dev/ic/siop_common.c 	siop_cmd->resid = dbc;
siop_cmd          787 dev/ic/siop_common.c siop_sdp(siop_cmd, offset)
siop_cmd          788 dev/ic/siop_common.c 	struct siop_common_cmd *siop_cmd;
siop_cmd          791 dev/ic/siop_common.c 	struct siop_common_softc *sc = siop_cmd->siop_sc;
siop_cmd          794 dev/ic/siop_common.c 	if ((siop_cmd->xs->flags & (SCSI_DATA_OUT | SCSI_DATA_IN))
siop_cmd          807 dev/ic/siop_common.c 		sc_print_addr(siop_cmd->xs->sc_link);
siop_cmd          822 dev/ic/siop_common.c 	siop_update_resid(siop_cmd, offset);
siop_cmd          828 dev/ic/siop_common.c 	if (siop_cmd->flags & CMDFL_RESID) {
siop_cmd          829 dev/ic/siop_common.c 		siop_cmd->flags &= ~CMDFL_RESID;
siop_cmd          830 dev/ic/siop_common.c 		table = &siop_cmd->siop_tables->data[offset];
siop_cmd          834 dev/ic/siop_common.c 		    siop_ctoh32(sc, table->count) - siop_cmd->resid);
siop_cmd          835 dev/ic/siop_common.c 		table->count = siop_htoc32(sc, siop_cmd->resid);
siop_cmd          843 dev/ic/siop_common.c 	bcopy(&siop_cmd->siop_tables->data[offset],
siop_cmd          844 dev/ic/siop_common.c 	    &siop_cmd->siop_tables->data[0],
siop_cmd          849 dev/ic/siop_common.c siop_update_resid(siop_cmd, offset)
siop_cmd          850 dev/ic/siop_common.c 	struct siop_common_cmd *siop_cmd;
siop_cmd          853 dev/ic/siop_common.c 	struct siop_common_softc *sc = siop_cmd->siop_sc;
siop_cmd          857 dev/ic/siop_common.c 	if ((siop_cmd->xs->flags & (SCSI_DATA_OUT | SCSI_DATA_IN))
siop_cmd          866 dev/ic/siop_common.c 		siop_cmd->xs->resid -=
siop_cmd          867 dev/ic/siop_common.c 		    siop_ctoh32(sc, siop_cmd->siop_tables->data[i].count);
siop_cmd          873 dev/ic/siop_common.c 	if (siop_cmd->flags & CMDFL_RESID) {
siop_cmd          874 dev/ic/siop_common.c 		table = &siop_cmd->siop_tables->data[offset];
siop_cmd          875 dev/ic/siop_common.c 		siop_cmd->xs->resid -=
siop_cmd          876 dev/ic/siop_common.c 		    siop_ctoh32(sc, table->count) - siop_cmd->resid;
siop_cmd          881 dev/ic/siop_common.c siop_iwr(siop_cmd)
siop_cmd          882 dev/ic/siop_common.c 	struct siop_common_cmd *siop_cmd;
siop_cmd          886 dev/ic/siop_common.c 	struct siop_common_softc *sc = siop_cmd->siop_sc;
siop_cmd          890 dev/ic/siop_common.c 	if ((siop_cmd->siop_target->flags & TARF_ISWIDE) == 0) {
siop_cmd          891 dev/ic/siop_common.c 		siop_cmd->siop_tables->t_msgout.count = siop_htoc32(sc, 1);
siop_cmd          892 dev/ic/siop_common.c 		siop_cmd->siop_tables->msg_out[0] = MSG_MESSAGE_REJECT;
siop_cmd          901 dev/ic/siop_common.c 	if ((siop_cmd->flags & CMDFL_RESID) == 0)
siop_cmd          903 dev/ic/siop_common.c 	table = &siop_cmd->siop_tables->data[offset];
siop_cmd          905 dev/ic/siop_common.c 	if ((siop_cmd->flags & CMDFL_RESID) == 0) {
siop_cmd          917 dev/ic/siop_common.c 			 siop_cmd->flags |= CMDFL_RESID;
siop_cmd          918 dev/ic/siop_common.c 			 siop_cmd->resid = 1;
siop_cmd          928 dev/ic/siop_common.c 		siop_cmd->resid--;
siop_cmd           56 dev/ic/siopvar.h struct siop_cmd {
siop_cmd           57 dev/ic/siopvar.h 	TAILQ_ENTRY (siop_cmd) next;
siop_cmd           68 dev/ic/siopvar.h 	struct siop_cmd *cmds;
siop_cmd           75 dev/ic/siopvar.h 	struct siop_cmd *active; /* active command */
siop_cmd          105 dev/ic/siopvar.h TAILQ_HEAD(cmd_list, siop_cmd);