On Wed, Nov 4, 2020 at 9:34 PM Bartosz Golaszewski <brgl@xxxxxxxx> wrote: > > From: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx> > > I just wanted to convert the driver to using simpler IDA API but ended up > quickly converting it to using regmap. Unfortunately I don't have the HW > to test it so marking the patches that introduce functional change as RFT > and Cc'ing the original author. > > v1 -> v2: > - add new regmap helper: regmap_assign_bits() > - fix lvl vs sel register access > - set value in direction_output callback > > Note: I didn't use the fancy method of offset calculation Andy and David > suggested because this series broke the driver according to Jan - let's > get it right before we modify it any more. I found a couple problems that > could maybe cause the crash. Jan: could you give it another spin? I would suggest perform two tests: a) full set b) with last two patches reverted / not being applied In that case if the series is still broken we may go with cleanups first. > > Bartosz Golaszewski (8): > regmap: provide regmap_assign_bits() > gpio: exar: add a newline after the copyright notice > gpio: exar: include idr.h > gpio: exar: switch to a simpler IDA interface > gpio: exar: use a helper variable for &pdev->dev > gpio: exar: unduplicate address and offset computation > gpio: exar: switch to using regmap > gpio: exar: use devm action for freeing the IDA and drop remove() > > drivers/gpio/Kconfig | 1 + > drivers/gpio/gpio-exar.c | 151 +++++++++++++++++++-------------------- > include/linux/regmap.h | 16 +++++ > 3 files changed, 90 insertions(+), 78 deletions(-) > > -- > 2.29.1 > -- With Best Regards, Andy Shevchenko