History

pinctrl: sunxi: sunxi_pconf_set: use correct offset

Some Allwinner SoCs have 2 pinctrls (PIO and R_PIO). Previous implementation used absolute pin numbering and it was incorrect for R_PIO pinctrl. It's necessary to take into account the base pin number.

Andrei Lalaev committed 4 years ago

Commit cd4c1e61 parent 24d0af41 file · +2 −0Browse files

Unified · Split

drivers/pinctrl/sunxi/pinctrl-sunxi.c+2−0
@@ -544,6 +544,8 @@ static int sunxi_pconf_set(struct pinctrl_dev *pctldev, unsigned pin, · 543 unmodified lines
544544 struct sunxi_pinctrl *pctl = pinctrl_dev_get_drvdata(pctldev);
545545 int i;
546546
547+ pin -= pctl->desc->pin_base;
548+
547549 for (i = 0; i < num_configs; i++) {
548550 enum pin_config_param param;
549551 unsigned long flags;