From owner-freebsd-arm@freebsd.org Fri Dec 22 04:17:00 2017 Return-Path: Delivered-To: freebsd-arm@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8F73BEA44B0 for ; Fri, 22 Dec 2017 04:17:00 +0000 (UTC) (envelope-from fbsd@www.zefox.net) Received: from www.zefox.net (www.zefox.net [69.239.235.194]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "www.zefox.org", Issuer "www.zefox.org" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 5909766747 for ; Fri, 22 Dec 2017 04:16:59 +0000 (UTC) (envelope-from fbsd@www.zefox.net) Received: from www.zefox.net (localhost [127.0.0.1]) by www.zefox.net (8.15.2/8.15.2) with ESMTPS id vBM4GwxN022105 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Thu, 21 Dec 2017 20:16:59 -0800 (PST) (envelope-from fbsd@www.zefox.net) Received: (from fbsd@localhost) by www.zefox.net (8.15.2/8.15.2/Submit) id vBM4Gvow022104; Thu, 21 Dec 2017 20:16:57 -0800 (PST) (envelope-from fbsd) Date: Thu, 21 Dec 2017 20:16:57 -0800 From: bob prohaska To: Hans Petter Selasky Cc: "Jukka A. Ukkonen" , freebsd-arm@freebsd.org, bob prohaska Subject: Re: Disapearing pl2303 usb serial adapter on rpi2 Message-ID: <20171222041657.GA21799@www.zefox.net> References: <20171220170244.GA16029@www.zefox.net> <20171221161120.GA20324@www.zefox.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.24 (2015-08-30) X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 22 Dec 2017 04:17:00 -0000 Hi Hans, On Thu, Dec 21, 2017 at 05:29:05PM +0100, Hans Petter Selasky wrote: > On 12/21/17 17:11, bob prohaska wrote: > > On Wed, Dec 20, 2017 at 09:13:12PM +0200, Jukka A. Ukkonen wrote: > >> On 12/20/17 19:02, bob prohaska wrote: > >>> On an RPI2 at r326951 a pl2303 usb-serial adapter seems to be locking up > >>> after a few hours. In the past this could be rectified by using usbconfig > >>> to power cycle it, but now even that doesn't work. Apart from the serial > >>> device file vanishing from /dev there seems to be no other ill effect. > >>> Rebooting fixes the problem for minutes to hours. > >>> > >>> There is no explict error report in dmesg, but when usbconfig tries to power > >>> cycle the adapter the console reports: > >>> > >>> uhub_explore_handle_re_enumerate: Could not unconfigure device (ignored) > >>> usbd_req_re_enumerate: addr=9, set address failed! (USB_ERR_IOERROR, ignored) > >>> usbd_setup_device_desc: getting device descriptor at addr 9 failed, USB_ERR_IOERROR > >>> usbd_req_re_enumerate: addr=9, set address failed! (USB_ERR_STALLED, ignored) > >>> usbd_setup_device_desc: getting device descriptor at addr 9 failed, USB_ERR_STALLED > >>> > >>> > >>> A second RPI2 running r326747 is subject to the same lockup, but the adapter > >>> can be unstuck using usbconfig to power cycle it. > > Hi, > > You might want to run "usbdump" with the appropriate arguments to > capture all USB traffic during such a cycle. > I'll try it next time the pl2303 locks up. > Further, you might want to only enable USB HUB debug messages to figure > out why the USB stack thinks the device is going away: > > sysctl hw.usb.uhub.debug=17 > I've turned that on, and the console is spitting out a lot of output. It'll make quite a haystack in which to find a needle 8-) Any hint what to look for? > From what I know, the RPI series of cards have a small external USB HUB > on the board. All USB traffic goes through this High-Speed HUB. When you > are using LOW and FULL speed, all traffic is translated from High-Speed > USB into LOW and FULL speed USB. > Would changing the baudrate have any effect? A console certainly needn't run at 115200 baud. For present purposes 9600 or less is plenty. > I don't rule out some kind of "bug" in this external piece of hardware. > Many have said pl2303 devices are unreliable, but they seem well-behaved on a Mac and on an RPI3 running Raspbian. Whatever is wrong, it seems not deterministic, but cumulative, with a touch of random. > You might also try to set (my wild guess): > sysctl hw.usb.no_cs_fail=1 > Not sure I understand what this does; is there a description somewhere? > Like already mentioned in this thread, the micro USB power input > connecter on the RPI is not supposed to handle more than 500mA, > regardless of how strong your power supply is. Then you need to subtract > the mA's used by the CPU and other chips like ethernet. I wouldn't be > surprised if ethernet functionality alone required 150mA at +5V. > Some time ago I put a voltmeter on the Pi and the voltage stayed over five volts, but of course short spikes weren't visible in such a test. On average, however, the connector seemed to handle the load. > USB LOW/HIGH/FULL speed all use some kind of pull-UP or pull-DOWN on the > data lines. This resistors are typically wired to +5V or GND (0V) on the > board and transients in the voltage may be seen as a disconnect by the > host or device. > > Regarding the DTB's. Make sure the USB data pins are correctly > configured with regards to pullup/pulldown and not used as GPIOs. > Wouldn't that sort of error lead to things not working at all? The problems observed develop after hours or sometimes days. Many thanks for your guidance! bob prohaska