On Thu, Dec 14, 2023 at 08:46:27PM -0500, Richard Acayan wrote:
On Thu, Dec 14, 2023 at 08:43:17AM +0100, Johan Hovold wrote:
The USB DP/DM HS PHY interrupts need to be provided by the PDC interrupt controller in order to be able to wake the system up from low-power states and to be able to detect disconnect events, which requires triggering on falling edges.
A recent commit updated the trigger type but failed to change the interrupt provider as required. This leads to the current Linux driver failing to probe instead of printing an error during suspend and USB wakeup not working as intended.
Fixes: de3b3de30999 ("arm64: dts: qcom: sdm670: fix USB wakeup interrupt types") Fixes: 07c8ded6e373 ("arm64: dts: qcom: add sdm670 and pixel 3a device trees") Cc: stable@vger.kernel.org # 6.2 Cc: Richard Acayan mailingradian@gmail.com Signed-off-by: Johan Hovold johan+linaro@kernel.org
Tested-by: Richard Acayan mailingradian@gmail.com
On a Pixel 3a, plugging in a USB cable doesn't wake up the device (presumably because there is no wakeup-source property) but this gets USB working again on linux-next.
Thanks for testing. And yes, the wakeup interrupts will indeed not be enabled at system suspend unless the wakeup-source property is there. Did you try adding it?
Johan