Bug 28494

Summary: ugen usable only from "attach" or by usbd trickery; timing issue?
Product: Base System Reporter: Brandon S. Allbery KF8NH <allbery>
Component: kernAssignee: freebsd-bugs (Nobody) <bugs>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: 4.3-RELEASE   
Hardware: Any   
OS: Any   

Description Brandon S. Allbery KF8NH 2001-06-28 23:40:01 UTC
	Establishing communication with a Handspring Visor via USB is not
	reliable.  The expected method (start hotsync program, initiate
	hotsync on Visor) fails most of the time; the following sequence,
	however, works most of the time:

	1. kill usbd
	2. run hotsync program
	3. initiate hotsync on Visor
	4. wait 5-10 seconds
	5. restart usbd

	The failure mode is that the Visor is detected by usbd and the ugen
	driver is associated with it, but there is no data transferred and
	when the Visor times out the ugen read fails with an I/O error.

	Reportedly invoking the hotsync program via an "attach" in usbd.conf
	works as expected.  This is somewhat suboptimal when performing
	relatively rare operations such as restoring a backup.  It also
	suggests that there may be a timing issue involved, where the connect
	will only succeed if it takes place sufficiently soon after the
	ugen driver is associated with the Visor.

	Other USB devices seem to work as expected (e.g. USB keyboard and mouse)
	but this is expected because the devices are activated (if needed) via
	"attach" statements.  ugen should be more general.

How-To-Repeat: 	- Obtain a Handspring Visor or (probably) one of the USB Palm devices.
	- Install ports/palm/coldsync (pilot-link doesn't know how to use ugen)
	  and configure it appropriately.
	- Attempt to connect to the Visor:

	    vpn45:4996 Z$ coldsync -ms
	    Please press the HotSync button.
	      (it just sits here until the Visor times out the connect)
	    usb read: Input/output error
	    slp_read: read: Input/output error
	    Error during cmp_read: (1) Error in system call or library function.
	    Error: Can't connect to Palm.
Comment 1 Nick Hibma freebsd_committer freebsd_triage 2001-06-30 14:44:08 UTC
Responsible Changed
From-To: freebsd-bugs->n_hibma

USB is my baby.
Comment 2 Mark Linimon freebsd_committer freebsd_triage 2004-08-27 23:38:34 UTC
State Changed
From-To: open->feedback

Is this still a problem with recent versions of FreeBSD? 


Comment 3 Mark Linimon freebsd_committer freebsd_triage 2004-08-27 23:38:34 UTC
Responsible Changed
From-To: n_hibma->freebsd-bugs

With permission of assignee, reset assignment.
Comment 4 Mark Linimon freebsd_committer freebsd_triage 2004-09-02 02:32:46 UTC
State Changed
From-To: feedback->closed

Submitter's email address bounces.