All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Ujfalusi <peter.ujfalusi@ti.com>
To: Lokesh Vutla <lokeshvutla@ti.com>, Marc Zyngier <maz@kernel.org>,
	Rob Herring <robh+dt@kernel.org>, Vinod <vkoul@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>, Nishanth Menon <nm@ti.com>,
	Tero Kristo <t-kristo@ti.com>,
	Santosh Shilimkar <ssantosh@kernel.org>,
	Linux ARM Mailing List <linux-arm-kernel@lists.infradead.org>,
	Sekhar Nori <nsekhar@ti.com>,
	Grygorii Strashko <grygorii.strashko@ti.com>,
	Device Tree Mailing List <devicetree@vger.kernel.org>,
	Suman Anna <s-anna@ti.com>
Subject: Re: [PATCH v6 00/13] irqchip: ti,sci-intr/inta: Update the dt bindings to accept different interrupt parents
Date: Thu, 13 Aug 2020 12:41:04 +0300	[thread overview]
Message-ID: <31a0d207-cafa-8524-0364-b0bc55db6f6d@ti.com> (raw)
In-Reply-To: <20200806074826.24607-1-lokeshvutla@ti.com>

Hi Lokesh,

On 06/08/2020 10.48, Lokesh Vutla wrote:
> Hi Marc,
> 	This is continuation of the RFC patches[0] regarding the driver
> updates to support for following interrupt parent connection:
> - INTR -> INTR
> - INTA -> GICv3
> The current existing driver assumes that INTR is always connected to
> GICv3 and INTA is always connected to INTR.
> 
> As discussed this change breaks the DT backward compatibility but it
> allows to not depend on TISCI firmware properties in DT node. IMHO, this
> will ensure that any future changes will not effect DT properties.

Just to note:
this series will demand new sysfw (with ABI 3.0+) to boot (well, to have
usable intr/inta). Sysfw ABI 3.0 carries other non compatible changes
affecting DMA on am654: TR mode channels for servicing peripherals will
fail at request time since the channel OES offset value is different
compared to older sysfw ABI.

The good news is that other channels are _not_ affected by this, so
packet mode channels and mem2mem TR channel pairs will work just fine -
as you have tested it already w/ NFS boot.
We do not have upstream users for TR mode channels for peripherals, it
is only in my local branch for audio.

I can send a patch for UDMA to be picked up by Marc on top of this
series to avoid this, if it is OK with Marc to pick it up.

The change is well isolated away from the rest of the driver, so it
should be safe (famous last words?)

- Péter

> This series depends on the the new Yaml bindings for common TISCI[1].
> 
> [0] https://lore.kernel.org/linux-arm-kernel/20190923042405.26064-1-lokeshvutla@ti.com/
> [1] https://patchwork.kernel.org/patch/11676843/
> 
> Tested with: (There is a build error on Today's master while building dtbs. So I enabled
> 	      only the TI specific components for building DTBS).
> - DT_SCHEMA_FILES="Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.yaml"
>   v8make dt_binding_check
> - DT_SCHEMA_FILES="Documentation/devicetree/bindings/interrupt-controller/ti,sci-inta.yaml"
>   v8make dt_binding_check
> - DT_SCHEMA_FILES="Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.yaml"
>   v8make dtbs_check
> - DT_SCHEMA_FILES="Documentation/devicetree/bindings/interrupt-controller/ti,sci-inta.yaml"
>   v8make dtbs_check
> - v8make allmodconfig
> 
> Changes since v5:
> - Rebased on latest master.
> - Collected Reviewed-by from Rob.
> - Included DT changes in the same series so that everything can be merged in a single go.
>   Without DT changes, there are regressions for DMA and other consumer peripherals so suggestion
>   is to merge everthing in a single go. DT changes apply cleanly on next and Linus's master
>   without any merge conflicts.
> 
> Changes since v4:
> - Fixed Rob's comment on INTR and INTA yaml documentation
> - Collected Reviewed-by's and Acked-by's
> 
> Changes since v3:
> - Hardcode param_count based on parent instead of reading it from DT.
> - Drop storing TISCI device id in platform device id field.
> 
> Changes since v2:
> - Fixed comments from Rob
> - Fixed DT schema warnings.
> 
> Changes since v1:
> - Rebased on top of latest Linux master
> - Dropped DT patches.
> 
> Lokesh Vutla (13):
>   firmware: ti_sci: Drop the device id to resource type translation
>   firmware: ti_sci: Drop unused structure ti_sci_rm_type_map
>   firmware: ti_sci: Add support for getting resource with subtype
>   dt-bindings: irqchip: ti,sci-intr: Update bindings to drop the usage
>     of gic as parent
>   dt-bindings: irqchip: Convert ti,sci-intr bindings to yaml
>   irqchip/ti-sci-intr: Add support for INTR being a parent to INTR
>   dt-bindings: irqchip: ti,sci-inta: Update docs to support different
>     parent.
>   dt-bindings: irqchip: Convert ti,sci-inta bindings to yaml
>   irqchip/ti-sci-inta: Do not store TISCI device id in platform device
>     id field
>   irqchip/ti-sci-inta: Add support for INTA directly connecting to GIC
>   arm64: dts: k3-j721e: ti-sci-inta/intr: Update to latest bindings
>   arm64: dts: k3-am65: ti-sci-inta/intr: Update to latest bindings
>   arm64: dts: k3-am65: Update the RM resource types
> 
>  .../interrupt-controller/ti,sci-inta.txt      |  66 --------
>  .../interrupt-controller/ti,sci-inta.yaml     |  98 +++++++++++
>  .../interrupt-controller/ti,sci-intr.txt      |  82 ---------
>  .../interrupt-controller/ti,sci-intr.yaml     | 102 ++++++++++++
>  MAINTAINERS                                   |   4 +-
>  arch/arm64/boot/dts/ti/k3-am65-main.dtsi      |  36 ++--
>  arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi       |  12 +-
>  arch/arm64/boot/dts/ti/k3-am65-wakeup.dtsi    |   8 +-
>  .../arm64/boot/dts/ti/k3-am654-base-board.dts |   4 +-
>  .../dts/ti/k3-j721e-common-proc-board.dts     |  10 +-
>  arch/arm64/boot/dts/ti/k3-j721e-main.dtsi     |  43 ++---
>  .../boot/dts/ti/k3-j721e-mcu-wakeup.dtsi      |  12 +-
>  drivers/firmware/ti_sci.c                     | 155 ++++++++----------
>  drivers/irqchip/irq-ti-sci-inta.c             |  95 +++++++++--
>  drivers/irqchip/irq-ti-sci-intr.c             | 152 ++++++++++-------
>  include/linux/soc/ti/ti_sci_protocol.h        |  13 ++
>  16 files changed, 516 insertions(+), 376 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/interrupt-controller/ti,sci-inta.txt
>  create mode 100644 Documentation/devicetree/bindings/interrupt-controller/ti,sci-inta.yaml
>  delete mode 100644 Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.txt
>  create mode 100644 Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.yaml
> 


Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki


WARNING: multiple messages have this Message-ID (diff)
From: Peter Ujfalusi <peter.ujfalusi@ti.com>
To: Lokesh Vutla <lokeshvutla@ti.com>, Marc Zyngier <maz@kernel.org>,
	Rob Herring <robh+dt@kernel.org>, Vinod <vkoul@kernel.org>
Cc: Nishanth Menon <nm@ti.com>,
	Device Tree Mailing List <devicetree@vger.kernel.org>,
	Grygorii Strashko <grygorii.strashko@ti.com>,
	Sekhar Nori <nsekhar@ti.com>, Tero Kristo <t-kristo@ti.com>,
	Santosh Shilimkar <ssantosh@kernel.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Linux ARM Mailing List <linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v6 00/13] irqchip: ti,sci-intr/inta: Update the dt bindings to accept different interrupt parents
Date: Thu, 13 Aug 2020 12:41:04 +0300	[thread overview]
Message-ID: <31a0d207-cafa-8524-0364-b0bc55db6f6d@ti.com> (raw)
In-Reply-To: <20200806074826.24607-1-lokeshvutla@ti.com>

Hi Lokesh,

On 06/08/2020 10.48, Lokesh Vutla wrote:
> Hi Marc,
> 	This is continuation of the RFC patches[0] regarding the driver
> updates to support for following interrupt parent connection:
> - INTR -> INTR
> - INTA -> GICv3
> The current existing driver assumes that INTR is always connected to
> GICv3 and INTA is always connected to INTR.
> 
> As discussed this change breaks the DT backward compatibility but it
> allows to not depend on TISCI firmware properties in DT node. IMHO, this
> will ensure that any future changes will not effect DT properties.

Just to note:
this series will demand new sysfw (with ABI 3.0+) to boot (well, to have
usable intr/inta). Sysfw ABI 3.0 carries other non compatible changes
affecting DMA on am654: TR mode channels for servicing peripherals will
fail at request time since the channel OES offset value is different
compared to older sysfw ABI.

The good news is that other channels are _not_ affected by this, so
packet mode channels and mem2mem TR channel pairs will work just fine -
as you have tested it already w/ NFS boot.
We do not have upstream users for TR mode channels for peripherals, it
is only in my local branch for audio.

I can send a patch for UDMA to be picked up by Marc on top of this
series to avoid this, if it is OK with Marc to pick it up.

The change is well isolated away from the rest of the driver, so it
should be safe (famous last words?)

- Péter

> This series depends on the the new Yaml bindings for common TISCI[1].
> 
> [0] https://lore.kernel.org/linux-arm-kernel/20190923042405.26064-1-lokeshvutla@ti.com/
> [1] https://patchwork.kernel.org/patch/11676843/
> 
> Tested with: (There is a build error on Today's master while building dtbs. So I enabled
> 	      only the TI specific components for building DTBS).
> - DT_SCHEMA_FILES="Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.yaml"
>   v8make dt_binding_check
> - DT_SCHEMA_FILES="Documentation/devicetree/bindings/interrupt-controller/ti,sci-inta.yaml"
>   v8make dt_binding_check
> - DT_SCHEMA_FILES="Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.yaml"
>   v8make dtbs_check
> - DT_SCHEMA_FILES="Documentation/devicetree/bindings/interrupt-controller/ti,sci-inta.yaml"
>   v8make dtbs_check
> - v8make allmodconfig
> 
> Changes since v5:
> - Rebased on latest master.
> - Collected Reviewed-by from Rob.
> - Included DT changes in the same series so that everything can be merged in a single go.
>   Without DT changes, there are regressions for DMA and other consumer peripherals so suggestion
>   is to merge everthing in a single go. DT changes apply cleanly on next and Linus's master
>   without any merge conflicts.
> 
> Changes since v4:
> - Fixed Rob's comment on INTR and INTA yaml documentation
> - Collected Reviewed-by's and Acked-by's
> 
> Changes since v3:
> - Hardcode param_count based on parent instead of reading it from DT.
> - Drop storing TISCI device id in platform device id field.
> 
> Changes since v2:
> - Fixed comments from Rob
> - Fixed DT schema warnings.
> 
> Changes since v1:
> - Rebased on top of latest Linux master
> - Dropped DT patches.
> 
> Lokesh Vutla (13):
>   firmware: ti_sci: Drop the device id to resource type translation
>   firmware: ti_sci: Drop unused structure ti_sci_rm_type_map
>   firmware: ti_sci: Add support for getting resource with subtype
>   dt-bindings: irqchip: ti,sci-intr: Update bindings to drop the usage
>     of gic as parent
>   dt-bindings: irqchip: Convert ti,sci-intr bindings to yaml
>   irqchip/ti-sci-intr: Add support for INTR being a parent to INTR
>   dt-bindings: irqchip: ti,sci-inta: Update docs to support different
>     parent.
>   dt-bindings: irqchip: Convert ti,sci-inta bindings to yaml
>   irqchip/ti-sci-inta: Do not store TISCI device id in platform device
>     id field
>   irqchip/ti-sci-inta: Add support for INTA directly connecting to GIC
>   arm64: dts: k3-j721e: ti-sci-inta/intr: Update to latest bindings
>   arm64: dts: k3-am65: ti-sci-inta/intr: Update to latest bindings
>   arm64: dts: k3-am65: Update the RM resource types
> 
>  .../interrupt-controller/ti,sci-inta.txt      |  66 --------
>  .../interrupt-controller/ti,sci-inta.yaml     |  98 +++++++++++
>  .../interrupt-controller/ti,sci-intr.txt      |  82 ---------
>  .../interrupt-controller/ti,sci-intr.yaml     | 102 ++++++++++++
>  MAINTAINERS                                   |   4 +-
>  arch/arm64/boot/dts/ti/k3-am65-main.dtsi      |  36 ++--
>  arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi       |  12 +-
>  arch/arm64/boot/dts/ti/k3-am65-wakeup.dtsi    |   8 +-
>  .../arm64/boot/dts/ti/k3-am654-base-board.dts |   4 +-
>  .../dts/ti/k3-j721e-common-proc-board.dts     |  10 +-
>  arch/arm64/boot/dts/ti/k3-j721e-main.dtsi     |  43 ++---
>  .../boot/dts/ti/k3-j721e-mcu-wakeup.dtsi      |  12 +-
>  drivers/firmware/ti_sci.c                     | 155 ++++++++----------
>  drivers/irqchip/irq-ti-sci-inta.c             |  95 +++++++++--
>  drivers/irqchip/irq-ti-sci-intr.c             | 152 ++++++++++-------
>  include/linux/soc/ti/ti_sci_protocol.h        |  13 ++
>  16 files changed, 516 insertions(+), 376 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/interrupt-controller/ti,sci-inta.txt
>  create mode 100644 Documentation/devicetree/bindings/interrupt-controller/ti,sci-inta.yaml
>  delete mode 100644 Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.txt
>  create mode 100644 Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.yaml
> 


Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  parent reply	other threads:[~2020-08-13  9:39 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-08-06  7:48 [PATCH v6 00/13] irqchip: ti,sci-intr/inta: Update the dt bindings to accept different interrupt parents Lokesh Vutla
2020-08-06  7:48 ` [PATCH v6 00/13] irqchip: ti, sci-intr/inta: " Lokesh Vutla
2020-08-06  7:48 ` [PATCH v6 01/13] firmware: ti_sci: Drop the device id to resource type translation Lokesh Vutla
2020-08-06  7:48   ` Lokesh Vutla
2020-08-25 23:41   ` [tip: irq/urgent] " tip-bot2 for Lokesh Vutla
2020-08-06  7:48 ` [PATCH v6 02/13] firmware: ti_sci: Drop unused structure ti_sci_rm_type_map Lokesh Vutla
2020-08-06  7:48   ` Lokesh Vutla
2020-08-25 23:41   ` [tip: irq/urgent] " tip-bot2 for Lokesh Vutla
2020-08-06  7:48 ` [PATCH v6 03/13] firmware: ti_sci: Add support for getting resource with subtype Lokesh Vutla
2020-08-06  7:48   ` Lokesh Vutla
2020-08-25 23:41   ` [tip: irq/urgent] " tip-bot2 for Lokesh Vutla
2020-08-06  7:48 ` [PATCH v6 04/13] dt-bindings: irqchip: ti,sci-intr: Update bindings to drop the usage of gic as parent Lokesh Vutla
2020-08-06  7:48   ` [PATCH v6 04/13] dt-bindings: irqchip: ti, sci-intr: " Lokesh Vutla
2020-08-25 23:41   ` [tip: irq/urgent] " tip-bot2 for Lokesh Vutla
2020-08-06  7:48 ` [PATCH v6 05/13] dt-bindings: irqchip: Convert ti,sci-intr bindings to yaml Lokesh Vutla
2020-08-06  7:48   ` [PATCH v6 05/13] dt-bindings: irqchip: Convert ti, sci-intr " Lokesh Vutla
2020-08-25 23:40   ` [tip: irq/urgent] " tip-bot2 for Lokesh Vutla
2020-08-06  7:48 ` [PATCH v6 06/13] irqchip/ti-sci-intr: Add support for INTR being a parent to INTR Lokesh Vutla
2020-08-06  7:48   ` Lokesh Vutla
2020-08-25 23:40   ` [tip: irq/urgent] " tip-bot2 for Lokesh Vutla
2020-08-06  7:48 ` [PATCH v6 07/13] dt-bindings: irqchip: ti,sci-inta: Update docs to support different parent Lokesh Vutla
2020-08-06  7:48   ` [PATCH v6 07/13] dt-bindings: irqchip: ti, sci-inta: " Lokesh Vutla
2020-08-25 23:40   ` [tip: irq/urgent] " tip-bot2 for Lokesh Vutla
2020-08-06  7:48 ` [PATCH v6 08/13] dt-bindings: irqchip: Convert ti,sci-inta bindings to yaml Lokesh Vutla
2020-08-06  7:48   ` [PATCH v6 08/13] dt-bindings: irqchip: Convert ti, sci-inta " Lokesh Vutla
2020-08-25 23:40   ` [tip: irq/urgent] " tip-bot2 for Lokesh Vutla
2020-08-06  7:48 ` [PATCH v6 09/13] irqchip/ti-sci-inta: Do not store TISCI device id in platform device id field Lokesh Vutla
2020-08-06  7:48   ` Lokesh Vutla
2020-08-25 23:40   ` [tip: irq/urgent] " tip-bot2 for Lokesh Vutla
2020-08-06  7:48 ` [PATCH v6 10/13] irqchip/ti-sci-inta: Add support for INTA directly connecting to GIC Lokesh Vutla
2020-08-06  7:48   ` Lokesh Vutla
2020-08-25 23:40   ` [tip: irq/urgent] " tip-bot2 for Lokesh Vutla
2020-08-06  7:48 ` [PATCH v6 11/13] arm64: dts: k3-j721e: ti-sci-inta/intr: Update to latest bindings Lokesh Vutla
2020-08-06  7:48   ` Lokesh Vutla
2020-08-12 13:35   ` Nishanth Menon
2020-08-12 13:35     ` Nishanth Menon
2020-08-25 23:40   ` [tip: irq/urgent] " tip-bot2 for Lokesh Vutla
2020-08-06  7:48 ` [PATCH v6 12/13] arm64: dts: k3-am65: " Lokesh Vutla
2020-08-06  7:48   ` Lokesh Vutla
2020-08-12 13:35   ` Nishanth Menon
2020-08-12 13:35     ` Nishanth Menon
2020-08-25 23:40   ` [tip: irq/urgent] " tip-bot2 for Lokesh Vutla
2020-08-06  7:48 ` [PATCH v6 13/13] arm64: dts: k3-am65: Update the RM resource types Lokesh Vutla
2020-08-06  7:48   ` Lokesh Vutla
2020-08-12 13:36   ` Nishanth Menon
2020-08-12 13:36     ` Nishanth Menon
2020-08-25 23:40   ` [tip: irq/urgent] " tip-bot2 for Lokesh Vutla
2020-08-07  6:32 ` [PATCH v6 00/13] irqchip: ti,sci-intr/inta: Update the dt bindings to accept different interrupt parents Lokesh Vutla
2020-08-07  6:32   ` Lokesh Vutla
2020-08-12  2:14 ` Lokesh Vutla
2020-08-12  2:14   ` Lokesh Vutla
2020-08-12 13:40 ` Nishanth Menon
2020-08-12 13:40   ` Nishanth Menon
2020-08-13  9:41 ` Peter Ujfalusi [this message]
2020-08-13  9:41   ` Peter Ujfalusi
2020-08-13 10:03   ` Sekhar Nori
2020-08-13 10:03     ` Sekhar Nori
2020-08-13 10:20     ` Peter Ujfalusi
2020-08-13 10:20       ` Peter Ujfalusi
2020-08-16 21:03 ` [PATCH v6 00/13] irqchip: ti, sci-intr/inta: " Marc Zyngier
2020-08-16 21:03   ` Marc Zyngier
2020-08-17 17:30   ` Sekhar Nori
2020-08-17 17:30     ` Sekhar Nori

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=31a0d207-cafa-8524-0364-b0bc55db6f6d@ti.com \
    --to=peter.ujfalusi@ti.com \
    --cc=devicetree@vger.kernel.org \
    --cc=grygorii.strashko@ti.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=lokeshvutla@ti.com \
    --cc=maz@kernel.org \
    --cc=nm@ti.com \
    --cc=nsekhar@ti.com \
    --cc=robh+dt@kernel.org \
    --cc=s-anna@ti.com \
    --cc=ssantosh@kernel.org \
    --cc=t-kristo@ti.com \
    --cc=tglx@linutronix.de \
    --cc=vkoul@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.