pScb              217 dev/ic/iha.c   iha_setup_sg_list(sc, pScb)
pScb              219 dev/ic/iha.c   	struct iha_scb *pScb;
pScb              221 dev/ic/iha.c   	bus_dma_segment_t *segs = pScb->SCB_DataDma->dm_segs;
pScb              222 dev/ic/iha.c   	int i, error, nseg = pScb->SCB_DataDma->dm_nsegs;
pScb              225 dev/ic/iha.c   		error = bus_dmamap_load(sc->sc_dmat, pScb->SCB_SGDma,
pScb              226 dev/ic/iha.c   				pScb->SCB_SGList, sizeof(pScb->SCB_SGList), NULL,
pScb              227 dev/ic/iha.c   				(pScb->SCB_Flags & SCSI_NOSLEEP) ?
pScb              230 dev/ic/iha.c   			sc_print_addr(pScb->SCB_Xs->sc_link);
pScb              239 dev/ic/iha.c   		pScb->SCB_Flags	|= FLAG_SG;
pScb              240 dev/ic/iha.c   		bzero(pScb->SCB_SGList, sizeof(pScb->SCB_SGList));
pScb              242 dev/ic/iha.c   		pScb->SCB_SGIdx	  = 0;
pScb              243 dev/ic/iha.c   		pScb->SCB_SGCount = nseg;
pScb              246 dev/ic/iha.c   			pScb->SCB_SGList[i].SG_Len  = segs[i].ds_len;
pScb              247 dev/ic/iha.c   			pScb->SCB_SGList[i].SG_Addr = segs[i].ds_addr;
pScb              250 dev/ic/iha.c   		bus_dmamap_sync(sc->sc_dmat, pScb->SCB_SGDma, 
pScb              251 dev/ic/iha.c   			0, sizeof(pScb->SCB_SGList), BUS_DMASYNC_PREWRITE);
pScb              266 dev/ic/iha.c   	struct iha_scb *pScb;
pScb              276 dev/ic/iha.c   	pScb = iha_pop_free_scb(sc);
pScb              277 dev/ic/iha.c   	if (pScb == NULL) {
pScb              283 dev/ic/iha.c   	pScb->SCB_Target = sc_link->target;
pScb              284 dev/ic/iha.c   	pScb->SCB_Lun	 = sc_link->lun;
pScb              285 dev/ic/iha.c   	pScb->SCB_Tcs	 = &sc->HCS_Tcs[pScb->SCB_Target];
pScb              286 dev/ic/iha.c   	pScb->SCB_Flags	 = xs->flags;
pScb              287 dev/ic/iha.c   	pScb->SCB_Ident  = MSG_IDENTIFYFLAG |
pScb              288 dev/ic/iha.c   		(pScb->SCB_Lun & MSG_IDENTIFY_LUNMASK);
pScb              291 dev/ic/iha.c   	    && ((pScb->SCB_Flags & SCSI_POLL) == 0))
pScb              292 dev/ic/iha.c   		pScb->SCB_Ident |= MSG_IDENTIFY_DISCFLAG;
pScb              294 dev/ic/iha.c   	pScb->SCB_Xs	 = xs;
pScb              295 dev/ic/iha.c   	pScb->SCB_CDBLen = xs->cmdlen;
pScb              296 dev/ic/iha.c   	bcopy(xs->cmd, &pScb->SCB_CDB, xs->cmdlen);
pScb              298 dev/ic/iha.c   	pScb->SCB_BufCharsLeft = pScb->SCB_BufChars = xs->datalen;
pScb              300 dev/ic/iha.c   	if ((pScb->SCB_Flags & (SCSI_DATA_IN | SCSI_DATA_OUT)) != 0) {
pScb              302 dev/ic/iha.c   		if (pScb->SCB_Flags & SCSI_DATA_UIO)
pScb              304 dev/ic/iha.c   			    pScb->SCB_DataDma, (struct uio *)xs->data,
pScb              305 dev/ic/iha.c   			    (pScb->SCB_Flags & SCSI_NOSLEEP) ?
pScb              309 dev/ic/iha.c   			error = bus_dmamap_load(sc->sc_dmat, pScb->SCB_DataDma,
pScb              310 dev/ic/iha.c   			    xs->data, pScb->SCB_BufChars, NULL,
pScb              311 dev/ic/iha.c   			    (pScb->SCB_Flags & SCSI_NOSLEEP) ?
pScb              323 dev/ic/iha.c   			iha_append_free_scb(sc, pScb); 
pScb              328 dev/ic/iha.c   		bus_dmamap_sync(sc->sc_dmat, pScb->SCB_DataDma, 
pScb              329 dev/ic/iha.c   			0, pScb->SCB_BufChars,
pScb              330 dev/ic/iha.c   			(pScb->SCB_Flags & SCSI_DATA_IN) ?
pScb              333 dev/ic/iha.c   		error = iha_setup_sg_list(sc, pScb);
pScb              335 dev/ic/iha.c   			bus_dmamap_unload(sc->sc_dmat, pScb->SCB_DataDma);
pScb              347 dev/ic/iha.c   	timeout_set(&xs->stimeout, iha_timeout, pScb);
pScb              348 dev/ic/iha.c   	if ((pScb->SCB_Flags & SCSI_POLL) == 0)
pScb              351 dev/ic/iha.c   	iha_exec_scb(sc, pScb);
pScb              367 dev/ic/iha.c   	struct iha_scb *pScb;
pScb              406 dev/ic/iha.c   	for (i = 0, pScb = sc->HCS_Scb; i < IHA_MAX_SCB; i++, pScb++) {
pScb              407 dev/ic/iha.c   		pScb->SCB_TagId = i;
pScb              412 dev/ic/iha.c   		    BUS_DMA_NOWAIT | BUS_DMA_ALLOCNOW, &pScb->SCB_DataDma);
pScb              421 dev/ic/iha.c   				sizeof(pScb->SCB_SGList), 1,
pScb              422 dev/ic/iha.c   				sizeof(pScb->SCB_SGList), 0,
pScb              424 dev/ic/iha.c   				&pScb->SCB_SGDma);
pScb              431 dev/ic/iha.c   		TAILQ_INSERT_TAIL(&sc->HCS_FreeScb, pScb, SCB_ScbList);
pScb              519 dev/ic/iha.c   	struct iha_scb *pScb;
pScb              524 dev/ic/iha.c   	pScb = TAILQ_FIRST(&sc->HCS_FreeScb);
pScb              526 dev/ic/iha.c   	if (pScb != NULL) {
pScb              527 dev/ic/iha.c   		pScb->SCB_Status = STATUS_RENT;
pScb              528 dev/ic/iha.c   		TAILQ_REMOVE(&sc->HCS_FreeScb, pScb, SCB_ScbList);
pScb              533 dev/ic/iha.c   	return (pScb);
pScb              542 dev/ic/iha.c   iha_append_free_scb(sc, pScb)
pScb              544 dev/ic/iha.c   	struct iha_scb *pScb;
pScb              550 dev/ic/iha.c   	if (pScb == sc->HCS_ActScb)
pScb              553 dev/ic/iha.c   	pScb->SCB_Status = STATUS_QUEUED;
pScb              554 dev/ic/iha.c   	pScb->SCB_HaStat = HOST_OK;
pScb              555 dev/ic/iha.c   	pScb->SCB_TaStat = SCSI_OK;
pScb              557 dev/ic/iha.c   	pScb->SCB_NxtStat  = 0;
pScb              558 dev/ic/iha.c   	pScb->SCB_Flags	   = 0;
pScb              559 dev/ic/iha.c   	pScb->SCB_Target   = 0;
pScb              560 dev/ic/iha.c   	pScb->SCB_Lun	   = 0;
pScb              561 dev/ic/iha.c   	pScb->SCB_CDBLen   = 0;
pScb              562 dev/ic/iha.c   	pScb->SCB_Ident	   = 0;
pScb              563 dev/ic/iha.c   	pScb->SCB_TagMsg   = 0;
pScb              565 dev/ic/iha.c   	pScb->SCB_BufChars     = 0;
pScb              566 dev/ic/iha.c   	pScb->SCB_BufCharsLeft = 0;
pScb              568 dev/ic/iha.c   	pScb->SCB_Xs  = NULL;
pScb              569 dev/ic/iha.c   	pScb->SCB_Tcs = NULL;
pScb              571 dev/ic/iha.c   	bzero(pScb->SCB_CDB, sizeof(pScb->SCB_CDB));
pScb              577 dev/ic/iha.c   	TAILQ_INSERT_TAIL(&sc->HCS_FreeScb, pScb, SCB_ScbList);
pScb              583 dev/ic/iha.c   iha_append_pend_scb(sc, pScb)
pScb              585 dev/ic/iha.c   	struct iha_scb *pScb;
pScb              589 dev/ic/iha.c   	if (pScb == sc->HCS_ActScb)
pScb              592 dev/ic/iha.c   	pScb->SCB_Status = STATUS_QUEUED;
pScb              594 dev/ic/iha.c   	TAILQ_INSERT_TAIL(&sc->HCS_PendScb, pScb, SCB_ScbList);
pScb              598 dev/ic/iha.c   iha_push_pend_scb(sc, pScb)
pScb              600 dev/ic/iha.c   	struct iha_scb *pScb;
pScb              606 dev/ic/iha.c   	if (pScb == sc->HCS_ActScb)
pScb              609 dev/ic/iha.c   	pScb->SCB_Status = STATUS_QUEUED;
pScb              611 dev/ic/iha.c   	TAILQ_INSERT_HEAD(&sc->HCS_PendScb, pScb, SCB_ScbList);
pScb              626 dev/ic/iha.c   	struct iha_scb *pScb;
pScb              633 dev/ic/iha.c   		pScb = NULL;
pScb              636 dev/ic/iha.c   		TAILQ_FOREACH(pScb, &sc->HCS_PendScb, SCB_ScbList) {
pScb              637 dev/ic/iha.c   			if ((pScb->SCB_Flags & SCSI_RESET) != 0)
pScb              641 dev/ic/iha.c   			pTcs = pScb->SCB_Tcs;
pScb              643 dev/ic/iha.c   			if ((pScb->SCB_TagMsg) != 0) {
pScb              652 dev/ic/iha.c   			} else	if (pScb->SCB_CDB[0] == REQUEST_SENSE) {
pScb              674 dev/ic/iha.c   	return (pScb);
pScb              678 dev/ic/iha.c   iha_mark_busy_scb(pScb)
pScb              679 dev/ic/iha.c   	struct iha_scb *pScb;
pScb              685 dev/ic/iha.c   	pScb->SCB_Status = STATUS_BUSY;
pScb              687 dev/ic/iha.c   	if (pScb->SCB_TagMsg == 0)
pScb              688 dev/ic/iha.c   		pScb->SCB_Tcs->TCS_NonTagScb = pScb;
pScb              690 dev/ic/iha.c   		pScb->SCB_Tcs->TCS_TagCnt++;
pScb              696 dev/ic/iha.c   iha_append_done_scb(sc, pScb, hastat)
pScb              698 dev/ic/iha.c   	struct iha_scb *pScb;
pScb              706 dev/ic/iha.c   	if (pScb->SCB_Xs != NULL)
pScb              707 dev/ic/iha.c   		timeout_del(&pScb->SCB_Xs->stimeout);
pScb              709 dev/ic/iha.c   	if (pScb == sc->HCS_ActScb)
pScb              712 dev/ic/iha.c   	pTcs = pScb->SCB_Tcs;
pScb              714 dev/ic/iha.c   	if (pScb->SCB_TagMsg != 0) {
pScb              717 dev/ic/iha.c   	} else if (pTcs->TCS_NonTagScb == pScb)
pScb              720 dev/ic/iha.c   	pScb->SCB_Status = STATUS_QUEUED;
pScb              721 dev/ic/iha.c   	pScb->SCB_HaStat = hastat;
pScb              723 dev/ic/iha.c   	TAILQ_INSERT_TAIL(&sc->HCS_DoneScb, pScb, SCB_ScbList);
pScb              732 dev/ic/iha.c   	struct iha_scb *pScb;
pScb              737 dev/ic/iha.c   	pScb = TAILQ_FIRST(&sc->HCS_DoneScb);
pScb              739 dev/ic/iha.c   	if (pScb != NULL) {
pScb              740 dev/ic/iha.c   		pScb->SCB_Status = STATUS_RENT;
pScb              741 dev/ic/iha.c   		TAILQ_REMOVE(&sc->HCS_DoneScb, pScb, SCB_ScbList);
pScb              746 dev/ic/iha.c   	return (pScb);
pScb              760 dev/ic/iha.c   	struct iha_scb *pScb, *next;
pScb              767 dev/ic/iha.c   	for (pScb = TAILQ_FIRST(&sc->HCS_PendScb); pScb != NULL; pScb = next) {
pScb              768 dev/ic/iha.c   		next = TAILQ_NEXT(pScb, SCB_ScbList);
pScb              769 dev/ic/iha.c   		if (pScb->SCB_Xs == xs) {
pScb              770 dev/ic/iha.c   			TAILQ_REMOVE(&sc->HCS_PendScb, pScb, SCB_ScbList);
pScb              771 dev/ic/iha.c   			iha_append_done_scb(sc, pScb, hastat);
pScb              782 dev/ic/iha.c   	for (i = 0, pScb = sc->HCS_Scb; i < IHA_MAX_SCB; i++, pScb++)
pScb              783 dev/ic/iha.c   		switch (pScb->SCB_Status) {
pScb              786 dev/ic/iha.c   			if (pScb->SCB_Xs == xs) {
pScb              787 dev/ic/iha.c   				iha_append_done_scb(sc, pScb, hastat);
pScb              807 dev/ic/iha.c   	struct iha_scb *pScb = sc->HCS_ActScb;
pScb              809 dev/ic/iha.c   	if (pScb != NULL)
pScb              810 dev/ic/iha.c   		iha_append_done_scb(sc, pScb, HOST_BAD_PHAS);
pScb              822 dev/ic/iha.c   iha_push_sense_request(sc, pScb)
pScb              824 dev/ic/iha.c   	struct iha_scb *pScb;
pScb              830 dev/ic/iha.c   	if ((pScb->SCB_Flags & (SCSI_DATA_IN | SCSI_DATA_OUT)) != 0) {
pScb              831 dev/ic/iha.c   		bus_dmamap_sync(sc->sc_dmat, pScb->SCB_DataDma,
pScb              832 dev/ic/iha.c   			0, pScb->SCB_BufChars,
pScb              833 dev/ic/iha.c   			((pScb->SCB_Flags & SCSI_DATA_IN) ? 
pScb              835 dev/ic/iha.c   		bus_dmamap_unload(sc->sc_dmat, pScb->SCB_DataDma);
pScb              837 dev/ic/iha.c   		pScb->SCB_Flags &= ~(SCSI_DATA_IN | SCSI_DATA_OUT);
pScb              839 dev/ic/iha.c   	if ((pScb->SCB_Flags & FLAG_SG) != 0) {
pScb              840 dev/ic/iha.c   		bus_dmamap_sync(sc->sc_dmat, pScb->SCB_SGDma,
pScb              841 dev/ic/iha.c   			0, sizeof(pScb->SCB_SGList),
pScb              843 dev/ic/iha.c   		bus_dmamap_unload(sc->sc_dmat, pScb->SCB_SGDma);
pScb              845 dev/ic/iha.c   		pScb->SCB_Flags &= ~FLAG_SG;
pScb              848 dev/ic/iha.c   	pScb->SCB_BufChars     = sizeof(pScb->SCB_ScsiSenseData);
pScb              849 dev/ic/iha.c   	pScb->SCB_BufCharsLeft = sizeof(pScb->SCB_ScsiSenseData);
pScb              850 dev/ic/iha.c   	bzero(&pScb->SCB_ScsiSenseData, sizeof(pScb->SCB_ScsiSenseData)); 
pScb              852 dev/ic/iha.c   	error = bus_dmamap_load(sc->sc_dmat, pScb->SCB_DataDma,
pScb              853 dev/ic/iha.c   			&pScb->SCB_ScsiSenseData,
pScb              854 dev/ic/iha.c   			sizeof(pScb->SCB_ScsiSenseData), NULL,
pScb              855 dev/ic/iha.c   			(pScb->SCB_Flags & SCSI_NOSLEEP) ?
pScb              858 dev/ic/iha.c   		sc_print_addr(pScb->SCB_Xs->sc_link);
pScb              863 dev/ic/iha.c   	bus_dmamap_sync(sc->sc_dmat, pScb->SCB_DataDma, 
pScb              864 dev/ic/iha.c   		0, pScb->SCB_BufChars, BUS_DMASYNC_PREREAD);
pScb              867 dev/ic/iha.c   	pScb->SCB_Flags &= SCSI_POLL | SCSI_NOSLEEP;
pScb              868 dev/ic/iha.c   	pScb->SCB_Flags |= FLAG_RSENS | SCSI_DATA_IN;
pScb              870 dev/ic/iha.c   	error = iha_setup_sg_list(sc, pScb);
pScb              874 dev/ic/iha.c   	pScb->SCB_Ident &= ~MSG_IDENTIFY_DISCFLAG;
pScb              876 dev/ic/iha.c   	pScb->SCB_TagMsg = 0;
pScb              877 dev/ic/iha.c   	pScb->SCB_TaStat = SCSI_OK;
pScb              879 dev/ic/iha.c   	bzero(pScb->SCB_CDB, sizeof(pScb->SCB_CDB));
pScb              881 dev/ic/iha.c   	sensecmd = (struct scsi_sense *)pScb->SCB_CDB;
pScb              882 dev/ic/iha.c   	pScb->SCB_CDBLen = sizeof(*sensecmd);
pScb              884 dev/ic/iha.c   	sensecmd->byte2  = pScb->SCB_Xs->sc_link->lun << 5;
pScb              885 dev/ic/iha.c   	sensecmd->length = sizeof(pScb->SCB_ScsiSenseData);
pScb              887 dev/ic/iha.c   	if ((pScb->SCB_Flags & SCSI_POLL) == 0)
pScb              888 dev/ic/iha.c   		timeout_add(&pScb->SCB_Xs->stimeout,
pScb              889 dev/ic/iha.c   		    (pScb->SCB_Xs->timeout/1000) * hz);
pScb              891 dev/ic/iha.c   	iha_push_pend_scb(sc, pScb);
pScb              908 dev/ic/iha.c   	struct iha_scb *pScb;
pScb              914 dev/ic/iha.c   		while ((pScb = iha_pop_done_scb(sc)) != NULL) {
pScb              916 dev/ic/iha.c   			switch (pScb->SCB_TaStat) {
pScb              920 dev/ic/iha.c   				pScb->SCB_Tcs->TCS_Flags &= 
pScb              923 dev/ic/iha.c   				if ((pScb->SCB_Flags & FLAG_RSENS) != 0)
pScb              925 dev/ic/iha.c   					pScb->SCB_HaStat = HOST_BAD_PHAS;
pScb              926 dev/ic/iha.c   				else if (iha_push_sense_request(sc, pScb) != 0)
pScb              928 dev/ic/iha.c   					pScb->SCB_HaStat = HOST_BAD_PHAS;
pScb              935 dev/ic/iha.c   				if ((pScb->SCB_Flags & FLAG_RSENS) != 0)
pScb              941 dev/ic/iha.c   					pScb->SCB_TaStat = SCSI_CHECK;
pScb              945 dev/ic/iha.c   			iha_done_scb(sc, pScb);
pScb              970 dev/ic/iha.c   	struct iha_scb *pScb;
pScb             1013 dev/ic/iha.c   	if ((pScb = iha_find_pend_scb(sc)) == NULL)
pScb             1016 dev/ic/iha.c   	pTcs = pScb->SCB_Tcs;
pScb             1020 dev/ic/iha.c   	    (sc->sc_link.adapter_target << 4) | pScb->SCB_Target);
pScb             1022 dev/ic/iha.c   	if ((pScb->SCB_Flags & SCSI_RESET) == 0) {
pScb             1028 dev/ic/iha.c   			iha_select(sc, iot, ioh, pScb, SELATNSTOP);
pScb             1030 dev/ic/iha.c   		else if (pScb->SCB_TagMsg != 0)
pScb             1031 dev/ic/iha.c   			iha_select(sc, iot, ioh, pScb, SEL_ATN3);
pScb             1034 dev/ic/iha.c   			iha_select(sc, iot, ioh, pScb, SEL_ATN);
pScb             1037 dev/ic/iha.c   		iha_select(sc, iot, ioh, pScb, SELATNSTOP);
pScb             1038 dev/ic/iha.c   		pScb->SCB_NxtStat = 8;
pScb             1041 dev/ic/iha.c   	if ((pScb->SCB_Flags & SCSI_POLL) != 0) {
pScb             1042 dev/ic/iha.c   		for (i = pScb->SCB_Xs->timeout; i > 0; i--) {
pScb             1058 dev/ic/iha.c   			iha_timeout(pScb);
pScb             1060 dev/ic/iha.c   		else if ((pScb->SCB_CDB[0] == INQUIRY)
pScb             1061 dev/ic/iha.c   		    && (pScb->SCB_Lun == 0)
pScb             1062 dev/ic/iha.c   		    && (pScb->SCB_HaStat == HOST_OK)
pScb             1063 dev/ic/iha.c   		    && (pScb->SCB_TaStat == SCSI_OK))
pScb             1064 dev/ic/iha.c   			iha_print_info(sc, pScb->SCB_Target);
pScb             1079 dev/ic/iha.c   iha_data_over_run(pScb)
pScb             1080 dev/ic/iha.c   	struct iha_scb *pScb;
pScb             1082 dev/ic/iha.c   	switch (pScb->SCB_CDB[0]) {
pScb             1213 dev/ic/iha.c   	struct iha_scb *pScb = sc->HCS_ActScb;
pScb             1217 dev/ic/iha.c   	iha_mark_busy_scb(pScb);
pScb             1219 dev/ic/iha.c   	pTcs = pScb->SCB_Tcs;
pScb             1236 dev/ic/iha.c   		bus_space_write_1(iot, ioh, TUL_SFIFO,	pScb->SCB_Ident);
pScb             1238 dev/ic/iha.c   		if (pScb->SCB_TagMsg != 0) {
pScb             1240 dev/ic/iha.c   			    pScb->SCB_TagMsg);
pScb             1242 dev/ic/iha.c   			    pScb->SCB_TagId);
pScb             1274 dev/ic/iha.c   	struct iha_scb *pScb = sc->HCS_ActScb;
pScb             1276 dev/ic/iha.c   	iha_mark_busy_scb(pScb);
pScb             1278 dev/ic/iha.c   	bus_space_write_1(iot, ioh, TUL_SCONFIG0, pScb->SCB_Tcs->TCS_SConfig0);
pScb             1301 dev/ic/iha.c   	struct iha_scb *pScb = sc->HCS_ActScb;
pScb             1308 dev/ic/iha.c   			    pScb->SCB_CDB, pScb->SCB_CDBLen);
pScb             1318 dev/ic/iha.c   			pScb->SCB_NxtStat = 3;
pScb             1329 dev/ic/iha.c   			flags = pScb->SCB_Tcs->TCS_Flags;
pScb             1339 dev/ic/iha.c   			sc_print_addr(pScb->SCB_Xs->sc_link);
pScb             1360 dev/ic/iha.c   	struct iha_scb *pScb = sc->HCS_ActScb;
pScb             1362 dev/ic/iha.c   	if ((pScb->SCB_Flags & FLAG_DIR) == FLAG_DIR)
pScb             1366 dev/ic/iha.c   		if (pScb->SCB_BufCharsLeft == 0)
pScb             1371 dev/ic/iha.c   			if ((pScb->SCB_Flags & FLAG_DIR) != 0)
pScb             1372 dev/ic/iha.c   				pScb->SCB_HaStat = iha_data_over_run(pScb);
pScb             1378 dev/ic/iha.c   			pScb->SCB_NxtStat = 4;
pScb             1385 dev/ic/iha.c   				pScb->SCB_BufCharsLeft = 0;
pScb             1386 dev/ic/iha.c   				pScb->SCB_HaStat = HOST_SPERR;
pScb             1399 dev/ic/iha.c   			return (iha_xfer_data(pScb, iot, ioh, SCSI_DATA_IN));
pScb             1402 dev/ic/iha.c   			return (iha_xfer_data(pScb, iot, ioh, SCSI_DATA_OUT));
pScb             1423 dev/ic/iha.c   	struct iha_scb *pScb = sc->HCS_ActScb;
pScb             1439 dev/ic/iha.c   			pScb->SCB_HaStat = HOST_SPERR;
pScb             1451 dev/ic/iha.c   			period = pScb->SCB_Tcs->TCS_JS_Period; 
pScb             1477 dev/ic/iha.c   		pScb->SCB_BufCharsLeft = 0;
pScb             1483 dev/ic/iha.c   	xcnt = pScb->SCB_BufCharsLeft - cnt;	/* xcnt == bytes xferred */
pScb             1484 dev/ic/iha.c   	pScb->SCB_BufCharsLeft = cnt;		/* cnt  == bytes left    */
pScb             1486 dev/ic/iha.c   	bus_dmamap_sync(sc->sc_dmat, pScb->SCB_SGDma, 
pScb             1487 dev/ic/iha.c   		0, sizeof(pScb->SCB_SGList), BUS_DMASYNC_POSTWRITE);
pScb             1489 dev/ic/iha.c   	if ((pScb->SCB_Flags & FLAG_SG) != 0) {
pScb             1490 dev/ic/iha.c   		pSg = &pScb->SCB_SGList[pScb->SCB_SGIdx];
pScb             1491 dev/ic/iha.c   		for (; pScb->SCB_SGIdx < pScb->SCB_SGCount; pSg++, pScb->SCB_SGIdx++) {
pScb             1499 dev/ic/iha.c   				bus_dmamap_sync(sc->sc_dmat, pScb->SCB_SGDma, 
pScb             1500 dev/ic/iha.c   					0, sizeof(pScb->SCB_SGList),
pScb             1567 dev/ic/iha.c   	struct iha_scb *pScb;
pScb             1574 dev/ic/iha.c   		pScb = sc->HCS_ActScb;
pScb             1577 dev/ic/iha.c   		iha_append_done_scb(sc, pScb, HOST_OK);
pScb             1579 dev/ic/iha.c   		iha_reset_tcs(pScb->SCB_Tcs, sc->HCS_SConf1);
pScb             1581 dev/ic/iha.c   		tar = pScb->SCB_Target;
pScb             1582 dev/ic/iha.c   		for (i = 0, pScb = sc->HCS_Scb; i < IHA_MAX_SCB; i++, pScb++)
pScb             1583 dev/ic/iha.c   			if (pScb->SCB_Target == tar)
pScb             1584 dev/ic/iha.c   				switch (pScb->SCB_Status) {
pScb             1587 dev/ic/iha.c   					    pScb, HOST_DEV_RST);
pScb             1591 dev/ic/iha.c   					iha_push_pend_scb(sc, pScb);
pScb             1612 dev/ic/iha.c   iha_xfer_data(pScb, iot, ioh, direction)
pScb             1613 dev/ic/iha.c   	struct iha_scb *pScb;
pScb             1621 dev/ic/iha.c   	if ((pScb->SCB_Flags & FLAG_DIR) != direction)
pScb             1624 dev/ic/iha.c   	bus_space_write_4(iot, ioh, TUL_STCNT0, pScb->SCB_BufCharsLeft);
pScb             1626 dev/ic/iha.c   	if ((pScb->SCB_Flags & FLAG_SG) == 0) {
pScb             1627 dev/ic/iha.c   		xferaddr = pScb->SCB_DataDma->dm_segs[0].ds_addr
pScb             1628 dev/ic/iha.c   				+ (pScb->SCB_BufChars - pScb->SCB_BufCharsLeft);
pScb             1629 dev/ic/iha.c   		xferlen  = pScb->SCB_BufCharsLeft;
pScb             1633 dev/ic/iha.c   		xferaddr = pScb->SCB_SGDma->dm_segs[0].ds_addr
pScb             1634 dev/ic/iha.c   				+ (pScb->SCB_SGIdx * sizeof(struct iha_sg_element));
pScb             1635 dev/ic/iha.c   		xferlen  = (pScb->SCB_SGCount - pScb->SCB_SGIdx)
pScb             1647 dev/ic/iha.c   	pScb->SCB_NxtStat = 5;
pScb             1658 dev/ic/iha.c   	struct iha_scb *pScb = sc->HCS_ActScb;
pScb             1660 dev/ic/iha.c   	if ((pScb->SCB_Flags & FLAG_DIR) != 0)
pScb             1661 dev/ic/iha.c   		pScb->SCB_HaStat = HOST_DO_DU;
pScb             1664 dev/ic/iha.c   		if ((pScb->SCB_Tcs->TCS_JS_Period & PERIOD_WIDE_SCSI) != 0)
pScb             1690 dev/ic/iha.c   	struct iha_scb *pScb = sc->HCS_ActScb;
pScb             1692 dev/ic/iha.c   	if ((pScb->SCB_Flags & FLAG_DIR) != 0)
pScb             1693 dev/ic/iha.c   		pScb->SCB_HaStat = HOST_DO_DU;
pScb             1696 dev/ic/iha.c   		if ((pScb->SCB_Tcs->TCS_JS_Period & PERIOD_WIDE_SCSI) != 0)
pScb             1725 dev/ic/iha.c   	struct iha_scb *pScb;
pScb             1732 dev/ic/iha.c   	pScb = sc->HCS_ActScb;
pScb             1734 dev/ic/iha.c   	pScb->SCB_TaStat = bus_space_read_1(iot, ioh, TUL_SFIFO);
pScb             1763 dev/ic/iha.c   			if ((pScb->SCB_TaStat 
pScb             1775 dev/ic/iha.c   			if ((pScb->SCB_TaStat 
pScb             1798 dev/ic/iha.c   	struct iha_scb *pScb;
pScb             1804 dev/ic/iha.c   	pScb = sc->HCS_ActScb;
pScb             1806 dev/ic/iha.c   	if (pScb != NULL) {
pScb             1807 dev/ic/iha.c   		if (pScb->SCB_Status == STATUS_SELECT)
pScb             1809 dev/ic/iha.c   			iha_append_done_scb(sc, pScb, HOST_SEL_TOUT);
pScb             1812 dev/ic/iha.c   			iha_append_done_scb(sc, pScb, HOST_BAD_PHAS);
pScb             1821 dev/ic/iha.c   	struct iha_scb *pScb;
pScb             1829 dev/ic/iha.c   	for (i = 0, pScb = sc->HCS_Scb; i < IHA_MAX_SCB; i++, pScb++)
pScb             1830 dev/ic/iha.c   		switch (pScb->SCB_Status) {
pScb             1832 dev/ic/iha.c   			iha_append_done_scb(sc, pScb, HOST_SCSI_RST);
pScb             1836 dev/ic/iha.c   			iha_push_pend_scb(sc, pScb);
pScb             1858 dev/ic/iha.c   	struct iha_scb *pScb;
pScb             1880 dev/ic/iha.c   		pScb = pTcs->TCS_NonTagScb;
pScb             1920 dev/ic/iha.c   		pScb = &sc->HCS_Scb[tag];
pScb             1925 dev/ic/iha.c   	if ((pScb->SCB_Target != target)  
pScb             1926 dev/ic/iha.c   	    || (pScb->SCB_Lun != lun)
pScb             1927 dev/ic/iha.c   	    || (pScb->SCB_Status != STATUS_BUSY)) {
pScb             1933 dev/ic/iha.c   	sc->HCS_ActScb = pScb;
pScb             2350 dev/ic/iha.c   iha_select(sc, iot, ioh, pScb, select_type)
pScb             2354 dev/ic/iha.c   	struct iha_scb *pScb;
pScb             2361 dev/ic/iha.c   		bus_space_write_1(iot, ioh, TUL_SFIFO, pScb->SCB_Ident);
pScb             2363 dev/ic/iha.c   		    pScb->SCB_CDB, pScb->SCB_CDBLen);
pScb             2365 dev/ic/iha.c   		pScb->SCB_NxtStat = 2;
pScb             2369 dev/ic/iha.c   		pScb->SCB_NxtStat = 1;
pScb             2373 dev/ic/iha.c   		bus_space_write_1(iot, ioh, TUL_SFIFO, pScb->SCB_Ident);
pScb             2374 dev/ic/iha.c   		bus_space_write_1(iot, ioh, TUL_SFIFO, pScb->SCB_TagMsg);
pScb             2375 dev/ic/iha.c   		bus_space_write_1(iot, ioh, TUL_SFIFO, pScb->SCB_TagId);
pScb             2377 dev/ic/iha.c   		bus_space_write_multi_1(iot, ioh, TUL_SFIFO, pScb->SCB_CDB,
pScb             2378 dev/ic/iha.c   		    pScb->SCB_CDBLen);
pScb             2380 dev/ic/iha.c   		pScb->SCB_NxtStat = 2;
pScb             2385 dev/ic/iha.c   		sc_print_addr(pScb->SCB_Xs->sc_link);
pScb             2393 dev/ic/iha.c   	TAILQ_REMOVE(&sc->HCS_PendScb, pScb, SCB_ScbList);
pScb             2396 dev/ic/iha.c   	pScb->SCB_Status = STATUS_SELECT;
pScb             2398 dev/ic/iha.c   	sc->HCS_ActScb = pScb;
pScb             2479 dev/ic/iha.c   iha_done_scb(sc, pScb)
pScb             2481 dev/ic/iha.c   	struct iha_scb *pScb;
pScb             2484 dev/ic/iha.c   	struct scsi_xfer *xs = pScb->SCB_Xs;
pScb             2489 dev/ic/iha.c   		xs->status = pScb->SCB_TaStat;
pScb             2491 dev/ic/iha.c   		if ((pScb->SCB_Flags & (SCSI_DATA_IN | SCSI_DATA_OUT)) != 0) {
pScb             2492 dev/ic/iha.c   			bus_dmamap_sync(sc->sc_dmat, pScb->SCB_DataDma,
pScb             2493 dev/ic/iha.c   				0, pScb->SCB_BufChars,
pScb             2494 dev/ic/iha.c   				((pScb->SCB_Flags & SCSI_DATA_IN) ? 
pScb             2496 dev/ic/iha.c   			bus_dmamap_unload(sc->sc_dmat, pScb->SCB_DataDma);
pScb             2498 dev/ic/iha.c   		if ((pScb->SCB_Flags & FLAG_SG) != 0) {
pScb             2499 dev/ic/iha.c   			bus_dmamap_sync(sc->sc_dmat, pScb->SCB_SGDma,
pScb             2500 dev/ic/iha.c   				0, sizeof(pScb->SCB_SGList),
pScb             2502 dev/ic/iha.c   			bus_dmamap_unload(sc->sc_dmat, pScb->SCB_SGDma);
pScb             2505 dev/ic/iha.c   		switch (pScb->SCB_HaStat) {
pScb             2507 dev/ic/iha.c   			switch (pScb->SCB_TaStat) {
pScb             2512 dev/ic/iha.c   				xs->resid = pScb->SCB_BufCharsLeft;
pScb             2525 dev/ic/iha.c   				s1 = &pScb->SCB_ScsiSenseData;
pScb             2568 dev/ic/iha.c   	iha_append_free_scb(sc, pScb);
pScb             2575 dev/ic/iha.c   	struct iha_scb *pScb = (struct iha_scb *)arg;
pScb             2576 dev/ic/iha.c   	struct scsi_xfer *xs = pScb->SCB_Xs;
pScb             2586 dev/ic/iha.c   iha_exec_scb(sc, pScb)
pScb             2588 dev/ic/iha.c   	struct iha_scb *pScb;
pScb             2596 dev/ic/iha.c   	if (((pScb->SCB_Flags & SCSI_RESET) != 0)
pScb             2597 dev/ic/iha.c   	    || (pScb->SCB_CDB[0] == REQUEST_SENSE))
pScb             2598 dev/ic/iha.c   		iha_push_pend_scb(sc, pScb);   /* Insert SCB at head of Pend */
pScb             2600 dev/ic/iha.c   		iha_append_pend_scb(sc, pScb); /* Append SCB to tail of Pend */