mtk_pinmux_set_mux() doesn't check the result of mtk_hw_set_value()
despite it may return a negative error code. Propagate error code
to caller functions.
Found by Linux Verification Center (linuxtesting.org) with the Svace static
analysis tool.
Signed-off-by: Karina Yankevich <k.yankevich@omp.ru>
Link: https://lore.kernel.org/r/20230922135926.3653428-2-k.yankevich@omp.ru
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
        struct mtk_pinctrl *hw = pinctrl_dev_get_drvdata(pctldev);
        struct function_desc *func;
        struct group_desc *grp;
-       int i;
+       int i, err;
 
        func = pinmux_generic_get_function(pctldev, selector);
        if (!func)
                if (!desc->name)
                        return -ENOTSUPP;
 
-               mtk_hw_set_value(hw, desc, PINCTRL_PIN_REG_MODE,
-                                pin_modes[i]);
+               err = mtk_hw_set_value(hw, desc, PINCTRL_PIN_REG_MODE,
+                                      pin_modes[i]);
+
+               if (err)
+                       return err;
        }
 
        return 0;