usb/179505: Kernel detaches Arduino Leonardo (and similar) board umodem after the arduino boots

Mike Meyer mwm at mired.org
Fri Jun 28 17:20:02 UTC 2013


The following reply was made to PR usb/179505; it has been noted by GNATS.

From: Mike Meyer <mwm at mired.org>
To: Hans Petter Selasky <hps at bitfrost.no>
Cc: freebsd-gnats-submit at freebsd.org
Subject: Re: usb/179505: Kernel detaches Arduino Leonardo (and similar) board
 umodem after the arduino boots
Date: Fri, 28 Jun 2013 12:15:40 -0500

 On Fri, Jun 28, 2013 at 4:09 AM, Hans Petter Selasky <hps at bitfrost.no> wrote:
 > Hi Mike,
 >
 > I was not able to reproduce this issue yet. From the logs you sent I see:
 >
 > That the INTERRUPT endpoint is stalling:
 >
 > DONE-INTR-EP=00000084,SPD=FULL,NFR=1,SLEN=0,IVAL=1,ERR=STALLED
 >
 > Then the USB stack will try to clear the stall. And the clearing of stall
 > also fails:
 >
 > DONE-CTRL-EP=00000000,SPD=FULL,NFR=1,SLEN=0,IVAL=0,ERR=STALLED
 >
 > These messages are mandatory to implement per usb.org specifications. And I
 > know Linux and Windows does not use these very much. In other words I looks
 > like the Arduino could need some more USB certification!
 >
 > After a given amount of stalling, the FreeBSD USB stack will reset the
 > device, which gives you the re-enumeration you are observing.
 >
 > This case can be prevented by setting:
 >
 > sysctl hw.usb.no_cs_fail=1
 >
 > Then try again!
 >
 > --HPS
 
 Hi Hans,
 
 Thanks for looking into this.
 
 Unfortunately, it didn't solve the problem for me. The leonardo still
 creates the umodem devices, then detaches them as the IPL finish.


More information about the freebsd-usb mailing list