pinctrl: meson: Constify some structures
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Wed, 7 Aug 2024 18:05:36 +0000 (20:05 +0200)
committerLinus Walleij <linus.walleij@linaro.org>
Fri, 23 Aug 2024 16:01:42 +0000 (18:01 +0200)
commit8a74a53ebbe3e81f58cfc6080bf23f1d01e215f4
tree4ac8a42eab2984b23e8f491665f6a3214f2cfdf4
parent69c6343ed03486c86271c7a4fdd5a2af4637c38b
pinctrl: meson: Constify some structures

The following structures are not modified in these drivers.
  - struct meson_bank
  - struct meson_pmx_bank
  - struct meson_pmx_func
  - struct meson_pmx_group
  - struct meson_pinctrl_data
  - struct meson_axg_pmx_data

Constifying these structures moves some data to a read-only section, so
increase overall security.

On a x86_64, with allmodconfig:
Before:
======
   text    data     bss     dec     hex filename
  10818   11696       0   22514    57f2 drivers/pinctrl/meson/pinctrl-amlogic-c3.o
  17198   17680       0   34878    883e drivers/pinctrl/meson/pinctrl-amlogic-t7.o
  14161   11200       0   25361    6311 drivers/pinctrl/meson/pinctrl-meson8b.o
  17348   12512       0   29860    74a4 drivers/pinctrl/meson/pinctrl-meson8.o
   3070     324       0    3394     d42 drivers/pinctrl/meson/pinctrl-meson8-pmx.o
   9317    9648       0   18965    4a15 drivers/pinctrl/meson/pinctrl-meson-a1.o
  12115   11664       0   23779    5ce3 drivers/pinctrl/meson/pinctrl-meson-axg.o
   2470     120       0    2590     a1e drivers/pinctrl/meson/pinctrl-meson-axg-pmx.o
  15125   15224       0   30349    768d drivers/pinctrl/meson/pinctrl-meson-g12a.o
  13800   10160       0   23960    5d98 drivers/pinctrl/meson/pinctrl-meson-gxbb.o
  13040    9648       0   22688    58a0 drivers/pinctrl/meson/pinctrl-meson-gxl.o
  20507    1132      48   21687    54b7 drivers/pinctrl/meson/pinctrl-meson.o
  12212   12880       0   25092    6204 drivers/pinctrl/meson/pinctrl-meson-s4.o

After:
=====
   text    data     bss     dec     hex filename
  22242     248       0   22490    57da drivers/pinctrl/meson/pinctrl-amlogic-c3.o
  34638     248       0   34886    8846 drivers/pinctrl/meson/pinctrl-amlogic-t7.o
  25137     232       0   25369    6319 drivers/pinctrl/meson/pinctrl-meson8b.o
  29604     232       0   29836    748c drivers/pinctrl/meson/pinctrl-meson8.o
   3070     324       0    3394     d42 drivers/pinctrl/meson/pinctrl-meson8-pmx.o
  18725     248       0   18973    4a1d drivers/pinctrl/meson/pinctrl-meson-a1.o
  23539     248       0   23787    5ceb drivers/pinctrl/meson/pinctrl-meson-axg.o
   2470     120       0    2590     a1e drivers/pinctrl/meson/pinctrl-meson-axg-pmx.o
  30101     256       0   30357    7695 drivers/pinctrl/meson/pinctrl-meson-g12a.o
  23688     248       0   23936    5d80 drivers/pinctrl/meson/pinctrl-meson-gxbb.o
  22416     248       0   22664    5888 drivers/pinctrl/meson/pinctrl-meson-gxl.o
  20507    1132      48   21687    54b7 drivers/pinctrl/meson/pinctrl-meson.o
  24820     248       0   25068    61ec drivers/pinctrl/meson/pinctrl-meson-s4.o

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Reviewed-by: Jerome Brunet <jbrunet@baylibre.com>
Tested-by: Jerome Brunet <jbrunet@baylibre.com>
Link: https://lore.kernel.org/f74e326bd7d48003c06219545bad7c2ef1a84bf8.1723053850.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
15 files changed:
drivers/pinctrl/meson/pinctrl-amlogic-c3.c
drivers/pinctrl/meson/pinctrl-amlogic-t7.c
drivers/pinctrl/meson/pinctrl-meson-a1.c
drivers/pinctrl/meson/pinctrl-meson-axg-pmx.c
drivers/pinctrl/meson/pinctrl-meson-axg-pmx.h
drivers/pinctrl/meson/pinctrl-meson-axg.c
drivers/pinctrl/meson/pinctrl-meson-g12a.c
drivers/pinctrl/meson/pinctrl-meson-gxbb.c
drivers/pinctrl/meson/pinctrl-meson-gxl.c
drivers/pinctrl/meson/pinctrl-meson-s4.c
drivers/pinctrl/meson/pinctrl-meson.c
drivers/pinctrl/meson/pinctrl-meson.h
drivers/pinctrl/meson/pinctrl-meson8-pmx.c
drivers/pinctrl/meson/pinctrl-meson8.c
drivers/pinctrl/meson/pinctrl-meson8b.c