charlcd_ops are not supposed to change at runtime. All functions
working with charlcd_ops provided by <misc/charlcd.h> work with
const charlcd_ops. So mark the non-const structs as const.
File size before:
text data bss dec hex filename
12750 560 362 13672 3568 drivers/auxdisplay/panel.o
File size After adding 'const':
text data bss dec hex filename
12942 368 362 13672 3568 drivers/auxdisplay/panel.o
Signed-off-by: Arvind Yadav <[email protected]>
---
drivers/auxdisplay/panel.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/auxdisplay/panel.c b/drivers/auxdisplay/panel.c
index 7a8b8fb..df126dc 100644
--- a/drivers/auxdisplay/panel.c
+++ b/drivers/auxdisplay/panel.c
@@ -877,21 +877,21 @@ static void lcd_clear_fast_tilcd(struct charlcd *charlcd)
spin_unlock_irq(&pprt_lock);
}
-static struct charlcd_ops charlcd_serial_ops = {
+static const struct charlcd_ops charlcd_serial_ops = {
.write_cmd = lcd_write_cmd_s,
.write_data = lcd_write_data_s,
.clear_fast = lcd_clear_fast_s,
.backlight = lcd_backlight,
};
-static struct charlcd_ops charlcd_parallel_ops = {
+static const struct charlcd_ops charlcd_parallel_ops = {
.write_cmd = lcd_write_cmd_p8,
.write_data = lcd_write_data_p8,
.clear_fast = lcd_clear_fast_p8,
.backlight = lcd_backlight,
};
-static struct charlcd_ops charlcd_tilcd_ops = {
+static const struct charlcd_ops charlcd_tilcd_ops = {
.write_cmd = lcd_write_cmd_tilcd,
.write_data = lcd_write_data_tilcd,
.clear_fast = lcd_clear_fast_tilcd,
--
2.7.4
On Fri, 2017-07-14 at 22:04 +0530, Arvind Yadav wrote:
> charlcd_ops are not supposed to change at runtime. All functions
> working with charlcd_ops provided by <misc/charlcd.h> work with
> const charlcd_ops. So mark the non-const structs as const.
>
> File size before:
> text data bss dec hex
> filename
> 12750 560 362 13672 3568
> drivers/auxdisplay/panel.o
>
> File size After adding 'const':
> text data bss dec hex
> filename
> 12942 368 362 13672 3568
> drivers/auxdisplay/panel.o
>
Reviewed-by: Andy Shevchenko <[email protected]>
(As long as it has been compile tested)
> Signed-off-by: Arvind Yadav <[email protected]>
> ---
> drivers/auxdisplay/panel.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/auxdisplay/panel.c b/drivers/auxdisplay/panel.c
> index 7a8b8fb..df126dc 100644
> --- a/drivers/auxdisplay/panel.c
> +++ b/drivers/auxdisplay/panel.c
> @@ -877,21 +877,21 @@ static void lcd_clear_fast_tilcd(struct charlcd
> *charlcd)
> spin_unlock_irq(&pprt_lock);
> }
>
> -static struct charlcd_ops charlcd_serial_ops = {
> +static const struct charlcd_ops charlcd_serial_ops = {
> .write_cmd = lcd_write_cmd_s,
> .write_data = lcd_write_data_s,
> .clear_fast = lcd_clear_fast_s,
> .backlight = lcd_backlight,
> };
>
> -static struct charlcd_ops charlcd_parallel_ops = {
> +static const struct charlcd_ops charlcd_parallel_ops = {
> .write_cmd = lcd_write_cmd_p8,
> .write_data = lcd_write_data_p8,
> .clear_fast = lcd_clear_fast_p8,
> .backlight = lcd_backlight,
> };
>
> -static struct charlcd_ops charlcd_tilcd_ops = {
> +static const struct charlcd_ops charlcd_tilcd_ops = {
> .write_cmd = lcd_write_cmd_tilcd,
> .write_data = lcd_write_data_tilcd,
> .clear_fast = lcd_clear_fast_tilcd,
--
Andy Shevchenko <[email protected]>
Intel Finland Oy