On 12/03/2021 07:31, Michal Simek wrote: > Static analyzer tool found that the ret variable is not initialized but > code expects ret value >=0 when pinconf is skipped in the first pinmux > loop. The same expectation is for pinmux in a pinconf loop. > That's why initialize ret to 0 to avoid uninitialized ret value in first > loop or reusing ret value from first loop in second. > > Addresses-Coverity: ("Uninitialized variables") > Signed-off-by: Michal Simek <michal.si...@xilinx.com> > CC: Colin Ian King <colin.k...@canonical.com> > CC: Dan Carpenter <dan.carpen...@oracle.com> > --- > > drivers/pinctrl/core.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/pinctrl/core.c b/drivers/pinctrl/core.c > index f5c32d2a3c91..136c323d855e 100644 > --- a/drivers/pinctrl/core.c > +++ b/drivers/pinctrl/core.c > @@ -1266,6 +1266,7 @@ static int pinctrl_commit_state(struct pinctrl *p, > struct pinctrl_state *state) > break; > case PIN_MAP_TYPE_CONFIGS_PIN: > case PIN_MAP_TYPE_CONFIGS_GROUP: > + ret = 0; > break; > default: > ret = -EINVAL; > @@ -1284,6 +1285,7 @@ static int pinctrl_commit_state(struct pinctrl *p, > struct pinctrl_state *state) > list_for_each_entry(setting, &state->settings, node) { > switch (setting->type) { > case PIN_MAP_TYPE_MUX_GROUP: > + ret = 0; > break; > case PIN_MAP_TYPE_CONFIGS_PIN: > case PIN_MAP_TYPE_CONFIGS_GROUP: >
Thanks Michal, Reviewed-by: Colin Ian King <colin.k...@canonical.com>