Commit 3cae7d18 authored by Nicolas Ferre's avatar Nicolas Ferre Committed by Claudiu Beznea
Browse files

ARM: at91: pm: save and restore ACR during PLL disable/enable



Add a new word in assembly to store ACR value during the calls
to at91_plla_disable/at91_plla_enable macros and use it.

Signed-off-by: default avatarNicolas Ferre <nicolas.ferre@microchip.com>
[cristian.birsan@microchip.com: remove ACR_DEFAULT_PLLA loading]
Signed-off-by: default avatarCristian Birsan <cristian.birsan@microchip.com>
Link: https://lore.kernel.org/r/20250827145427.46819-4-nicolas.ferre@microchip.com


Reviewed-by: default avatarAlexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: default avatarClaudiu Beznea <claudiu.beznea@tuxon.dev>
parent 296302d3
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -689,6 +689,10 @@ sr_dis_exit:
	bic	tmp2, tmp2, #AT91_PMC_PLL_UPDT_ID
	str	tmp2, [pmc, #AT91_PMC_PLL_UPDT]

	/* save acr */
	ldr	tmp2, [pmc, #AT91_PMC_PLL_ACR]
	str	tmp2, .saved_acr

	/* save div. */
	mov	tmp1, #0
	ldr	tmp2, [pmc, #AT91_PMC_PLL_CTRL0]
@@ -758,7 +762,7 @@ sr_dis_exit:
	str	tmp1, [pmc, #AT91_PMC_PLL_UPDT]

	/* step 2. */
	ldr	tmp1, =AT91_PMC_PLL_ACR_DEFAULT_PLLA
	ldr	tmp1, .saved_acr
	str	tmp1, [pmc, #AT91_PMC_PLL_ACR]

	/* step 3. */
@@ -1207,6 +1211,8 @@ ENDPROC(at91_pm_suspend_in_sram)
#endif
.saved_mckr:
	.word 0
.saved_acr:
	.word 0
.saved_pllar:
	.word 0
.saved_sam9_lpr: