From owner-freebsd-usb@FreeBSD.ORG Sun Oct 20 04:57:30 2013 Return-Path: Delivered-To: freebsd-usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 2163734B for ; Sun, 20 Oct 2013 04:57:30 +0000 (UTC) (envelope-from taner76@gmail.com) Received: from mail-lb0-x229.google.com (mail-lb0-x229.google.com [IPv6:2a00:1450:4010:c04::229]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 8AACD2536 for ; Sun, 20 Oct 2013 04:57:29 +0000 (UTC) Received: by mail-lb0-f169.google.com with SMTP id o14so375003lbi.14 for ; Sat, 19 Oct 2013 21:57:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=uucozJIE7DU4IRXkjIXpVmKMISIygT+vBkXghHkt2LY=; b=kDD2wqVLIqeNL42x/H69EPtn4vOf3I2rvwh7BbEdGwZmzBbHNImbQTggIcUv3FhdfN gyxKd682Bxh6FlFrfm0pbwAtAAqotkO4O+crPsMZbjlfzXP8FYTf4j495yZv8hDbRzFP /nWRf1V4ZdlUAqNyHdvRx4vwOL4FyrNJamspEyEde7i++r/fZqVhBkX5J+izUh7hJgHE SoLWfbLM9s8UmvWDmS81ckolWZpBmVV2rdtkTnORrN8GN1XqiAp9EofGctSylpz4nr2U RpnOnf9JT0kJVmR+L0gWoqjqWA6A+kYxgghiHfLfFR08a6A5Zm5rQQqmaLiLd28t0MVE ujTQ== MIME-Version: 1.0 X-Received: by 10.112.167.3 with SMTP id zk3mr8128532lbb.23.1382245046921; Sat, 19 Oct 2013 21:57:26 -0700 (PDT) Received: by 10.112.99.1 with HTTP; Sat, 19 Oct 2013 21:57:26 -0700 (PDT) In-Reply-To: <526229D6.6040605@bitfrost.no> References: <52622842.6030105@bitfrost.no> <526229D6.6040605@bitfrost.no> Date: Sun, 20 Oct 2013 07:57:26 +0300 Message-ID: Subject: Re: Scratchy playback issue with USB CLASS2 audio device From: Taner To: Hans Petter Selasky Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.14 Cc: freebsd-usb@freebsd.org X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Oct 2013 04:57:30 -0000 Hi, I modified uaudio.c according to your patch but it didn't make any difference. I'm running 10.0-stable. It doesn't matter with vchan adaptive/fixed or bitperfect settings. Behavior is same. I don't know how to read usbdump output thus I'm mailing 5 sec. playback output file to you (1.5MB zipped). It captured while vchan at 16bit/48Khz. I keen on any other suggestion from you. I don't know why but sound quality is obviously better in FreeBSD despite this playback issue still remains. Regards, Taner On Sat, Oct 19, 2013 at 9:42 AM, Hans Petter Selasky wrote: > On 10/19/13 08:35, Hans Petter Selasky wrote: > >> On 10/19/13 07:46, Taner wrote: >> >>> uaudio_chan_play_sync_**callback: Value = 0x0005fff8 >>> uaudio_chan_play_sync_**callback: Comparing 47998 < 48000 >>> uaudio_chan_play_sync_**callback: Value = 0x0005fff6 >>> uaudio_chan_play_sync_**callback: Comparing 47998 < 48000 >>> >> >> Hi, >> >> The normal for adaptive rates is that this value should tilt just above >> or below the 48000 or whatever is there. Else something is wrong. >> >> Did you try to record while playing? >> >> Also, are you running -stable? >> >> Could also check the amount of samples sent by using >> "usbdump -i usbusX -f Y -s 65536 -vvv" >> >> --HPS >> > > Hi, > > Does this patch make any difference? > > === dev/sound/usb/uaudio.c > ==============================**==============================**====== > --- dev/sound/usb/uaudio.c (revision 256754) > +++ dev/sound/usb/uaudio.c (local) > @@ -2070,7 +2070,7 @@ > chn_intr(ch->pcm_ch); > > /* start SYNC transfer, if any */ > - if ((ch->last_sync_time++ & 7) == 0) > + if ((ch->last_sync_time++ & 3) == 0) > usbd_transfer_start(ch->xfer[**UAUDIO_NCHANBUFS]); > > case USB_ST_SETUP: > > --HPS > From owner-freebsd-usb@FreeBSD.ORG Sun Oct 20 11:58:50 2013 Return-Path: Delivered-To: freebsd-usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 37CCBAFA for ; Sun, 20 Oct 2013 11:58:50 +0000 (UTC) (envelope-from no-reply@dropboxmail.com) Received: from sjc-mailman6.dropboxmail.com (sjc-mailman6.sjc.dropbox.com [199.47.219.164]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 1794E24A7 for ; Sun, 20 Oct 2013 11:58:49 +0000 (UTC) Received: from sjd-rb14-18d.dropboxmail.com (sjd-rb14-18d.sjc.dropbox.com [108.160.166.224]) by sjc-mailman6.dropboxmail.com (Postfix) with ESMTP id 29806B462CE for ; Sun, 20 Oct 2013 11:58:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=dropboxmail.com; s=m1; t=1382270323; bh=3ol2Vk3BpIm60+Yox526HoHkrStap6aem2Ae78GgXZo=; h=Content-Type:MIME-Version:From:To:Subject:Date:Reply-To: Message-Id; b=uBc+v6ozTwyjXgNrs/IHTUGLKP0Y9htYR9cYm9AX27nV1gVYKF6zTQ08qPdQALdqZ DVITYsgJi/u9ekJW0rGEoHH2GQt87ijUfxoefnc3LH6aRfXXBCJaRCJCqcY4PsNQKK blrvuRYA9jE4XXDBDMBmh1ExqSnEtKKhL7YFPEF8= Received: from snt-re2-2d.sjc.dropbox.com (snt-re2-2d.sjc.dropbox.com [108.160.163.20]) by sjd-rb14-18d.dropboxmail.com (Postfix) with ESMTP id 273A96018B058 for ; Sun, 20 Oct 2013 11:58:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=dropboxmail.com; s=m1; t=1382270317; bh=3ol2Vk3BpIm60+Yox526HoHkrStap6aem2Ae78GgXZo=; h=From:To:Subject:Date:Reply-To; b=q4kGIU43BncCFW+Wrct36Kxp5w/AsMYmXiwqB8HGpHbPgdZbfaoFbMogOgnk1sQhr x31vuq2yyl++PRuBIlSWwheK3MwlAx0Pcv2bTZ9Soc/3kPMpF/NTo2u0K1wHspe9cA co803i9NNJP74YrU8STvIldKWFeatD23IGJhJ+Aw= Received: from snt-re2-2d.sjc.dropbox.com (localhost [127.0.0.1]) by snt-re2-2d.sjc.dropbox.com (Postfix) with ESMTP id 16C0A40565B37 for ; Sun, 20 Oct 2013 11:58:37 +0000 (UTC) MIME-Version: 1.0 From: Dropbox To: freebsd-usb@freebsd.org Subject: =?utf-8?q?Tan_Bing_Song_invited_you_to_check_out_Dropbox?= Date: Sun, 20 Oct 2013 11:58:37 +0000 Message-Id: <20131020115837.16C0A40565B37@snt-re2-2d.sjc.dropbox.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.14 X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: bstono@outlook.com List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Oct 2013 11:58:50 -0000 Hi there, Tan Bing Song wants you to try Dropbox! Dropbox lets you bring all your pho= tos, docs and videos with you anywhere and share them easily. Get started here. https://www.dropbox.com/l/LYJT6KMQ3OKlfNYwr7pyLn1?text=3D1 Thanks! - The Dropbox Team ____________________________________________________ To stop receiving invites from Dropbox, please go to https://www.dropbox.co= m/l/C6qkbv69gXB7Vg4THkrCyv1?text=3D1 Dropbox, Inc., PO Box 77767, San Francisco, CA 94107 From owner-freebsd-usb@FreeBSD.ORG Sun Oct 20 12:07:28 2013 Return-Path: Delivered-To: freebsd-usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 1AC6ED97 for ; Sun, 20 Oct 2013 12:07:28 +0000 (UTC) (envelope-from no-reply@dropboxmail.com) Received: from sjc-mailman5.dropboxmail.com (sjc-mailman5.sjc.dropbox.com [199.47.218.164]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id EF52E2536 for ; Sun, 20 Oct 2013 12:07:27 +0000 (UTC) Received: from sjd-rb12-12d.dropboxmail.com (sjd-rb12-12d.sjc.dropbox.com [108.160.166.120]) by sjc-mailman5.dropboxmail.com (Postfix) with ESMTP id 42756343F4B for ; Sun, 20 Oct 2013 11:58:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=dropboxmail.com; s=m1; t=1382270301; bh=m3y5q1//YwFLXG2k7jGyep1K1FkzW1fVmcq7+y8npHk=; h=Content-Type:MIME-Version:From:To:Subject:Date:Reply-To: Message-Id; b=dqzJ8UuPUZhvMhU2hdG7tcHtGp9inwdSOZWeN8ivvxFHNlwROn1IahmJgyOwUzt21 mjXYm67k+zXKHux5COmGM6eZGRx8UfxrYO5BjrQfVRCb4CQ1epwcp7tgcxRPbDrequ VSAtUeD7hhcCTmrLyD6fjvC+foaJ7izHCWh38/FA= Received: from snt-re2-2d.sjc.dropbox.com (snt-re2-2d.sjc.dropbox.com [108.160.163.20]) by sjd-rb12-12d.dropboxmail.com (Postfix) with ESMTP id DA87C20199B54 for ; Sun, 20 Oct 2013 11:58:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=dropboxmail.com; s=m1; t=1382270291; bh=m3y5q1//YwFLXG2k7jGyep1K1FkzW1fVmcq7+y8npHk=; h=From:To:Subject:Date:Reply-To; b=D/sWUgYr02/DPPYpNUIWYA9lc6MaKfCs5kUAP1YgmgHErWnvogXQu5m7/wF8a/GTM O8PftacfRVC68mGlXrFVf9lGyzUDqrEnv8JdW+zXLhq2GcYOR9zEVbcvFxsbfayP1y Kto9qTAa+0AfpL6DLWIwNMeYMFivnXMJvlUOyZlo= Received: from snt-re2-2d.sjc.dropbox.com (localhost [127.0.0.1]) by snt-re2-2d.sjc.dropbox.com (Postfix) with ESMTP id 8AB5040565B10 for ; Sun, 20 Oct 2013 11:58:11 +0000 (UTC) MIME-Version: 1.0 From: Tan Bing Song via Dropbox To: freebsd-usb@freebsd.org Subject: =?utf-8?q?Tan_Bing_Song_invited_you_to_check_out_Dropbox?= Date: Sun, 20 Oct 2013 11:58:11 +0000 Message-Id: <20131020115811.8AB5040565B10@snt-re2-2d.sjc.dropbox.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.14 X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: bstono@outlook.com List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Oct 2013 12:07:28 -0000 Hi there, Tan Bing Song wants you to try Dropbox! Dropbox lets you bring all your pho= tos, docs and videos with you anywhere and share them easily. Plus, you'll both get a special gift from Dropbox if you get started throug= h this email. Accept invite https://www.dropbox.com/l/rUpGWC3YSe6qF6qlxzVCWA?text=3D1 Thanks! - The Dropbox Team ____________________________________________________ To stop receiving invites from Dropbox, please go to https://www.dropbox.co= m/l/rnNr519Dw1rEZCkZgmTy9t?text=3D1 Dropbox, Inc., PO Box 77767, San Francisco, CA 94107 From owner-freebsd-usb@FreeBSD.ORG Sun Oct 20 12:07:25 2013 Return-Path: Delivered-To: freebsd-usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 96393D96 for ; Sun, 20 Oct 2013 12:07:25 +0000 (UTC) (envelope-from no-reply@dropboxmail.com) Received: from sjc-mailman2.dropboxmail.com (sjc-mailman2.sjc.dropbox.com [199.47.219.144]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 76B0B2535 for ; Sun, 20 Oct 2013 12:07:25 +0000 (UTC) Received: from sjd-rc1-6h.dropboxmail.com (sjd-rc1-6h.sjc.dropbox.com [108.160.165.252]) by sjc-mailman2.dropboxmail.com (Postfix) with ESMTP id 330AA1E4101 for ; Sun, 20 Oct 2013 11:58:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=dropboxmail.com; s=m1; t=1382270323; bh=27PomtEPM6lMYiB24O1JXrchYE66TMHcmeqn9/lWIb4=; h=Content-Type:MIME-Version:From:To:Subject:Date:Reply-To: Message-Id; b=tYZGjUyGM51yZ7hoU2cIvEQ+b7joRFi+W+FbRTlAEaGlD51prs29W9b9Maw7prDEV l6GWKQBP8+JjC7GcnnyEUdMbxJY1K8Mnwgtf014UAnoGKCHRKtNbXiIE2Amfm65xUa 6mk3iyd6ON25md2LPsyktLa59k9oqkY2IAc5gDgc= Received: from snt-re2-2d.sjc.dropbox.com (snt-re2-2d.sjc.dropbox.com [108.160.163.20]) by sjd-rc1-6h.dropboxmail.com (Postfix) with ESMTP id AAE481957B8 for ; Sun, 20 Oct 2013 11:58:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=dropboxmail.com; s=m1; t=1382270317; bh=27PomtEPM6lMYiB24O1JXrchYE66TMHcmeqn9/lWIb4=; h=From:To:Subject:Date:Reply-To; b=UCBjqPa04H5oo/U5IIIt7bX253GWdMDO/glezEK8NxWBHWF6PRAvBmiIStxqfvaNV xP2O2DNOMpAu/aySYszB5sybdo0TC4wsKhrgpz/PqkMskb1osdn0rhgAE0W5ocTMlk uLIuJSHJNuBVWo3/gwdc/HC4z2lUpgOG1B121EIA= Received: from snt-re2-2d.sjc.dropbox.com (localhost [127.0.0.1]) by snt-re2-2d.sjc.dropbox.com (Postfix) with ESMTP id 8BB9340565B38 for ; Sun, 20 Oct 2013 11:58:37 +0000 (UTC) MIME-Version: 1.0 From: Dropbox To: freebsd-usb@freebsd.org Subject: =?utf-8?q?Tan_Bing_Song_invited_you_to_check_out_Dropbox?= Date: Sun, 20 Oct 2013 11:58:37 +0000 Message-Id: <20131020115837.8BB9340565B38@snt-re2-2d.sjc.dropbox.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.14 X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: bstono@outlook.com List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Oct 2013 12:07:25 -0000 Hi there, Tan Bing Song wants you to try Dropbox! Dropbox lets you bring all your pho= tos, docs and videos with you anywhere and share them easily. Get started here. https://www.dropbox.com/l/oaI3SHV65mY1UliOYqNzYr1?text=3D1 Thanks! - The Dropbox Team ____________________________________________________ To stop receiving invites from Dropbox, please go to https://www.dropbox.co= m/l/1tpXj70Ui6HNzPnafEPDLz1?text=3D1 Dropbox, Inc., PO Box 77767, San Francisco, CA 94107 From owner-freebsd-usb@FreeBSD.ORG Mon Oct 21 11:06:56 2013 Return-Path: Delivered-To: freebsd-usb@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id C2CC4A84 for ; Mon, 21 Oct 2013 11:06:56 +0000 (UTC) (envelope-from owner-bugmaster@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id AF3052E32 for ; Mon, 21 Oct 2013 11:06:56 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.7/8.14.7) with ESMTP id r9LB6uWx018816 for ; Mon, 21 Oct 2013 11:06:56 GMT (envelope-from owner-bugmaster@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.7/8.14.7/Submit) id r9LB6u8K018814 for freebsd-usb@FreeBSD.org; Mon, 21 Oct 2013 11:06:56 GMT (envelope-from owner-bugmaster@FreeBSD.org) Date: Mon, 21 Oct 2013 11:06:56 GMT Message-Id: <201310211106.r9LB6u8K018814@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: gnats set sender to owner-bugmaster@FreeBSD.org using -f From: FreeBSD bugmaster To: freebsd-usb@FreeBSD.org Subject: Current problem reports assigned to freebsd-usb@FreeBSD.org X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Oct 2013 11:06:56 -0000 Note: to view an individual PR, use: http://www.freebsd.org/cgi/query-pr.cgi?pr=(number). The following is a listing of current problems submitted by FreeBSD users. These represent problem reports covering all versions including experimental development code and obsolete releases. S Tracker Resp. Description -------------------------------------------------------------------------------- o usb/183090 usb Logitech USB microphone failure o usb/182936 usb [patch] [usbdevs] if_run update for Beklin F6D4050v2 o usb/182820 usb usbusX if destroy page fault panic o usb/182505 usb patch to update usb driver if_urtwn.c for new device o usb/182361 usb [panic] Suspend when using USB disc as root causes ker o usb/181987 usb USB isochronous transfer of the USB driver (Mentor Gra o usb/181425 usb USB keyboard with full N-key rollover not working o usb/181159 usb Problem attaching USB device o usb/180837 usb [scsi_da] [patch] Kingston DT 101 G2 usb stick quirk ( o usb/180726 usb XHCI umass support breaks between r248085 and r252560 o usb/180657 usb [PATCH] Filco Majestouch 2 keyboard recognized as keyb o usb/180617 usb New quirk (another member of Western Digital My Passpo o usb/180254 usb FreeBSD 9.1 on 384GB memory server o usb/180119 usb FreeBSD 9.1 umass driver does not correctly handle Pan o usb/179505 usb Kernel detaches Arduino Leonardo (and similar) board u o usb/179342 usb Freebsd 10.0-current USB 3.0 not working (xhci_do_coma o usb/179109 usb After detach USB Flash a keyboard does not work. o usb/179107 usb [usb] After detach USB Flash a keyboard does not work. o usb/178773 usb [usbdevs] [patch] Huawei E303 USB 3G modem support o usb/178771 usb [usbdevs] [patch] Western Digital My Passport HD o usb/178722 usb FreeBSD 9.1-STABLE r250561 breaks support for webcam L o usb/178267 usb [usb] USB causing interrupt storm on irq16 o usb/177897 usb [u3g][patch] add support for the Huawei E352 modem o usb/177896 usb man page for usb_quirk suggests adding device to kerne o usb/177895 usb similar 1TB Western Digital "My Passports" - some load o usb/177666 usb [usbdevs] [patch] Add support for Texas Instruments / o usb/176913 usb [ehci] High interrupt load with ehci o usb/176841 usb [umass] Sony DSC-H2 USB connection fails o usb/176417 usb [xhci][cam][umass] kernelpanic while removing plugged o usb/175731 usb detaching USB keyboard freezes other USB keyboards o usb/175639 usb not detect usb netcard D-LINK DUB-E100 rev C1 o usb/175599 usb [usbdevs][patch]Liebert UPS PSI1000 being assigned uhi o usb/175551 usb Seagate 2TB USB extern hard disk have errors with Free o usb/175379 usb usb card-reader problem o usb/175302 usb don't mount virtual driver CD for my phone o usb/174963 usb buffalo wli-uc-gn wireless card sometimes unusable and o usb/174835 usb uaudio fails to create pcm/dsp device file o usb/174814 usb [PATCH] support for MiFi 2200 o usb/174695 usb usb keeps disconnecting mouse or keyboard o usb/174575 usb Interrupt storm error on startup o usb/174464 usb clone MAC address(es) on usb networks cdce(4) && ue[0- o usb/174254 usb MIDI keyboard not recognised o usb/173722 usb [xhci] xhci driver bug after suspend to RAM (ACPI S3 m o usb/173616 usb LG USB DVD-RW USB STALL o usb/173182 usb usbus appears as a network device o usb/172937 usb FreeBSD 9.1-RC2 usb3 port disconnects o usb/172633 usb Sony Cybershot not recognized as USB mem stick o usb/172199 usb [xhci] high interrupts load xhci o usb/171354 usb [umass] Medium not present error on flash drive [regre o usb/171262 usb plug in sdhc via usb reader reboots machine o usb/171197 usb ADATA Classic CH11 USB HDD doesn't work in FreeBSD 9.1 o usb/170699 usb FreeBSD 9.0 Doesn't list HDD or its partitions in part o usb/170688 usb patch][usbdevs][wlan] Patch for ASUS Black Diamond USB o usb/170606 usb r239222 kernel panic at boot - usb locking issue o usb/170358 usb [ums] Wrong (duplicate) button numbers o usb/170123 usb [umass] HP v210w USB stick not supported o usb/169935 usb [keyboard] Unable use USB keyboard while panic o usb/169789 usb [u3g] [patch] add support for huawei e3131 o usb/169461 usb [ugen] USB2 high-speed device detected as full speed o usb/169428 usb [ugen] ugen not detecting all endpoints on device [reg o usb/168551 usb [umass] Issues with embedded card reader (Laptop ASUS o usb/168132 usb [umass] MATSHITA memory card size reported wrong, moun o usb/167847 usb [ural] dlink dwl-122g e crashes(?) when trying wap2 cr o usb/167001 usb [USB] [PATCH] add support for Smart G2 64MB memory key o usb/165815 usb [usbdevs] [patch] add k3772z 3g modem support o usb/165163 usb [keyboard] The USB RF keyboard and mouse become non-re o usb/164058 usb [umass] Lexar 8GB USB flash drive doesn't work by defa f usb/163328 usb [usb] Support for Atheros USB abgn devices o kern/163091 usb [panic] Fatal trap 12: page fault while in kernel mode f usb/162306 usb usb devices cant get address asignation, no memories, o usb/162054 usb usbdump just hangs on 9.0-RC1 f usb/161793 usb poor EHCI usb2 i/o performance o usb/160436 usb ucom wedges machine on parity error ? o usb/160299 usb MicroSDHC-to-USB adapters do not work in FreeBSD 8.x o usb/160192 usb [install] Installation from USB-Stick doesn't find the o usb/159274 usb USB 3.0 Etron EJ168A does not work. f usb/159191 usb [fusefs-ntfs] write on fusefs-ntfs mounted partition r o usb/157376 usb LaCie USB disk not recognized o usb/157074 usb [boot] [usb8] vfs_mountroot_ask is called when no usb o usb/156898 usb [keyboard] usb keyboard does not work while boot (ps2 f usb/156735 usb Need Quirk for Goflex USB Disk Drives o usb/156726 usb [snd_uaudio]: snd_uaudio(4) fails to detach when mixer o usb/156725 usb USB stack stall cause complete system input loss o usb/156596 usb [ehci] Extremely high interrupt rate on ehci/uhci IRQ1 o usb/156000 usb rum(4) Fatal trap 18: integer divide fault while in ke f usb/155996 usb NanoBSD not booted as Disk o usb/155784 usb Problem with Transcend StoreJet 25M3 (2AJ1) on Asus M2 o usb/155663 usb [usbdevs] [patch] Add support for Supertop Nano 1GB US o usb/154753 usb [usbdevs] [patch] Support for Qualcomm USB modem/stora o usb/154506 usb [umass] Copying dir with large files makes FreeBSD loa o usb/154192 usb [umass] In Garmin Oregon GPS, only the first umass dev o i386/153851 usb [keyboard] keyboard issues on new Intel Mother boards. o usb/153703 usb [keyboard] My USB keyboard can not be used in 8-STABLE o usb/153609 usb [zyd] [panic] kernel: Fatal trap 12: page fault while f kern/153514 usb [cam] [panic] CAM related panic o usb/153149 usb [umass] USB stick quirk regression [regression] o usb/152075 usb [usb8] [ehci] [request] Add quirk for CS5536 USB o usb/150892 usb [zyd] Whenever network contacted in any shape, way or o usb/150189 usb [run] [usb8] [patch] if_run appears to corrupt IP traf p usb/149764 usb [u3g] [patch] usbdevs update: Huawei K3765 3G modem o usb/149283 usb [uftdi] avrdude unable to talk to Arduino board (via u o usb/149162 usb [ural] ASUS WL-167g doesn't work in 8.1 (continue of 1 s usb/148702 usb [usb8] [request] IO DATA USB-RSAQ5 support on FreeBSD- o usb/148080 usb usbconfig(8) sometimes does not turn off the device o i386/147475 usb [install] FreeBSD 8.x does not install on ASUS K8N4-E o usb/146840 usb [hang] FreeBSD 7.2 / 7.3 / 8.0 hang at startup after e o usb/146153 usb [axe] [usb8] Hosts in network doesn't receive any pack f usb/146054 usb [urtw] [usb8] urtw driver potentially out of date f usb/145513 usb [usb8] New USB stack: no new devices after forced usb p usb/145455 usb [usb8] [patch] USB debug support cannot be disabled o usb/145415 usb [umass] [usb8] USB card reader does not create slices a usb/145184 usb GENERIC can't mount root from USB on Asus EEE o usb/145165 usb [keyboard] [usb8] ukbd_set_leds_callback: error=USB_ER f kern/144938 usb [keyboard] [boot] Boot Failure with Apple (MB869LL/A) o usb/144387 usb [run] [panic] if_run panic o usb/144043 usb [umass] [usb8] USB DLT tape drive throws random errors a usb/143790 usb [boot] [cam] can not boot from usb hdd f usb/143620 usb [cdce] [usb8] the module if_cdce doesn't support my Op f usb/143294 usb [usb8] copying process stops at some time (10 - 50 sec o usb/143286 usb [ukbd] [usb8] [boot] boot failures on RELENG_8 system p usb/143186 usb [usbdevs] [usb8] [patch] add USB device IDs for Google a usb/143139 usb [umass] [usb8] [patch] Quirk for Century EX35SW4_SB4 J p usb/143045 usb [umass] [usb8] [patch] mounting Fujitsu 2600Z camera d f usb/142989 usb [usb8] canon eos 50D attaches but detaches after few s f usb/142957 usb [umass] [usb8] [patch] patch for USB disk SYNCHRONIZE o usb/142719 usb [urtw] [usb8] AirLive WL-1600USB (RTL8187L chipset) fa f usb/142276 usb [umass] [usb8] Cache Synchronization Error with Olympu o usb/142229 usb [ums] [usb8] [hang] connecting a USB mouse to a Dell P f usb/141680 usb [uath] [usb8] Netgear WG111T not working with uath dri o usb/141664 usb [pcm] [usb8] Logitech USB microphone failure [regressi o usb/141474 usb [boot] [usb8] FreeBSD 8.0 can not install from USB CDR o usb/141212 usb [ukbd] [usb8] ukbd_set_leds_callback:700: error=USB_ER o kern/141011 usb [usb8] Encrypted root, geli password at boot; enter ke o usb/140920 usb [install] [usb8] USB based install fails on 8.0-RELEAS o usb/140893 usb [urtw] [usb8] WPA2 not working on rtl8187b o kern/140849 usb [ums] [usb8] USB mouse doesn't work under FreeBSD 8.0- a usb/140810 usb [uftdi] [usb8] 8.X copy and paste problem / tty overfl o usb/140477 usb [umass] [usb8] [patch] allow boot-time attachment of d o usb/140236 usb [msdosfs] [usb8] Labels wiped on external Journaled US o usb/140160 usb [usb8] [acpi] USB ports are no longer "active" after A o usb/138798 usb [boot] [usb8] 8.0-BETA4 can't boot from USB flash driv o usb/138659 usb [usb8][uftdi] driver broken in RELENG_8/CURRENT o kern/138292 usb [zyd] [usb8] "zyd0: device timeout" with ZyXEL G-202 o usb/138124 usb [snd_uaudio] [usb8] Axed uaudio functionality in the u o usb/137377 usb [usb8] request support for Huawei E180 o usb/137341 usb [usb8][rum] driver if_rum doesn't work at all and thro f usb/137190 usb [usb8][patch] inhibit spurious button releases for som o usb/137189 usb [usb8][patch] create and use sysctl nodes for HID repo p usb/137188 usb [usb8][patch] correctly handle USB report descriptors o usb/137129 usb [ums] [usb8] SteelSeries Ikari USB laser mouse not att o usb/135542 usb [keyboard] boot loader does not work with a usb keyboa o usb/135206 usb machine reboots when inserted USB device f usb/135200 usb SAMSUNG i740 usb mass: Synchronize cache failed, statu o usb/134950 usb Lowering DTR for USB-modem via ubsa is not possible o usb/134299 usb Kernel Panic plugging in MF626 USB UMTS Stick u3g o usb/134193 usb System freeze on usb MP3 player insertion o usb/134085 usb [umass] [patch] Adding usb quirk for Sony USB flash dr o usb/133989 usb [usb8] [ukbd] USB keyboard dead at mountroot> prompt o usb/133712 usb [ural] [patch] RE: Fixed an issue with ural(4) that wa o usb/133390 usb umass crashes system in 7.1 when Olympus D-540 attache o usb/133296 usb [rum] driver not working properly in hostap mode o usb/132594 usb USB subsystem causes page fault and crashes o usb/132080 usb [patch] [usb] [rum] [panic] Kernel panic after NOMEM c o usb/132066 usb [ukbd] Keyboard failure USB keyboard DELL 760 o usb/132036 usb [panic] page fault when connecting Olympus C740 camera o usb/131583 usb [umass] Failure when detaching umass Device o usb/131576 usb [aue] ADMtek USB To LAN Converter can't send data o usb/131521 usb Registering Belkin UPS to usb_quirks.c o usb/131074 usb no run-time detection of usb devices plugged into exte o usb/130736 usb Page fault unplugging USB stick o usb/130208 usb Boot process severely hampered by umass0 error o usb/130122 usb [usb8] DVD drive detects as 'da' device f usb/129766 usb [usb] [panic] plugging in usb modem HUAWEI E226 panics o usb/129500 usb [umass] [panic] FreeBSD Crashes when connecting SanDis o usb/129311 usb [usb] [panic] Instant crash with an USB card reader f usb/128745 usb [zyd] zyd theoretically supported usb device makes ker o usb/128485 usb [umodem] [patch] Nokia N80 modem support o usb/128425 usb [umass] Cannot Connect Maxtor Onetouch 4 USB drive o usb/128418 usb [panic] [rum] loading if_rum causes panic, looks like o usb/127926 usb [boot] USB Timeout during bootup o usb/127342 usb [boot] [panic] enabling usb keyboard and mouse support o usb/127248 usb [ucom] panic while uplcom devices attach and detach o usb/126884 usb [ugen] [patch] Bug in buffer handling in ugen.c o usb/126848 usb [usb]: USB Keyboard hangs during Installation o usb/126740 usb [ulpt] doesn't work on 7.0-RELEASE, 10 second stall be o usb/126519 usb [usb] [panic] panic when plugging in an iphone o kern/126396 usb [panic] kernel panic after unplug USB Bluetooth device o usb/125631 usb [ums] [panic] kernel panic during bootup while 'Logite o usb/125510 usb [panic] repeated plug and unplug of USB mass storage d f usb/125450 usb [panic] Removing USB flash card while being accessed c o usb/125088 usb [keyboard] Touchpad not detected on Adesso AKB-430UG U o usb/124980 usb [panic] kernel panic on detaching unmounted umass devi o kern/124777 usb [ucom] USB cua devices don't revert to tty devices whe o usb/124758 usb [rum] [panic] rum panics SMP kernel o usb/124708 usb [panic] Kernel panic on USB KVM reattach o kern/124130 usb [usb] gmirror fails to start usb devices that were pre o usb/123969 usb [usb] Supermicro H8SMi-2 usb problem: port reset faile o usb/123714 usb [usb] [panic] Panic when hald-storage-probe runs with o usb/123691 usb usbd(8): usbd hangs o usb/123690 usb [usb] [panic] Panic on USB device insertion when usb l o usb/123611 usb [usb] BBB reset failed, STALLED from Imation/Mitsumi U o usb/122992 usb [umass] [patch] MotoROKR Z6 Phone not recognised by um o usb/122936 usb [ucom] [ubsa] Device does not receive interrupt o usb/122905 usb [ubsa] [patch] add Huawei E220 to ubsa o usb/122547 usb [ehci] USB Printer not being recognized after reboot o usb/122539 usb [ohci] [panic] AnyDATA ADU-E1000D - kernel panic: ohci o usb/122483 usb [panic] [ulpt] Repeatable panic in 7.0-STABLE o usb/122119 usb [umass] umass device causes creation of daX but not da o usb/121734 usb [ugen] ugen HP1022 printer device not working since up o usb/121708 usb [keyboard] nforce 650i mobo w/ usb keyboard infinite k o usb/121275 usb [boot] [panic] FreeBSD fails to boot with usb legacy s o usb/121169 usb [umass] Issues with usb mp3 player o usb/121045 usb [uftdi] [patch] Add support for PC-OP-RS1 and KURO-RS f usb/120786 usb [usb] [panic] Kernel panic when forced umount of a det o usb/120729 usb [panic] fault while in kernel mode with connecting USB o conf/120406 usb [devd] [patch] Handle newly attached pcm devices (eg. o usb/120321 usb [hang] System hangs when transferring data to WD MyBoo o usb/120283 usb [panic] Automation reboot with wireless keyboard & mou o usb/120034 usb [hang] 6.2 & 6.3 hangs on boot at usb0: OHCI with 1.5 o usb/119977 usb [ums] Mouse does not work in a Cherry-USB keyboard/mou o usb/119653 usb [cam] [patch] iriver s7 player sync cache error patch o usb/119633 usb [umass] umass0: BBB reset failed, IOERROR [regression] o usb/119509 usb [usb] USB flaky on Dell Optiplex 755 o usb/119389 usb [umass] Sony DSC-W1 CBI reset failed, STALLED [regress o usb/119227 usb [ubsa] [patch] ubsa buffer is too small; should be tun o usb/118480 usb [umass] Timeout in USB mass storage freezes vfs layer o usb/118353 usb [panic] [ppp] repeatable kernel panic during ppp(4) se o usb/118141 usb [ucom] usb serial and nokia phones ucomreadcb ucomread o usb/118140 usb [ucom] [patch] quick hack for ucom to get it behave wi o usb/118098 usb [umass] 6th gen iPod causes problems when disconnectin o usb/117955 usb [umass] [panic] inserting minolta dimage a2 crashes OS o usb/117946 usb [panic] D-Link DUB-E100 rev. B1 crashes FreeBSD 7.0-BE o usb/117938 usb [ums] [patch] Adding support for MS WL Natural and MS o usb/117911 usb [ums] [request] Mouse Gembird MUSWC not work o usb/117893 usb [umass] Lacie USB DVD writing failing o usb/117613 usb [uhci] [irq] uhci interrupt storm & USB leaked memory o usb/117598 usb [snd_uaudio] [patch] Not possible to record with Plant o usb/117313 usb [umass] [panic] panic on usb camera insertion o usb/117183 usb [panic] USB/fusefs -- panic while transferring large a f usb/117150 usb [zyd] usb zyd device under moderate load panics system o usb/116561 usb [umodem] [panic] RELENG_6 umodem panic "trying to slee o usb/116282 usb [ulpt] Cannot print on USB HP LJ1018 or LJ1300 o usb/115935 usb [usbdevs] [patch] kernel counterproductively attaches o usb/115400 usb [ehci] Problem with EHCI on ASUS M2N4-SLI o usb/115298 usb [ulpt] [panic] Turning off USB printer panics kernel o usb/114916 usb [umass] [patch] USB Maxtor drive (L300RO) requires qui o kern/114780 usb [uplcom] [panic] Panics while stress testing the uplco o usb/114682 usb [umass] generic USB media-card reader unusable o usb/114310 usb [libusb] [patch] [panic] USB hub attachment panics ker o conf/114013 usb [patch] WITHOUT_USB allow to compil a lot of USB stuff o usb/99431 usb [keyboard] FreeBSD on MSI 6566E (Intel 845E motherboar o usb/98343 usb [boot] BBB reset failed errors with Creative Muvo MP3 o usb/97472 usb [cam] [patch] add support for Olympus C150,D390 s usb/97286 usb [mouse] [request] MS Wireless Intellimouse Explorer 2. o usb/97175 usb [umass] [hang] USB cardreader hangs system o usb/96457 usb [umass] [panic] fatback on umass = reboot o usb/96224 usb [usb] [msdosfs] mount_msdosfs cause page fault in sync s usb/96120 usb [ums] [request] USB mouse not always detected s usb/95636 usb [umass] [boot] 5 minute delay at boot when using VT620 o usb/95562 usb [umass] Write Stress in USB Mass drive causes "vinvalb o usb/95037 usb [umass] USB disk not recognized on hot-plug. o usb/94897 usb [panic] Kernel Panic when cleanly unmounting USB disk o usb/94717 usb [ulpt] Reading from /dev/ulpt can break work of a UHCI o usb/94384 usb [panic] kernel panic with usb2 hardware o usb/93828 usb [ohci] [panic] ohci causes panic on boot (HP Pavillion o usb/93389 usb [umass] [patch] Digital Camera Pentax S60 don't work o usb/92852 usb [ums] [patch] Vertical scroll not working properly on o usb/92171 usb [panic] panic unplugging Vodafone Mobile Connect (UMTS o usb/92142 usb [uhub] SET_ADDR_FAILED and SHORT_XFER errors from usb o usb/92083 usb [ural] [panic] panic using WPA on ural NIC in 6.0-RELE o usb/92052 usb [ulpt] usbd causes defunct process with busy file-hand o usb/91906 usb [ehci] [hang] FreeBSD hangs while booting with USB leg f usb/91896 usb camcontrol(8): Serial Number of USB Memory Sticks is n o usb/91811 usb [umass] Compact Flash in HP Photosmart 2610 return " o usb/91546 usb [umodem] [patch] Nokia 6630 mobile phone does not work o usb/91538 usb [ulpt] [patch] Unable to print to EPSON CX3500 o usb/91283 usb [boot] [regression] booting very slow with usb devices o usb/91238 usb [umass] USB tape unit fails to write a second tape fil o usb/90700 usb [umass] [panic] Kernel panic on connect/mount/use umas o usb/89954 usb [umass] [panic] USB Disk driver race condition? o usb/88743 usb [hang] [regression] USB makes kernel hang at boot (reg o usb/88408 usb [axe] axe0 read PHY failed o usb/87648 usb [mouse] Logitech USB-optical mouse problem. f usb/87224 usb [usb] Cannot mount USB Zip750 o usb/86767 usb [umass] [patch] bogus "slice starts beyond end of the o usb/86298 usb [mouse] Known good USB mouse won't work with correct s s usb/85067 usb [uscanner] Cannot attach ScanJet 4300C to usb device o usb/83977 usb [ucom] [panic] ucom1: open bulk out error (addr 2): IN o usb/83863 usb [ugen] Communication problem between opensc/openct via o usb/83756 usb [ums] [patch] Microsoft Intellimouse Explorer 4.0A doe o usb/83504 usb [kernel] [patch] SpeedTouch USB stop working on recent o usb/82520 usb [udbp] [reboot] Reboot when USL101 connected o usb/82350 usb [ucom] [panic] null pointer dereference in USB stack o usb/81621 usb [ehci] [hang] external hd hangs under load on ehci o usb/80935 usb [uvisor] [patch] uvisor.c is not work with CLIE TH55. s usb/80777 usb [request] usb_rem_task() should wait for callback to c s usb/80776 usb [udav] [request] UDAV device driver shouldn't use usb_ o usb/80774 usb [patch] have "usbd_find_desc" in line with the other " o usb/80361 usb [umass] [patch] mounting of Dell usb-stick fails f usb/80040 usb [sound] [hang] Use of sound mixer causes system freeze o usb/79723 usb [usb] [request] prepare for high speed isochronous tra o usb/78984 usb [umass] [patch] Creative MUVO umass failure o usb/76653 usb [umass] [patch] Problem with Asahi Optical usb device s usb/75928 usb [umass] [request] Cytronix SmartMedia card (SMC) reade o usb/75800 usb [ucom] ucom1: init failed STALLED error in time of syn o usb/75764 usb [umass] [patch] "umass0: Phase Error" - no device for s usb/74453 usb [umass] [patch] Q-lity CD-RW USB ECW-043 (ScanLogic SL o usb/74211 usb [umass] USB flash drive causes CAM status 0x4 on 4.10R o usb/71417 usb [ugen] Cryptoflex e-gate USB token (ugen0) communicati o usb/71416 usb [ugen] Cryptoflex e-gate USB token (ugen0) detach is n o usb/71280 usb [aue] aue0 device (linksys usb100tx) doesn't work in 1 o usb/71155 usb [ulpt] misbehaving usb-printer hangs processes, causes o usb/69006 usb [usbdevs] [patch] Apple Cinema Display hangs USB ports o usb/67301 usb [uftdi] [panic] RTS and system panic o usb/66547 usb [ucom] Palm Tungsten T USB does not initialize correct s usb/62257 usb [umass] [request] card reader UCR-61S2B is only half-s s usb/52026 usb [new driver] [request] umass driver support for InSyst s usb/51958 usb [urio] [patch] update for urio driver o usb/40948 usb [umass] [request] USB HP CDW8200 does not work o usb/30929 usb [usb] [patch] use usbd to initialize USB ADSL modem 320 problems total. From owner-freebsd-usb@FreeBSD.ORG Tue Oct 22 19:22:11 2013 Return-Path: Delivered-To: freebsd-usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id AF2B322A for ; Tue, 22 Oct 2013 19:22:11 +0000 (UTC) (envelope-from dwhite@gumbysoft.com) Received: from carver.gumbysoft.com (carver.gumbysoft.com [66.220.23.50]) by mx1.freebsd.org (Postfix) with ESMTP id 9B2BC2152 for ; Tue, 22 Oct 2013 19:22:11 +0000 (UTC) Received: from kruse-235.2.ixsystems.com (unknown [69.198.165.132]) by carver.gumbysoft.com (Postfix) with ESMTPSA id 4D2E4C5743; Tue, 22 Oct 2013 12:22:05 -0700 (PDT) Subject: Re: xhci on Intel Lynx Point still broke Mime-Version: 1.0 (Apple Message framework v1085) Content-Type: text/plain; charset=us-ascii From: Doug White In-Reply-To: <5260D409.5070906@bitfrost.no> Date: Tue, 22 Oct 2013 12:22:04 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: <88AA7F2E-5C4F-416F-8737-35A51FDC7715@gumbysoft.com> References: <7CFE54E6-7FD5-40C5-B1FC-BBF46134A6AE@gumbysoft.com> <525F7B60.6030102@bitfrost.no> <5260D409.5070906@bitfrost.no> To: Hans Petter Selasky X-Mailer: Apple Mail (2.1085) Cc: sarah.a.sharp@linux.intel.com, freebsd-usb@freebsd.org X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Oct 2013 19:22:11 -0000 Hello, I did a build this morning from HEAD with the XHCI change committed the = other day and no change in status. The machine doesn't react at all to = plug/unplug events. I read through the XHCI spec and noticed that it allows MSI-X = configuration but the current driver is MSI-only -- maybe this is = related? vmstat -i might help give an idea: interrupt total rate cpu0:timer 26368 22 irq264: xhci0 1 0 On Oct 17, 2013, at 11:24 PM, Hans Petter Selasky wrote: > On 10/18/13 03:23, Doug White wrote: >>=20 >> On Oct 16, 2013, at 10:53 PM, Hans Petter Selasky wrote: >>=20 >>> Is the problem fixed if you set: >>>=20 >>> hw.usb.xhci.xhci_port_route=3D-1 >>>=20 >>> in /boot/loader.conf >>=20 >> No, no change in (lack of) functionality. >>=20 >> I uploaded these bootverbose-enabled dmesg outputs: >>=20 >> With XHCI Mode =3D Disabled in BIOS (reverts ports to EHCI control): >>=20 >> http://people.freebsd.org/~dwhite/dmesg.xhci_off_in_bios.20131017 >>=20 >> With XHCI Mode =3D Enabled in BIOS and with tunable = hw.usb.xhci.xhci_port_route=3D-1 set: >>=20 >> http://people.freebsd.org/~dwhite/dmesg.xhci_on.with_routing.20131017 >>=20 >>> XHCI is a more high-level controller, and I suspect that the makers = have added some propritary glue to switch ports back and forth between = XHCI and EHCI which is not documented anywhere. >>=20 >> On the first board (X10SLM-F), XHCI Mode is a BIOS setting and = affects all USB ports. I haven't experimented with settings on the Atom = yet. The Atom uses a Renesas chip for its USB ports, though, and no USB = from the SoC itself, that I can tell. >>=20 >=20 > Hi Doug, >=20 > It looks like the XHCI controller is not getting any port events, like = it should. Basically the XHCI controller you've got does not behave like = I would expect, according to the XHCI specification from INTEL. >=20 > I've CC'ed Sarah Sharp @ Intel which is working on the Linux XHCI = driver. >=20 > --HPS >=20 > Hi Sarah! >=20 > We FreeBSD guys have seen several oddities regarding the Lynx Point = Intel based controllers, and would like to know if some additional = datasheets exist regarding how ports switch actually works. >=20 > The last issue on the block was that the Lynx Point's returned a = invalid parameter error on the set address command which configures the = device context (no set address sent), if a USB device was plugged into = the XHCI controller, and the port routing was enabled. If the command = was issued when no USB device was plugged in by faking a port connection = status change, then it would succeed. >=20 >> = http://svnweb.freebsd.org/base/head/sys/dev/usb/controller/xhci.c?r1=3D255= 356&r2=3D255768 >=20 > I'm sorry to say I fear this extra magic about the port routing for = Lynx Points is not working like expected. Sarah, do you have any more = clues for us FreeBSD USB guys? >=20 > Thank you! >=20 > --HPS From owner-freebsd-usb@FreeBSD.ORG Tue Oct 22 22:13:11 2013 Return-Path: Delivered-To: freebsd-usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 4622DE08 for ; Tue, 22 Oct 2013 22:13:11 +0000 (UTC) (envelope-from brock@cottonwoodcomputer.com) Received: from brookie.cotcomsol.com (brookie.cotcomsol.com [69.144.98.236]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id C56C82C59 for ; Tue, 22 Oct 2013 22:13:10 +0000 (UTC) Received: from [172.16.4.10] (timon [172.16.16.1]) (authenticated bits=0) by brookie.cotcomsol.com (8.14.7/8.14.7) with ESMTP id r9MMD8b0061076 (version=TLSv1/SSLv3 cipher=DHE-DSS-CAMELLIA256-SHA bits=256 verify=NO) for ; Tue, 22 Oct 2013 16:13:08 -0600 (MDT) (envelope-from brock@cottonwoodcomputer.com) Message-ID: <5266F874.1090009@cottonwoodcomputer.com> Date: Tue, 22 Oct 2013 16:13:08 -0600 From: Brock Williams Organization: Cottonwood Computer Solutions, Inc. User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130623 Thunderbird/17.0.7 MIME-Version: 1.0 To: freebsd-usb@freebsd.org Subject: need help with eGalax USB touch screen, will pay X-Enigmail-Version: 1.5.2 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="0sA2erXB3jpkjOSmuoPv4KmLpgSfGn1hr" X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.4.3 (brookie.cotcomsol.com [172.16.16.2]); Tue, 22 Oct 2013 16:13:08 -0600 (MDT) X-Spam-Status: No, score=-1.0 required=8.0 tests=ALL_TRUSTED autolearn=disabled version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on brookie.cotcomsol.com X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Oct 2013 22:13:11 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --0sA2erXB3jpkjOSmuoPv4KmLpgSfGn1hr Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Hello, We have some eGalax based touchscreens that we are trying to get working with FreeBSD 9.2, eventually in Xorg. They are PioneerPOS TOM-M7 screens. They appear to be the newer eGalax models that are at least somewhat HID compliant. I'm looking for someone who will help us out on a contract or consulting basis to get them to work, and document it for others. We currently use EloTouch serial units that work fine but they are no longer readily available... Thanks! Brock Here is how the device shows up in dmesg: ugen4.3: at usbus4 uhid0: on usbus4 uhid0: no report descriptor The uep driver will load and attach to the device but doesn't appear to work... I believe this may be only for the earlier non-HID models but I'm not sure. uep0: on usbus4 Here is the output from uhidd: uhidd -mvvvvDu /dev/ugen4.3 uhidd[1517]: open /usr/local/etc/uhidd.conf failed: No such file or directory uhidd[1517]: proceed without configuration file ugen4.3[0]-> HID interface ugen4.3[0]-> Report descriptor size =3D 141 ugen4.3[0]-> Report descriptor dump: USAGE PAGE Generic Desktop(0x1) USAGE Pointer(0x1)[Generic Desktop(0x1)] COLLECTION Application(1) REPORT ID 1 USAGE Pointer(0x1)[Generic Desktop(0x1)] COLLECTION Physical(0) USAGE PAGE Button(0x9) USAGE MINIMUM Button1(1) USAGE MAXIMUM Button2(2) LOGICAL MINIMUM 0 LOGICAL MAXIMUM 1 REPORT COUNT 2 REPORT SIZE 1 INPUT ( Data Variable Absolute ) (2) REPORT COUNT 1 REPORT SIZE 6 INPUT ( Const Array Absolute ) (1) USAGE PAGE Generic Desktop(0x1) USAGE X(0x30)[Generic Desktop(0x1)] USAGE Y(0x31)[Generic Desktop(0x1)] LOGICAL MINIMUM 42 LOGICAL MAXIMUM 1981 PHYSICAL MINIMUM 0 PHYSICAL MAXIMUM 4095 UNIT (0) REPORT SIZE 16 REPORT COUNT 2 INPUT ( Data Variable Absolute ) (2) END COLLECTION END COLLECTION USAGE PAGE Digitizer(0xd) USAGE Touch Screen(0x4)[Digitizer(0xd)] COLLECTION Application(1) REPORT ID 2 USAGE Stylus(0x20)[Digitizer(0xd)] COLLECTION Physical(0) USAGE Tip Switch(0x42)[Digitizer(0xd)] USAGE In Range(0x32)[Digitizer(0xd)] LOGICAL MINIMUM 0 LOGICAL MAXIMUM 1 REPORT COUNT 2 REPORT SIZE 1 INPUT ( Data Variable Absolute ) (2) REPORT COUNT 6 REPORT SIZE 1 INPUT ( Const Variable Absolute ) (3) USAGE PAGE Generic Desktop(0x1) USAGE X(0x30)[Generic Desktop(0x1)] REPORT SIZE 16 REPORT COUNT 1 PUSH UNIT EXPONENT 0 UNIT (0) PHYSICAL MINIMUM 0 PHYSICAL MAXIMUM 0 LOGICAL MINIMUM 30 LOGICAL MAXIMUM 4040 INPUT ( Data Variable Absolute ) (2) USAGE Y(0x31)[Generic Desktop(0x1)] LOGICAL MINIMUM 60 LOGICAL MAXIMUM 4035 PHYSICAL MINIMUM 0 PHYSICAL MAXIMUM 0 INPUT ( Data Variable Absolute ) (2) POP END COLLECTION END COLLECTION ugen4.3[0]-> Kernel driver is not active ugen4.3[0]-> Find IN interrupt ep: 0x81 packet_size=3D0x8 HID APPLICATION COLLECTION (Pointer) size(63) HID REPORT: ID 1 INPUT: POS:0 SIZE:1 COUNT:2 [VARIABLE] USAGE Button1 USAGE Button2 POS:2 SIZE:6 COUNT:1 [CONST] POS:8 SIZE:16 COUNT:2 [VARIABLE] USAGE X USAGE Y HID APPLICATION COLLECTION (Touch Screen) size(78) HID REPORT: ID 2 INPUT: POS:0 SIZE:1 COUNT:2 [VARIABLE] USAGE Tip Switch USAGE In Range POS:2 SIZE:1 COUNT:6 [CONST] POS:8 SIZE:16 COUNT:1 [VARIABLE] USAGE X POS:24 SIZE:16 COUNT:1 [VARIABLE] USAGE Y --=20 Brock Williams brock@cottonwoodcomputer.com Cottonwood Computer Solutions, Inc. www.cottonwoodcomputer.com 406-896-4910 --0sA2erXB3jpkjOSmuoPv4KmLpgSfGn1hr Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) iQEcBAEBAgAGBQJSZvh0AAoJEAej1IqUgufIhFcH/A83F6UgemPUTigSq9U7u3JU JqI2F5fts6+7uXC29QDFZTiqWUQowH4naUrQ4J64K9WPQ5h1846ryIf8F6EXELjh 9xnoEfqJHPY/VAvtE0rK65NqOHJ0a8ET87HJZ2ObChVHTWMdTmrYhqci8TtrMzR6 D6BgLuXKhqyomcUhtyikYS1gfyDk04SFc0MSdCelAVvrVf8k5X5Wg4Z8pF7HErTq liVrOCtMmhxduNPH4NlQ2DU5ijLrYaZrP1SBcJX2thhbNLnS/Lw1XwCYSI3Jr8yY COebGNNRMc1beifnGQIRgX2QkI6F8Dgg+R5qWYjTcniuo+qIBd9bRTK5vKgCncU= =8aE/ -----END PGP SIGNATURE----- --0sA2erXB3jpkjOSmuoPv4KmLpgSfGn1hr-- From owner-freebsd-usb@FreeBSD.ORG Thu Oct 24 05:48:54 2013 Return-Path: Delivered-To: freebsd-usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 015E1E24 for ; Thu, 24 Oct 2013 05:48:54 +0000 (UTC) (envelope-from hps@bitfrost.no) Received: from mta.bitpro.no (mta.bitpro.no [92.42.64.202]) by mx1.freebsd.org (Postfix) with ESMTP id B33322AB7 for ; Thu, 24 Oct 2013 05:48:53 +0000 (UTC) Received: from mail.lockless.no (mail.lockless.no [46.29.221.38]) by mta.bitpro.no (Postfix) with ESMTP id 5775B7A4E2; Thu, 24 Oct 2013 07:48:46 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.lockless.no (Postfix) with ESMTP id 589348FAEB0; Thu, 24 Oct 2013 07:49:13 +0200 (CEST) X-Virus-Scanned: by amavisd-new-2.6.4 (20090625) (Debian) at lockless.no Received: from mail.lockless.no ([127.0.0.1]) by localhost (mail.lockless.no [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id HuIMjsFMr7MU; Thu, 24 Oct 2013 07:49:12 +0200 (CEST) Received: from laptop015.home.selasky.org (cm-176.74.213.204.customer.telag.net [176.74.213.204]) by mail.lockless.no (Postfix) with ESMTPSA id 58A488FAEAF; Thu, 24 Oct 2013 07:49:12 +0200 (CEST) Message-ID: <5268B504.4020209@bitfrost.no> Date: Thu, 24 Oct 2013 07:49:56 +0200 From: Hans Petter Selasky Organization: Bitfrost A/S User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/20130522 Thunderbird/17.0.6 MIME-Version: 1.0 To: Brock Williams Subject: Re: need help with eGalax USB touch screen, will pay References: <5266F874.1090009@cottonwoodcomputer.com> In-Reply-To: <5266F874.1090009@cottonwoodcomputer.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-usb@freebsd.org X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Oct 2013 05:48:54 -0000 On 10/23/13 00:13, Brock Williams wrote: > Hello, > > We have some eGalax based touchscreens that we are trying to get > working with FreeBSD 9.2, eventually in Xorg. They are PioneerPOS > TOM-M7 screens. > > They appear to be the newer eGalax models that are at least somewhat > HID compliant. > > I'm looking for someone who will help us out on a contract or > consulting basis to get them to work, and document it for others. We > currently use EloTouch serial units that work fine but they are no > longer readily available... > > Hi, I'm a bit busy nowadays. However, do you have the documentation for the protocol this device uses? Will you provide a hardware unit to the developer? It might be that /usr/ports/multimedia/webcamd will pick this device up like a linux event device under "/dev". Only that the X-org part is missing for that. I've added quite some touchscreen drivers to webcamd. --HPS From owner-freebsd-usb@FreeBSD.ORG Thu Oct 24 06:30:03 2013 Return-Path: Delivered-To: freebsd-usb@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 0D696ACE for ; Thu, 24 Oct 2013 06:30:03 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id EFA3B2CD9 for ; Thu, 24 Oct 2013 06:30:02 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.7/8.14.7) with ESMTP id r9O6U2bf073738 for ; Thu, 24 Oct 2013 06:30:02 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.7/8.14.7/Submit) id r9O6U2Og073737; Thu, 24 Oct 2013 06:30:02 GMT (envelope-from gnats) Date: Thu, 24 Oct 2013 06:30:02 GMT Message-Id: <201310240630.r9O6U2Og073737@freefall.freebsd.org> To: freebsd-usb@FreeBSD.org Cc: From: dfilter@FreeBSD.ORG (dfilter service) Subject: Re: usb/181987: commit references a PR X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: dfilter service List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Oct 2013 06:30:03 -0000 The following reply was made to PR usb/181987; it has been noted by GNATS. From: dfilter@FreeBSD.ORG (dfilter service) To: bug-followup@FreeBSD.org Cc: Subject: Re: usb/181987: commit references a PR Date: Thu, 24 Oct 2013 06:22:52 +0000 (UTC) Author: hselasky Date: Thu Oct 24 06:22:43 2013 New Revision: 257041 URL: http://svnweb.freebsd.org/changeset/base/257041 Log: MFC r252912, r254828 and r256548: Add host mode support to the Mentor Graphics USB OTG controller driver. PR: usb/181987 Modified: stable/9/sys/dev/usb/controller/musb_otg.c stable/9/sys/dev/usb/controller/musb_otg.h stable/9/sys/dev/usb/controller/musb_otg_atmelarm.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/usb/controller/musb_otg.c ============================================================================== --- stable/9/sys/dev/usb/controller/musb_otg.c Thu Oct 24 06:06:17 2013 (r257040) +++ stable/9/sys/dev/usb/controller/musb_otg.c Thu Oct 24 06:22:43 2013 (r257041) @@ -90,6 +90,8 @@ SYSCTL_INT(_hw_usb_musbotg, OID_AUTO, de &musbotgdebug, 0, "Debug level"); #endif +#define MAX_NAK_TO 16 + /* prototypes */ struct usb_bus_methods musbotg_bus_methods; @@ -98,17 +100,35 @@ struct usb_pipe_methods musbotg_device_c struct usb_pipe_methods musbotg_device_intr_methods; struct usb_pipe_methods musbotg_device_isoc_methods; -static musbotg_cmd_t musbotg_setup_rx; -static musbotg_cmd_t musbotg_setup_data_rx; -static musbotg_cmd_t musbotg_setup_data_tx; -static musbotg_cmd_t musbotg_setup_status; -static musbotg_cmd_t musbotg_data_rx; -static musbotg_cmd_t musbotg_data_tx; +/* Control transfers: Device mode */ +static musbotg_cmd_t musbotg_dev_ctrl_setup_rx; +static musbotg_cmd_t musbotg_dev_ctrl_data_rx; +static musbotg_cmd_t musbotg_dev_ctrl_data_tx; +static musbotg_cmd_t musbotg_dev_ctrl_status; + +/* Control transfers: Host mode */ +static musbotg_cmd_t musbotg_host_ctrl_setup_tx; +static musbotg_cmd_t musbotg_host_ctrl_data_rx; +static musbotg_cmd_t musbotg_host_ctrl_data_tx; +static musbotg_cmd_t musbotg_host_ctrl_status_rx; +static musbotg_cmd_t musbotg_host_ctrl_status_tx; + +/* Bulk, Interrupt, Isochronous: Device mode */ +static musbotg_cmd_t musbotg_dev_data_rx; +static musbotg_cmd_t musbotg_dev_data_tx; + +/* Bulk, Interrupt, Isochronous: Host mode */ +static musbotg_cmd_t musbotg_host_data_rx; +static musbotg_cmd_t musbotg_host_data_tx; + static void musbotg_device_done(struct usb_xfer *, usb_error_t); static void musbotg_do_poll(struct usb_bus *); static void musbotg_standard_done(struct usb_xfer *); static void musbotg_interrupt_poll(struct musbotg_softc *); static void musbotg_root_intr(struct musbotg_softc *); +static int musbotg_channel_alloc(struct musbotg_softc *, struct musbotg_td *td); +static void musbotg_channel_free(struct musbotg_softc *, struct musbotg_td *td); +static void musbotg_ep_int_set(struct musbotg_softc *sc, int channel, int on); /* * Here is a configuration that the chip supports. @@ -123,6 +143,64 @@ static const struct usb_hw_ep_profile mu } }; +static int +musbotg_channel_alloc(struct musbotg_softc *sc, struct musbotg_td *td) +{ + int ch; + int ep; + + ep = td->ep_no; + + /* In device mode each EP got its own channel */ + if (sc->sc_mode == MUSB2_DEVICE_MODE) { + musbotg_ep_int_set(sc, ep, 1); + return (ep); + } + + /* + * All control transactions go through EP0 + */ + if (ep == 0) { + if (sc->sc_channel_mask & (1 << 0)) + return (-1); + sc->sc_channel_mask |= (1 << 0); + musbotg_ep_int_set(sc, ep, 1); + return (0); + } + + for (ch = 1; ch < MUSB2_EP_MAX; ch++) { + if (!(sc->sc_channel_mask & (1 << ch))) { + sc->sc_channel_mask |= (1 << ch); + musbotg_ep_int_set(sc, ch, 1); + return (ch); + } + } + + DPRINTFN(-1, "No available channels. Mask: %04x\n", sc->sc_channel_mask); + + return (-1); +} + +static void +musbotg_channel_free(struct musbotg_softc *sc, struct musbotg_td *td) +{ + + DPRINTFN(1, "ep_no=%d\n", td->channel); + + if (sc->sc_mode == MUSB2_DEVICE_MODE) + return; + + if (td == NULL) + return; + if (td->channel == -1) + return; + + musbotg_ep_int_set(sc, td->channel, 0); + sc->sc_channel_mask &= ~(1 << td->channel); + + td->channel = -1; +} + static void musbotg_get_hw_ep_profile(struct usb_device *udev, const struct usb_hw_ep_profile **ppf, uint8_t ep_addr) @@ -213,6 +291,46 @@ musbotg_pull_down(struct musbotg_softc * } static void +musbotg_suspend_host(struct musbotg_softc *sc) +{ + uint8_t temp; + + if (sc->sc_flags.status_suspend) { + return; + } + + temp = MUSB2_READ_1(sc, MUSB2_REG_POWER); + temp |= MUSB2_MASK_SUSPMODE; + MUSB2_WRITE_1(sc, MUSB2_REG_POWER, temp); + sc->sc_flags.status_suspend = 1; +} + +static void +musbotg_wakeup_host(struct musbotg_softc *sc) +{ + uint8_t temp; + + if (!(sc->sc_flags.status_suspend)) { + return; + } + + temp = MUSB2_READ_1(sc, MUSB2_REG_POWER); + temp &= ~MUSB2_MASK_SUSPMODE; + temp |= MUSB2_MASK_RESUME; + MUSB2_WRITE_1(sc, MUSB2_REG_POWER, temp); + + /* wait 20 milliseconds */ + /* Wait for reset to complete. */ + usb_pause_mtx(&sc->sc_bus.bus_mtx, hz / 50); + + temp = MUSB2_READ_1(sc, MUSB2_REG_POWER); + temp &= ~MUSB2_MASK_RESUME; + MUSB2_WRITE_1(sc, MUSB2_REG_POWER, temp); + + sc->sc_flags.status_suspend = 0; +} + +static void musbotg_wakeup_peer(struct musbotg_softc *sc) { uint8_t temp; @@ -243,7 +361,7 @@ musbotg_set_address(struct musbotg_softc } static uint8_t -musbotg_setup_rx(struct musbotg_td *td) +musbotg_dev_ctrl_setup_rx(struct musbotg_td *td) { struct musbotg_softc *sc; struct usb_device_request req; @@ -253,6 +371,15 @@ musbotg_setup_rx(struct musbotg_td *td) /* get pointer to softc */ sc = MUSBOTG_PC2SC(td->pc); + if (td->channel == -1) + td->channel = musbotg_channel_alloc(sc, td); + + /* EP0 is busy, wait */ + if (td->channel == -1) + return (1); + + DPRINTFN(1, "ep_no=%d\n", td->channel); + /* select endpoint 0 */ MUSB2_WRITE_1(sc, MUSB2_REG_EPINDEX, 0); @@ -269,8 +396,10 @@ musbotg_setup_rx(struct musbotg_td *td) /* do not stall at this point */ td->did_stall = 1; /* wait for interrupt */ + DPRINTFN(0, "CSR0 DATAEND\n"); goto not_complete; } + if (csr & MUSB2_MASK_CSR0L_SENTSTALL) { /* clear SENTSTALL */ MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, 0); @@ -289,6 +418,7 @@ musbotg_setup_rx(struct musbotg_td *td) sc->sc_ep0_busy = 0; } if (sc->sc_ep0_busy) { + DPRINTFN(0, "EP0 BUSY\n"); goto not_complete; } if (!(csr & MUSB2_MASK_CSR0L_RXPKTRDY)) { @@ -337,6 +467,8 @@ musbotg_setup_rx(struct musbotg_td *td) } else { sc->sc_dv_addr = 0xFF; } + + musbotg_channel_free(sc, td); return (0); /* complete */ not_complete: @@ -350,10 +482,117 @@ not_complete: return (1); /* not complete */ } +static uint8_t +musbotg_host_ctrl_setup_tx(struct musbotg_td *td) +{ + struct musbotg_softc *sc; + struct usb_device_request req; + uint8_t csr, csrh; + + /* get pointer to softc */ + sc = MUSBOTG_PC2SC(td->pc); + + if (td->channel == -1) + td->channel = musbotg_channel_alloc(sc, td); + + /* EP0 is busy, wait */ + if (td->channel == -1) + return (1); + + DPRINTFN(1, "ep_no=%d\n", td->channel); + + /* select endpoint 0 */ + MUSB2_WRITE_1(sc, MUSB2_REG_EPINDEX, 0); + + /* read out FIFO status */ + csr = MUSB2_READ_1(sc, MUSB2_REG_TXCSRL); + DPRINTFN(4, "csr=0x%02x\n", csr); + + /* Not ready yet yet */ + if (csr & MUSB2_MASK_CSR0L_TXPKTRDY) + return (1); + + /* Failed */ + if (csr & (MUSB2_MASK_CSR0L_RXSTALL | + MUSB2_MASK_CSR0L_ERROR)) + { + /* Clear status bit */ + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, 0); + DPRINTFN(1, "error bit set, csr=0x%02x\n", csr); + td->error = 1; + } + + if (csr & MUSB2_MASK_CSR0L_NAKTIMO) { + DPRINTFN(1, "NAK timeout\n"); + + if (csr & MUSB2_MASK_CSR0L_TXFIFONEMPTY) { + csrh = MUSB2_READ_1(sc, MUSB2_REG_TXCSRH); + csrh |= MUSB2_MASK_CSR0H_FFLUSH; + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRH, csrh); + csr = MUSB2_READ_1(sc, MUSB2_REG_TXCSRL); + if (csr & MUSB2_MASK_CSR0L_TXFIFONEMPTY) { + csrh = MUSB2_READ_1(sc, MUSB2_REG_TXCSRH); + csrh |= MUSB2_MASK_CSR0H_FFLUSH; + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRH, csrh); + csr = MUSB2_READ_1(sc, MUSB2_REG_TXCSRL); + } + } + + csr &= ~MUSB2_MASK_CSR0L_NAKTIMO; + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, csr); + + td->error = 1; + } + + if (td->error) { + musbotg_channel_free(sc, td); + return (0); + } + + /* Fifo is not empty and there is no NAK timeout */ + if (csr & MUSB2_MASK_CSR0L_TXPKTRDY) + return (1); + + /* check if we are complete */ + if (td->remainder == 0) { + /* we are complete */ + musbotg_channel_free(sc, td); + return (0); + } + + /* copy data into real buffer */ + usbd_copy_out(td->pc, 0, &req, sizeof(req)); + + /* send data */ + bus_space_write_multi_1(sc->sc_io_tag, sc->sc_io_hdl, + MUSB2_REG_EPFIFO(0), (void *)&req, sizeof(req)); + + /* update offset and remainder */ + td->offset += sizeof(req); + td->remainder -= sizeof(req); + + + MUSB2_WRITE_1(sc, MUSB2_REG_TXNAKLIMIT, MAX_NAK_TO); + MUSB2_WRITE_1(sc, MUSB2_REG_TXFADDR(0), td->dev_addr); + MUSB2_WRITE_1(sc, MUSB2_REG_TXHADDR(0), td->haddr); + MUSB2_WRITE_1(sc, MUSB2_REG_TXHUBPORT(0), td->hport); + MUSB2_WRITE_1(sc, MUSB2_REG_TXTI, td->transfer_type); + + /* write command */ + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, + MUSB2_MASK_CSR0L_TXPKTRDY | + MUSB2_MASK_CSR0L_SETUPPKT); + + /* Just to be consistent, not used above */ + td->transaction_started = 1; + + return (1); /* in progress */ +} + /* Control endpoint only data handling functions (RX/TX/SYNC) */ static uint8_t -musbotg_setup_data_rx(struct musbotg_td *td) +musbotg_dev_ctrl_data_rx(struct musbotg_td *td) { struct usb_page_search buf_res; struct musbotg_softc *sc; @@ -496,7 +735,7 @@ musbotg_setup_data_rx(struct musbotg_td } static uint8_t -musbotg_setup_data_tx(struct musbotg_td *td) +musbotg_dev_ctrl_data_tx(struct musbotg_td *td) { struct usb_page_search buf_res; struct musbotg_softc *sc; @@ -614,77 +853,943 @@ musbotg_setup_data_tx(struct musbotg_td } static uint8_t -musbotg_setup_status(struct musbotg_td *td) +musbotg_host_ctrl_data_rx(struct musbotg_td *td) { + struct usb_page_search buf_res; struct musbotg_softc *sc; + uint16_t count; uint8_t csr; + uint8_t got_short; /* get pointer to softc */ sc = MUSBOTG_PC2SC(td->pc); + if (td->channel == -1) + td->channel = musbotg_channel_alloc(sc, td); + + /* EP0 is busy, wait */ + if (td->channel == -1) + return (1); + + DPRINTFN(1, "ep_no=%d\n", td->channel); + /* select endpoint 0 */ MUSB2_WRITE_1(sc, MUSB2_REG_EPINDEX, 0); - if (sc->sc_ep0_busy) { - sc->sc_ep0_busy = 0; - sc->sc_ep0_cmd |= MUSB2_MASK_CSR0L_DATAEND; - MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, sc->sc_ep0_cmd); - sc->sc_ep0_cmd = 0; - } /* read out FIFO status */ csr = MUSB2_READ_1(sc, MUSB2_REG_TXCSRL); DPRINTFN(4, "csr=0x%02x\n", csr); - if (csr & MUSB2_MASK_CSR0L_DATAEND) { - /* wait for interrupt */ - return (1); /* not complete */ + got_short = 0; + if (!td->transaction_started) { + td->transaction_started = 1; + + MUSB2_WRITE_1(sc, MUSB2_REG_RXNAKLIMIT, MAX_NAK_TO); + + MUSB2_WRITE_1(sc, MUSB2_REG_RXFADDR(0), + td->dev_addr); + MUSB2_WRITE_1(sc, MUSB2_REG_RXHADDR(0), td->haddr); + MUSB2_WRITE_1(sc, MUSB2_REG_RXHUBPORT(0), td->hport); + MUSB2_WRITE_1(sc, MUSB2_REG_RXTI, td->transfer_type); + + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, + MUSB2_MASK_CSR0L_REQPKT); + + return (1); + } + + if (csr & MUSB2_MASK_CSR0L_NAKTIMO) { + csr &= ~MUSB2_MASK_CSR0L_REQPKT; + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, csr); + + csr &= ~MUSB2_MASK_CSR0L_NAKTIMO; + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, csr); + + td->error = 1; + } + + /* Failed */ + if (csr & (MUSB2_MASK_CSR0L_RXSTALL | + MUSB2_MASK_CSR0L_ERROR)) + { + /* Clear status bit */ + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, 0); + DPRINTFN(1, "error bit set, csr=0x%02x\n", csr); + td->error = 1; + } + + if (td->error) { + musbotg_channel_free(sc, td); + return (0); /* we are complete */ + } + + if (!(csr & MUSB2_MASK_CSR0L_RXPKTRDY)) + return (1); /* not yet */ + + /* get the packet byte count */ + count = MUSB2_READ_2(sc, MUSB2_REG_RXCOUNT); + + /* verify the packet byte count */ + if (count != td->max_frame_size) { + if (count < td->max_frame_size) { + /* we have a short packet */ + td->short_pkt = 1; + got_short = 1; + } else { + /* invalid USB packet */ + td->error = 1; + musbotg_channel_free(sc, td); + return (0); /* we are complete */ + } + } + /* verify the packet byte count */ + if (count > td->remainder) { + /* invalid USB packet */ + td->error = 1; + musbotg_channel_free(sc, td); + return (0); /* we are complete */ + } + while (count > 0) { + uint32_t temp; + + usbd_get_page(td->pc, td->offset, &buf_res); + + /* get correct length */ + if (buf_res.length > count) { + buf_res.length = count; + } + /* check for unaligned memory address */ + if (USB_P2U(buf_res.buffer) & 3) { + + temp = count & ~3; + + if (temp) { + /* receive data 4 bytes at a time */ + bus_space_read_multi_4(sc->sc_io_tag, sc->sc_io_hdl, + MUSB2_REG_EPFIFO(0), sc->sc_bounce_buf, + temp / 4); + } + temp = count & 3; + if (temp) { + /* receive data 1 byte at a time */ + bus_space_read_multi_1(sc->sc_io_tag, sc->sc_io_hdl, + MUSB2_REG_EPFIFO(0), + (void *)(&sc->sc_bounce_buf[count / 4]), temp); + } + usbd_copy_in(td->pc, td->offset, + sc->sc_bounce_buf, count); + + /* update offset and remainder */ + td->offset += count; + td->remainder -= count; + break; + } + /* check if we can optimise */ + if (buf_res.length >= 4) { + + /* receive data 4 bytes at a time */ + bus_space_read_multi_4(sc->sc_io_tag, sc->sc_io_hdl, + MUSB2_REG_EPFIFO(0), buf_res.buffer, + buf_res.length / 4); + + temp = buf_res.length & ~3; + + /* update counters */ + count -= temp; + td->offset += temp; + td->remainder -= temp; + continue; + } + /* receive data */ + bus_space_read_multi_1(sc->sc_io_tag, sc->sc_io_hdl, + MUSB2_REG_EPFIFO(0), buf_res.buffer, buf_res.length); + + /* update counters */ + count -= buf_res.length; + td->offset += buf_res.length; + td->remainder -= buf_res.length; + } + + csr &= ~MUSB2_MASK_CSR0L_RXPKTRDY; + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, csr); + + /* check if we are complete */ + if ((td->remainder == 0) || got_short) { + if (td->short_pkt) { + /* we are complete */ + + musbotg_channel_free(sc, td); + return (0); + } + /* else need to receive a zero length packet */ + } + + td->transaction_started = 1; + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, + MUSB2_MASK_CSR0L_REQPKT); + + return (1); /* not complete */ +} + +static uint8_t +musbotg_host_ctrl_data_tx(struct musbotg_td *td) +{ + struct usb_page_search buf_res; + struct musbotg_softc *sc; + uint16_t count; + uint8_t csr, csrh; + + /* get pointer to softc */ + sc = MUSBOTG_PC2SC(td->pc); + + if (td->channel == -1) + td->channel = musbotg_channel_alloc(sc, td); + + /* No free EPs */ + if (td->channel == -1) + return (1); + + DPRINTFN(1, "ep_no=%d\n", td->channel); + + /* select endpoint */ + MUSB2_WRITE_1(sc, MUSB2_REG_EPINDEX, 0); + + /* read out FIFO status */ + csr = MUSB2_READ_1(sc, MUSB2_REG_TXCSRL); + DPRINTFN(4, "csr=0x%02x\n", csr); + + if (csr & (MUSB2_MASK_CSR0L_RXSTALL | + MUSB2_MASK_CSR0L_ERROR)) { + /* clear status bits */ + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, 0); + td->error = 1; + } + + if (csr & MUSB2_MASK_CSR0L_NAKTIMO ) { + + if (csr & MUSB2_MASK_CSR0L_TXFIFONEMPTY) { + csrh = MUSB2_READ_1(sc, MUSB2_REG_TXCSRH); + csrh |= MUSB2_MASK_CSR0H_FFLUSH; + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRH, csrh); + csr = MUSB2_READ_1(sc, MUSB2_REG_TXCSRL); + if (csr & MUSB2_MASK_CSR0L_TXFIFONEMPTY) { + csrh = MUSB2_READ_1(sc, MUSB2_REG_TXCSRH); + csrh |= MUSB2_MASK_CSR0H_FFLUSH; + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRH, csrh); + csr = MUSB2_READ_1(sc, MUSB2_REG_TXCSRL); + } + } + + csr &= ~MUSB2_MASK_CSR0L_NAKTIMO; + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, csr); + + td->error = 1; + } + + + if (td->error) { + musbotg_channel_free(sc, td); + return (0); /* complete */ + } + + /* + * Wait while FIFO is empty. + * Do not flush it because it will cause transactions + * with size more then packet size. It might upset + * some devices + */ + if (csr & MUSB2_MASK_CSR0L_TXFIFONEMPTY) + return (1); + + /* Packet still being processed */ + if (csr & MUSB2_MASK_CSR0L_TXPKTRDY) + return (1); + + if (td->transaction_started) { + /* check remainder */ + if (td->remainder == 0) { + if (td->short_pkt) { + musbotg_channel_free(sc, td); + return (0); /* complete */ + } + /* else we need to transmit a short packet */ + } + + /* We're not complete - more transactions required */ + td->transaction_started = 0; + } + + /* check for short packet */ + count = td->max_frame_size; + if (td->remainder < count) { + /* we have a short packet */ + td->short_pkt = 1; + count = td->remainder; + } + + while (count > 0) { + uint32_t temp; + + usbd_get_page(td->pc, td->offset, &buf_res); + + /* get correct length */ + if (buf_res.length > count) { + buf_res.length = count; + } + /* check for unaligned memory address */ + if (USB_P2U(buf_res.buffer) & 3) { + + usbd_copy_out(td->pc, td->offset, + sc->sc_bounce_buf, count); + + temp = count & ~3; + + if (temp) { + /* transmit data 4 bytes at a time */ + bus_space_write_multi_4(sc->sc_io_tag, + sc->sc_io_hdl, MUSB2_REG_EPFIFO(0), + sc->sc_bounce_buf, temp / 4); + } + temp = count & 3; + if (temp) { + /* receive data 1 byte at a time */ + bus_space_write_multi_1(sc->sc_io_tag, sc->sc_io_hdl, + MUSB2_REG_EPFIFO(0), + ((void *)&sc->sc_bounce_buf[count / 4]), temp); + } + /* update offset and remainder */ + td->offset += count; + td->remainder -= count; + break; + } + /* check if we can optimise */ + if (buf_res.length >= 4) { + + /* transmit data 4 bytes at a time */ + bus_space_write_multi_4(sc->sc_io_tag, sc->sc_io_hdl, + MUSB2_REG_EPFIFO(0), buf_res.buffer, + buf_res.length / 4); + + temp = buf_res.length & ~3; + + /* update counters */ + count -= temp; + td->offset += temp; + td->remainder -= temp; + continue; + } + /* transmit data */ + bus_space_write_multi_1(sc->sc_io_tag, sc->sc_io_hdl, + MUSB2_REG_EPFIFO(0), buf_res.buffer, + buf_res.length); + + /* update counters */ + count -= buf_res.length; + td->offset += buf_res.length; + td->remainder -= buf_res.length; + } + + /* Function address */ + MUSB2_WRITE_1(sc, MUSB2_REG_TXFADDR(0), td->dev_addr); + MUSB2_WRITE_1(sc, MUSB2_REG_TXHADDR(0), td->haddr); + MUSB2_WRITE_1(sc, MUSB2_REG_TXHUBPORT(0), td->hport); + MUSB2_WRITE_1(sc, MUSB2_REG_TXTI, td->transfer_type); + + /* TX NAK timeout */ + MUSB2_WRITE_1(sc, MUSB2_REG_TXNAKLIMIT, MAX_NAK_TO); + + /* write command */ + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, + MUSB2_MASK_CSR0L_TXPKTRDY); + + td->transaction_started = 1; + + return (1); /* not complete */ +} + +static uint8_t +musbotg_dev_ctrl_status(struct musbotg_td *td) +{ + struct musbotg_softc *sc; + uint8_t csr; + + /* get pointer to softc */ + sc = MUSBOTG_PC2SC(td->pc); + + /* select endpoint 0 */ + MUSB2_WRITE_1(sc, MUSB2_REG_EPINDEX, 0); + + if (sc->sc_ep0_busy) { + sc->sc_ep0_busy = 0; + sc->sc_ep0_cmd |= MUSB2_MASK_CSR0L_DATAEND; + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, sc->sc_ep0_cmd); + sc->sc_ep0_cmd = 0; + } + /* read out FIFO status */ + csr = MUSB2_READ_1(sc, MUSB2_REG_TXCSRL); + + DPRINTFN(4, "csr=0x%02x\n", csr); + + if (csr & MUSB2_MASK_CSR0L_DATAEND) { + /* wait for interrupt */ + return (1); /* not complete */ + } + if (sc->sc_dv_addr != 0xFF) { + /* write function address */ + musbotg_set_address(sc, sc->sc_dv_addr); + } + + musbotg_channel_free(sc, td); + return (0); /* complete */ +} + +static uint8_t +musbotg_host_ctrl_status_rx(struct musbotg_td *td) +{ + struct musbotg_softc *sc; + uint8_t csr, csrh; + + /* get pointer to softc */ + sc = MUSBOTG_PC2SC(td->pc); + + if (td->channel == -1) + td->channel = musbotg_channel_alloc(sc, td); + + /* EP0 is busy, wait */ + if (td->channel == -1) + return (1); + + DPRINTFN(1, "ep_no=%d\n", td->channel); + + /* select endpoint 0 */ + MUSB2_WRITE_1(sc, MUSB2_REG_EPINDEX, 0); + + if (!td->transaction_started) { + MUSB2_WRITE_1(sc, MUSB2_REG_RXFADDR(0), + td->dev_addr); + + MUSB2_WRITE_1(sc, MUSB2_REG_RXHADDR(0), td->haddr); + MUSB2_WRITE_1(sc, MUSB2_REG_RXHUBPORT(0), td->hport); + MUSB2_WRITE_1(sc, MUSB2_REG_RXTI, td->transfer_type); + + /* RX NAK timeout */ + MUSB2_WRITE_1(sc, MUSB2_REG_RXNAKLIMIT, MAX_NAK_TO); + + td->transaction_started = 1; + + /* Disable PING */ + csrh = MUSB2_READ_1(sc, MUSB2_REG_RXCSRH); + csrh |= MUSB2_MASK_CSR0H_PING_DIS; + MUSB2_WRITE_1(sc, MUSB2_REG_RXCSRH, csrh); + + /* write command */ + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, + MUSB2_MASK_CSR0L_STATUSPKT | + MUSB2_MASK_CSR0L_REQPKT); + + return (1); /* Just started */ + + } + + csr = MUSB2_READ_1(sc, MUSB2_REG_TXCSRL); + + DPRINTFN(4, "IN STATUS csr=0x%02x\n", csr); + + if (csr & MUSB2_MASK_CSR0L_RXPKTRDY) { + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, + MUSB2_MASK_CSR0L_RXPKTRDY_CLR); + musbotg_channel_free(sc, td); + return (0); /* complete */ + } + + if (csr & MUSB2_MASK_CSR0L_NAKTIMO) { + csr &= ~ (MUSB2_MASK_CSR0L_STATUSPKT | + MUSB2_MASK_CSR0L_REQPKT); + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, csr); + + csr &= ~MUSB2_MASK_CSR0L_NAKTIMO; + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, csr); + td->error = 1; + } + + /* Failed */ + if (csr & (MUSB2_MASK_CSR0L_RXSTALL | + MUSB2_MASK_CSR0L_ERROR)) + { + /* Clear status bit */ + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, 0); + DPRINTFN(1, "error bit set, csr=0x%02x\n", csr); + td->error = 1; + } + + if (td->error) { + musbotg_channel_free(sc, td); + return (0); + } + + return (1); /* Not ready yet */ +} + +static uint8_t +musbotg_host_ctrl_status_tx(struct musbotg_td *td) +{ + struct musbotg_softc *sc; + uint8_t csr; + + /* get pointer to softc */ + sc = MUSBOTG_PC2SC(td->pc); + + if (td->channel == -1) + td->channel = musbotg_channel_alloc(sc, td); + + /* EP0 is busy, wait */ + if (td->channel == -1) + return (1); + + DPRINTFN(1, "ep_no=%d/%d [%d@%d.%d/%02x]\n", td->channel, td->transaction_started, + td->dev_addr,td->haddr,td->hport, td->transfer_type); + + /* select endpoint 0 */ + MUSB2_WRITE_1(sc, MUSB2_REG_EPINDEX, 0); + + csr = MUSB2_READ_1(sc, MUSB2_REG_TXCSRL); + DPRINTFN(4, "csr=0x%02x\n", csr); + + /* Not yet */ + if (csr & MUSB2_MASK_CSR0L_TXPKTRDY) + return (1); + + /* Failed */ + if (csr & (MUSB2_MASK_CSR0L_RXSTALL | + MUSB2_MASK_CSR0L_ERROR)) + { + /* Clear status bit */ + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, 0); + DPRINTFN(1, "error bit set, csr=0x%02x\n", csr); + td->error = 1; + musbotg_channel_free(sc, td); + return (0); /* complete */ + } + + if (td->transaction_started) { + musbotg_channel_free(sc, td); + return (0); /* complete */ + } + + MUSB2_WRITE_1(sc, MUSB2_REG_RXCSRH, MUSB2_MASK_CSR0H_PING_DIS); + + MUSB2_WRITE_1(sc, MUSB2_REG_TXFADDR(0), td->dev_addr); + MUSB2_WRITE_1(sc, MUSB2_REG_TXHADDR(0), td->haddr); + MUSB2_WRITE_1(sc, MUSB2_REG_TXHUBPORT(0), td->hport); + MUSB2_WRITE_1(sc, MUSB2_REG_TXTI, td->transfer_type); + + /* TX NAK timeout */ + MUSB2_WRITE_1(sc, MUSB2_REG_TXNAKLIMIT, MAX_NAK_TO); + + td->transaction_started = 1; + + /* write command */ + MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, + MUSB2_MASK_CSR0L_STATUSPKT | + MUSB2_MASK_CSR0L_TXPKTRDY); + + return (1); /* wait for interrupt */ +} + +static uint8_t +musbotg_dev_data_rx(struct musbotg_td *td) +{ + struct usb_page_search buf_res; + struct musbotg_softc *sc; + uint16_t count; + uint8_t csr; + uint8_t to; + uint8_t got_short; + + to = 8; /* don't loop forever! */ + got_short = 0; + + /* get pointer to softc */ + sc = MUSBOTG_PC2SC(td->pc); + + if (td->channel == -1) + td->channel = musbotg_channel_alloc(sc, td); + + /* EP0 is busy, wait */ + if (td->channel == -1) + return (1); + + /* select endpoint */ + MUSB2_WRITE_1(sc, MUSB2_REG_EPINDEX, td->channel); + +repeat: + /* read out FIFO status */ + csr = MUSB2_READ_1(sc, MUSB2_REG_RXCSRL); + + DPRINTFN(4, "csr=0x%02x\n", csr); + + /* clear overrun */ + if (csr & MUSB2_MASK_CSRL_RXOVERRUN) { + /* make sure we don't clear "RXPKTRDY" */ + MUSB2_WRITE_1(sc, MUSB2_REG_RXCSRL, + MUSB2_MASK_CSRL_RXPKTRDY); + } + + /* check status */ + if (!(csr & MUSB2_MASK_CSRL_RXPKTRDY)) + return (1); /* not complete */ + + /* get the packet byte count */ + count = MUSB2_READ_2(sc, MUSB2_REG_RXCOUNT); + + DPRINTFN(4, "count=0x%04x\n", count); + + /* + * Check for short or invalid packet: + */ + if (count != td->max_frame_size) { + if (count < td->max_frame_size) { + /* we have a short packet */ + td->short_pkt = 1; + got_short = 1; + } else { + /* invalid USB packet */ + td->error = 1; + musbotg_channel_free(sc, td); + return (0); /* we are complete */ + } + } + /* verify the packet byte count */ + if (count > td->remainder) { + /* invalid USB packet */ + td->error = 1; + musbotg_channel_free(sc, td); + return (0); /* we are complete */ + } + while (count > 0) { + uint32_t temp; + + usbd_get_page(td->pc, td->offset, &buf_res); + + /* get correct length */ + if (buf_res.length > count) { + buf_res.length = count; + } + /* check for unaligned memory address */ + if (USB_P2U(buf_res.buffer) & 3) { + + temp = count & ~3; + + if (temp) { + /* receive data 4 bytes at a time */ + bus_space_read_multi_4(sc->sc_io_tag, sc->sc_io_hdl, + MUSB2_REG_EPFIFO(td->channel), sc->sc_bounce_buf, + temp / 4); + } + temp = count & 3; + if (temp) { + /* receive data 1 byte at a time */ + bus_space_read_multi_1(sc->sc_io_tag, + sc->sc_io_hdl, MUSB2_REG_EPFIFO(td->channel), + ((void *)&sc->sc_bounce_buf[count / 4]), temp); *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** _______________________________________________ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscribe@freebsd.org" From owner-freebsd-usb@FreeBSD.ORG Thu Oct 24 06:30:04 2013 Return-Path: Delivered-To: freebsd-usb@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 129EBAD5 for ; Thu, 24 Oct 2013 06:30:04 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 01AEC2CDC for ; Thu, 24 Oct 2013 06:30:04 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.7/8.14.7) with ESMTP id r9O6U3C1073753 for ; Thu, 24 Oct 2013 06:30:03 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.7/8.14.7/Submit) id r9O6U3R5073752; Thu, 24 Oct 2013 06:30:03 GMT (envelope-from gnats) Date: Thu, 24 Oct 2013 06:30:03 GMT Message-Id: <201310240630.r9O6U3R5073752@freefall.freebsd.org> To: freebsd-usb@FreeBSD.org Cc: From: dfilter@FreeBSD.ORG (dfilter service) Subject: Re: usb/182936: commit references a PR X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: dfilter service List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Oct 2013 06:30:04 -0000 The following reply was made to PR usb/182936; it has been noted by GNATS. From: dfilter@FreeBSD.ORG (dfilter service) To: bug-followup@FreeBSD.org Cc: Subject: Re: usb/182936: commit references a PR Date: Thu, 24 Oct 2013 06:26:00 +0000 (UTC) Author: hselasky Date: Thu Oct 24 06:25:52 2013 New Revision: 257042 URL: http://svnweb.freebsd.org/changeset/base/257042 Log: MFC r256500: Add new USB ID. PR: usb/182936 Modified: stable/9/sys/dev/usb/usbdevs stable/9/sys/dev/usb/wlan/if_run.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/usb/usbdevs ============================================================================== --- stable/9/sys/dev/usb/usbdevs Thu Oct 24 06:22:43 2013 (r257041) +++ stable/9/sys/dev/usb/usbdevs Thu Oct 24 06:25:52 2013 (r257042) @@ -1228,6 +1228,7 @@ product BELKIN F5D8055V2 0x825b F5D8055 product BELKIN F5D9050V3 0x905b F5D9050 ver 3 Wireless Adapter product BELKIN2 F5U002 0x0002 F5U002 Parallel printer product BELKIN F6D4050V1 0x935a F6D4050 v1 +product BELKIN F6D4050V2 0x935b F6D4050 v2 /* Billionton products */ product BILLIONTON USB100 0x0986 USB100N 10/100 FastEthernet Modified: stable/9/sys/dev/usb/wlan/if_run.c ============================================================================== --- stable/9/sys/dev/usb/wlan/if_run.c Thu Oct 24 06:22:43 2013 (r257041) +++ stable/9/sys/dev/usb/wlan/if_run.c Thu Oct 24 06:25:52 2013 (r257042) @@ -147,6 +147,7 @@ static const STRUCT_USB_HOST_ID run_devs RUN_DEV(BELKIN, F5D8055), RUN_DEV(BELKIN, F5D8055V2), RUN_DEV(BELKIN, F6D4050V1), + RUN_DEV(BELKIN, F6D4050V2), RUN_DEV(BELKIN, RT2870_1), RUN_DEV(BELKIN, RT2870_2), RUN_DEV(CISCOLINKSYS, AE1000), _______________________________________________ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscribe@freebsd.org" From owner-freebsd-usb@FreeBSD.ORG Thu Oct 24 07:40:02 2013 Return-Path: Delivered-To: freebsd-usb@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 75B39CBC for ; Thu, 24 Oct 2013 07:40:02 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 636F12126 for ; Thu, 24 Oct 2013 07:40:02 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.7/8.14.7) with ESMTP id r9O7e2s8098268 for ; Thu, 24 Oct 2013 07:40:02 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.7/8.14.7/Submit) id r9O7e225098246; Thu, 24 Oct 2013 07:40:02 GMT (envelope-from gnats) Date: Thu, 24 Oct 2013 07:40:02 GMT Message-Id: <201310240740.r9O7e225098246@freefall.freebsd.org> To: freebsd-usb@FreeBSD.org Cc: From: dfilter@FreeBSD.ORG (dfilter service) Subject: Re: usb/181987: commit references a PR X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: dfilter service List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Oct 2013 07:40:02 -0000 The following reply was made to PR usb/181987; it has been noted by GNATS. From: dfilter@FreeBSD.ORG (dfilter service) To: bug-followup@FreeBSD.org Cc: Subject: Re: usb/181987: commit references a PR Date: Thu, 24 Oct 2013 07:38:40 +0000 (UTC) Author: hselasky Date: Thu Oct 24 07:38:32 2013 New Revision: 257043 URL: http://svnweb.freebsd.org/changeset/base/257043 Log: MFC r256548: Correct programming of XXX_MAXP register. This register is 16-bit wide and not 8-bit. Fix support for isochronous transfers in USB host mode. Fix a whitespace while at it. PR: usb/181987 Approved by: re (Xin Li) Modified: stable/10/sys/dev/usb/controller/musb_otg.c stable/10/sys/dev/usb/controller/musb_otg.h Directory Properties: stable/10/sys/ (props changed) Modified: stable/10/sys/dev/usb/controller/musb_otg.c ============================================================================== --- stable/10/sys/dev/usb/controller/musb_otg.c Thu Oct 24 06:25:52 2013 (r257042) +++ stable/10/sys/dev/usb/controller/musb_otg.c Thu Oct 24 07:38:32 2013 (r257043) @@ -1661,7 +1661,7 @@ repeat: } /* Max packet size */ - MUSB2_WRITE_1(sc, MUSB2_REG_TXMAXP, td->max_packet); + MUSB2_WRITE_2(sc, MUSB2_REG_TXMAXP, td->reg_max_packet); /* write command */ MUSB2_WRITE_1(sc, MUSB2_REG_TXCSRL, @@ -1726,13 +1726,16 @@ repeat: td->hport); /* RX NAK timeout */ - MUSB2_WRITE_1(sc, MUSB2_REG_RXNAKLIMIT, MAX_NAK_TO); + if (td->transfer_type & MUSB2_MASK_TI_PROTO_ISOC) + MUSB2_WRITE_1(sc, MUSB2_REG_RXNAKLIMIT, 0); + else + MUSB2_WRITE_1(sc, MUSB2_REG_RXNAKLIMIT, MAX_NAK_TO); /* Protocol, speed, device endpoint */ MUSB2_WRITE_1(sc, MUSB2_REG_RXTI, td->transfer_type); /* Max packet size */ - MUSB2_WRITE_1(sc, MUSB2_REG_RXMAXP, td->max_packet); + MUSB2_WRITE_2(sc, MUSB2_REG_RXMAXP, td->reg_max_packet); /* Data Toggle */ csrh = MUSB2_READ_1(sc, MUSB2_REG_RXCSRH); @@ -1938,7 +1941,7 @@ musbotg_host_data_tx(struct musbotg_td * return (0); /* complete */ } - if (csr & MUSB2_MASK_CSRL_TXNAKTO ) { + if (csr & MUSB2_MASK_CSRL_TXNAKTO) { /* * Flush TX FIFO before clearing NAK TO */ @@ -2069,13 +2072,16 @@ musbotg_host_data_tx(struct musbotg_td * td->hport); /* TX NAK timeout */ - MUSB2_WRITE_1(sc, MUSB2_REG_TXNAKLIMIT, MAX_NAK_TO); + if (td->transfer_type & MUSB2_MASK_TI_PROTO_ISOC) + MUSB2_WRITE_1(sc, MUSB2_REG_TXNAKLIMIT, 0); + else + MUSB2_WRITE_1(sc, MUSB2_REG_TXNAKLIMIT, MAX_NAK_TO); /* Protocol, speed, device endpoint */ MUSB2_WRITE_1(sc, MUSB2_REG_TXTI, td->transfer_type); /* Max packet size */ - MUSB2_WRITE_1(sc, MUSB2_REG_TXMAXP, td->max_packet); + MUSB2_WRITE_2(sc, MUSB2_REG_TXMAXP, td->reg_max_packet); if (!td->transaction_started) { csrh = MUSB2_READ_1(sc, MUSB2_REG_TXCSRH); @@ -2406,7 +2412,6 @@ musbotg_setup_standard_chain(struct usb_ if (xfer->flags_int.usb_mode == USB_MODE_HOST) { speed = usbd_get_speed(xfer->xroot->udev); - xfer_type = xfer->endpoint->edesc->bmAttributes & UE_XFERTYPE; switch (speed) { case USB_SPEED_LOW: @@ -2444,7 +2449,6 @@ musbotg_setup_standard_chain(struct usb_ } temp.transfer_type |= ep_no; - td->max_packet = xfer->max_packet_size; td->toggle = xfer->endpoint->toggle_next; } @@ -2469,9 +2473,9 @@ musbotg_setup_standard_chain(struct usb_ x = 0; } - if (x != xfer->nframes) { - tx = 0; + tx = 0; + if (x != xfer->nframes) { if (xfer->endpointno & UE_DIR_IN) tx = 1; @@ -2532,9 +2536,14 @@ musbotg_setup_standard_chain(struct usb_ } else { - /* regular data transfer */ - - temp.short_pkt = (xfer->flags.force_short_xfer) ? 0 : 1; + if (xfer->flags_int.isochronous_xfr) { + /* isochronous data transfer */ + /* don't force short */ + temp.short_pkt = 1; + } else { + /* regular data transfer */ + temp.short_pkt = (xfer->flags.force_short_xfer ? 0 : 1); + } } musbotg_setup_standard_chain_sub(&temp); @@ -3158,7 +3167,12 @@ musbotg_init(struct musbotg_softc *sc) if (dynfifo) { if (frx && (temp <= nrx)) { - if (temp < 8) { + if (temp == 1) { + frx = 12; /* 4K */ + MUSB2_WRITE_1(sc, MUSB2_REG_RXFIFOSZ, + MUSB2_VAL_FIFOSZ_4096 | + MUSB2_MASK_FIFODB); + } else if (temp < 8) { frx = 10; /* 1K */ MUSB2_WRITE_1(sc, MUSB2_REG_RXFIFOSZ, MUSB2_VAL_FIFOSZ_512 | @@ -3175,7 +3189,12 @@ musbotg_init(struct musbotg_softc *sc) offset += (1 << frx); } if (ftx && (temp <= ntx)) { - if (temp < 8) { + if (temp == 1) { + ftx = 12; /* 4K */ + MUSB2_WRITE_1(sc, MUSB2_REG_TXFIFOSZ, + MUSB2_VAL_FIFOSZ_4096 | + MUSB2_MASK_FIFODB); + } else if (temp < 8) { ftx = 10; /* 1K */ MUSB2_WRITE_1(sc, MUSB2_REG_TXFIFOSZ, MUSB2_VAL_FIFOSZ_512 | @@ -4042,7 +4061,7 @@ musbotg_xfer_setup(struct usb_setup_para * reasonable dummies: */ parm->hc_max_packet_size = 0x400; - parm->hc_max_frame_size = 0x400; + parm->hc_max_frame_size = 0xc00; if ((parm->methods == &musbotg_device_isoc_methods) || (parm->methods == &musbotg_device_intr_methods)) @@ -4117,6 +4136,8 @@ musbotg_xfer_setup(struct usb_setup_para /* init TD */ td->max_frame_size = xfer->max_frame_size; + td->reg_max_packet = xfer->max_packet_size | + ((xfer->max_packet_count - 1) << 11); td->ep_no = ep_no; td->obj_next = last_obj; Modified: stable/10/sys/dev/usb/controller/musb_otg.h ============================================================================== --- stable/10/sys/dev/usb/controller/musb_otg.h Thu Oct 24 06:25:52 2013 (r257042) +++ stable/10/sys/dev/usb/controller/musb_otg.h Thu Oct 24 07:38:32 2013 (r257043) @@ -316,9 +316,9 @@ struct musbotg_td { uint32_t offset; uint32_t remainder; uint16_t max_frame_size; /* packet_size * mult */ + uint16_t reg_max_packet; uint8_t ep_no; uint8_t transfer_type; - uint8_t max_packet; uint8_t error:1; uint8_t alt_next:1; uint8_t short_pkt:1; _______________________________________________ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscribe@freebsd.org" From owner-freebsd-usb@FreeBSD.ORG Thu Oct 24 07:50:01 2013 Return-Path: Delivered-To: freebsd-usb@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id BB3362B2 for ; Thu, 24 Oct 2013 07:50:01 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id A7DA221CF for ; Thu, 24 Oct 2013 07:50:01 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.7/8.14.7) with ESMTP id r9O7o1MF000169 for ; Thu, 24 Oct 2013 07:50:01 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.7/8.14.7/Submit) id r9O7o1He000168; Thu, 24 Oct 2013 07:50:01 GMT (envelope-from gnats) Date: Thu, 24 Oct 2013 07:50:01 GMT Message-Id: <201310240750.r9O7o1He000168@freefall.freebsd.org> To: freebsd-usb@FreeBSD.org Cc: From: dfilter@FreeBSD.ORG (dfilter service) Subject: Re: usb/182936: commit references a PR X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: dfilter service List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Oct 2013 07:50:01 -0000 The following reply was made to PR usb/182936; it has been noted by GNATS. From: dfilter@FreeBSD.ORG (dfilter service) To: bug-followup@FreeBSD.org Cc: Subject: Re: usb/182936: commit references a PR Date: Thu, 24 Oct 2013 07:43:42 +0000 (UTC) Author: hselasky Date: Thu Oct 24 07:43:35 2013 New Revision: 257044 URL: http://svnweb.freebsd.org/changeset/base/257044 Log: MFC r256500: Add new USB ID. PR: usb/182936 Approved by: re (Xin LI) Obtainedrom: Modified: stable/10/sys/dev/usb/usbdevs stable/10/sys/dev/usb/wlan/if_run.c Directory Properties: stable/10/sys/ (props changed) Modified: stable/10/sys/dev/usb/usbdevs ============================================================================== --- stable/10/sys/dev/usb/usbdevs Thu Oct 24 07:38:32 2013 (r257043) +++ stable/10/sys/dev/usb/usbdevs Thu Oct 24 07:43:35 2013 (r257044) @@ -1259,6 +1259,7 @@ product BELKIN F5D8055V2 0x825b F5D8055 product BELKIN F5D9050V3 0x905b F5D9050 ver 3 Wireless Adapter product BELKIN2 F5U002 0x0002 F5U002 Parallel printer product BELKIN F6D4050V1 0x935a F6D4050 v1 +product BELKIN F6D4050V2 0x935b F6D4050 v2 /* Billionton products */ product BILLIONTON USB100 0x0986 USB100N 10/100 FastEthernet Modified: stable/10/sys/dev/usb/wlan/if_run.c ============================================================================== --- stable/10/sys/dev/usb/wlan/if_run.c Thu Oct 24 07:38:32 2013 (r257043) +++ stable/10/sys/dev/usb/wlan/if_run.c Thu Oct 24 07:43:35 2013 (r257044) @@ -147,6 +147,7 @@ static const STRUCT_USB_HOST_ID run_devs RUN_DEV(BELKIN, F5D8055), RUN_DEV(BELKIN, F5D8055V2), RUN_DEV(BELKIN, F6D4050V1), + RUN_DEV(BELKIN, F6D4050V2), RUN_DEV(BELKIN, RT2870_1), RUN_DEV(BELKIN, RT2870_2), RUN_DEV(CISCOLINKSYS, AE1000), _______________________________________________ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscribe@freebsd.org" From owner-freebsd-usb@FreeBSD.ORG Thu Oct 24 18:06:46 2013 Return-Path: Delivered-To: freebsd-usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 2557C97C for ; Thu, 24 Oct 2013 18:06:46 +0000 (UTC) (envelope-from brock@cottonwoodcomputer.com) Received: from brookie.cotcomsol.com (brookie.cotcomsol.com [69.144.98.236]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id CA8092F9D for ; Thu, 24 Oct 2013 18:06:45 +0000 (UTC) Received: from [172.16.4.10] (timon [172.16.16.1]) (authenticated bits=0) by brookie.cotcomsol.com (8.14.7/8.14.7) with ESMTP id r9OI6cTv002985 (version=TLSv1/SSLv3 cipher=DHE-DSS-CAMELLIA256-SHA bits=256 verify=NO); Thu, 24 Oct 2013 12:06:39 -0600 (MDT) (envelope-from brock@cottonwoodcomputer.com) Message-ID: <526961AE.2020807@cottonwoodcomputer.com> Date: Thu, 24 Oct 2013 12:06:38 -0600 From: Brock Williams Organization: Cottonwood Computer Solutions, Inc. User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130623 Thunderbird/17.0.7 MIME-Version: 1.0 To: Hans Petter Selasky Subject: Re: need help with eGalax USB touch screen, will pay References: <5266F874.1090009@cottonwoodcomputer.com> <5268B504.4020209@bitfrost.no> In-Reply-To: <5268B504.4020209@bitfrost.no> X-Enigmail-Version: 1.5.2 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="93o33RVaFsTcrdxgVCat0rAtwaF8RPIVv" X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.4.3 (brookie.cotcomsol.com [172.16.16.2]); Thu, 24 Oct 2013 12:06:39 -0600 (MDT) X-Spam-Status: No, score=-1.0 required=8.0 tests=ALL_TRUSTED autolearn=disabled version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on brookie.cotcomsol.com Cc: freebsd-usb@freebsd.org X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Oct 2013 18:06:46 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --93o33RVaFsTcrdxgVCat0rAtwaF8RPIVv Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On 10/23/2013 11:49 PM, Hans Petter Selasky wrote: >=20 > Hi, >=20 > I'm a bit busy nowadays. However, do you have the documentation for > the protocol this device uses? Will you provide a hardware unit to the > developer? >=20 > It might be that /usr/ports/multimedia/webcamd will pick this device > up like a linux event device under "/dev". Only that the X-org part is > missing for that. I've added quite some touchscreen drivers to webcamd.= >=20 > --HPS Thank you for the pointer, I had no idea webcamd supported things other than webcams. It does appear to work out of the box... When I attach it to the correct ugen device it creates /dev/input/event0 which does output something when the screen is touched. Do you have any info on hooking Xorg up to the /dev/input/event0? I believe this would be xf86-input-evdev on the Linux side but I can't seem to find anything to use it in FreeBSD... Brock --=20 Brock Williams brock@cottonwoodcomputer.com Cottonwood Computer Solutions, Inc. www.cottonwoodcomputer.com 406-896-4910 --93o33RVaFsTcrdxgVCat0rAtwaF8RPIVv Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) iQEcBAEBAgAGBQJSaWGuAAoJEAej1IqUgufIh3sH/3zO59ivQhcAm8UFHnKZXZOF zZWPxxB7WKVB2LBOMfrY3sBJYuf1H/zFibCkdg92GJ4pUm121egSJQh6f6Mcc5KA qEXGDsp5r+tsWmIyG2jA8leCE3yZaLh5sZ44lib+zx43goF4id0TRrHS9uW27++S tJ5ADN32qDgDApiWb/EIaCKi7ho/4fnHXx39EbDPUnoVEtNLkoWFMJQsO5DqZDXv 5jHDJfqWUdB2SOWCSLytSohC+eQOE9z+3arMFrXWc56ARjbhg4RXvzkvZZ4IlAW9 /mQ3rL0pz9KdLKmeYgMTgKgYMeK4GrkW5ivNwuMKi4i3SWYlQKlcFPCi50uT0fQ= =OytX -----END PGP SIGNATURE----- --93o33RVaFsTcrdxgVCat0rAtwaF8RPIVv-- From owner-freebsd-usb@FreeBSD.ORG Thu Oct 24 19:01:33 2013 Return-Path: Delivered-To: freebsd-usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 64833DE7 for ; Thu, 24 Oct 2013 19:01:33 +0000 (UTC) (envelope-from hps@bitfrost.no) Received: from mta.bitpro.no (mta.bitpro.no [92.42.64.202]) by mx1.freebsd.org (Postfix) with ESMTP id 22A8A2364 for ; Thu, 24 Oct 2013 19:01:32 +0000 (UTC) Received: from mail.lockless.no (mail.lockless.no [46.29.221.38]) by mta.bitpro.no (Postfix) with ESMTP id 02F7D7A120; Thu, 24 Oct 2013 21:01:31 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail.lockless.no (Postfix) with ESMTP id 2D7D98F6F4B; Thu, 24 Oct 2013 21:01:58 +0200 (CEST) X-Virus-Scanned: by amavisd-new-2.6.4 (20090625) (Debian) at lockless.no Received: from mail.lockless.no ([127.0.0.1]) by localhost (mail.lockless.no [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id EEPyTPKIvn9N; Thu, 24 Oct 2013 21:01:57 +0200 (CEST) Received: from laptop015.home.selasky.org (cm-176.74.213.204.customer.telag.net [176.74.213.204]) by mail.lockless.no (Postfix) with ESMTPSA id 7618B8F6DCD; Thu, 24 Oct 2013 21:01:57 +0200 (CEST) Message-ID: <52696ED0.5080003@bitfrost.no> Date: Thu, 24 Oct 2013 21:02:40 +0200 From: Hans Petter Selasky Organization: Bitfrost A/S User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/20130522 Thunderbird/17.0.6 MIME-Version: 1.0 To: Brock Williams Subject: Re: need help with eGalax USB touch screen, will pay References: <5266F874.1090009@cottonwoodcomputer.com> <5268B504.4020209@bitfrost.no> <526961AE.2020807@cottonwoodcomputer.com> In-Reply-To: <526961AE.2020807@cottonwoodcomputer.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-usb@freebsd.org X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Oct 2013 19:01:33 -0000 On 10/24/13 20:06, Brock Williams wrote: > Thank you for the pointer, I had no idea webcamd supported things > other than webcams. It does appear to work out of the box... When I > attach it to the correct ugen device it creates /dev/input/event0 > which does output something when the screen is touched. > > Do you have any info on hooking Xorg up to the /dev/input/event0? I > believe this would be xf86-input-evdev on the Linux side but I can't > seem to find anything to use it in FreeBSD... Hi, I have not looked into xf86-input-evdev. Maybe someone else knows? --HPS From owner-freebsd-usb@FreeBSD.ORG Fri Oct 25 15:40:01 2013 Return-Path: Delivered-To: freebsd-usb@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 72C6DF8B for ; Fri, 25 Oct 2013 15:40:01 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 393962E75 for ; Fri, 25 Oct 2013 15:40:01 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.7/8.14.7) with ESMTP id r9PFe1Sg041998 for ; Fri, 25 Oct 2013 15:40:01 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.7/8.14.7/Submit) id r9PFe1Ex041997; Fri, 25 Oct 2013 15:40:01 GMT (envelope-from gnats) Resent-Date: Fri, 25 Oct 2013 15:40:01 GMT Resent-Message-Id: <201310251540.r9PFe1Ex041997@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-usb@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Alexander Panyushkin Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id CCCEAABF for ; Fri, 25 Oct 2013 15:30:30 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from oldred.freebsd.org (oldred.freebsd.org [8.8.178.121]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id BAE222DEF for ; Fri, 25 Oct 2013 15:30:30 +0000 (UTC) Received: from oldred.freebsd.org ([127.0.1.6]) by oldred.freebsd.org (8.14.5/8.14.7) with ESMTP id r9PFUU3g011975 for ; Fri, 25 Oct 2013 15:30:30 GMT (envelope-from nobody@oldred.freebsd.org) Received: (from nobody@localhost) by oldred.freebsd.org (8.14.5/8.14.5/Submit) id r9PFUU2g011965; Fri, 25 Oct 2013 15:30:30 GMT (envelope-from nobody) Message-Id: <201310251530.r9PFUU2g011965@oldred.freebsd.org> Date: Fri, 25 Oct 2013 15:30:30 GMT From: Alexander Panyushkin To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Subject: usb/183302: USB no proper work X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Oct 2013 15:40:01 -0000 >Number: 183302 >Category: usb >Synopsis: USB no proper work >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-usb >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Oct 25 15:40:00 UTC 2013 >Closed-Date: >Last-Modified: >Originator: Alexander Panyushkin >Release: FreeBSD 10.0-BETA1 #0 r257109 amd64 >Organization: none >Environment: FreeBSD scorpion.kiev.ua 10.0-BETA1 FreeBSD 10.0-BETA1 #0 r257109: Fri Oct 25 14:50:53 EEST 2013 root@scorpion.kiev.ua:/usr/obj/usr/src/sys/Kernel amd64 >Description: USB mouse in Xorg persistently disconnects and reconnects about every minute. at uhub0, port 1, addr 2 (disconnected) on usbus0 3 buttons and [XYZ] coordinates ID=0 ugen0.2: at usbus0 (disconnected) at uhub0, port 1, addr 2 (disconnected) ugen0.2: at usbus0 on usbus0 3 buttons and [XYZ] coordinates ID=0 at uhub0, port 1, addr 2 (disconnected) on usbus0 3 buttons and [XYZ] coordinates ID=0 [...] After first attach USB Flash drive - is good mount. After detach and reattach, USB Flash drive not detected any more and USB mouse disconnects. >How-To-Repeat: >Fix: >Release-Note: >Audit-Trail: >Unformatted: