]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
net: ethernet: ti: cpsw: fix cpts irq after suspend
authorGrygorii Strashko <grygorii.strashko@ti.com>
Thu, 12 Nov 2020 11:15:46 +0000 (13:15 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 24 Nov 2020 12:38:48 +0000 (13:38 +0100)
commit53c1c7636434021345e1531c29655757cd496d62
treef40dac10f72dfd95ee8393154d1e3c03686c9774
parentd23a621f16d584b2923868001f54309011296379
net: ethernet: ti: cpsw: fix cpts irq after suspend

[ Upstream commit 2b5668733050fca85f0ab458c5b91732f9496a38 ]

Depending on the SoC/platform the CPSW can completely lose context after a
suspend/resume cycle, including CPSW wrapper (WR) which will cause reset of
WR_C0_MISC_EN register, so CPTS IRQ will became disabled.

Fix it by moving CPTS IRQ enabling in cpsw_ndo_open() where CPTS is
actually started.

Fixes: 84ea9c0a95d7 ("net: ethernet: ti: cpsw: enable cpts irq")
Reported-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Tested-by: Tony Lindgren <tony@atomide.com>
Link: https://lore.kernel.org/r/20201112111546.20343-1-grygorii.strashko@ti.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/ethernet/ti/cpsw.c
drivers/net/ethernet/ti/cpsw_new.c