Commit 5e13762c authored by Sascha Hauer's avatar Sascha Hauer Committed by Linus Walleij

pinctrl: imx: do not fail when parsing a group fails

The i.MX pinctrl driver completely bails out when it detects an error
in the pinctrl nodes. This usually means that whatever error a
devicetree has the user is left blind because even the console cannot
be initialized without working pinmux.

Instead of bailing out completely, just continue probing. This makes
the pinctrl driver work, only the erroneous groups will fail later
during pin request time.
Signed-off-by: default avatarSascha Hauer <s.hauer@pengutronix.de>
Acked-by: default avatarShawn Guo <shawn.guo@linaro.org>
Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent 1bf1fea9
...@@ -519,7 +519,6 @@ static int imx_pinctrl_parse_functions(struct device_node *np, ...@@ -519,7 +519,6 @@ static int imx_pinctrl_parse_functions(struct device_node *np,
struct device_node *child; struct device_node *child;
struct imx_pmx_func *func; struct imx_pmx_func *func;
struct imx_pin_group *grp; struct imx_pin_group *grp;
int ret;
static u32 grp_index; static u32 grp_index;
u32 i = 0; u32 i = 0;
...@@ -540,9 +539,7 @@ static int imx_pinctrl_parse_functions(struct device_node *np, ...@@ -540,9 +539,7 @@ static int imx_pinctrl_parse_functions(struct device_node *np,
for_each_child_of_node(np, child) { for_each_child_of_node(np, child) {
func->groups[i] = child->name; func->groups[i] = child->name;
grp = &info->groups[grp_index++]; grp = &info->groups[grp_index++];
ret = imx_pinctrl_parse_groups(child, grp, info, i++); imx_pinctrl_parse_groups(child, grp, info, i++);
if (ret)
return ret;
} }
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment