linux/drivers/pinctrl
Julia Lawall 5fe2501fbf pinctrl: bcm281xx: constify pinctrl_ops and pinmux_ops structures
Check for pinctrl_ops and pinmux_ops structures that are only stored in the
pctlops field and the pmxops field, respectively, of a pinctrl_desc
structure.  These fields are declared const, so pinctrl_ops and pinmux_ops
structures that have this property can be declared as const also.

The semantic patch that makes this change in the pinctrl_ops is as
follows.  The pinmux_ops case is similar.  (http://coccinelle.lip6.fr/)

// <smpl>
@r disable optional_qualifier@
identifier i;
position p;
@@
static struct pinctrl_ops i@p = { ... };

@ok@
identifier r.i;
struct pinctrl_desc e;
position p;
@@
e.pctlops = &i@p;

@bad@
position p != {r.p,ok.p};
identifier r.i;
struct pinctrl_ops e;
@@
e@i@p

@depends on !bad disable optional_qualifier@
identifier r.i;
@@
static
+const
 struct pinctrl_ops i = { ... };
// </smpl>

Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2016-09-07 22:41:30 +02:00
..
aspeed pinctrl: Add pinctrl-aspeed-g5 driver 2016-09-07 16:53:37 +02:00
bcm pinctrl: bcm281xx: constify pinctrl_ops and pinmux_ops structures 2016-09-07 22:41:30 +02:00
berlin pinctrl: berlin: Use devm_pinctrl_register() for pinctrl registration 2016-04-21 00:02:13 +02:00
freescale pinctrl: imx: output one pin/config pair per line in pinconf-groups 2016-09-06 00:18:10 +02:00
intel This is the bulk of pin control changes for the v4.8 kernel cycle. 2016-07-28 17:06:51 -07:00
mediatek pinctrl: mediatek: make mtk-common explicitly non-modular 2016-08-27 13:11:53 +02:00
meson pinctrl: meson-gxbb: add the pins for the SDIO/sd_emmc_a controller 2016-09-07 16:23:49 +02:00
mvebu pinctrl: fix pincontrol definition for marvell 2016-07-24 16:23:50 +02:00
nomadik pinctrl: nomadik: make core support explicitly non-modular 2016-08-27 13:13:32 +02:00
pxa pinctrl: pxa: Use devm_pinctrl_register() for pinctrl registration 2016-04-21 00:03:04 +02:00
qcom pinctrl: qcom: Add generic ssbi and spmi GPIO/MPP bindings 2016-08-11 10:18:46 +02:00
samsung pinctrl: exynos: remove duplicate calls in irq handler 2016-08-22 14:06:29 +02:00
sh-pfc pinctrl: sh-pfc: r8a7796: Add SDHI pins, groups and functions 2016-08-19 09:37:20 +02:00
sirf pinctrl: sirf: make core support explicitly non-modular 2016-08-27 13:16:12 +02:00
spear pinctrl: spear: Use devm_pinctrl_register() for pinctrl registration 2016-04-21 00:03:18 +02:00
stm32 pinctrl: Add STM32F746 MCU support 2016-07-11 14:35:44 +02:00
sunxi pinctrl: sunxi: Add GR8 controller support 2016-09-07 21:15:49 +02:00
tegra This is the bulk of pin control changes for the v4.8 kernel cycle. 2016-07-28 17:06:51 -07:00
uniphier pinctrl: uniphier: add Ethernet pin-mux settings 2016-07-11 09:53:25 +02:00
vt8500 pinctrl: vt8500: Use devm_pinctrl_register() for pinctrl registration 2016-04-21 09:23:20 +02:00
core.c pinctrl: copy per-pin driver private data to struct pin_desc 2016-05-31 10:27:19 +02:00
core.h pinctrl: copy per-pin driver private data to struct pin_desc 2016-05-31 10:27:19 +02:00
devicetree.c pinctrl: OF: Don't create a pinctrl handle if no pinctrl entries exist 2016-06-18 10:40:15 +02:00
devicetree.h
Kconfig pinctrl: Add core support for Aspeed SoCs 2016-09-07 16:48:22 +02:00
Makefile pinctrl: Add core support for Aspeed SoCs 2016-09-07 16:48:22 +02:00
pinconf-generic.c Merge branch 'devel-dt-free-map' into devel 2016-06-23 11:19:14 +02:00
pinconf.c pinctrl: pinconf: separate config parameters with commas for debugfs 2016-05-31 10:29:06 +02:00
pinconf.h pinctrl: pinconf-generic: Allow driver to specify DT params 2015-01-11 22:32:19 +01:00
pinctrl-adi2-bf54x.c
pinctrl-adi2-bf60x.c added tabs instead of spaces 2015-07-16 09:39:01 +02:00
pinctrl-adi2.c pinctrl: adi2: Use devm_pinctrl_register() for pinctrl registration 2016-04-21 09:23:20 +02:00
pinctrl-adi2.h
pinctrl-amd.c pinctrl/amd: Configure GPIO register using BIOS settings 2016-09-07 21:48:16 +02:00
pinctrl-amd.h Fix inconsistent spinlock of AMD GPIO driver which can be 2015-04-07 11:36:49 +02:00
pinctrl-as3722.c pinctrl: as3722: Use devm_pinctrl_register() for pinctrl registration 2016-04-21 09:23:21 +02:00
pinctrl-at91-pio4.c pinctrl: at91-pio4: make it explicitly non-modular 2016-06-13 08:40:14 +02:00
pinctrl-at91.c pinctrl: fix incorrect inline keyword in multiple drivers 2016-06-15 08:37:41 +02:00
pinctrl-at91.h pinctrl: at91: use own header 2014-10-29 09:28:35 +01:00
pinctrl-coh901.c pinctrl: coh901: fix initconst annotation 2016-02-15 20:40:52 +01:00
pinctrl-coh901.h
pinctrl-digicolor.c Revert "pinctrl: digicolor: add missing platform_set_drvdata() call" 2016-06-23 09:50:05 +02:00
pinctrl-falcon.c staging: drivers: pinctrl: Fixed checkpatch.pl warnings 2015-01-21 11:02:26 +01:00
pinctrl-lantiq.c pinctrl: lantiq: Use devm_pinctrl_register() for pinctrl registration 2016-04-21 09:23:23 +02:00
pinctrl-lantiq.h pinctrl/lantiq: introduce new dedicated devicetree bindings 2015-11-30 13:12:07 +01:00
pinctrl-lpc18xx.c pinctrl: lpc18xx: make it explicitly non-modular 2016-06-13 08:28:18 +02:00
pinctrl-max77620.c pinctrl: max77620: Remove unused structure definition 2016-06-15 08:37:40 +02:00
pinctrl-oxnas.c pinctrl: oxnas: Rename pinctrl_utils_dt_free_map to pinctrl_utils_free_map 2016-05-31 12:59:29 +02:00
pinctrl-palmas.c pinctrl: palmas: fix a possible NULL dereference 2016-08-22 14:11:00 +02:00
pinctrl-pic32.c pinctrl: pic32: Use devm_pinctrl_register() for pinctrl registration 2016-04-21 09:23:24 +02:00
pinctrl-pic32.h pinctrl: pinctrl-pic32: Add PIC32 pin control driver 2016-02-05 23:54:47 +01:00
pinctrl-pistachio.c Pin control bulk changes for the v4.7 kernel cycle: 2016-05-19 12:50:56 -07:00
pinctrl-rockchip.c pinctrl: rockchip: make it explicitly non-modular 2016-08-27 13:14:21 +02:00
pinctrl-single.c pinctrl: single: Fix missing flush of posted write for a wakeirq 2016-06-22 17:58:07 +02:00
pinctrl-st.c pinctrl: st: Use second parameter to gpio specifier 2016-08-11 16:05:45 +02:00
pinctrl-tb10x.c pinctrl: tb10x: Use devm_pinctrl_register() for pinctrl registration 2016-04-21 09:23:25 +02:00
pinctrl-tz1090-pdc.c pinctrl: tz1090-pdc: Use devm_pinctrl_register() for pinctrl registration 2016-04-21 09:23:26 +02:00
pinctrl-tz1090.c pinctrl: tz1090 Use devm_pinctrl_register() for pinctrl registration 2016-04-21 09:23:26 +02:00
pinctrl-u300.c pinctrl: u300: make u300_pmx_registers static 2016-06-13 09:27:43 +02:00
pinctrl-utils.c pinctrl: Rename pinctrl_utils_dt_free_map to pinctrl_utils_free_map 2016-04-01 15:06:36 +02:00
pinctrl-utils.h pinctrl: Rename pinctrl_utils_dt_free_map to pinctrl_utils_free_map 2016-04-01 15:06:36 +02:00
pinctrl-xway.c This is the bulk of pin control changes for the v4.8 kernel cycle. 2016-07-28 17:06:51 -07:00
pinctrl-zynq.c pinctrl: zynq: fix typo in sdio1_3_grp pin list 2016-09-06 00:49:00 +02:00
pinmux.c pinctrl: return -ENOMEM instead of -EINVAL for kasprintf() failure 2016-05-31 10:33:00 +02:00
pinmux.h