diff options
author | Dan Carpenter <dan.carpenter@oracle.com> | 2020-06-10 19:26:15 +0200 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab+huawei@kernel.org> | 2020-07-04 12:43:19 +0200 |
commit | 477d4d38b93d457d6391a864dcfcc114a8b44060 (patch) | |
tree | cd05793202a9547f7db72134bd9abeebc0d42c0c /drivers/media/platform/pxa_camera.c | |
parent | ec050e022f8da39c2c9d6f4eb8c7f343fe2664ad (diff) | |
download | linux-stable-477d4d38b93d457d6391a864dcfcc114a8b44060.tar.gz linux-stable-477d4d38b93d457d6391a864dcfcc114a8b44060.tar.bz2 linux-stable-477d4d38b93d457d6391a864dcfcc114a8b44060.zip |
media: pxa_camera: remove an impossible condition
It's not possible for "pcdev->mclk" to be zero because we check for
that earlier and set it to 20000000 in that situation. If it were
possible, that would be a problem because it could have lead to an Oops
in the error handling when we call v4l2_clk_unregister(pcdev->mclk_clk);
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Diffstat (limited to 'drivers/media/platform/pxa_camera.c')
-rw-r--r-- | drivers/media/platform/pxa_camera.c | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/drivers/media/platform/pxa_camera.c b/drivers/media/platform/pxa_camera.c index a7cf830235b6..6dce33f35041 100644 --- a/drivers/media/platform/pxa_camera.c +++ b/drivers/media/platform/pxa_camera.c @@ -2504,17 +2504,14 @@ static int pxa_camera_probe(struct platform_device *pdev) if (err) goto exit_notifier_cleanup; - if (pcdev->mclk) { - v4l2_clk_name_i2c(clk_name, sizeof(clk_name), - pcdev->asd.match.i2c.adapter_id, - pcdev->asd.match.i2c.address); - - pcdev->mclk_clk = v4l2_clk_register(&pxa_camera_mclk_ops, - clk_name, NULL); - if (IS_ERR(pcdev->mclk_clk)) { - err = PTR_ERR(pcdev->mclk_clk); - goto exit_notifier_cleanup; - } + v4l2_clk_name_i2c(clk_name, sizeof(clk_name), + pcdev->asd.match.i2c.adapter_id, + pcdev->asd.match.i2c.address); + + pcdev->mclk_clk = v4l2_clk_register(&pxa_camera_mclk_ops, clk_name, NULL); + if (IS_ERR(pcdev->mclk_clk)) { + err = PTR_ERR(pcdev->mclk_clk); + goto exit_notifier_cleanup; } err = v4l2_async_notifier_register(&pcdev->v4l2_dev, &pcdev->notifier); |