]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit
[media] media: i2c: soc_camera: constify v4l2_subdev_* structures
authorBhumika Goyal <bhumirks@gmail.com>
Mon, 12 Dec 2016 13:59:42 +0000 (11:59 -0200)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Thu, 23 Mar 2017 17:43:49 +0000 (14:43 -0300)
commit6713c88fd04733eb34438e78118c42bc5c7e0e05
tree820595eca0a93f3cea0a7f5e81491ac023f43a56
parent855749a75609122b57b2d4ebd872944836388a14
[media] media: i2c: soc_camera: constify v4l2_subdev_* structures

v4l2_subdev_{core/video}_ops structures are stored in the
fields of the v4l2_subdev_ops structure which are of type const.
Also, v4l2_subdev_ops structure is passed to a function
having its argument of type const. As these structures are never
modified, so declare them as const.
Done using Coccinelle: (One of the scripts used)

@r1 disable optional_qualifier @
identifier i;
position p;
@@
static struct v4l2_subdev_video_ops i@p = {...};

@ok1@
identifier r1.i;
position p;
struct v4l2_subdev_ops obj;
@@
obj.video=&i@p;

@bad@
position p!={r1.p,ok1.p};
identifier r1.i;
@@
i@p

@depends on !bad disable optional_qualifier@
identifier r1.i;
@@
+const
struct v4l2_subdev_video_ops i;

File sizes before and after the changes:
   text    data     bss     dec     hex filename

   3459     696       0    4155    103b /media/i2c/soc_camera/imx074.o
   3835     320       0    4155    103b /media/i2c/soc_camera/imx074.o

   4749    1048       8    5805    16ad /media/i2c/soc_camera/mt9m001.o
   5133     672       8    5813    16b5 /media/i2c/soc_camera/mt9m001.o

   5658    1112       8    6778    1a7a /media/i2c/soc_camera/mt9t031.o
   6042     728       8    6778    1a7a /media/i2c/soc_camera/mt9t031.o

   6726     784       0    7510    1d56 /media/i2c/soc_camera/mt9t112.o
   7110     408       0    7518    1d5e /media/i2c/soc_camera/mt9t112.o

   6700     960      16    7676    1dfc /media/i2c/soc_camera/mt9v022.o
   7084     584      16    7684    1e04 /media/i2c/soc_camera/mt9v022.o

   5569    1576       8    7153    1bf1 /media/i2c/soc_camera/ov2640.o
   5953    1200       8    7161    1bf9 /media/i2c/soc_camera/ov2640.o

   3018    2736       0    5754    167a /media/i2c/soc_camera/ov5642.o
   3394    2352       0    5746    1672 /media/i2c/soc_camera/ov5642.o

   8348    2104       8   10460    28dc /media/i2c/soc_camera/ov6650.o
   8716    1728       8   10452    28d4 /media/i2c/soc_camera/ov6650.o

   4165     696       8    4869    1305 /media/i2c/soc_camera/ov772x.o
   4549     320       8    4877    130d /media/i2c/soc_camera/ov772x.o

   4033     608       8    4649    1229 /media/i2c/soc_camera/ov9640.o
   4417     232       8    4657    1231 /media/i2c/soc_camera/ov9640.o

   4983     784       8    5775    168f /media/i2c/soc_camera/ov9740.o
   5367     408       8    5783    1697 /media/i2c/soc_camera/ov9740.o

   8578    1312       8    9898    26aa i2c/soc_camera/rj54n1cb0c.o
   8962     936       8    9906    26b2 i2c/soc_camera/rj54n1cb0c.o

   3886     696       0    4582    11e6 /media/i2c/soc_camera/tw9910.o
   4270     320       0    4590    11ee /media/i2c/soc_camera/tw9910.o

Signed-off-by: Bhumika Goyal <bhumirks@gmail.com>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
13 files changed:
drivers/media/i2c/soc_camera/imx074.c
drivers/media/i2c/soc_camera/mt9m001.c
drivers/media/i2c/soc_camera/mt9t031.c
drivers/media/i2c/soc_camera/mt9t112.c
drivers/media/i2c/soc_camera/mt9v022.c
drivers/media/i2c/soc_camera/ov2640.c
drivers/media/i2c/soc_camera/ov5642.c
drivers/media/i2c/soc_camera/ov6650.c
drivers/media/i2c/soc_camera/ov772x.c
drivers/media/i2c/soc_camera/ov9640.c
drivers/media/i2c/soc_camera/ov9740.c
drivers/media/i2c/soc_camera/rj54n1cb0c.c
drivers/media/i2c/soc_camera/tw9910.c