linux/drivers/pinctrl
Maxim Korotkov d2d73e6d48 pinctrl: single: fix potential NULL dereference
Added checking of pointer "function" in pcs_set_mux().
pinmux_generic_get_function() can return NULL and the pointer
"function" was dereferenced without checking against NULL.

Found by Linux Verification Center (linuxtesting.org) with SVACE.

Fixes: 571aec4df5 ("pinctrl: single: Use generic pinmux helpers for managing functions")
Signed-off-by: Maxim Korotkov <korotkov.maxim.s@gmail.com>
Reviewed-by: Tony Lindgren <tony@atomide.com>
Link: https://lore.kernel.org/r/20221118104332.943-1-korotkov.maxim.s@gmail.com
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2023-01-27 13:43:55 +01:00
..
actions intel-pinctrl for v6.1-2 2022-10-26 09:58:29 +02:00
aspeed pinctrl: aspeed: Fix confusing types in return value 2023-01-27 13:32:44 +01:00
bcm pinctrl: bcm: Add missing header(s) 2022-10-24 12:53:33 +03:00
berlin pinctrl: berlin: fix spelling typo in comment 2022-09-05 14:10:14 +02:00
cirrus pinctrl: lochnagar: Add missing header(s) 2022-10-24 17:06:46 +03:00
freescale pinctrl: freescale: Fix i.MXRT1050 pad names 2022-11-10 09:19:43 +01:00
intel Pin control changes for the v6.2 kernel cycle: 2022-12-13 13:03:06 -08:00
mediatek pinctrl: mediatek: Fix the drive register definition of some Pins 2023-01-26 14:41:51 +01:00
meson pinctrl: meson: Switch to use fwnode instead of of_node 2022-09-08 10:35:30 +02:00
mvebu pinctrl: mvebu: Add missing header(s) 2022-10-24 17:06:46 +03:00
nomadik pinctrl: nomadik: Add missing header(s) 2023-01-04 02:36:47 +01:00
nuvoton pinctrl: nuvoton: wpcm450: Fix handling of inverted MFSEL bits 2022-11-10 09:19:42 +01:00
pxa drivers/pinctrl: remove redundant ret variable 2022-01-24 01:12:54 +01:00
qcom Pin control changes for the v6.2 kernel cycle: 2022-12-13 13:03:06 -08:00
ralink pinctrl: ralink: Check for null return of devm_kcalloc 2022-07-11 14:40:17 +02:00
renesas pinctrl: renesas: Updates for v6.2 2022-11-20 23:34:45 +01:00
samsung pinctrl: samsung: Add missing header(s) 2022-10-24 17:06:46 +03:00
spear pinctrl: spear: Add missing header(s) 2022-10-24 17:06:47 +03:00
sprd pinctrl: sprd: Add missing header(s) 2022-10-24 17:06:47 +03:00
starfive pinctrl: starfive: Use existing variable gpio 2022-11-22 09:25:30 +01:00
stm32 pinctrl: stm32: Remove check for pins-are-numbered 2022-12-03 10:18:55 +01:00
sunplus pinctrl: sp7021: fix unused function warning 2022-12-29 02:07:25 +01:00
sunxi pinctrl: sunxi: d1: Add CAN bus pinmuxes 2022-11-26 22:57:50 +01:00
tegra pinctrl: tegra: Separate Tegra194 instances 2022-11-14 14:16:46 +01:00
ti pinctrl: ti-iodelay: Add missing header(s) 2022-10-24 17:06:47 +03:00
uniphier pinctrl: uniphier: Add missing header(s) 2022-10-24 17:06:47 +03:00
visconti
vt8500 pinctrl: Get rid of duplicate of_node assignment in the drivers 2021-12-16 04:18:30 +01:00
core.c pinctrl: Move for_each_maps() to namespace and hide iterator inside 2022-11-14 14:19:33 +01:00
core.h pinctrl: Move for_each_maps() to namespace and hide iterator inside 2022-11-14 14:19:33 +01:00
devicetree.c pinctrl: devicetree: fix null pointer dereferencing in pinctrl_dt_to_map 2022-11-10 12:26:18 +01:00
devicetree.h pinctrl: Clean up headers 2022-10-24 17:06:48 +03:00
Kconfig pinctrl: pinctrl-loongson2: fix Kconfig dependency 2022-11-21 14:36:03 +01:00
Makefile pinctrl: pinctrl-loongson2: add pinctrl driver support 2022-11-17 10:24:08 +01:00
pinconf-generic.c pinctrl: pinconf-generic: add missing of_node_put() 2022-11-25 10:49:28 +01:00
pinconf.c
pinconf.h pinctrl: Clean up headers 2022-10-24 17:06:48 +03:00
pinctrl-amd.c pinctrl: amd: Fix debug output for debounce time 2023-01-27 13:40:29 +01:00
pinctrl-amd.h pinctrl: amd: Implement pinmux functionality 2022-06-15 15:54:20 +02:00
pinctrl-apple-gpio.c pinctrl: apple-gpio: Add missing header(s) 2022-10-24 12:31:17 +03:00
pinctrl-artpec6.c
pinctrl-as3722.c treewide: Replace GPLv2 boilerplate/reference with SPDX - gpl-2.0_318.RULE 2022-06-10 14:51:36 +02:00
pinctrl-at91-pio4.c intel-pinctrl for v6.1-2 2022-10-26 09:58:29 +02:00
pinctrl-at91.c pinctrl: at91: Add missing header(s) 2022-10-24 12:31:33 +03:00
pinctrl-at91.h
pinctrl-axp209.c pinctrl: axp209: Add missing header(s) 2022-10-24 12:31:55 +03:00
pinctrl-bm1880.c pinctrl: bm1880: Add missing header(s) 2022-10-24 12:53:33 +03:00
pinctrl-cy8c95x0.c intel-pinctrl for v6.1-2 2022-10-26 09:58:29 +02:00
pinctrl-da850-pupd.c
pinctrl-da9062.c pinctrl: Propagate firmware node from a parent device 2021-12-22 03:09:56 +01:00
pinctrl-digicolor.c pinctrl: Get rid of duplicate of_node assignment in the drivers 2021-12-16 04:18:30 +01:00
pinctrl-equilibrium.c pinctrl: equilibrium: Switch to use fwnode instead of of_node 2022-05-09 13:46:51 +02:00
pinctrl-equilibrium.h pinctrl: equilibrium: Switch to use fwnode instead of of_node 2022-05-09 13:46:51 +02:00
pinctrl-falcon.c pinctrl: lantiq: Add missing header(s) 2022-10-24 17:06:46 +03:00
pinctrl-gemini.c pinctrl: gemini: Add missing header(s) 2022-10-24 17:06:45 +03:00
pinctrl-ingenic.c Pin control changes for the v6.2 kernel cycle: 2022-12-13 13:03:06 -08:00
pinctrl-k210.c pinctrl: k210: call of_node_put() 2022-11-22 09:35:27 +01:00
pinctrl-keembay.c pinctrl: keembay: rework loops looking for groups names 2021-12-22 02:57:27 +01:00
pinctrl-lantiq.c pinctrl: lantiq: Add missing header(s) 2022-10-24 17:06:46 +03:00
pinctrl-lantiq.h pinctrl: lantiq: Add missing header(s) 2022-10-24 17:06:46 +03:00
pinctrl-loongson2.c pinctrl: loongson2: Fix some const correctness 2022-11-25 11:41:01 +01:00
pinctrl-lpc18xx.c pinctrl: lpc18xx: Add missing header(s) 2022-10-24 17:06:46 +03:00
pinctrl-max77620.c pinctrl: max77620: drop unneeded MODULE_ALIAS 2022-04-22 22:56:46 +02:00
pinctrl-mcp23s08_i2c.c
pinctrl-mcp23s08_spi.c
pinctrl-mcp23s08.c pinctrl: mcp23s08: Drop assignment of default number of OF cells 2022-09-03 00:17:35 +02:00
pinctrl-mcp23s08.h pinctrl: mcp23s08: Add optional reset GPIO 2021-06-12 01:58:10 +02:00
pinctrl-microchip-sgpio.c pinctrl: microchip-sgpio: Add missing header(s) 2022-10-24 17:06:46 +03:00
pinctrl-ocelot.c Pin control changes for the v6.2 kernel cycle: 2022-12-13 13:03:06 -08:00
pinctrl-oxnas.c pinctrl: Get rid of duplicate of_node assignment in the drivers 2021-12-16 04:18:30 +01:00
pinctrl-palmas.c treewide: Replace GPLv2 boilerplate/reference with SPDX - gpl-2.0_318.RULE 2022-06-10 14:51:36 +02:00
pinctrl-pic32.c pinctrl: Get rid of duplicate of_node assignment in the drivers 2021-12-16 04:18:30 +01:00
pinctrl-pic32.h
pinctrl-pistachio.c pinctrl: pistachio: Correct the fwnode_irq_get() return value check 2022-09-08 15:18:58 +02:00
pinctrl-rk805.c pinctrl: Propagate firmware node from a parent device 2021-12-22 03:09:56 +01:00
pinctrl-rockchip.c pinctrl: rockchip: fix mux route data for rk3568 2023-01-17 14:16:45 +01:00
pinctrl-rockchip.h pinctrl: rockchip: Add RV1126 pinctrl support 2022-08-22 09:51:08 +02:00
pinctrl-single.c pinctrl: single: fix potential NULL dereference 2023-01-27 13:43:55 +01:00
pinctrl-st.c intel-pinctrl for v6.1-2 2022-10-26 09:58:29 +02:00
pinctrl-stmfx.c pinctrl: stmfx: Add missing header(s) 2022-10-24 17:06:47 +03:00
pinctrl-sx150x.c pinctrl: Get rid of duplicate of_node assignment in the drivers 2021-12-16 04:18:30 +01:00
pinctrl-tb10x.c
pinctrl-thunderbay.c pinctrl: thunderbay: fix possible memory leak in thunderbay_build_functions() 2022-12-06 15:28:14 +01:00
pinctrl-utils.c treewide: Replace GPLv2 boilerplate/reference with SPDX - gpl-2.0_318.RULE 2022-06-10 14:51:36 +02:00
pinctrl-utils.h pinctrl: Clean up headers 2022-10-24 17:06:48 +03:00
pinctrl-xway.c pinctrl: Get rid of duplicate of_node assignment in the drivers 2021-12-16 04:18:30 +01:00
pinctrl-zynq.c pinctrl: zynq: use module_platform_driver to simplify the code 2022-03-15 01:46:13 +01:00
pinctrl-zynqmp.c Pin control changes for the v6.2 kernel cycle: 2022-12-13 13:03:06 -08:00
pinmux.c pinctrl: Clean up headers 2022-10-24 17:06:48 +03:00
pinmux.h pinctrl: Clean up headers 2022-10-24 17:06:48 +03:00