ARM: at91: pm: fix MCKx restore routine
authorNicolas Ferre <nicolas.ferre@microchip.com>
Wed, 27 Aug 2025 14:54:26 +0000 (16:54 +0200)
committerClaudiu Beznea <claudiu.beznea@tuxon.dev>
Sat, 30 Aug 2025 08:38:55 +0000 (11:38 +0300)
commit296302d3d81360e09fa956e9be9edc8223b69a12
tree9c311a5901ecfce6cbfea620f3ecb21fcea0f1d0
parent6a3f890196b31b166a3e3e32735ff5c8116661cc
ARM: at91: pm: fix MCKx restore routine

The at91_mckx_ps_restore() assembly function is responsible for setting
back MCKx system bus clocks after exiting low power modes.

Fix a typo and use tmp3 variable instead of tmp2 to correctly set MCKx
to previously saved state.
Tmp2 was used without the needed changes in CSS and DIV. Moreover the
required bit 7, telling that MCR register's content is to be changed
(CMD/write), was not set.

Fix function comment to match tmp variables actually used.

Signed-off-by: Nicolas Ferre <nicolas.ferre@microchip.com>
Fixes: 28eb1d40fe57 ("ARM: at91: pm: add support for MCK1..4 save/restore for ulp modes")
Link: https://lore.kernel.org/r/20250827145427.46819-3-nicolas.ferre@microchip.com
Reviewed-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
[claudiu.beznea: s/sate/state in commit description]
Signed-off-by: Claudiu Beznea <claudiu.beznea@tuxon.dev>
arch/arm/mach-at91/pm_suspend.S