Skip to content
  • simran singhal's avatar
    iio: light: bh1750: constify attribute_group structures · c2869498
    simran singhal authored
    
    
    Check for attribute_group structures that are only stored in the
    attrs filed of iio_info structure. As the attrs field of iio_info
    structures is constant, so these attribute_group structures can also be
    declared constant.
    Done using coccinelle:
    
    @r1 disable optional_qualifier @
    identifier i;
    position p;
    @@
    static struct attribute_group i@p = {...};
    
    @ok1@
    identifier r1.i;
    position p;
    struct iio_info x;
    @@
    x.attrs=&i@p;
    
    @bad@
    position p!={r1.p,ok1.p};
    identifier r1.i;
    @@
    i@p
    
    @depends on !bad disable optional_qualifier@
    identifier r1.i;
    @@
    static
    +const
    struct attribute_group i={...};
    
    @depends on !bad disable optional_qualifier@
    identifier r1.i;
    @@
    +const
    struct attribute_group i;
    
    File size before:
       text	   data	    bss	    dec	    hex	filename
       2276	    352	      0	   2628	    a44	drivers/iio/light/bh1750.o
    
    File size after:
       text	   data	    bss	    dec	    hex	filename
       2340	    320	      0	   2660	    a64	drivers/iio/light/bh1750.o
    
    Signed-off-by: default avatarsimran singhal <singhalsimran0@gmail.com>
    Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
    c2869498