aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/platform/s5p-tv
diff options
context:
space:
mode:
authorSachin Kamat <sachin.kamat@linaro.org>2013-05-16 23:31:02 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2013-06-12 20:51:02 -0400
commit0781c057e3fd49e096ec2ea7fa5d6ad18a2f42bb (patch)
tree0f335cc7e2c9db64f1e3a2b1f96395b20141e12e /drivers/media/platform/s5p-tv
parent44048752345460df738b87ebec82c9bfc8257943 (diff)
[media] s5p-tv: Fix incorrect usage of IS_ERR_OR_NULL in mixer_drv.c
NULL check on clocks obtained using common clock APIs should not be done. Use IS_ERR only. [s.nawrocki: removed unrelated whitespace change] Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org> Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/platform/s5p-tv')
-rw-r--r--drivers/media/platform/s5p-tv/mixer_drv.c22
1 files changed, 17 insertions, 5 deletions
diff --git a/drivers/media/platform/s5p-tv/mixer_drv.c b/drivers/media/platform/s5p-tv/mixer_drv.c
index 5733033a6ead..51805a5e2beb 100644
--- a/drivers/media/platform/s5p-tv/mixer_drv.c
+++ b/drivers/media/platform/s5p-tv/mixer_drv.c
@@ -211,6 +211,15 @@ fail:
211 return ret; 211 return ret;
212} 212}
213 213
214static void mxr_resource_clear_clocks(struct mxr_resources *res)
215{
216 res->mixer = ERR_PTR(-EINVAL);
217 res->vp = ERR_PTR(-EINVAL);
218 res->sclk_mixer = ERR_PTR(-EINVAL);
219 res->sclk_hdmi = ERR_PTR(-EINVAL);
220 res->sclk_dac = ERR_PTR(-EINVAL);
221}
222
214static void mxr_release_plat_resources(struct mxr_device *mdev) 223static void mxr_release_plat_resources(struct mxr_device *mdev)
215{ 224{
216 free_irq(mdev->res.irq, mdev); 225 free_irq(mdev->res.irq, mdev);
@@ -222,15 +231,15 @@ static void mxr_release_clocks(struct mxr_device *mdev)
222{ 231{
223 struct mxr_resources *res = &mdev->res; 232 struct mxr_resources *res = &mdev->res;
224 233
225 if (!IS_ERR_OR_NULL(res->sclk_dac)) 234 if (!IS_ERR(res->sclk_dac))
226 clk_put(res->sclk_dac); 235 clk_put(res->sclk_dac);
227 if (!IS_ERR_OR_NULL(res->sclk_hdmi)) 236 if (!IS_ERR(res->sclk_hdmi))
228 clk_put(res->sclk_hdmi); 237 clk_put(res->sclk_hdmi);
229 if (!IS_ERR_OR_NULL(res->sclk_mixer)) 238 if (!IS_ERR(res->sclk_mixer))
230 clk_put(res->sclk_mixer); 239 clk_put(res->sclk_mixer);
231 if (!IS_ERR_OR_NULL(res->vp)) 240 if (!IS_ERR(res->vp))
232 clk_put(res->vp); 241 clk_put(res->vp);
233 if (!IS_ERR_OR_NULL(res->mixer)) 242 if (!IS_ERR(res->mixer))
234 clk_put(res->mixer); 243 clk_put(res->mixer);
235} 244}
236 245
@@ -239,6 +248,8 @@ static int mxr_acquire_clocks(struct mxr_device *mdev)
239 struct mxr_resources *res = &mdev->res; 248 struct mxr_resources *res = &mdev->res;
240 struct device *dev = mdev->dev; 249 struct device *dev = mdev->dev;
241 250
251 mxr_resource_clear_clocks(res);
252
242 res->mixer = clk_get(dev, "mixer"); 253 res->mixer = clk_get(dev, "mixer");
243 if (IS_ERR(res->mixer)) { 254 if (IS_ERR(res->mixer)) {
244 mxr_err(mdev, "failed to get clock 'mixer'\n"); 255 mxr_err(mdev, "failed to get clock 'mixer'\n");
@@ -299,6 +310,7 @@ static void mxr_release_resources(struct mxr_device *mdev)
299 mxr_release_clocks(mdev); 310 mxr_release_clocks(mdev);
300 mxr_release_plat_resources(mdev); 311 mxr_release_plat_resources(mdev);
301 memset(&mdev->res, 0, sizeof(mdev->res)); 312 memset(&mdev->res, 0, sizeof(mdev->res));
313 mxr_resource_clear_clocks(&mdev->res);
302} 314}
303 315
304static void mxr_release_layers(struct mxr_device *mdev) 316static void mxr_release_layers(struct mxr_device *mdev)