• Bhumika Goyal's avatar
    [media] drivers: media: i2c: ak881x: constify v4l2_subdev_* structures · 4d7aa5e9
    Bhumika Goyal authored
    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 size before:
      text	   data	    bss	    dec	    hex	filename
       1809	    872	      0	   2681	    a79	drivers/media/i2c/ak881x.o
    
    File size after:
      text	   data	    bss	    dec	    hex	filename
       2185	    496	      0	   2681	    a79	drivers/media/i2c/ak881x.o
    Signed-off-by: default avatarBhumika Goyal <bhumirks@gmail.com>
    Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
    4d7aa5e9
ak881x.c 7.75 KB