From owner-freebsd-arm@freebsd.org Sat Sep 19 21:48:23 2020 Return-Path: Delivered-To: freebsd-arm@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 843343F0596 for ; Sat, 19 Sep 2020 21:48:23 +0000 (UTC) (envelope-from marklmi@yahoo.com) Received: from sonic309-21.consmr.mail.gq1.yahoo.com (sonic309-21.consmr.mail.gq1.yahoo.com [98.137.65.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4Bv4864PWVz4YFV for ; Sat, 19 Sep 2020 21:48:22 +0000 (UTC) (envelope-from marklmi@yahoo.com) X-YMail-OSG: GuwnXgsVM1n3rpxb5dutNZpT9tZ8wdsMqW98fkile9IcOWOJGjKcU8W31pre2N2 ZghqIPE2Sbf9M6Tl9wz4roCNZEa9JICVCaIQe.HPR.T4FcGaG1k1Q0SgDsxA1fIU_P6VGPp7MdoJ Mqbk9z2G4FFgnmcwg.6IjeQU_OcjuWjFMu0lIntGSVLrJIODErTjzqjfYfFhH31pngt4i7C5DXPD ysWZ9DvaXCndgjHQGjJJBqO_pcJSMvoiSExVT2AiYhse9D8Kbnzec7epLnTFs.t3DzM9qxrPVwOc BEmvFCfqQjx.0RnZoOjfLgrt8V3ZgEzceCyAUvstp3b18CTq6dlulZCfV7XM3urN8RtTvy13EnZF H.yZdvHmO9EQq.ZnTVgz2zk_9XMVs9LCL7cQs1bX2ajXV21Plfz6j7940KLDp_EcxraGCTFQfvtt V_sGPTpyTzfxYDFwpAaywQ.bvQU143b8c7._d_xIjDUiPSC_1CtOXdNrNOWxsOOifHiskUTVFWCY hh3IZ0gZnM4gYcg7HiraOXvQQQYYDU8YLOe5aGt_Zgn9EVcdLIkdA.h7FEfKY5JsrvidCc9x2UpV k1BHdHFfq7XU7fyZAgNT50DPJe2gKNkt.2ukAfFgpqkNlPTStc1J7WefLNuZ5N.eHLN0MeFFGw7k GcLVbfG8wZB4SHAdw4Ac3ZFsyN1SpObQn_AF6Kici51s.a2ArcIy_kQR2JYkqYwRQRPGH9_HOBmT dhiDWT0H8CczP8Hfu6tlxVGMpe6d8vsX0qNLHz.n5YUw06P.Cb10u9uqg19JOV8mC8Rv29fusrD2 Icf4n1EIL_IKUd1VCKyVmKrm7IJBBms4JIsKAhcdr9y_zkFVzqmugiTGQpBLHEUl.JQZKCGFo4zP 7csJdqeDPDJ4qRSlc1R4fE9d3QE9xkwae1iloMJpD0mxFGK9Wcu3Gr8ac4hoc_TaYZFfLkZM7mZ_ 0CuQquNFsbZCFq7dY_UVVIr8CT3qw1Dteg5Iv4Z7tvct.f6mjibWUSLGWEJ3Jf1bhlsf6m0DoCyX CwKZT9YAeLrkjq8dF72BSQp04fZ57BRn2jwgheRMmQs_Yod2e2etlKDOkRTVKu1jPg7dgka3cDsk F4TrWYn2c_dzFv6aarXa.Vmnw4VrJkPr8O6q85X0XOj7tOPxy4ft4EXwld.ovYUcsG8vt.2XqGaU P.EyH.9.Cq6raHRBMxKga5uF_cc60OudevdCQ6zkoRQunRSmdNio9yCvZCKEDurwC14aZqvAdZeq eEFsXAAZ4r8lt2ll5.n2Yv5gwm1Z4XQtBj8d82tw.jZZ8UfzrGsFemeQP6FejjKldvNSpAJl66hy RcTfnxMijKdwAg7w9VfZfkJFTI1p8rkgKpiOHZx.UTajTKA_Wsz9AzuoizvFdqnqWr6kPqFq8wZ. Yfym6j7chEqyo8c95nPTCroJjFbGuAn9.VkYyWw1poDhQec_PSMbWEXOIEytdRaoIM34l7YoriBF VJePke3sL5k_T3oEaCOmeMnr79Y2uH6emb2cRG.WwlI7abQlGKMOgN5wNv5jSqd0asIAgU8pbVdk - Received: from sonic.gate.mail.ne1.yahoo.com by sonic309.consmr.mail.gq1.yahoo.com with HTTP; Sat, 19 Sep 2020 21:48:20 +0000 Received: by smtp401.mail.ne1.yahoo.com (VZM Hermes SMTP Server) with ESMTPA ID 2a4d098d62011aeba5fde0a05a097d70; Sat, 19 Sep 2020 21:48:15 +0000 (UTC) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.120.23.2.1\)) Subject: Re: Comment #135 for bugzilla 237666 : a USB3-handling problem with a investigatory fix for a cortex-a72 context From: Mark Millard In-Reply-To: <8BAF3798-4BB4-4C5E-87FC-ECD1458910A2@yahoo.com> Date: Sat, 19 Sep 2020 14:48:13 -0700 Cc: freebsd-arm Content-Transfer-Encoding: 7bit Message-Id: <9E243DD6-1D11-4135-B752-0559AA4904DB@yahoo.com> References: <6E618C3D-12DF-429E-A249-5BAB90FC6B15.ref@yahoo.com> <6E618C3D-12DF-429E-A249-5BAB90FC6B15@yahoo.com> <866bd652-5a8b-7500-b1e0-7528c035048b@selasky.org> <578faf26-6042-91ec-c639-2bca17105fae@selasky.org> <723E6915-94F5-417C-B4AF-EEEBFBDF6162@yahoo.com> <565258A0-BEE1-48F8-9851-E6C7CF7ADAE7@yahoo.com> <75af04ec-0021-3575-40bf-c5ab9b6d4703@selasky.org> <9cf87718-9d4a-60ca-004f-5818371c937b@selasky.org> <47D6CA1E-F842-47B6-97E0-C87B33610C64@yahoo.com> <8BAF3798-4BB4-4C5E-87FC-ECD1458910A2@yahoo.com> To: Hans Petter Selasky X-Mailer: Apple Mail (2.3608.120.23.2.1) X-Rspamd-Queue-Id: 4Bv4864PWVz4YFV X-Spamd-Bar: --- X-Spamd-Result: default: False [-3.39 / 15.00]; FREEMAIL_FROM(0.00)[yahoo.com]; MV_CASE(0.50)[]; R_SPF_ALLOW(-0.20)[+ptr:yahoo.com]; TO_DN_ALL(0.00)[]; DKIM_TRACE(0.00)[yahoo.com:+]; RCPT_COUNT_TWO(0.00)[2]; DMARC_POLICY_ALLOW(-0.50)[yahoo.com,reject]; NEURAL_HAM_SHORT(-0.85)[-0.846]; FROM_EQ_ENVFROM(0.00)[]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+]; FREEMAIL_ENVFROM(0.00)[yahoo.com]; ASN(0.00)[asn:36647, ipnet:98.137.64.0/20, country:US]; MID_RHS_MATCH_FROM(0.00)[]; DWL_DNSWL_NONE(0.00)[yahoo.com:dkim]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.03)[-1.028]; R_DKIM_ALLOW(-0.20)[yahoo.com:s=s2048]; FROM_HAS_DN(0.00)[]; NEURAL_HAM_LONG(-1.02)[-1.020]; MIME_GOOD(-0.10)[text/plain]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[98.137.65.147:from]; RWL_MAILSPIKE_POSSIBLE(0.00)[98.137.65.147:from]; RCVD_COUNT_TWO(0.00)[2]; MAILMAN_DEST(0.00)[freebsd-arm] X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 19 Sep 2020 21:48:23 -0000 On 2020-Sep-19, at 14:18, Mark Millard wrote: > On 2020-Sep-19, at 13:54, Mark Millard wrote: > > . . . > > The test booted just fine, no "Resetting controller" notices or the > like. So now I have just: > > # svnlite diff /usr/src/sys/dev/usb/controller/xhci.c > Index: /usr/src/sys/dev/usb/controller/xhci.c > =================================================================== > --- /usr/src/sys/dev/usb/controller/xhci.c (revision 363590) > +++ /usr/src/sys/dev/usb/controller/xhci.c (working copy) > @@ -431,6 +431,7 @@ > > phwr->hwr_ring_seg[0].qwEvrsTablePtr = htole64(addr); > phwr->hwr_ring_seg[0].dwEvrsTableSize = htole32(XHCI_MAX_EVENTS); > + usb_bus_mem_flush_all(&sc->sc_bus, &xhci_iterate_hw_softc); > > DPRINTF("ERDP(0)=0x%016llx\n", (unsigned long long)addr); > > > for the issue. (So my earlier powerpc* SYNC comments are likely junk.) Comment draft added: # svnlite diff /usr/src/sys/dev/usb/controller/xhci.c Index: /usr/src/sys/dev/usb/controller/xhci.c =================================================================== --- /usr/src/sys/dev/usb/controller/xhci.c (revision 363590) +++ /usr/src/sys/dev/usb/controller/xhci.c (working copy) @@ -431,6 +431,17 @@ phwr->hwr_ring_seg[0].qwEvrsTablePtr = htole64(addr); phwr->hwr_ring_seg[0].dwEvrsTableSize = htole32(XHCI_MAX_EVENTS); + /* + * For bugzilla 237666: + * According to extensible-host-controler-interface-usb-xhci.pdf , + * the later XWRITE4's to XHCI_ERSTBA_LO and _HI lead to the xhci + * needing to copy the qwEvrsTablePtr and dwEvrsTableSize + * values above at that time (as the xhci initializes its event + * ring support). This is before the event ring starts to pay + * attention to Run/Stop. Thus, make sure the values are + * observable to the xhci before that point. + */ + usb_bus_mem_flush_all(&sc->sc_bus, &xhci_iterate_hw_softc); DPRINTF("ERDP(0)=0x%016llx\n", (unsigned long long)addr); === Mark Millard marklmi at yahoo.com ( dsl-only.net went away in early 2018-Mar)