diff options
| -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 | } |
