Hi, On Sat, May 30, 2026 at 12:02, Marek Vasut <[email protected]> wrote:
> On 5/29/26 2:22 PM, Balaji Selvanathan wrote: >> Problem: The first "run fastboot" works and enumerates on the host. >> Subsequent runs fail, with no USB enumeration observed. >> >> With flat DTS configurations, the peripheral device inherits >> power-domains from its parent (glue) node, as both reference the >> same DT node. During teardown after "fastboot continue", >> device_remove() of peripheral device invokes dev_power_domain_off(), >> which powers off the shared USB GDSC. >> >> As a result, the next "run fastboot" fails because the power >> domain is left in an uninitialized state. >> >> Add DM_FLAG_LEAVE_PD_ON to dwc3_generic_peripheral to prevent >> power domain shutdown during peripheral removal. > It seems the driver does not handle its power domains correctly, > inhibiting PD control is not a fix, sorry. I agree with Marek here. Especially since this is a generic driver. I had a somewhat similar problem on amlogic devices where I could only run fastboot once. I've solved this via https://lore.kernel.org/all/[email protected]/ Maybe you can explore something similar instead?

