mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH 0/2] support for RTL9607C GPIO Controller
@ 2026-03-05 16:11 Rustam Adilov
  2026-03-05 16:11 ` [PATCH 1/2] dt-bindings: gpio: realtek-otto: add rtl9607 compatible Rustam Adilov
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Rustam Adilov @ 2026-03-05 16:11 UTC (permalink / raw)
  To: Linus Walleij, Bartosz Golaszewski, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Sander Vanheule,
	Bert Vermeulen, linux-gpio, devicetree, linux-kernel
  Cc: Rustam Adilov

This patch series adds support for the GPIO controller found in
RTL9607C SoC family of MIPS CPUs.

The GPIO controller on this SoC has a reversed port order, the same as in
RTL930x but without CPU affinity settings.

Rustam Adilov (2):
  dt-bindings: gpio: realtek-otto: add rtl9607 compatible
  gpio: realtek-otto: add rtl9607 support

 Documentation/devicetree/bindings/gpio/realtek,otto-gpio.yaml | 1 +
 drivers/gpio/gpio-realtek-otto.c                              | 4 ++++
 2 files changed, 5 insertions(+)

-- 
2.53.0


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH 1/2] dt-bindings: gpio: realtek-otto: add rtl9607 compatible
  2026-03-05 16:11 [PATCH 0/2] support for RTL9607C GPIO Controller Rustam Adilov
@ 2026-03-05 16:11 ` Rustam Adilov
  2026-03-05 18:59   ` Sander Vanheule
  2026-03-08 23:50   ` Linus Walleij
  2026-03-05 16:11 ` [PATCH 2/2] gpio: realtek-otto: add rtl9607 support Rustam Adilov
  2026-03-10  9:10 ` [PATCH 0/2] support for RTL9607C GPIO Controller Bartosz Golaszewski
  2 siblings, 2 replies; 10+ messages in thread
From: Rustam Adilov @ 2026-03-05 16:11 UTC (permalink / raw)
  To: Linus Walleij, Bartosz Golaszewski, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Sander Vanheule,
	Bert Vermeulen, linux-gpio, devicetree, linux-kernel
  Cc: Rustam Adilov

Add the "realtek,rtl9607-gpio" compatible for GPIO nodes
on the RTL9607C SoC series.

Signed-off-by: Rustam Adilov <adilov@disroot.org>
---
 Documentation/devicetree/bindings/gpio/realtek,otto-gpio.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/gpio/realtek,otto-gpio.yaml b/Documentation/devicetree/bindings/gpio/realtek,otto-gpio.yaml
index 728099c65824..b18f8f0ca0ae 100644
--- a/Documentation/devicetree/bindings/gpio/realtek,otto-gpio.yaml
+++ b/Documentation/devicetree/bindings/gpio/realtek,otto-gpio.yaml
@@ -30,6 +30,7 @@ properties:
           - realtek,rtl8390-gpio
           - realtek,rtl9300-gpio
           - realtek,rtl9310-gpio
+          - realtek,rtl9607-gpio
       - const: realtek,otto-gpio
 
   reg: true
-- 
2.53.0


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH 2/2] gpio: realtek-otto: add rtl9607 support
  2026-03-05 16:11 [PATCH 0/2] support for RTL9607C GPIO Controller Rustam Adilov
  2026-03-05 16:11 ` [PATCH 1/2] dt-bindings: gpio: realtek-otto: add rtl9607 compatible Rustam Adilov
@ 2026-03-05 16:11 ` Rustam Adilov
  2026-03-05 19:04   ` Sander Vanheule
  2026-03-10  9:10 ` [PATCH 0/2] support for RTL9607C GPIO Controller Bartosz Golaszewski
  2 siblings, 1 reply; 10+ messages in thread
From: Rustam Adilov @ 2026-03-05 16:11 UTC (permalink / raw)
  To: Linus Walleij, Bartosz Golaszewski, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Sander Vanheule,
	Bert Vermeulen, linux-gpio, devicetree, linux-kernel
  Cc: Rustam Adilov

The RTL9607C SoC has support for 3 GPIO banks with 32 GPIOs each and
the port order is reversed just like in RTL930x.

Signed-off-by: Rustam Adilov <adilov@disroot.org>
---
 drivers/gpio/gpio-realtek-otto.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/gpio/gpio-realtek-otto.c b/drivers/gpio/gpio-realtek-otto.c
index 4cf91528f547..5e3152c2e51a 100644
--- a/drivers/gpio/gpio-realtek-otto.c
+++ b/drivers/gpio/gpio-realtek-otto.c
@@ -351,6 +351,10 @@ static const struct of_device_id realtek_gpio_of_match[] = {
 	{
 		.compatible = "realtek,rtl9310-gpio",
 	},
+	{
+		.compatible = "realtek,rtl9607-gpio",
+		.data = (void *)GPIO_PORTS_REVERSED,
+	},
 	{}
 };
 MODULE_DEVICE_TABLE(of, realtek_gpio_of_match);
-- 
2.53.0


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/2] dt-bindings: gpio: realtek-otto: add rtl9607 compatible
  2026-03-05 16:11 ` [PATCH 1/2] dt-bindings: gpio: realtek-otto: add rtl9607 compatible Rustam Adilov
@ 2026-03-05 18:59   ` Sander Vanheule
  2026-03-08 23:50   ` Linus Walleij
  1 sibling, 0 replies; 10+ messages in thread
From: Sander Vanheule @ 2026-03-05 18:59 UTC (permalink / raw)
  To: Rustam Adilov, Linus Walleij, Bartosz Golaszewski, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Bert Vermeulen, linux-gpio,
	devicetree, linux-kernel

On Thu, 2026-03-05 at 21:11 +0500, Rustam Adilov wrote:
> Add the "realtek,rtl9607-gpio" compatible for GPIO nodes
> on the RTL9607C SoC series.
> 
> Signed-off-by: Rustam Adilov <adilov@disroot.org>
> ---
>  Documentation/devicetree/bindings/gpio/realtek,otto-gpio.yaml | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/Documentation/devicetree/bindings/gpio/realtek,otto-gpio.yaml
> b/Documentation/devicetree/bindings/gpio/realtek,otto-gpio.yaml
> index 728099c65824..b18f8f0ca0ae 100644
> --- a/Documentation/devicetree/bindings/gpio/realtek,otto-gpio.yaml
> +++ b/Documentation/devicetree/bindings/gpio/realtek,otto-gpio.yaml
> @@ -30,6 +30,7 @@ properties:
>            - realtek,rtl8390-gpio
>            - realtek,rtl9300-gpio
>            - realtek,rtl9310-gpio
> +          - realtek,rtl9607-gpio
>        - const: realtek,otto-gpio
>  
>    reg: true

Reviewed-by: Sander Vanheule <sander@svanheule.net>

Best,
Sander

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 2/2] gpio: realtek-otto: add rtl9607 support
  2026-03-05 16:11 ` [PATCH 2/2] gpio: realtek-otto: add rtl9607 support Rustam Adilov
@ 2026-03-05 19:04   ` Sander Vanheule
  2026-03-05 19:54     ` adilov
  0 siblings, 1 reply; 10+ messages in thread
From: Sander Vanheule @ 2026-03-05 19:04 UTC (permalink / raw)
  To: Rustam Adilov, Linus Walleij, Bartosz Golaszewski, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Bert Vermeulen, linux-gpio,
	devicetree, linux-kernel

Hi,

On Thu, 2026-03-05 at 21:11 +0500, Rustam Adilov wrote:
> The RTL9607C SoC has support for 3 GPIO banks with 32 GPIOs each and
> the port order is reversed just like in RTL930x.
> 
> Signed-off-by: Rustam Adilov <adilov@disroot.org>
> ---
>  drivers/gpio/gpio-realtek-otto.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/gpio/gpio-realtek-otto.c b/drivers/gpio/gpio-realtek-
> otto.c
> index 4cf91528f547..5e3152c2e51a 100644
> --- a/drivers/gpio/gpio-realtek-otto.c
> +++ b/drivers/gpio/gpio-realtek-otto.c
> @@ -351,6 +351,10 @@ static const struct of_device_id realtek_gpio_of_match[]
> = {
>  	{
>  		.compatible = "realtek,rtl9310-gpio",
>  	},
> +	{
> +		.compatible = "realtek,rtl9607-gpio",
> +		.data = (void *)GPIO_PORTS_REVERSED,
> +	},
>  	{}
>  };
>  MODULE_DEVICE_TABLE(of, realtek_gpio_of_match);

If I'm not mistaken, this SoC has a MIPS InterAptiv CPU like the RTL931x SoC
series. Were you able to validate that the interrupts are functioning as
expected?

Best,
Sander

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 2/2] gpio: realtek-otto: add rtl9607 support
  2026-03-05 19:04   ` Sander Vanheule
@ 2026-03-05 19:54     ` adilov
  2026-03-05 21:49       ` Sander Vanheule
  0 siblings, 1 reply; 10+ messages in thread
From: adilov @ 2026-03-05 19:54 UTC (permalink / raw)
  To: Sander Vanheule
  Cc: Linus Walleij, Bartosz Golaszewski, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Bert Vermeulen, linux-gpio,
	devicetree, linux-kernel

On 2026-03-05 19:04, Sander Vanheule wrote:
> Hi,
> 
> On Thu, 2026-03-05 at 21:11 +0500, Rustam Adilov wrote:
>> The RTL9607C SoC has support for 3 GPIO banks with 32 GPIOs each and
>> the port order is reversed just like in RTL930x.
>> 
>> Signed-off-by: Rustam Adilov <adilov@disroot.org>
>> ---
>>  drivers/gpio/gpio-realtek-otto.c | 4 ++++
>>  1 file changed, 4 insertions(+)
>> 
>> diff --git a/drivers/gpio/gpio-realtek-otto.c 
>> b/drivers/gpio/gpio-realtek-
>> otto.c
>> index 4cf91528f547..5e3152c2e51a 100644
>> --- a/drivers/gpio/gpio-realtek-otto.c
>> +++ b/drivers/gpio/gpio-realtek-otto.c
>> @@ -351,6 +351,10 @@ static const struct of_device_id 
>> realtek_gpio_of_match[]
>> = {
>>  	{
>>  		.compatible = "realtek,rtl9310-gpio",
>>  	},
>> +	{
>> +		.compatible = "realtek,rtl9607-gpio",
>> +		.data = (void *)GPIO_PORTS_REVERSED,
>> +	},
>>  	{}
>>  };
>>  MODULE_DEVICE_TABLE(of, realtek_gpio_of_match);
> 
> If I'm not mistaken, this SoC has a MIPS InterAptiv CPU like the 
> RTL931x SoC
> series. Were you able to validate that the interrupts are functioning 
> as
> expected?
> 
> Best,
> Sander

Hi Sander,

Yes, this is correct. I played around with gpio-keys in OpenWrt (though 
it
has its own gpio-button-hotplug but it should not change things) and can
verify that button presses and releases are working. I think this should
confirm that interrupts are functional.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 2/2] gpio: realtek-otto: add rtl9607 support
  2026-03-05 19:54     ` adilov
@ 2026-03-05 21:49       ` Sander Vanheule
  2026-03-06 17:39         ` Rustam Adilov
  0 siblings, 1 reply; 10+ messages in thread
From: Sander Vanheule @ 2026-03-05 21:49 UTC (permalink / raw)
  To: adilov
  Cc: Linus Walleij, Bartosz Golaszewski, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Bert Vermeulen, linux-gpio,
	devicetree, linux-kernel

Hi,

On Thu, 2026-03-05 at 19:54 +0000, adilov wrote:
> On 2026-03-05 19:04, Sander Vanheule wrote:
> > On Thu, 2026-03-05 at 21:11 +0500, Rustam Adilov wrote:,
> > > +	{
> > > +		.compatible = "realtek,rtl9607-gpio",
> > > +		.data = (void *)GPIO_PORTS_REVERSED,
> > > +	},
> > If I'm not mistaken, this SoC has a MIPS InterAptiv CPU like the 
> > RTL931x SoC
> > series. Were you able to validate that the interrupts are functioning 
> > as
> > expected?
> > 
> > Best,
> > Sander
> 
> Hi Sander,
> 
> Yes, this is correct. I played around with gpio-keys in OpenWrt (though 
> it
> has its own gpio-button-hotplug but it should not change things) and can
> verify that button presses and releases are working. I think this should
> confirm that interrupts are functional.

Thanks for the info. I was mainly wondering because there seemed to be some
initial confusion [1] about the port order. If you get the order wrong, you
would be getting spurious interrupts.

[1] https://forum.openwrt.org/t/240741/25

If the order is correct, you should see the key GPIO interrupt increase in
/proc/interrupts. So, assuming that's the case:

Reviewed-by: Sander Vanheule <sander@svanheule.net>

Best,
Sander

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 2/2] gpio: realtek-otto: add rtl9607 support
  2026-03-05 21:49       ` Sander Vanheule
@ 2026-03-06 17:39         ` Rustam Adilov
  0 siblings, 0 replies; 10+ messages in thread
From: Rustam Adilov @ 2026-03-06 17:39 UTC (permalink / raw)
  To: Sander Vanheule
  Cc: Linus Walleij, Bartosz Golaszewski, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Bert Vermeulen, linux-gpio,
	devicetree, linux-kernel

On 2026-03-05 21:49, Sander Vanheule wrote:
> Hi,
> 
> On Thu, 2026-03-05 at 19:54 +0000, adilov wrote:
>> On 2026-03-05 19:04, Sander Vanheule wrote:
>> > On Thu, 2026-03-05 at 21:11 +0500, Rustam Adilov wrote:,
>> > > +	{
>> > > +		.compatible = "realtek,rtl9607-gpio",
>> > > +		.data = (void *)GPIO_PORTS_REVERSED,
>> > > +	},
>> > If I'm not mistaken, this SoC has a MIPS InterAptiv CPU like the 
>> > RTL931x SoC
>> > series. Were you able to validate that the interrupts are functioning 
>> > as
>> > expected?
>> > 
>> > Best,
>> > Sander
>> 
>> Hi Sander,
>> 
>> Yes, this is correct. I played around with gpio-keys in OpenWrt (though 
>> it
>> has its own gpio-button-hotplug but it should not change things) and can
>> verify that button presses and releases are working. I think this should
>> confirm that interrupts are functional.
> 
> Thanks for the info. I was mainly wondering because there seemed to be some
> initial confusion [1] about the port order. If you get the order wrong, you
> would be getting spurious interrupts.
> 
> [1] https://forum.openwrt.org/t/240741/25
> 
> If the order is correct, you should see the key GPIO interrupt increase in
> /proc/interrupts. So, assuming that's the case:
> 
> Reviewed-by: Sander Vanheule <sander@svanheule.net>
> 
> Best,
> Sander

Thankfully i had saved the testing image so i quickly booted up my board and
yes, i can see that interrupts increase in /proc/interrupts.

Before button press:
           CPU0       CPU1       CPU2       CPU3
....
 27:          0          0          0          0  realtek-otto-gpio   5  keys
 28:          0          0          0          0  realtek-otto-gpio   2  keys
 29:          0          0          0          0  realtek-otto-gpio   4  keys

After the button press:

 27:          0          0          0          0  realtek-otto-gpio   5  keys
 28:          2          0          0          0  realtek-otto-gpio   2  keys
 29:          0          0          0          0  realtek-otto-gpio   4  keys

It did increase by 2 which i pressume is from press and release actions.

Thank you for the review.

Best,
Rustam

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/2] dt-bindings: gpio: realtek-otto: add rtl9607 compatible
  2026-03-05 16:11 ` [PATCH 1/2] dt-bindings: gpio: realtek-otto: add rtl9607 compatible Rustam Adilov
  2026-03-05 18:59   ` Sander Vanheule
@ 2026-03-08 23:50   ` Linus Walleij
  1 sibling, 0 replies; 10+ messages in thread
From: Linus Walleij @ 2026-03-08 23:50 UTC (permalink / raw)
  To: Rustam Adilov
  Cc: Bartosz Golaszewski, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Sander Vanheule, Bert Vermeulen, linux-gpio,
	devicetree, linux-kernel

On Thu, Mar 5, 2026 at 5:11 PM Rustam Adilov <adilov@disroot.org> wrote:

> Add the "realtek,rtl9607-gpio" compatible for GPIO nodes
> on the RTL9607C SoC series.
>
> Signed-off-by: Rustam Adilov <adilov@disroot.org>

Reviewed-by: Linus Walleij <linusw@kernel.org>

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 0/2] support for RTL9607C GPIO Controller
  2026-03-05 16:11 [PATCH 0/2] support for RTL9607C GPIO Controller Rustam Adilov
  2026-03-05 16:11 ` [PATCH 1/2] dt-bindings: gpio: realtek-otto: add rtl9607 compatible Rustam Adilov
  2026-03-05 16:11 ` [PATCH 2/2] gpio: realtek-otto: add rtl9607 support Rustam Adilov
@ 2026-03-10  9:10 ` Bartosz Golaszewski
  2 siblings, 0 replies; 10+ messages in thread
From: Bartosz Golaszewski @ 2026-03-10  9:10 UTC (permalink / raw)
  To: Linus Walleij, Bartosz Golaszewski, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Sander Vanheule,
	Bert Vermeulen, linux-gpio, devicetree, linux-kernel,
	Rustam Adilov
  Cc: Bartosz Golaszewski


On Thu, 05 Mar 2026 21:11:04 +0500, Rustam Adilov wrote:
> This patch series adds support for the GPIO controller found in
> RTL9607C SoC family of MIPS CPUs.
> 
> The GPIO controller on this SoC has a reversed port order, the same as in
> RTL930x but without CPU affinity settings.
> 
> Rustam Adilov (2):
>   dt-bindings: gpio: realtek-otto: add rtl9607 compatible
>   gpio: realtek-otto: add rtl9607 support
> 
> [...]

Applied, thanks!

[1/2] dt-bindings: gpio: realtek-otto: add rtl9607 compatible
      https://git.kernel.org/brgl/c/49944d6ab7eb951f2aefee69341c623e13434863
[2/2] gpio: realtek-otto: add rtl9607 support
      https://git.kernel.org/brgl/c/8f0aecf2957e7dba78603544368846133bf6d22e

Best regards,
-- 
Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2026-03-10  9:10 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-03-05 16:11 [PATCH 0/2] support for RTL9607C GPIO Controller Rustam Adilov
2026-03-05 16:11 ` [PATCH 1/2] dt-bindings: gpio: realtek-otto: add rtl9607 compatible Rustam Adilov
2026-03-05 18:59   ` Sander Vanheule
2026-03-08 23:50   ` Linus Walleij
2026-03-05 16:11 ` [PATCH 2/2] gpio: realtek-otto: add rtl9607 support Rustam Adilov
2026-03-05 19:04   ` Sander Vanheule
2026-03-05 19:54     ` adilov
2026-03-05 21:49       ` Sander Vanheule
2026-03-06 17:39         ` Rustam Adilov
2026-03-10  9:10 ` [PATCH 0/2] support for RTL9607C GPIO Controller Bartosz Golaszewski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®