提交 b1eed4ec 编写于 作者: S Stephen Warren 提交者: Linus Walleij

pinctrl: error if mapping table's control dev can't be found

This is a serious error, and the pin control system will not function
correctly if it ends up not programing the mapping table entries into
the HW. Instead of just ignoring this, error out.
Signed-off-by: NStephen Warren <swarren@nvidia.com>
[rebased to fit the applied patch series, cast error to pointer]
Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
上级 f026fe3d
...@@ -518,13 +518,12 @@ static struct pinctrl *pinctrl_get_locked(struct device *dev, const char *name) ...@@ -518,13 +518,12 @@ static struct pinctrl *pinctrl_get_locked(struct device *dev, const char *name)
*/ */
pctldev = get_pinctrl_dev_from_devname(map->ctrl_dev_name); pctldev = get_pinctrl_dev_from_devname(map->ctrl_dev_name);
if (!pctldev) { if (!pctldev) {
pr_warning("could not find a pinctrl device for pinmux function %s, fishy, they shall all have one\n", dev_err(dev, "unknown pinctrl device %s in map entry",
map->function);
pr_warning("given pinctrl device name: %s",
map->ctrl_dev_name); map->ctrl_dev_name);
pinmux_put(p);
/* Continue to check the other mappings anyway... */ kfree(p);
continue; /* Eventually, this should trigger deferred probe */
return ERR_PTR(-ENODEV);
} }
pr_debug("in map, found pctldev %s to handle function %s", pr_debug("in map, found pctldev %s to handle function %s",
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册