android_kernel_motorola_sm6225/drivers/pinctrl
John Crispin 15f70e1b9a pinctrl: fix signed vs unsigned conditionals inside pinmux_map_to_setting
pinmux_map_to_setting() uses setting->data.mux.func/group to store the return
code of pinmux_func_name_to_selector/pinctrl_get_group_selector(). However,
struct pinctrl_setting_mux defines these elements as unsigned, resulting in all
error codes getting lost. The conditionals following the assignments will always
evaluate to false thus breaking the error paths.

This bug can be triggered by loading a pinmux group map from the devicetree
with an invalid function/group string.

Signed-off-by: John Crispin <blogic@openwrt.org>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
Acked-by: Dong Aisheng <dong.aisheng@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2012-04-24 15:09:50 +02:00
..
core.c pinctrl: show pin name for pingroups in sysfs 2012-04-18 13:53:13 +02:00
core.h pinctrl: show pin name for pingroups in sysfs 2012-04-18 13:53:13 +02:00
devicetree.c pinctrl: implement pinctrl deferred probing 2012-04-18 13:53:11 +02:00
devicetree.h pinctrl: core device tree mapping table parsing support 2012-04-18 13:53:10 +02:00
Kconfig pinctrl: mark non-EXPERIMENTAL 2012-04-18 13:53:12 +02:00
Makefile pinctrl: fix build when CONFIG_OF && !CONFIG_PINCTRL 2012-04-18 13:53:10 +02:00
pinconf-generic.c pinctrl: introduce generic pin config 2012-03-12 22:49:02 +01:00
pinconf.c pinctrl: a minor fix of pin config debug information 2012-04-18 13:53:13 +02:00
pinconf.h pinctrl: pinconf: fix compilation error if PINCONF is not selected 2012-04-18 13:53:12 +02:00
pinctrl-coh901.c pinctrl: mark const init data with __initconst instead of __initdata 2012-04-18 13:53:10 +02:00
pinctrl-coh901.h pinctrl: support pinconfig on the U300 2012-03-12 22:49:03 +01:00
pinctrl-mmp2.c pinctrl: enable pinmux for mmp series 2012-02-01 19:42:35 +01:00
pinctrl-pxa3xx.c pinctrl: replace list_*() with get_*_count() 2012-04-18 13:53:10 +02:00
pinctrl-pxa3xx.h pinctrl: enable pinmux for mmp series 2012-02-01 19:42:35 +01:00
pinctrl-pxa168.c pinctrl: enable pinmux for mmp series 2012-02-01 19:42:35 +01:00
pinctrl-pxa910.c pinctrl: enable pinmux for mmp series 2012-02-01 19:42:35 +01:00
pinctrl-sirf.c pinctrl: replace list_*() with get_*_count() 2012-04-18 13:53:10 +02:00
pinctrl-tegra.c pinctrl: tegra: Add complete device tree support 2012-04-18 13:53:12 +02:00
pinctrl-tegra.h pinctrl: add a driver for NVIDIA Tegra 2012-03-06 10:51:46 +01:00
pinctrl-tegra20.c pinctrl: add a driver for NVIDIA Tegra 2012-03-06 10:51:46 +01:00
pinctrl-tegra30.c pinctrl: add a driver for NVIDIA Tegra 2012-03-06 10:51:46 +01:00
pinctrl-u300.c pinctrl: replace list_*() with get_*_count() 2012-04-18 13:53:10 +02:00
pinmux.c pinctrl: fix signed vs unsigned conditionals inside pinmux_map_to_setting 2012-04-24 15:09:50 +02:00
pinmux.h pinctrl: ifdef CONFIG_DEBUG_FS cleanup 2012-04-18 13:53:12 +02:00