From: sashiko-bot@kernel.org
To: "Alexander Stein" <alexander.stein@ew.tq-group.com>
Cc: robh@kernel.org, conor+dt@kernel.org, devicetree@vger.kernel.org,
Frank.Li@kernel.org, imx@lists.linux.dev
Subject: Re: [PATCH 2/2] ARM: dts: mba6ulx: Add USB hub node
Date: Thu, 13 Aug 2026 12:52:22 +0000 [thread overview]
Message-ID: <20260813125222.BDA121F000E9@smtp.kernel.org> (raw)
In-Reply-To: <20260813121250.3993187-3-alexander.stein@ew.tq-group.com>
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [High] I2C GPIO expander used as reset-gpios for onboard_usb_dev causes PM phase mismatch, breaking reset timing during resume.
--
--- Patch [2]: [PATCH 2/2] ARM: dts: mba6ulx: Add USB hub node ---
commit 52d9db850f98165215d9ab4ba1bee0bd2993c73e
Author: Alexander Stein <alexander.stein@ew.tq-group.com>
ARM: dts: mba6ulx: Add USB hub node
This commit replaces a fixed regulator previously used for USB hub reset with
a proper onboard USB hub device node that utilizes reset-gpios.
> diff --git a/arch/arm/boot/dts/nxp/imx/mba6ulx.dtsi b/arch/arm/boot/dts/nxp/imx/mba6ulx.dtsi
> index 244376b38835a..322fbd82531e6 100644
> --- a/arch/arm/boot/dts/nxp/imx/mba6ulx.dtsi
> +++ b/arch/arm/boot/dts/nxp/imx/mba6ulx.dtsi
[ ... ]
> @@ -379,10 +369,18 @@ &usbotg1 {
> /* 7-port usb hub */
> /* id, pwr, oc pins not connected */
> &usbotg2 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> disable-over-current;
> - vbus-supply = <®_otg2vbus_5v0>;
> dr_mode = "host";
> status = "okay";
> +
> + hub_2_0: hub@1 {
> + compatible = "usb424,2517";
> + reg = <1>;
> + reset-gpios = <&expander_out1 0 GPIO_ACTIVE_LOW>;
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[Severity: High]
Does using an I2C GPIO expander for the onboard USB hub reset cause a PM phase
mismatch during system suspend and resume?
The onboard_usb_dev driver uses suspend_late() and resume_early() power
management operations, while standard I2C GPIO expanders typically use normal
suspend() and resume() operations.
During system suspend, the expander suspends first (in the suspend phase) and
puts its regmap into cache_only mode. When the hub driver suspends later in
suspend_late(), its reset GPIO assertion is merely cached.
During system resume, the hub driver attempts to deassert the reset in
resume_early() and waits for power_on_delay_us. Because the expander is
still in cache_only mode, the physical pin remains unchanged.
Later, during the normal resume phase, the expander finally syncs its cache
to hardware and physically deasserts the reset pin. This entirely bypasses the
hub driver's power_on_delay_us wait and causes a race with the USB host
controller, which could result in enumeration failures upon wake.
> + vdd-supply = <®_mba6ul_3v3>;
> + };
> };
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260813121250.3993187-1-alexander.stein@ew.tq-group.com?part=2
next prev parent reply other threads:[~2026-08-13 12:52 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-13 12:12 [PATCH 0/2] TQMa6UL[L]x[L] DT improvements Alexander Stein
2026-08-13 12:12 ` [PATCH 1/2] ARM: dts: mba6ulx: Add Ethernet PHY interrupt support Alexander Stein
2026-08-13 12:51 ` sashiko-bot
2026-08-13 13:28 ` Alexander Stein
2026-08-13 12:12 ` [PATCH 2/2] ARM: dts: mba6ulx: Add USB hub node Alexander Stein
2026-08-13 12:52 ` sashiko-bot [this message]
2026-08-13 14:00 ` Alexander Stein
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260813125222.BDA121F000E9@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=Frank.Li@kernel.org \
--cc=alexander.stein@ew.tq-group.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=imx@lists.linux.dev \
--cc=robh@kernel.org \
--cc=sashiko-reviews@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox