Hi Fabio
On Fri, Jun 18, 2021 at 7:21 PM Fabio Estevam [off-list ref] wrote:
Hi Shengjiu,
On Fri, Jun 18, 2021 at 7:10 AM Shengjiu Wang [off-list ref] wrote:
quoted
There is an unhandled interrupt after suspend, which cause endless
interrupt when system resume, so system may hang.
Disable all interrupts in runtime suspend callback to avoid above
issue.
Fixe tag?
ok, I will add it.
quoted
+ ret = regmap_update_bits(xcvr->regmap, FSL_XCVR_EXT_IER0,
+ FSL_XCVR_IRQ_EARC_ALL, 0);
+ if (ret < 0)
+ dev_err(dev, "Failed to clear IER0: %d\n", ret);
+
The operations in _suspend() are usually balanced with the ones in _resume().
Shouldn't you enable the interrupts in resume() then?
No, as you said below, the interrupts are enabled in fsl_xcvr_prepare().
so this change should not block anything.
I see that the interrupts are currently enabled inside fsl_xcvr_prepare().