auxdisplay: ht16k33: constify fb_fix_screeninfo and fb_var_screeninfo structures
Subsystems (2)
PATCH 1/1 auxdisplay: ht16k33: constify fb_fix_screeninfo and fb_var_screeninfo structures
These structures are only used to copy into other structures, so declare them as const.
This issue was detected using Coccinelle and the following semantic patch:
@r disable optional_qualifier@
identifier i;
position p;
@@
static struct fb_fix_screeninfo i@p = { ... };
@ok@
identifier r.i;
expression e;
position p;
@@
e = i@p
@bad@
position p != {r.p,ok.p};
identifier r.i;
struct fb_fix_screeninfo e;
@@
e@i@p
@depends on !bad disable optional_qualifier@
identifier r.i;
@@
static
+const
struct fb_fix_screeninfo i = { ... };
The semantic patch for fb_var_screeninfo is analogous.
--- drivers/auxdisplay/ht16k33.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
drivers/auxdisplay/ht16k33.c +2 -2
@@ -82,7 +82,7 @@ struct ht16k33_priv {struct ht16k33_fbdev fbdev; }; -static struct fb_fix_screeninfo ht16k33_fb_fix = { +static const struct fb_fix_screeninfo ht16k33_fb_fix = { .id =DRIVER_NAME , .type =FB_TYPE_PACKED_PIXELS , .visual =FB_VISUAL_MONO10 ,
@@ -93,7 +93,7 @@ static struct fb_fix_screeninfo ht16k33_fb_fix = { .accel = FB_ACCEL_NONE, }; -static struct fb_var_screeninfo ht16k33_fb_var = { +static const struct fb_var_screeninfo ht16k33_fb_var = { .xres =HT16K33_MATRIX_LED_MAX_ROWS , .yres =HT16K33_MATRIX_LED_MAX_COLS , .xres_virtual =HT16K33_MATRIX_LED_MAX_ROWS ,
Signature · 1 line
2.5.0
Hi Gustavo,
Quoted 53 lines · Gustavo A. R. Silva
These structures are only used to copy into other structures, so declare them as const.
This issue was detected using Coccinelle and the following semantic patch:
@r disable optional_qualifier@
identifier i;
position p;
@@
static structfb_fix_screeninfoi@p = { ... };@ok@
identifier r.i;
expression e;
position p;
@@
e = i@p@bad@
position p != {r.p,ok.p};
identifier r.i;
structfb_fix_screeninfoe;
@@
e@i@p@depends on !bad disable optional_qualifier@
identifier r.i;
@@
static
+const
structfb_fix_screeninfoi = { ... };The semantic patch for
fb_var_screeninfois analogous.Signed-off-by Gustavo A. R. Silva <[email protected]>--- drivers/auxdisplay/ht16k33.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)drivers/auxdisplay/ht16k33.c +1
-1@@ -82,7 +82,7 @@ struct ht16k33_priv {struct ht16k33_fbdev fbdev; }; -static struct fb_fix_screeninfo ht16k33_fb_fix = { +static const struct fb_fix_screeninfo ht16k33_fb_fix = { .id =DRIVER_NAME , .type =FB_TYPE_PACKED_PIXELS , .visual =FB_VISUAL_MONO10 ,
drivers/auxdisplay/ht16k33.c static struct fb_fix_screeninfo ht16k33_fb_fix = { · line 99
Quoted 8 lines
drivers/auxdisplay/ht16k33.c +1
-1@@ -93,7 +93,7 @@ static struct fb_fix_screeninfo ht16k33_fb_fix = { .accel = FB_ACCEL_NONE, }; -static struct fb_var_screeninfo ht16k33_fb_var = { +static const struct fb_var_screeninfo ht16k33_fb_var = { .xres =HT16K33_MATRIX_LED_MAX_ROWS , .yres =HT16K33_MATRIX_LED_MAX_COLS , .xres_virtual =HT16K33_MATRIX_LED_MAX_ROWS ,
I will pick this up for 4.17.
Thank you for the patch!
Miguel
Quoted 3 lines
--
2.5.0