It's possible that PCI device can provide an IO port resource for
the device. regmap MMIO currently uses MMIO by default. With an
additional flag we enable support for IO port accesses.
Signed-off-by: Andy Shevchenko <[email protected]>
---
drivers/gpio/gpio-exar.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/gpio/gpio-exar.c b/drivers/gpio/gpio-exar.c
index 482f678c893e..df1bdaae441c 100644
--- a/drivers/gpio/gpio-exar.c
+++ b/drivers/gpio/gpio-exar.c
@@ -141,6 +141,7 @@ static const struct regmap_config exar_regmap_config = {
.name = "exar-gpio",
.reg_bits = 16,
.val_bits = 8,
+ .io_port = true,
};
static int gpio_exar_probe(struct platform_device *pdev)
--
2.35.1
On Mon, Oct 17, 2022 at 7:05 PM Andy Shevchenko
<[email protected]> wrote:
> It's possible that PCI device can provide an IO port resource for
> the device. regmap MMIO currently uses MMIO by default. With an
> additional flag we enable support for IO port accesses.
>
> Signed-off-by: Andy Shevchenko <[email protected]>
Looks clever to me!
Acked-by: Linus Walleij <[email protected]>
I would let William have a look at it as well, as he's worked extensively
with port-mapped I/O.
Yours,
Linus Walleij
On Tue, Oct 18, 2022 at 10:29:13AM +0200, Linus Walleij wrote:
> On Mon, Oct 17, 2022 at 7:05 PM Andy Shevchenko
> <[email protected]> wrote:
>
> > It's possible that PCI device can provide an IO port resource for
> > the device. regmap MMIO currently uses MMIO by default. With an
> > additional flag we enable support for IO port accesses.
> >
> > Signed-off-by: Andy Shevchenko <[email protected]>
>
> Looks clever to me!
> Acked-by: Linus Walleij <[email protected]>
> I would let William have a look at it as well, as he's worked extensively
> with port-mapped I/O.
>
> Yours,
> Linus Walleij
I love how simple it is to add IO port support to these drivers now. :-)
Acked-by: William Breathitt Gray <[email protected]>
I'm hoping to convert several of the port-mapped GPIO drivers to the
regmap API later this cycle, so it's good to see other modules making
use of this interface as well.
Thanks,
William Breathitt Gray
On Mon, Oct 17, 2022 at 7:05 PM Andy Shevchenko
<[email protected]> wrote:
>
> It's possible that PCI device can provide an IO port resource for
> the device. regmap MMIO currently uses MMIO by default. With an
> additional flag we enable support for IO port accesses.
>
> Signed-off-by: Andy Shevchenko <[email protected]>
> ---
> drivers/gpio/gpio-exar.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/gpio/gpio-exar.c b/drivers/gpio/gpio-exar.c
> index 482f678c893e..df1bdaae441c 100644
> --- a/drivers/gpio/gpio-exar.c
> +++ b/drivers/gpio/gpio-exar.c
> @@ -141,6 +141,7 @@ static const struct regmap_config exar_regmap_config = {
> .name = "exar-gpio",
> .reg_bits = 16,
> .val_bits = 8,
> + .io_port = true,
> };
>
> static int gpio_exar_probe(struct platform_device *pdev)
> --
> 2.35.1
>
Applied, thanks!
Bartosz