Thread (6 messages) 6 messages, 3 authors, 2017-01-01

[PATCH] drivers: remoteproc: constify rproc_ops structures

From: Bhumika Goyal <hidden>
Date: 2016-12-31 10:43:49
Also in: linux-remoteproc, lkml

On Fri, Dec 30, 2016 at 5:36 PM, Bjorn Andersson
[off-list ref] wrote:
On Sat 17 Dec 03:29 PST 2016, Bhumika Goyal wrote:
quoted
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 at p = {...};

@ok1@
identifier r1.i;
position p;
@@
rproc_alloc(...,&i at p,...)

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

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

File sizes before:
   text          data     bss     dec     hex filename
   1258           416       0    1674     68a remoteproc/omap_remoteproc.o
   2402           240       0    2642     a52 remoteproc/st_remoteproc.o
   2064           272       0    2336     920 remoteproc/st_slim_rproc.o
   2160           240       0    2400     960 remoteproc/wkup_m3_rproc.o

File sizes after:
   text          data     bss     dec     hex filename
   1297           368       0    1665     681 remoteproc/omap_remoteproc.o
   2434           192       0    2626     a42 remoteproc/st_remoteproc.o
   2112           240       0    2352     930 remoteproc/st_slim_rproc.o
   2200           192       0    2392     958 remoteproc/wkup_m3_rproc.o

Signed-off-by: Bhumika Goyal <redacted>
Thanks Bhumika, this looks good.

But as Suman already asked. Is there any reason why da8xx_remoteproc.c
did not get updated? It looks like the same change would apply there.
The reason I did not sent a patch for that driver is because the .o
file is not obtained. This is output I get when I try to compile the
da8xx_remoteproc.o file.

drivers/remoteproc/da8xx_remoteproc.c:22:72: fatal error:
mach/clock.h: No such file or directory
 #include <mach/clock.h>   /* for davinci_clk_reset_assert/deassert() */
                                                                        ^
compilation terminated.
make[1]: *** [drivers/remoteproc/da8xx_remoteproc.o] Error 1
make: *** [drivers/remoteproc/da8xx_remoteproc.o] Error 2

I also tried running the commands  make.cross ARCH=arm allyesconfig;
make.cross ARCH=arm drivers/remoteproc/da8xx_remoteproc.o but still
the error remains the same.

Could you please suggest me what to do in this case?

Thanks,
Bhumika
Unless I'm missing something, please update the patch and I'll be happy
to apply it.

Regards,
Bjorn
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help