]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit - drivers/remoteproc/omap_remoteproc.c
drivers: remoteproc: constify rproc_ops structures
authorBhumika Goyal <bhumirks@gmail.com>
Sun, 1 Jan 2017 10:43:37 +0000 (16:13 +0530)
committerBjorn Andersson <bjorn.andersson@linaro.org>
Wed, 18 Jan 2017 18:46:50 +0000 (10:46 -0800)
commitc008fad264f61efc809bd067becc6d1db9bb3730
treec207b1d54658631462d7a8558008911340675164
parent19f902b53b47327e87daecacf0aea450b990f33e
drivers: remoteproc: constify rproc_ops structures

Declare rproc_ops structures as const as they are only passed as an
argument to the function rproc_alloc. This argument is of type const, so
rproc_ops structures having this property can be declared const too.
Done using Coccinelle:

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

@ok1@
identifier r1.i;
position p;
@@
rproc_alloc(...,&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 rproc_ops i;

File size details:

Size of the file remoteproc/da8xx_remoteproc.o remains the same before and
after applying the changes.

   text    data     bss     dec     hex filename
   1312     100       4    1416     588 remoteproc/da8xx_remoteproc.o
   1312     100       4    1416     588 remoteproc/da8xx_remoteproc.o

    970     240       0    1210     4ba remoteproc/omap_remoteproc.o
   1002     192       0    1194     4aa remoteproc/omap_remoteproc.o

   1901     240       0    2141     85d remoteproc/st_remoteproc.o
   1933     192       0    2125     84d remoteproc/st_remoteproc.o

   1288      96       0    1384     568 remoteproc/st_slim_rproc.o
   1320      64       0    1384     568 remoteproc/st_slim_rproc.o

   2121     240       0    2361     939 remoteproc/wkup_m3_rproc.o
   2161     192       0    2353     931 remoteproc/wkup_m3_rproc.o

Signed-off-by: Bhumika Goyal <bhumirks@gmail.com>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
drivers/remoteproc/da8xx_remoteproc.c
drivers/remoteproc/omap_remoteproc.c
drivers/remoteproc/st_remoteproc.c
drivers/remoteproc/st_slim_rproc.c
drivers/remoteproc/wkup_m3_rproc.c