[PATCH 0/3] gpio: idio-16: Fix regmap initialization errors

William Breathitt Gray posted 3 patches 3 months, 3 weeks ago
There is a newer version of this series
drivers/gpio/gpio-104-idio-16.c | 1 +
drivers/gpio/gpio-idio-16.c     | 5 +++++
drivers/gpio/gpio-pci-idio-16.c | 1 +
3 files changed, 7 insertions(+)
[PATCH 0/3] gpio: idio-16: Fix regmap initialization errors
Posted by William Breathitt Gray 3 months, 3 weeks ago
The migration of IDIO-16 GPIO drivers to the regmap API resulted in some
regressions to the gpio-104-idio-16, gpio-pci-idio-16, and gpio-idio-16
modules. Specifically, the 104-idio-16 and pci-idio-16 GPIO drivers
utilize regmap caching and thus must set max_register for their
regmap_config, while gpio-idio-16 requires fixed_direction_output to
represent the fixed direction of the IDIO-16 GPIO lines. Fixes for these
regressions are provided by this series.

Link: https://lore.kernel.org/r/cover.1680618405.git.william.gray@linaro.org
Link: https://lore.kernel.org/r/9b0375fd-235f-4ee1-a7fa-daca296ef6bf@nutanix.com
Signed-off-by: William Breathitt Gray <wbg@kernel.org>
---
William Breathitt Gray (3):
      gpio: 104-idio-16: Define maximum valid register address offset
      gpio: pci-idio-16: Define maximum valid register address offset
      gpio: idio-16: Define fixed direction of the GPIO lines

 drivers/gpio/gpio-104-idio-16.c | 1 +
 drivers/gpio/gpio-idio-16.c     | 5 +++++
 drivers/gpio/gpio-pci-idio-16.c | 1 +
 3 files changed, 7 insertions(+)
---
base-commit: eba11116f39533d2e38cc5898014f2c95f32d23a
change-id: 20251017-fix-gpio-idio-16-regmap-1282cdc56a19

Best regards,
-- 
William Breathitt Gray <wbg@kernel.org>
Re: [PATCH 0/3] gpio: idio-16: Fix regmap initialization errors
Posted by Mark Cave-Ayland 3 months, 2 weeks ago
On 17/10/2025 01:58, William Breathitt Gray wrote:

> The migration of IDIO-16 GPIO drivers to the regmap API resulted in some
> regressions to the gpio-104-idio-16, gpio-pci-idio-16, and gpio-idio-16
> modules. Specifically, the 104-idio-16 and pci-idio-16 GPIO drivers
> utilize regmap caching and thus must set max_register for their
> regmap_config, while gpio-idio-16 requires fixed_direction_output to
> represent the fixed direction of the IDIO-16 GPIO lines. Fixes for these
> regressions are provided by this series.
> 
> Link: https://urldefense.proofpoint.com/v2/url?u=https-3A__lore.kernel.org_r_cover.1680618405.git.william.gray-40linaro.org&d=DwICaQ&c=s883GpUCOChKOHiocYtGcg&r=c23RpsaH4D2MKyD3EPJTDa0BAxz6tV8aUJqVSoytEiY&m=jPr0Xfn4RnLqz8K-AnYL3uVFBDeN1vNtIrFMqrmT_BE2JM3DrvRhmVaaWZ_FAMEI&s=gNMoDpPUYhiozXkA1xYUBX5tmpjg0fiDQC90QRkvRXA&e=
> Link: https://urldefense.proofpoint.com/v2/url?u=https-3A__lore.kernel.org_r_9b0375fd-2D235f-2D4ee1-2Da7fa-2Ddaca296ef6bf-40nutanix.com&d=DwICaQ&c=s883GpUCOChKOHiocYtGcg&r=c23RpsaH4D2MKyD3EPJTDa0BAxz6tV8aUJqVSoytEiY&m=jPr0Xfn4RnLqz8K-AnYL3uVFBDeN1vNtIrFMqrmT_BE2JM3DrvRhmVaaWZ_FAMEI&s=HEyyhsUTLo9USpHvPuhCvAdAykzqkrkRNay7bNDtPaY&e=
> Signed-off-by: William Breathitt Gray <wbg@kernel.org>
> ---
> William Breathitt Gray (3):
>        gpio: 104-idio-16: Define maximum valid register address offset
>        gpio: pci-idio-16: Define maximum valid register address offset
>        gpio: idio-16: Define fixed direction of the GPIO lines
> 
>   drivers/gpio/gpio-104-idio-16.c | 1 +
>   drivers/gpio/gpio-idio-16.c     | 5 +++++
>   drivers/gpio/gpio-pci-idio-16.c | 1 +
>   3 files changed, 7 insertions(+)
> ---
> base-commit: eba11116f39533d2e38cc5898014f2c95f32d23a
> change-id: 20251017-fix-gpio-idio-16-regmap-1282cdc56a19
> 
> Best regards,

Hi William,

Thanks for the patches! I've given them a test here, and everything now 
appears to be working as it should in our test environment:

root@debian12:~# gpioinfo
gpiochip0 - 32 lines:
	line   0:       "OUT0"       unused  output  active-high
	line   1:       "OUT1"       unused  output  active-high
	line   2:       "OUT2"       unused  output  active-high
	line   3:       "OUT3"       unused  output  active-high
	line   4:       "OUT4"       unused  output  active-high
	line   5:       "OUT5"       unused  output  active-high
	line   6:       "OUT6"       unused  output  active-high
	line   7:       "OUT7"       unused  output  active-high
	line   8:       "OUT8"       unused  output  active-high
	line   9:       "OUT9"       unused  output  active-high
	line  10:      "OUT10"       unused  output  active-high
	line  11:      "OUT11"       unused  output  active-high
	line  12:      "OUT12"       unused  output  active-high
	line  13:      "OUT13"       unused  output  active-high
	line  14:      "OUT14"       unused  output  active-high
	line  15:      "OUT15"       unused  output  active-high
	line  16:       "IIN0"       unused   input  active-high
	line  17:       "IIN1"       unused   input  active-high
	line  18:       "IIN2"       unused   input  active-high
	line  19:       "IIN3"       unused   input  active-high
	line  20:       "IIN4"       unused   input  active-high
	line  21:       "IIN5"       unused   input  active-high
	line  22:       "IIN6"       unused   input  active-high
	line  23:       "IIN7"       unused   input  active-high
	line  24:       "IIN8"       unused   input  active-high
	line  25:       "IIN9"       unused   input  active-high
	line  26:      "IIN10"       unused   input  active-high
	line  27:      "IIN11"       unused   input  active-high
	line  28:      "IIN12"       unused   input  active-high
	line  29:      "IIN13"       unused   input  active-high
	line  30:      "IIN14"       unused   input  active-high
	line  31:      "IIN15"       unused   input  active-high

The line directions are correct and I've confirmed that I can set and 
clear outputs and read the corresponding inputs, so from my viewpoint:

Tested-by: Mark Cave-Ayland <mark.caveayland@nutanix.com>


ATB,

Mark.
Re: [PATCH 0/3] gpio: idio-16: Fix regmap initialization errors
Posted by Andy Shevchenko 3 months, 3 weeks ago
On Fri, Oct 17, 2025 at 09:58:00AM +0900, William Breathitt Gray wrote:
> The migration of IDIO-16 GPIO drivers to the regmap API resulted in some
> regressions to the gpio-104-idio-16, gpio-pci-idio-16, and gpio-idio-16
> modules. Specifically, the 104-idio-16 and pci-idio-16 GPIO drivers
> utilize regmap caching and thus must set max_register for their
> regmap_config, while gpio-idio-16 requires fixed_direction_output to
> represent the fixed direction of the IDIO-16 GPIO lines. Fixes for these
> regressions are provided by this series.

With commit message amendment and Cc list (as per Bart's message),
feel free to add
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>

-- 
With Best Regards,
Andy Shevchenko
Re: [PATCH 0/3] gpio: idio-16: Fix regmap initialization errors
Posted by Bartosz Golaszewski 3 months, 3 weeks ago
On Fri, Oct 17, 2025 at 2:58 AM William Breathitt Gray <wbg@kernel.org> wrote:
>
> The migration of IDIO-16 GPIO drivers to the regmap API resulted in some
> regressions to the gpio-104-idio-16, gpio-pci-idio-16, and gpio-idio-16
> modules. Specifically, the 104-idio-16 and pci-idio-16 GPIO drivers
> utilize regmap caching and thus must set max_register for their
> regmap_config, while gpio-idio-16 requires fixed_direction_output to
> represent the fixed direction of the IDIO-16 GPIO lines. Fixes for these
> regressions are provided by this series.
>
> Link: https://lore.kernel.org/r/cover.1680618405.git.william.gray@linaro.org
> Link: https://lore.kernel.org/r/9b0375fd-235f-4ee1-a7fa-daca296ef6bf@nutanix.com
> Signed-off-by: William Breathitt Gray <wbg@kernel.org>
> ---
> William Breathitt Gray (3):
>       gpio: 104-idio-16: Define maximum valid register address offset
>       gpio: pci-idio-16: Define maximum valid register address offset
>       gpio: idio-16: Define fixed direction of the GPIO lines
>
>  drivers/gpio/gpio-104-idio-16.c | 1 +
>  drivers/gpio/gpio-idio-16.c     | 5 +++++
>  drivers/gpio/gpio-pci-idio-16.c | 1 +
>  3 files changed, 7 insertions(+)
> ---
> base-commit: eba11116f39533d2e38cc5898014f2c95f32d23a
> change-id: 20251017-fix-gpio-idio-16-regmap-1282cdc56a19
>
> Best regards,
> --
> William Breathitt Gray <wbg@kernel.org>
>
>

Please use get_maintainer.pl or b4 --auto-to-cc. This is the address
I'm using for reviews.

Bartosz