/* We have ended up out of phase somehow. Reset the host controller and throw all our toys out of the pram. Let the midlayer clean up  */
static int int_initio_bad_seq(struct initio_host *host)
/* We have ended up out of phase somehow. Reset the host controller and throw all our toys out of the pram. Let the midlayer clean up  */
static int int_initio_bad_seq(struct initio_host *host)
{
	struct scsi_ctrl_blk *scb;
	int i;
	initio_reset_scsi(host, 10);
	while ((scb = initio_pop_busy_scb(host)) != NULL) {
		scb->hastat = HOST_BAD_PHAS;
		initio_append_done_scb(host, scb);
	}
	for (i = 0; i < host->max_tar; i++)
		host->targets[i].flags &= ~(TCF_SYNC_DONE | TCF_WDTR_DONE);
	return -1;
}