aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/i2c
diff options
context:
space:
mode:
authorAxel Lin <axel.lin@ingics.com>2014-08-10 05:41:31 -0400
committerMauro Carvalho Chehab <m.chehab@samsung.com>2014-08-21 16:25:33 -0400
commit6af6e9c84fcc8f86b15be607a9ae8afd1d1686ea (patch)
tree8a401729ab90f5f554ef4fd4fdc74242e60b6fb5 /drivers/media/i2c
parent43e9d4ab0c14ccff3ed27f8e43274571e286f0ed (diff)
[media] saa6752hs: Convert to devm_kzalloc()
Using the managed function the kfree() calls can be removed from the probe error path and the remove handler. Signed-off-by: Axel Lin <axel.lin@ingics.com> Acked-by: Lad, Prabhakar <prabhakar.csengg@gmail.com> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Diffstat (limited to 'drivers/media/i2c')
-rw-r--r--drivers/media/i2c/saa6752hs.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/media/i2c/saa6752hs.c b/drivers/media/i2c/saa6752hs.c
index 04e9e55018a5..4024ea6f1371 100644
--- a/drivers/media/i2c/saa6752hs.c
+++ b/drivers/media/i2c/saa6752hs.c
@@ -660,7 +660,7 @@ static const struct v4l2_subdev_ops saa6752hs_ops = {
660static int saa6752hs_probe(struct i2c_client *client, 660static int saa6752hs_probe(struct i2c_client *client,
661 const struct i2c_device_id *id) 661 const struct i2c_device_id *id)
662{ 662{
663 struct saa6752hs_state *h = kzalloc(sizeof(*h), GFP_KERNEL); 663 struct saa6752hs_state *h;
664 struct v4l2_subdev *sd; 664 struct v4l2_subdev *sd;
665 struct v4l2_ctrl_handler *hdl; 665 struct v4l2_ctrl_handler *hdl;
666 u8 addr = 0x13; 666 u8 addr = 0x13;
@@ -668,6 +668,8 @@ static int saa6752hs_probe(struct i2c_client *client,
668 668
669 v4l_info(client, "chip found @ 0x%x (%s)\n", 669 v4l_info(client, "chip found @ 0x%x (%s)\n",
670 client->addr << 1, client->adapter->name); 670 client->addr << 1, client->adapter->name);
671
672 h = devm_kzalloc(&client->dev, sizeof(*h), GFP_KERNEL);
671 if (h == NULL) 673 if (h == NULL)
672 return -ENOMEM; 674 return -ENOMEM;
673 sd = &h->sd; 675 sd = &h->sd;
@@ -752,7 +754,6 @@ static int saa6752hs_probe(struct i2c_client *client,
752 int err = hdl->error; 754 int err = hdl->error;
753 755
754 v4l2_ctrl_handler_free(hdl); 756 v4l2_ctrl_handler_free(hdl);
755 kfree(h);
756 return err; 757 return err;
757 } 758 }
758 v4l2_ctrl_cluster(3, &h->video_bitrate_mode); 759 v4l2_ctrl_cluster(3, &h->video_bitrate_mode);
@@ -767,7 +768,6 @@ static int saa6752hs_remove(struct i2c_client *client)
767 768
768 v4l2_device_unregister_subdev(sd); 769 v4l2_device_unregister_subdev(sd);
769 v4l2_ctrl_handler_free(&to_state(sd)->hdl); 770 v4l2_ctrl_handler_free(&to_state(sd)->hdl);
770 kfree(to_state(sd));
771 return 0; 771 return 0;
772} 772}
773 773