Skip to content

Commit 35c60be

Browse files
Qianggui Songlinusw
authored andcommitted
pinctrl: meson: Fix wrong shift value when get drive-strength
In meson_pinconf_get_drive_strength, variable bit is calculated by meson_calc_reg_and_bit, this value is the offset from the first pin of a certain bank to current pin, while Meson SoCs use two bits for each pin to depict drive-strength. So a left shift by 1 should be done or node pinconf-pins shows wrong message. Fixes: 6ea3e3b ("pinctrl: meson: add support of drive-strength-microamp") Signed-off-by: Qianggui Song <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Linus Walleij <[email protected]>
1 parent f7e36e1 commit 35c60be

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

drivers/pinctrl/meson/pinctrl-meson.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -441,6 +441,7 @@ static int meson_pinconf_get_drive_strength(struct meson_pinctrl *pc,
441441
return ret;
442442

443443
meson_calc_reg_and_bit(bank, pin, REG_DS, &reg, &bit);
444+
bit = bit << 1;
444445

445446
ret = regmap_read(pc->reg_ds, reg, &val);
446447
if (ret)

0 commit comments

Comments
 (0)