Messages in this thread | | | From | Linus Walleij <> | Date | Mon, 18 Jul 2022 11:25:33 +0200 | Subject | Re: [PATCH 2/2] pinctrl: ocelot: fix pinconf |
| |
On Thu, Jul 14, 2022 at 1:07 AM Robert Marko <robert.marko@sartura.hr> wrote: > On Thu, Jul 14, 2022 at 1:01 AM Colin Foster <colin.foster@in-advantage.com> wrote: >> >> Hi Robert, >> >> On Thu, Jul 14, 2022 at 12:51:51AM +0200, Robert Marko wrote: >> > Commit "pinctrl: ocelot: convert pinctrl to regmap" moved to using >> > regmap_read/write, however it neglected to also carry out alignment >> > to register stride of 4. >> > >> > This would cause the following error: >> > [ 1.720873] pinctrl-ocelot 6110101e0.pinctrl: pin_config_set op failed for pin 34 >> > [ 1.728110] sdhci-sparx5 600800000.mmc: Error applying setting, reverse things back >> > >> > So, regmap_read would return -EINVAL as it was being passed address >> > of the pin without stride, so for example pin 34 would end up being >> > 0x22 in hex. >> > >> > Fix this by accouting for the stride in register address. >> >> Sorry for the bug. Horaitu found this as well and recently submitted >> patches: >> >> https://patchwork.ozlabs.org/project/linux-gpio/patch/20220713193750.4079621-3-horatiu.vultur@microchip.com/ >> >> The second patch in his set fixes both of these issues (reg_stride and >> max_register). > > > Yeah, I noticed his patch only after sending this. > Sorry for the noise.
Better too many fixes than too few!
I have merged Horatiu's fixes now.
Yours, Linus Walleij
| |