pinctrl: single: check for any error when getting rows
pinctrl_count_index_with_args returns -ENOENT not -EINVAL. The return check would pass, and we would try to kzalloc with a negative error size throwing a warning. Instead of checking for -EINVAL specifically, lets check for any error and avoid negative size allocations. Signed-off-by: Axel Haslam <ahaslam@baylibre.com> Acked-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
parent
95bdb0ea36
commit
de7416bcee
1 changed files with 8 additions and 4 deletions
|
@ -1133,8 +1133,10 @@ static int pcs_parse_one_pinctrl_entry(struct pcs_device *pcs,
|
|||
struct pcs_function *function;
|
||||
|
||||
rows = pinctrl_count_index_with_args(np, name);
|
||||
if (rows == -EINVAL)
|
||||
return rows;
|
||||
if (rows <= 0) {
|
||||
dev_err(pcs->dev, "Ivalid number of rows: %d\n", rows);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
vals = devm_kzalloc(pcs->dev, sizeof(*vals) * rows, GFP_KERNEL);
|
||||
if (!vals)
|
||||
|
@ -1228,8 +1230,10 @@ static int pcs_parse_bits_in_pinctrl_entry(struct pcs_device *pcs,
|
|||
struct pcs_function *function;
|
||||
|
||||
rows = pinctrl_count_index_with_args(np, name);
|
||||
if (rows == -EINVAL)
|
||||
return rows;
|
||||
if (rows <= 0) {
|
||||
dev_err(pcs->dev, "Invalid number of rows: %d\n", rows);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
npins_in_row = pcs->width / pcs->bits_per_pin;
|
||||
|
||||
|
|
Loading…
Reference in a new issue