| From 1fec8ba47c0f5a2966bbb7cfe33b928c129ecdae Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Mon, 10 Sep 2018 11:37:45 +0300 |
| Subject: pinctrl: at91-pio4: fix has_config check in |
| atmel_pctl_dt_subnode_to_map() |
| |
| From: Dan Carpenter <dan.carpenter@oracle.com> |
| |
| [ Upstream commit b97760ae8e3dc8bb91881c13425a0bff55f2bd85 ] |
| |
| Smatch complains about this condition: |
| |
| if (has_config && num_pins >= 1) |
| |
| The "has_config" variable is either uninitialized or true. The |
| "num_pins" variable is unsigned and we verified that it is non-zero on |
| the lines before so we know "num_pines >= 1" is true. Really, we could |
| just check "num_configs" directly and remove the "has_config" variable. |
| |
| Fixes: 776180848b57 ("pinctrl: introduce driver for Atmel PIO4 controller") |
| Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> |
| Acked-by: Ludovic Desroches <ludovic.desroches@microchip.com> |
| Signed-off-by: Linus Walleij <linus.walleij@linaro.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/pinctrl/pinctrl-at91-pio4.c | 8 ++------ |
| 1 file changed, 2 insertions(+), 6 deletions(-) |
| |
| diff --git a/drivers/pinctrl/pinctrl-at91-pio4.c b/drivers/pinctrl/pinctrl-at91-pio4.c |
| index ef7ab208b951e..9e2f3738bf3ec 100644 |
| --- a/drivers/pinctrl/pinctrl-at91-pio4.c |
| +++ b/drivers/pinctrl/pinctrl-at91-pio4.c |
| @@ -493,7 +493,6 @@ static int atmel_pctl_dt_subnode_to_map(struct pinctrl_dev *pctldev, |
| unsigned num_pins, num_configs, reserve; |
| unsigned long *configs; |
| struct property *pins; |
| - bool has_config; |
| u32 pinfunc; |
| int ret, i; |
| |
| @@ -509,9 +508,6 @@ static int atmel_pctl_dt_subnode_to_map(struct pinctrl_dev *pctldev, |
| return ret; |
| } |
| |
| - if (num_configs) |
| - has_config = true; |
| - |
| num_pins = pins->length / sizeof(u32); |
| if (!num_pins) { |
| dev_err(pctldev->dev, "no pins found in node %pOF\n", np); |
| @@ -524,7 +520,7 @@ static int atmel_pctl_dt_subnode_to_map(struct pinctrl_dev *pctldev, |
| * map for each pin. |
| */ |
| reserve = 1; |
| - if (has_config && num_pins >= 1) |
| + if (num_configs) |
| reserve++; |
| reserve *= num_pins; |
| ret = pinctrl_utils_reserve_map(pctldev, map, reserved_maps, num_maps, |
| @@ -547,7 +543,7 @@ static int atmel_pctl_dt_subnode_to_map(struct pinctrl_dev *pctldev, |
| pinctrl_utils_add_map_mux(pctldev, map, reserved_maps, num_maps, |
| group, func); |
| |
| - if (has_config) { |
| + if (num_configs) { |
| ret = pinctrl_utils_add_map_configs(pctldev, map, |
| reserved_maps, num_maps, group, |
| configs, num_configs, |
| -- |
| 2.20.1 |
| |