/* returns 0, with id set if drive is detected -1, if drive detection failed  */
static int pt_probe(struct pt_unit *tape)
/* returns 0, with id set if drive is detected -1, if drive detection failed  */
static int pt_probe(struct pt_unit *tape)
{
	if (tape->drive == -1) {
		for (tape->drive = 0; tape->drive <= 1; tape->drive++)
			if (!pt_reset(tape))
				return pt_identify(tape);
	} else {
		if (!pt_reset(tape))
			return pt_identify(tape);
	}
	return -1;
}