summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Walmsley <paul@pwsan.com>2010-02-23 08:09:35 +0300
committerPaul Walmsley <paul@pwsan.com>2010-02-25 03:45:15 +0300
commitad9561609c41f704fd82facd37127e957bcaea94 (patch)
tree13599ee81f5c6b673d72b1fb126f79e386234ab7
parent43b40992ce21def8d5957f32d7ddb728af89bfce (diff)
downloadlinux-ad9561609c41f704fd82facd37127e957bcaea94.tar.xz
OMAP clockdomain: if no autodeps exist, don't try to add or remove them
_clkdm_add_autodeps() and _clkdm_del_autodeps() will attempt to dereference a NULL pointer if no autodeps were supplied to clkdm_init(). Based on a patch from Roel Kluin <roel.kluin@gmail.com> - thanks Roel. Signed-off-by: Paul Walmsley <paul@pwsan.com> Cc: Roel Kluin <roel.kluin@gmail.com>
-rw-r--r--arch/arm/mach-omap2/clockdomain.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/clockdomain.c b/arch/arm/mach-omap2/clockdomain.c
index de4278c19029..b26d30a14303 100644
--- a/arch/arm/mach-omap2/clockdomain.c
+++ b/arch/arm/mach-omap2/clockdomain.c
@@ -173,6 +173,9 @@ static void _clkdm_add_autodeps(struct clockdomain *clkdm)
{
struct clkdm_autodep *autodep;
+ if (!autodeps)
+ return;
+
for (autodep = autodeps; autodep->clkdm.ptr; autodep++) {
if (IS_ERR(autodep->clkdm.ptr))
continue;
@@ -201,6 +204,9 @@ static void _clkdm_del_autodeps(struct clockdomain *clkdm)
{
struct clkdm_autodep *autodep;
+ if (!autodeps)
+ return;
+
for (autodep = autodeps; autodep->clkdm.ptr; autodep++) {
if (IS_ERR(autodep->clkdm.ptr))
continue;