mbox series

[5.10.y-cip,00/36] Add IA55 interrupt controller support

Message ID 20240327081756.2228036-1-claudiu.beznea.uj@bp.renesas.com (mailing list archive)
Headers show
Series Add IA55 interrupt controller support | expand

Message

Claudiu March 27, 2024, 8:17 a.m. UTC
From: Claudiu Beznea <claudiu.beznea.uj@bp.renesas.com>

Hi,

Series adds support for Renesas IA55 interrupt controller. The
controller is available on RZ/{G2L,GLC,V2L} SoCs.

All patches are cherry-picked from mainline, except 10/36 "of: platform:
Skip populating IRQ to device resource table". Patch 10/36 has been
created as a result of discussion at [1].

Thank you,
Claudiu Beznea

[1] https://lore.kernel.org/cip-dev/TYCPR01MB64784B67B1AD38E99F08C2ED9F282@TYCPR01MB6478.jpnprd01.prod.outlook.com/

Biju Das (7):
  irqchip: renesas-rzg2l: Fix logic to clear TINT interrupt source
  irqchip/renesas-rzg2l: Flush posted write in irq_eoi()
  irqchip/renesas-rzg2l: Rename rzg2l_tint_eoi()
  irqchip/renesas-rzg2l: Rename rzg2l_irq_eoi()
  irqchip/renesas-rzg2l: Prevent spurious interrupts when setting
    trigger type
  irqchip/renesas-rzg2l: Do not set TIEN and TINT source at the same
    time
  arm64: dts: renesas: rzg2lc-smarc-som: Add PHY interrupt support for
    ETH0

Christophe JAILLET (1):
  pinctrl: renesas: rzg2l: Use devm_clk_get_enabled() helper

Claudiu Beznea (7):
  pinctrl: renesas: rzg2l: Select GPIOLIB_IRQCHIP and
    IRQ_DOMAIN_HIERARCHY
  of: platform: Skip populating IRQ to device resource table
  irqchip/renesas-rzg2l: Use tabs instead of spaces
  irqchip/renesas-rzg2l: Align struct member names to tabs
  irqchip/renesas-rzg2l: Document structure members
  irqchip/renesas-rzg2l: Implement restriction when writing ISCR
    register
  irqchip/renesas-rzg2l: Add macro to retrieve TITSR register offset
    based on register's index

Geert Uytterhoeven (1):
  irqchip/renesas-rzg2l: Convert to irq_data_get_irq_chip_data()

Lad Prabhakar (18):
  dt-bindings: pinctrl: renesas,rzg2l-pinctrl: Document the properties
    to handle GPIO IRQ
  pinctrl: renesas: pinctrl-rzg2l: Add IRQ domain to handle GPIO
    interrupt
  pinctrl: renesas: rzg2l: Fix configuring the GPIO pins as interrupts
  pinctrl: renesas: rzg2l: Add BUILD_BUG_ON() checks
  pinctrl: renesas: rzg2l: Enhance driver to support interrupt affinity
    setting
  dt-bindings: interrupt-controller: Add Renesas RZ/G2L Interrupt
    Controller
  irqchip: Add RZ/G2L IA55 Interrupt Controller driver
  irqchip/renesas-rzg2l: Enhance driver to support interrupt affinity
    setting
  soc: renesas: Kconfig: Enable IRQC driver for RZ/G2L SoC
  arm64: dts: renesas: r9a07g043u: Add IRQC node
  arm64: dts: renesas: r9a07g044: Add IRQC node
  arm64: dts: renesas: r9a07g054: Add IRQC node
  arm64: dts: renesas: r9a07g043u: Update pinctrl node to handle GPIO
    interrupts
  arm64: dts: renesas: r9a07g044: Update pinctrl node to handle GPIO
    interrupts
  arm64: dts: renesas: r9a07g054: Update pinctrl node to handle GPIO
    interrupts
  dt-bindings: interrupt-controller: Add macros for NMI and IRQ0-7
    interrupts present on RZ/G2L SoC
  arm64: dts: renesas: rzg2l-smarc-som: Add PHY interrupt support for
    ETH{0/1}
  arm64: dts: renesas: rzg2ul-smarc-som: Add PHY interrupt support for
    ETH{0/1}

Marc Zyngier (1):
  irqdomain: Make of_phandle_args_to_fwspec() generally available

Nick Alcock (1):
  irqchip: remove MODULE_LICENSE in non-modules

 .../renesas,rzg2l-irqc.yaml                   | 133 ++++++
 .../pinctrl/renesas,rzg2l-pinctrl.yaml        |  15 +
 arch/arm64/boot/dts/renesas/r9a07g043.dtsi    |   2 +
 arch/arm64/boot/dts/renesas/r9a07g043u.dtsi   |  72 +++
 arch/arm64/boot/dts/renesas/r9a07g044.dtsi    |  59 +++
 arch/arm64/boot/dts/renesas/r9a07g054.dtsi    |  59 +++
 .../boot/dts/renesas/rzg2l-smarc-som.dtsi     |  11 +-
 .../boot/dts/renesas/rzg2lc-smarc-som.dtsi    |   6 +-
 .../boot/dts/renesas/rzg2ul-smarc-som.dtsi    |  11 +-
 drivers/irqchip/Kconfig                       |   8 +
 drivers/irqchip/Makefile                      |   1 +
 drivers/irqchip/irq-renesas-rzg2l.c           | 440 ++++++++++++++++++
 drivers/of/platform.c                         |   5 +-
 drivers/pinctrl/renesas/Kconfig               |   2 +
 drivers/pinctrl/renesas/pinctrl-rzg2l.c       | 278 +++++++++--
 drivers/soc/renesas/Kconfig                   |   1 +
 .../interrupt-controller/irqc-rzg2l.h         |  25 +
 include/linux/irqdomain.h                     |   4 +
 kernel/irq/irqdomain.c                        |   6 +-
 19 files changed, 1101 insertions(+), 37 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/interrupt-controller/renesas,rzg2l-irqc.yaml
 create mode 100644 drivers/irqchip/irq-renesas-rzg2l.c
 create mode 100644 include/dt-bindings/interrupt-controller/irqc-rzg2l.h

Comments

Pavel Machek March 27, 2024, 12:02 p.m. UTC | #1
Hi!

> Series adds support for Renesas IA55 interrupt controller. The
> controller is available on RZ/{G2L,GLC,V2L} SoCs.
> 
> All patches are cherry-picked from mainline, except 10/36 "of: platform:
> Skip populating IRQ to device resource table". Patch 10/36 has been
> created as a result of discussion at [1].

I'll have some minor comments for the patch 11/ (but that can be fixed
post-merge). Yes, 10/ is quite "interesting" but I believe it is
better than alternatives.

I can take the patch if there are no other comments and if it passes
testing.

Best regards,
								Pavel
Pavel Machek March 28, 2024, 10:45 a.m. UTC | #2
Hi!

> > Series adds support for Renesas IA55 interrupt controller. The
> > controller is available on RZ/{G2L,GLC,V2L} SoCs.
> > 
> > All patches are cherry-picked from mainline, except 10/36 "of: platform:
> > Skip populating IRQ to device resource table". Patch 10/36 has been
> > created as a result of discussion at [1].
> 
> I'll have some minor comments for the patch 11/ (but that can be fixed
> post-merge). Yes, 10/ is quite "interesting" but I believe it is
> better than alternatives.
> 
> I can take the patch if there are no other comments and if it passes
> testing.

Thanks for series, applied, would still like to hear your thoughts on
patch 11/.

Best regards,
								Pavel
Krzysztof Kozlowski April 19, 2024, 5:51 p.m. UTC | #3
On 27/03/2024 09:17, Claudiu wrote:
> From: Claudiu Beznea <claudiu.beznea.uj@bp.renesas.com>
> 
> Hi,
> 
> Series adds support for Renesas IA55 interrupt controller. The
> controller is available on RZ/{G2L,GLC,V2L} SoCs.
> 
> All patches are cherry-picked from mainline, except 10/36 "of: platform:
> Skip populating IRQ to device resource table". Patch 10/36 has been
> created as a result of discussion at [1].
> 
> Thank you,

Hey folks,

Please use same tooling as stable is using, so you will produce
"X-stable: review" header. Or any other header which will allow people
to filter out huge CIP mailings when using lei/lore, just like we filter
out the stable ones.

Best regards,
Krzysztof
Pavel Machek April 19, 2024, 7:43 p.m. UTC | #4
Hi!

> > Series adds support for Renesas IA55 interrupt controller. The
> > controller is available on RZ/{G2L,GLC,V2L} SoCs.
> > 
> > All patches are cherry-picked from mainline, except 10/36 "of: platform:
> > Skip populating IRQ to device resource table". Patch 10/36 has been
> > created as a result of discussion at [1].
> > 
> > Thank you,
> 
> Hey folks,
> 
> Please use same tooling as stable is using, so you will produce
> "X-stable: review" header. Or any other header which will allow people
> to filter out huge CIP mailings when using lei/lore, just like we filter
> out the stable ones.

I'm confused, what should such header mean and what would you like to
filter?

BR,
								Pavel
Krzysztof Kozlowski April 20, 2024, 11:20 a.m. UTC | #5
On 19/04/2024 21:43, Pavel Machek wrote:
> Hi!
> 
>>> Series adds support for Renesas IA55 interrupt controller. The
>>> controller is available on RZ/{G2L,GLC,V2L} SoCs.
>>>
>>> All patches are cherry-picked from mainline, except 10/36 "of: platform:
>>> Skip populating IRQ to device resource table". Patch 10/36 has been
>>> created as a result of discussion at [1].
>>>
>>> Thank you,
>>
>> Hey folks,
>>
>> Please use same tooling as stable is using, so you will produce
>> "X-stable: review" header. Or any other header which will allow people
>> to filter out huge CIP mailings when using lei/lore, just like we filter
>> out the stable ones.
> 
> I'm confused, what should such header mean and what would you like to
> filter?

Meaning would be the same as in stable process. Why CIP is doing this
differently?

What we all are filtering? Emails from stable and CIP. It's way too
much. Many of us have several filters on lei for specific paths in
kernel, because lei successfully allows to replace the MAINTAINER entry.
stable and CIP postings are picked up by such filters, because they
touch the same paths. And it's not  just one email, it's entire thread,
like 200 patches from stable. CIP is somehow smaller but still.
Therefore the filter has AND NOT for mentioned header - I can nicely
remove all stable postings which I am not interested at all.

Since you serve similar purpose and perform similar patchsets as stable,
having such header seems reasonable. Especially that toolset does it, right?

Best regards,
Krzysztof
Pavel Machek April 21, 2024, 2:11 p.m. UTC | #6
Hi!

> >> Please use same tooling as stable is using, so you will produce
> >> "X-stable: review" header. Or any other header which will allow people
> >> to filter out huge CIP mailings when using lei/lore, just like we filter
> >> out the stable ones.
> > 
> > I'm confused, what should such header mean and what would you like to
> > filter?
> 
> Meaning would be the same as in stable process. Why CIP is doing this
> differently?
> 
> What we all are filtering? Emails from stable and CIP. It's way too
> much. Many of us have several filters on lei for specific paths in
> kernel, because lei successfully allows to replace the MAINTAINER entry.
> stable and CIP postings are picked up by such filters, because they
> touch the same paths. And it's not  just one email, it's entire thread,
> like 200 patches from stable. CIP is somehow smaller but still.
> Therefore the filter has AND NOT for mentioned header - I can nicely
> remove all stable postings which I am not interested at all.

Why not simply ignore everything on cip-dev? We have rule that
everything applied to -cip has to be upstream first.

Best regards,
								Pavel
Krzysztof Kozlowski April 21, 2024, 2:14 p.m. UTC | #7
On 21/04/2024 16:11, Pavel Machek wrote:
> Hi!
> 
>>>> Please use same tooling as stable is using, so you will produce
>>>> "X-stable: review" header. Or any other header which will allow people
>>>> to filter out huge CIP mailings when using lei/lore, just like we filter
>>>> out the stable ones.
>>>
>>> I'm confused, what should such header mean and what would you like to
>>> filter?
>>
>> Meaning would be the same as in stable process. Why CIP is doing this
>> differently?
>>
>> What we all are filtering? Emails from stable and CIP. It's way too
>> much. Many of us have several filters on lei for specific paths in
>> kernel, because lei successfully allows to replace the MAINTAINER entry.
>> stable and CIP postings are picked up by such filters, because they
>> touch the same paths. And it's not  just one email, it's entire thread,
>> like 200 patches from stable. CIP is somehow smaller but still.
>> Therefore the filter has AND NOT for mentioned header - I can nicely
>> remove all stable postings which I am not interested at all.
> 
> Why not simply ignore everything on cip-dev? We have rule that
> everything applied to -cip has to be upstream first.

Because it is simpler to ignore one tag for all backports. But sure, I
will ignore everything from all folks listed here.

Best regards,
Krzysztof