[PATCH v2 0/8] gpio: exar: refactor the driver

From: Bartosz Golaszewski
Date: Wed Nov 04 2020 - 14:30:59 EST


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?

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