mirror of
https://github.com/torvalds/linux.git
synced 2024-12-28 05:41:55 +00:00
pinctrl: check ops->pin_config_set in pinconf_set_config()
pinconf_set_config() is called by pinctrl_gpio_set_config().
If a GPIO driver is backed by a pinctrl driver and it does not
support .pin_config_set() hook, it causes NULL pointer dereference.
Fixes: 15381bc7c7
("pinctrl: Allow configuration of pins from gpiolib based drivers")
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
parent
75bb10b479
commit
17a512486b
@ -205,7 +205,7 @@ int pinconf_set_config(struct pinctrl_dev *pctldev, unsigned pin,
|
||||
const struct pinconf_ops *ops;
|
||||
|
||||
ops = pctldev->desc->confops;
|
||||
if (!ops)
|
||||
if (!ops || !ops->pin_config_set)
|
||||
return -ENOTSUPP;
|
||||
|
||||
return ops->pin_config_set(pctldev, pin, configs, nconfigs);
|
||||
|
Loading…
Reference in New Issue
Block a user