[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <c052860b-c239-43a6-b05d-c8495bc1c731@kernel.org>
Date: Sat, 23 Aug 2025 13:42:09 +0200
From: Sven Peter <sven@...nel.org>
To: Thinh Nguyen <Thinh.Nguyen@...opsys.com>
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Rob Herring <robh@...nel.org>, Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>, Felipe Balbi <balbi@...nel.org>,
Janne Grunau <j@...nau.net>, Alyssa Rosenzweig <alyssa@...enzweig.io>,
Neal Gompa <neal@...pa.dev>, Vinod Koul <vkoul@...nel.org>,
Kishon Vijay Abraham I <kishon@...nel.org>,
Heikki Krogerus <heikki.krogerus@...ux.intel.com>,
Philipp Zabel <p.zabel@...gutronix.de>,
"linux-usb@...r.kernel.org" <linux-usb@...r.kernel.org>,
"devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"asahi@...ts.linux.dev" <asahi@...ts.linux.dev>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"linux-phy@...ts.infradead.org" <linux-phy@...ts.infradead.org>
Subject: Re: [PATCH RFC 05/22] usb: dwc3: apple: Do not use host-vbus-glitches
workaround
On 22.08.25 00:28, Thinh Nguyen wrote:
> On Thu, Aug 21, 2025, Sven Peter wrote:
>> From: Janne Grunau <j@...nau.net>
[...]
>> /*
>> * Some platforms need to power off all Root hub ports immediately after DWC3 set to host
>> * mode to avoid VBUS glitch happen when xhci get reset later.
>> + * On Apple platforms we must not touch any MMIO yet because dwc3
>> + * will not work correctly before its PHY has been initialized.
>
> This doesn't make sense, the phy should've been initialized by this
> point. We already access MMIO before this. Even your [PATCH RFC 7/22]
> attempts to access MMIO before this, yet accessing here causes problem.
> Do we know when the phy get initialized then?
You're absolutely right, this doesn't make any sense!
dwc3_power_off_all_roothub_ports uses ioremap which will map the XHCI
region as Device-nGnRE. That just doesn't work on these machines and
actually explains the SErrors.
Resources on these machines generally have the IORESOURCE_MEM_NONPOSTED
flag set (via the nonposted-mmio dt property) and then use ioremap_np to
map them using Device-nGnRnE.
Best,
Sven
Powered by blists - more mailing lists