Skip to contentSkip to conversation

Patch "ARM: EXYNOS: Properly skip unitialized parent clock in power domain on" has been added to the 4.4-stable tree

PATCH [email protected] 1 participant 1 message May 6, 2016

Subsystems (4)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

ARM: EXYNOS: Properly skip unitialized parent clock in power domain on

to the 4.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
arm-exynos-properly-skip-unitialized-parent-clock-in-power-domain-on.patch
and it can be found in the queue-4.4 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From a0a966b83873f33778710a4fc59240244b0734a5 Mon Sep 17 00:00:00 2001

From: Krzysztof Kozlowski <[email protected]>
Date: Fri, 22 Apr 2016 09:26:52 +0200
Subject: ARM: EXYNOS: Properly skip unitialized parent clock in power domain on

From: Krzysztof Kozlowski <[email protected]>

commit a0a966b83873f33778710a4fc59240244b0734a5 upstream.

We want to skip reparenting a clock on turning on power domain, if we do not have the parent yet. The parent is obtained when turning the domain off. However due to a typo, the loop is continued on IS_ERR() of clock being reparented, not on the IS_ERR() of the parent.

Theoretically this could lead to OOPS on first turn on of a power domain, if there was no turn off before. Practically that should never happen because all power domains are turned on by default (reset value, bootloader does not turn off them usually) so the first action will be always turn off.

Fixes 29e5eea06bc1 ("ARM: EXYNOS: Get current parent clock for power domain on/off")
---
 arch/arm/mach-exynos/pm_domains.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
arch/arm/mach-exynos/pm_domains.c +1 -1
@@ -92,7 +92,7 @@ static int exynos_pd_power(struct generi
 			if (IS_ERR(pd->clk[i]))
 				break;
 
-			if (IS_ERR(pd->clk[i]))
+			if (IS_ERR(pd->pclk[i]))
 				continue; /* Skip on first power up */
 			if (clk_set_parent(pd->clk[i], pd->pclk[i]))
 				pr_err("%s: error setting parent to clock%d\n",

Patches currently in stable-queue which might be from [email protected] are

queue-4.4/arm-exynos-properly-skip-unitialized-parent-clock-in-power-domain-on.patch