diff options
Diffstat (limited to 'arch/arm/plat-samsung/clock.c')
-rw-r--r-- | arch/arm/plat-samsung/clock.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/arm/plat-samsung/clock.c b/arch/arm/plat-samsung/clock.c index 65c5eca475e7..80eacca4682a 100644 --- a/arch/arm/plat-samsung/clock.c +++ b/arch/arm/plat-samsung/clock.c | |||
@@ -173,17 +173,18 @@ struct clk *clk_get_parent(struct clk *clk) | |||
173 | 173 | ||
174 | int clk_set_parent(struct clk *clk, struct clk *parent) | 174 | int clk_set_parent(struct clk *clk, struct clk *parent) |
175 | { | 175 | { |
176 | unsigned long flags; | ||
176 | int ret = 0; | 177 | int ret = 0; |
177 | 178 | ||
178 | if (IS_ERR(clk)) | 179 | if (IS_ERR(clk)) |
179 | return -EINVAL; | 180 | return -EINVAL; |
180 | 181 | ||
181 | spin_lock(&clocks_lock); | 182 | spin_lock_irqsave(&clocks_lock, flags); |
182 | 183 | ||
183 | if (clk->ops && clk->ops->set_parent) | 184 | if (clk->ops && clk->ops->set_parent) |
184 | ret = (clk->ops->set_parent)(clk, parent); | 185 | ret = (clk->ops->set_parent)(clk, parent); |
185 | 186 | ||
186 | spin_unlock(&clocks_lock); | 187 | spin_unlock_irqrestore(&clocks_lock, flags); |
187 | 188 | ||
188 | return ret; | 189 | return ret; |
189 | } | 190 | } |