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
544 struct sunxi_pinctrl *pctl = pinctrl_dev_get_drvdata(pctldev);544 struct sunxi_pinctrl *pctl = pinctrl_dev_get_drvdata(pctldev);
545 int i;545 int i;
546 546
547 pin -= pctl->desc->pin_base;
548
547 for (i = 0; i < num_configs; i++) {549 for (i = 0; i < num_configs; i++) {
548 enum pin_config_param param;550 enum pin_config_param param;
549 unsigned long flags;551 unsigned long flags;