public inbox for linux-arm-kernel@lists.infradead.org
 help / color / mirror / Atom feed
* [PATCH v4 1/2] dt-bindings: firmware: arm,scmi: Document arm,no-completion-irq property
@ 2026-01-17  1:02 Marek Vasut
  2026-01-17  1:02 ` [PATCH v4 2/2] firmware: arm_scmi: Implement " Marek Vasut
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Marek Vasut @ 2026-01-17  1:02 UTC (permalink / raw)
  To: arm-scmi
  Cc: Marek Vasut, Rob Herring (Arm), Conor Dooley, Cristian Marussi,
	Florian Fainelli, Krzysztof Kozlowski, Sudeep Holla, devicetree,
	linux-arm-kernel, linux-renesas-soc

Document new property arm,no-completion-irq . This optional property
is intended for hardware that does not generate completion interrupts
and can be used to unconditionally enable forced polling mode of
operation.

With this property set, such implementations which do not generate
interrupts can be interacted with, until they are fixed to generate
interrupts properly.

Note that, because the original base protocol exchange also requires
some sort of completion mechanism, it is not possible to query SCMI
itself for this property and it must be described in DT. While this
does look a bit like policy, the SCMI provider is part of the
hardware, hence DT.

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
Cc: Conor Dooley <conor+dt@kernel.org>
Cc: Cristian Marussi <cristian.marussi@arm.com>
Cc: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
Cc: Rob Herring <robh@kernel.org>
Cc: Sudeep Holla <sudeep.holla@arm.com>
Cc: arm-scmi@vger.kernel.org
Cc: devicetree@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-renesas-soc@vger.kernel.org
---
V2: s@mean@&t and limit poll transport to mailbox/shmem only
V3: - Reformat the commit message, expand property description to
      explicitly spell out this is hardware description.
    - Rename property from arm,poll-transport to arm,no-completion-irq
V4: - Update first paragraph of commit message and property description
    - Add RB from Rob
---
 .../devicetree/bindings/firmware/arm,scmi.yaml         | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
index be817fd9cc34b..d06cca9273c48 100644
--- a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
+++ b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
@@ -146,6 +146,13 @@ properties:
       this platform. If set, the value should be non-zero.
     minimum: 1
 
+  arm,no-completion-irq:
+    type: boolean
+    description:
+      This optional property is intended for hardware that does not generate
+      completion interrupts and can be used to unconditionally enable forced
+      polling mode of operation.
+
   arm,smc-id:
     $ref: /schemas/types.yaml#/definitions/uint32
     description:
@@ -379,6 +386,9 @@ then:
     - shmem
 
 else:
+  properties:
+    arm,no-completion-irq: false
+
   if:
     properties:
       compatible:
-- 
2.51.0



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

* [PATCH v4 2/2] firmware: arm_scmi: Implement arm,no-completion-irq property
  2026-01-17  1:02 [PATCH v4 1/2] dt-bindings: firmware: arm,scmi: Document arm,no-completion-irq property Marek Vasut
@ 2026-01-17  1:02 ` Marek Vasut
  2026-01-19 16:57   ` Cristian Marussi
  2026-01-19 16:53 ` [PATCH v4 1/2] dt-bindings: firmware: arm,scmi: Document " Cristian Marussi
  2026-03-09  9:10 ` Sudeep Holla
  2 siblings, 1 reply; 14+ messages in thread
From: Marek Vasut @ 2026-01-17  1:02 UTC (permalink / raw)
  To: arm-scmi
  Cc: Marek Vasut, Conor Dooley, Cristian Marussi, Florian Fainelli,
	Krzysztof Kozlowski, Rob Herring, Sudeep Holla, devicetree,
	linux-arm-kernel, linux-renesas-soc

Implement new property arm,no-completion-irq, which sets all SCMI
operation into poll mode. This is meant to work around uncooperative
SCP implementations, which do not generate completion interrupts.
This applies to mbox/shmem based implementations.

With this property set, such implementations which do not generate
interrupts can be interacted with, until they are fixed to generate
interrupts properly.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
Cc: Conor Dooley <conor+dt@kernel.org>
Cc: Cristian Marussi <cristian.marussi@arm.com>
Cc: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
Cc: Rob Herring <robh@kernel.org>
Cc: Sudeep Holla <sudeep.holla@arm.com>
Cc: arm-scmi@vger.kernel.org
Cc: devicetree@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-renesas-soc@vger.kernel.org
---
V2: Drop no IRQ handling from SMC transport and update commit message
V3: Rename property from arm,poll-transport to arm,no-completion-irq
V4: No change
---
 drivers/firmware/arm_scmi/common.h | 4 ++++
 drivers/firmware/arm_scmi/driver.c | 4 ++++
 2 files changed, 8 insertions(+)

diff --git a/drivers/firmware/arm_scmi/common.h b/drivers/firmware/arm_scmi/common.h
index 7c35c95fddbaf..7c9617d080a02 100644
--- a/drivers/firmware/arm_scmi/common.h
+++ b/drivers/firmware/arm_scmi/common.h
@@ -235,6 +235,9 @@ struct scmi_transport_ops {
  *		      to have an execution latency lesser-equal to the threshold
  *		      should be considered for atomic mode operation: such
  *		      decision is finally left up to the SCMI drivers.
+ * @no_completion_irq: Flag to indicate that this transport has no completion
+ *		       interrupt and has to be polled. This is similar to the
+ *		       force_polling below, except this is set via DT property.
  * @force_polling: Flag to force this whole transport to use SCMI core polling
  *		   mechanism instead of completion interrupts even if available.
  * @sync_cmds_completed_on_ret: Flag to indicate that the transport assures
@@ -254,6 +257,7 @@ struct scmi_desc {
 	int max_msg;
 	int max_msg_size;
 	unsigned int atomic_threshold;
+	bool no_completion_irq;
 	const bool force_polling;
 	const bool sync_cmds_completed_on_ret;
 	const bool atomic_enabled;
diff --git a/drivers/firmware/arm_scmi/driver.c b/drivers/firmware/arm_scmi/driver.c
index 3e76a3204ba4f..f167194f7cf67 100644
--- a/drivers/firmware/arm_scmi/driver.c
+++ b/drivers/firmware/arm_scmi/driver.c
@@ -2735,6 +2735,7 @@ static int scmi_chan_setup(struct scmi_info *info, struct device_node *of_node,
 	cinfo->is_p2a = !tx;
 	cinfo->rx_timeout_ms = info->desc->max_rx_timeout_ms;
 	cinfo->max_msg_size = info->desc->max_msg_size;
+	cinfo->no_completion_irq = info->desc->no_completion_irq;
 
 	/* Create a unique name for this transport device */
 	snprintf(name, 32, "__scmi_transport_device_%s_%02X",
@@ -3150,6 +3151,9 @@ static const struct scmi_desc *scmi_transport_setup(struct device *dev)
 	if (ret && ret != -EINVAL)
 		dev_err(dev, "Malformed arm,max-msg DT property.\n");
 
+	trans->desc.no_completion_irq = of_property_read_bool(dev->of_node,
+							      "arm,no-completion-irq");
+
 	dev_info(dev,
 		 "SCMI max-rx-timeout: %dms / max-msg-size: %dbytes / max-msg: %d\n",
 		 trans->desc.max_rx_timeout_ms, trans->desc.max_msg_size,
-- 
2.51.0



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

* Re: [PATCH v4 1/2] dt-bindings: firmware: arm,scmi: Document arm,no-completion-irq property
  2026-01-17  1:02 [PATCH v4 1/2] dt-bindings: firmware: arm,scmi: Document arm,no-completion-irq property Marek Vasut
  2026-01-17  1:02 ` [PATCH v4 2/2] firmware: arm_scmi: Implement " Marek Vasut
@ 2026-01-19 16:53 ` Cristian Marussi
  2026-01-19 17:02   ` Sudeep Holla
  2026-01-19 19:00   ` Marek Vasut
  2026-03-09  9:10 ` Sudeep Holla
  2 siblings, 2 replies; 14+ messages in thread
From: Cristian Marussi @ 2026-01-19 16:53 UTC (permalink / raw)
  To: Marek Vasut
  Cc: arm-scmi, Rob Herring (Arm), Conor Dooley, Cristian Marussi,
	Florian Fainelli, Krzysztof Kozlowski, Sudeep Holla, devicetree,
	linux-arm-kernel, linux-renesas-soc

On Sat, Jan 17, 2026 at 02:02:28AM +0100, Marek Vasut wrote:
> Document new property arm,no-completion-irq . This optional property
> is intended for hardware that does not generate completion interrupts
> and can be used to unconditionally enable forced polling mode of
> operation.
> 
> With this property set, such implementations which do not generate
> interrupts can be interacted with, until they are fixed to generate
> interrupts properly.
> 
> Note that, because the original base protocol exchange also requires
> some sort of completion mechanism, it is not possible to query SCMI
> itself for this property and it must be described in DT. While this
> does look a bit like policy, the SCMI provider is part of the
> hardware, hence DT.
> 
> Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
> Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
> ---
> Cc: Conor Dooley <conor+dt@kernel.org>
> Cc: Cristian Marussi <cristian.marussi@arm.com>
> Cc: Florian Fainelli <florian.fainelli@broadcom.com>
> Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
> Cc: Rob Herring <robh@kernel.org>
> Cc: Sudeep Holla <sudeep.holla@arm.com>
> Cc: arm-scmi@vger.kernel.org
> Cc: devicetree@vger.kernel.org
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: linux-renesas-soc@vger.kernel.org
> ---
> V2: s@mean@&t and limit poll transport to mailbox/shmem only
> V3: - Reformat the commit message, expand property description to
>       explicitly spell out this is hardware description.
>     - Rename property from arm,poll-transport to arm,no-completion-irq
> V4: - Update first paragraph of commit message and property description
>     - Add RB from Rob
> ---
>  .../devicetree/bindings/firmware/arm,scmi.yaml         | 10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> index be817fd9cc34b..d06cca9273c48 100644
> --- a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> +++ b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> @@ -146,6 +146,13 @@ properties:
>        this platform. If set, the value should be non-zero.
>      minimum: 1
>  
> +  arm,no-completion-irq:
> +    type: boolean
> +    description:

Shouldn't these two points have to be swapped as per Sudeep and Rob
suggestions ?

    description:
	....
    type: boolean

> +      This optional property is intended for hardware that does not generate
> +      completion interrupts and can be used to unconditionally enable forced
> +      polling mode of operation.
> +
>    arm,smc-id:
>      $ref: /schemas/types.yaml#/definitions/uint32
>      description:
> @@ -379,6 +386,9 @@ then:
>      - shmem
>  
>  else:
> +  properties:
> +    arm,no-completion-irq: false
> +
>    if:
>      properties:

With the above corrected, LGTM.

Reviewed-by: Cristian Marussi <cristian.marussi@arm.com>

Thanks,
Cristian


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

* Re: [PATCH v4 2/2] firmware: arm_scmi: Implement arm,no-completion-irq property
  2026-01-17  1:02 ` [PATCH v4 2/2] firmware: arm_scmi: Implement " Marek Vasut
@ 2026-01-19 16:57   ` Cristian Marussi
  2026-02-09 10:53     ` Marek Vasut
  0 siblings, 1 reply; 14+ messages in thread
From: Cristian Marussi @ 2026-01-19 16:57 UTC (permalink / raw)
  To: Marek Vasut
  Cc: arm-scmi, Conor Dooley, Cristian Marussi, Florian Fainelli,
	Krzysztof Kozlowski, Rob Herring, Sudeep Holla, devicetree,
	linux-arm-kernel, linux-renesas-soc

On Sat, Jan 17, 2026 at 02:02:29AM +0100, Marek Vasut wrote:
> Implement new property arm,no-completion-irq, which sets all SCMI
> operation into poll mode. This is meant to work around uncooperative
> SCP implementations, which do not generate completion interrupts.
> This applies to mbox/shmem based implementations.
> 
> With this property set, such implementations which do not generate
> interrupts can be interacted with, until they are fixed to generate
> interrupts properly.
> 
> Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
> ---
> Cc: Conor Dooley <conor+dt@kernel.org>
> Cc: Cristian Marussi <cristian.marussi@arm.com>
> Cc: Florian Fainelli <florian.fainelli@broadcom.com>
> Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
> Cc: Rob Herring <robh@kernel.org>
> Cc: Sudeep Holla <sudeep.holla@arm.com>
> Cc: arm-scmi@vger.kernel.org
> Cc: devicetree@vger.kernel.org
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: linux-renesas-soc@vger.kernel.org
> ---
> V2: Drop no IRQ handling from SMC transport and update commit message
> V3: Rename property from arm,poll-transport to arm,no-completion-irq
> V4: No change
> ---
>  drivers/firmware/arm_scmi/common.h | 4 ++++
>  drivers/firmware/arm_scmi/driver.c | 4 ++++
>  2 files changed, 8 insertions(+)
> 
> diff --git a/drivers/firmware/arm_scmi/common.h b/drivers/firmware/arm_scmi/common.h
> index 7c35c95fddbaf..7c9617d080a02 100644
> --- a/drivers/firmware/arm_scmi/common.h
> +++ b/drivers/firmware/arm_scmi/common.h
> @@ -235,6 +235,9 @@ struct scmi_transport_ops {
>   *		      to have an execution latency lesser-equal to the threshold
>   *		      should be considered for atomic mode operation: such
>   *		      decision is finally left up to the SCMI drivers.
> + * @no_completion_irq: Flag to indicate that this transport has no completion
> + *		       interrupt and has to be polled. This is similar to the
> + *		       force_polling below, except this is set via DT property.
>   * @force_polling: Flag to force this whole transport to use SCMI core polling
>   *		   mechanism instead of completion interrupts even if available.
>   * @sync_cmds_completed_on_ret: Flag to indicate that the transport assures
> @@ -254,6 +257,7 @@ struct scmi_desc {
>  	int max_msg;
>  	int max_msg_size;
>  	unsigned int atomic_threshold;
> +	bool no_completion_irq;
>  	const bool force_polling;
>  	const bool sync_cmds_completed_on_ret;
>  	const bool atomic_enabled;
> diff --git a/drivers/firmware/arm_scmi/driver.c b/drivers/firmware/arm_scmi/driver.c
> index 3e76a3204ba4f..f167194f7cf67 100644
> --- a/drivers/firmware/arm_scmi/driver.c
> +++ b/drivers/firmware/arm_scmi/driver.c
> @@ -2735,6 +2735,7 @@ static int scmi_chan_setup(struct scmi_info *info, struct device_node *of_node,
>  	cinfo->is_p2a = !tx;
>  	cinfo->rx_timeout_ms = info->desc->max_rx_timeout_ms;
>  	cinfo->max_msg_size = info->desc->max_msg_size;
> +	cinfo->no_completion_irq = info->desc->no_completion_irq;
>  
>  	/* Create a unique name for this transport device */
>  	snprintf(name, 32, "__scmi_transport_device_%s_%02X",
> @@ -3150,6 +3151,9 @@ static const struct scmi_desc *scmi_transport_setup(struct device *dev)
>  	if (ret && ret != -EINVAL)
>  		dev_err(dev, "Malformed arm,max-msg DT property.\n");
>  
> +	trans->desc.no_completion_irq = of_property_read_bool(dev->of_node,
> +							      "arm,no-completion-irq");
> +
>  	dev_info(dev,
>  		 "SCMI max-rx-timeout: %dms / max-msg-size: %dbytes / max-msg: %d\n",
>  		 trans->desc.max_rx_timeout_ms, trans->desc.max_msg_size,

LGTM.

Reviewed-by: Cristian Marussi <cristian.marussi@arm.com>

Thanks,
Cristian


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

* Re: [PATCH v4 1/2] dt-bindings: firmware: arm,scmi: Document arm,no-completion-irq property
  2026-01-19 16:53 ` [PATCH v4 1/2] dt-bindings: firmware: arm,scmi: Document " Cristian Marussi
@ 2026-01-19 17:02   ` Sudeep Holla
  2026-01-21  2:05     ` Rob Herring
  2026-01-19 19:00   ` Marek Vasut
  1 sibling, 1 reply; 14+ messages in thread
From: Sudeep Holla @ 2026-01-19 17:02 UTC (permalink / raw)
  To: Cristian Marussi
  Cc: Marek Vasut, arm-scmi, Sudeep Holla, Rob Herring (Arm),
	Conor Dooley, Florian Fainelli, Krzysztof Kozlowski, devicetree,
	linux-arm-kernel, linux-renesas-soc

On Mon, Jan 19, 2026 at 04:53:45PM +0000, Cristian Marussi wrote:
> On Sat, Jan 17, 2026 at 02:02:28AM +0100, Marek Vasut wrote:
> > Document new property arm,no-completion-irq . This optional property
> > is intended for hardware that does not generate completion interrupts
> > and can be used to unconditionally enable forced polling mode of
> > operation.
> > 
> > With this property set, such implementations which do not generate
> > interrupts can be interacted with, until they are fixed to generate
> > interrupts properly.
> > 
> > Note that, because the original base protocol exchange also requires
> > some sort of completion mechanism, it is not possible to query SCMI
> > itself for this property and it must be described in DT. While this
> > does look a bit like policy, the SCMI provider is part of the
> > hardware, hence DT.
> > 
> > Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
> > Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
> > ---
> > Cc: Conor Dooley <conor+dt@kernel.org>
> > Cc: Cristian Marussi <cristian.marussi@arm.com>
> > Cc: Florian Fainelli <florian.fainelli@broadcom.com>
> > Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
> > Cc: Rob Herring <robh@kernel.org>
> > Cc: Sudeep Holla <sudeep.holla@arm.com>
> > Cc: arm-scmi@vger.kernel.org
> > Cc: devicetree@vger.kernel.org
> > Cc: linux-arm-kernel@lists.infradead.org
> > Cc: linux-renesas-soc@vger.kernel.org
> > ---
> > V2: s@mean@&t and limit poll transport to mailbox/shmem only
> > V3: - Reformat the commit message, expand property description to
> >       explicitly spell out this is hardware description.
> >     - Rename property from arm,poll-transport to arm,no-completion-irq
> > V4: - Update first paragraph of commit message and property description
> >     - Add RB from Rob
> > ---
> >  .../devicetree/bindings/firmware/arm,scmi.yaml         | 10 ++++++++++
> >  1 file changed, 10 insertions(+)
> > 
> > diff --git a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> > index be817fd9cc34b..d06cca9273c48 100644
> > --- a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> > +++ b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> > @@ -146,6 +146,13 @@ properties:
> >        this platform. If set, the value should be non-zero.
> >      minimum: 1
> >  
> > +  arm,no-completion-irq:
> > +    type: boolean
> > +    description:
> 
> Shouldn't these two points have to be swapped as per Sudeep and Rob
> suggestions ?
> 
>     description:
> 	....
>     type: boolean
> 

I was just referring to the points covered under the `description` and not
the order of `type` and `description`. I am not sure if there is any such
requirement as well. I am happy with this version, but this needs to wait
for the merge window following the next as I have already sent the PR to
SoC teams.

-- 
Regards,
Sudeep


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

* Re: [PATCH v4 1/2] dt-bindings: firmware: arm,scmi: Document arm,no-completion-irq property
  2026-01-19 16:53 ` [PATCH v4 1/2] dt-bindings: firmware: arm,scmi: Document " Cristian Marussi
  2026-01-19 17:02   ` Sudeep Holla
@ 2026-01-19 19:00   ` Marek Vasut
  1 sibling, 0 replies; 14+ messages in thread
From: Marek Vasut @ 2026-01-19 19:00 UTC (permalink / raw)
  To: Cristian Marussi
  Cc: arm-scmi, Rob Herring (Arm), Conor Dooley, Florian Fainelli,
	Krzysztof Kozlowski, Sudeep Holla, devicetree, linux-arm-kernel,
	linux-renesas-soc

On 1/19/26 5:53 PM, Cristian Marussi wrote:

[...]

>> diff --git a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
>> index be817fd9cc34b..d06cca9273c48 100644
>> --- a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
>> +++ b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
>> @@ -146,6 +146,13 @@ properties:
>>         this platform. If set, the value should be non-zero.
>>       minimum: 1
>>   
>> +  arm,no-completion-irq:
>> +    type: boolean
>> +    description:
> 
> Shouldn't these two points have to be swapped as per Sudeep and Rob
> suggestions ?
> 
>      description:
> 	....
>      type: boolean
> 
>> +      This optional property is intended for hardware that does not generate
>> +      completion interrupts and can be used to unconditionally enable forced
>> +      polling mode of operation.
>> +
>>     arm,smc-id:
>>       $ref: /schemas/types.yaml#/definitions/uint32
>>       description:

They were referring to the content of the description: . Note that the 
type precedes the description: , see e.g. arm,smc-id above or any of the 
other properties.


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

* Re: [PATCH v4 1/2] dt-bindings: firmware: arm,scmi: Document arm,no-completion-irq property
  2026-01-19 17:02   ` Sudeep Holla
@ 2026-01-21  2:05     ` Rob Herring
  0 siblings, 0 replies; 14+ messages in thread
From: Rob Herring @ 2026-01-21  2:05 UTC (permalink / raw)
  To: Sudeep Holla
  Cc: Cristian Marussi, Marek Vasut, arm-scmi, Conor Dooley,
	Florian Fainelli, Krzysztof Kozlowski, devicetree,
	linux-arm-kernel, linux-renesas-soc

On Mon, Jan 19, 2026 at 05:02:58PM +0000, Sudeep Holla wrote:
> On Mon, Jan 19, 2026 at 04:53:45PM +0000, Cristian Marussi wrote:
> > On Sat, Jan 17, 2026 at 02:02:28AM +0100, Marek Vasut wrote:
> > > Document new property arm,no-completion-irq . This optional property
> > > is intended for hardware that does not generate completion interrupts
> > > and can be used to unconditionally enable forced polling mode of
> > > operation.
> > > 
> > > With this property set, such implementations which do not generate
> > > interrupts can be interacted with, until they are fixed to generate
> > > interrupts properly.
> > > 
> > > Note that, because the original base protocol exchange also requires
> > > some sort of completion mechanism, it is not possible to query SCMI
> > > itself for this property and it must be described in DT. While this
> > > does look a bit like policy, the SCMI provider is part of the
> > > hardware, hence DT.
> > > 
> > > Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
> > > Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
> > > ---
> > > Cc: Conor Dooley <conor+dt@kernel.org>
> > > Cc: Cristian Marussi <cristian.marussi@arm.com>
> > > Cc: Florian Fainelli <florian.fainelli@broadcom.com>
> > > Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
> > > Cc: Rob Herring <robh@kernel.org>
> > > Cc: Sudeep Holla <sudeep.holla@arm.com>
> > > Cc: arm-scmi@vger.kernel.org
> > > Cc: devicetree@vger.kernel.org
> > > Cc: linux-arm-kernel@lists.infradead.org
> > > Cc: linux-renesas-soc@vger.kernel.org
> > > ---
> > > V2: s@mean@&t and limit poll transport to mailbox/shmem only
> > > V3: - Reformat the commit message, expand property description to
> > >       explicitly spell out this is hardware description.
> > >     - Rename property from arm,poll-transport to arm,no-completion-irq
> > > V4: - Update first paragraph of commit message and property description
> > >     - Add RB from Rob
> > > ---
> > >  .../devicetree/bindings/firmware/arm,scmi.yaml         | 10 ++++++++++
> > >  1 file changed, 10 insertions(+)
> > > 
> > > diff --git a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> > > index be817fd9cc34b..d06cca9273c48 100644
> > > --- a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> > > +++ b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> > > @@ -146,6 +146,13 @@ properties:
> > >        this platform. If set, the value should be non-zero.
> > >      minimum: 1
> > >  
> > > +  arm,no-completion-irq:
> > > +    type: boolean
> > > +    description:
> > 
> > Shouldn't these two points have to be swapped as per Sudeep and Rob
> > suggestions ?
> > 
> >     description:
> > 	....
> >     type: boolean
> > 
> 
> I was just referring to the points covered under the `description` and not
> the order of `type` and `description`. I am not sure if there is any such
> requirement as well.

There isn't. The only preference is to be consistent within a file of 
description either first or last.

Rob


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

* Re: [PATCH v4 2/2] firmware: arm_scmi: Implement arm,no-completion-irq property
  2026-01-19 16:57   ` Cristian Marussi
@ 2026-02-09 10:53     ` Marek Vasut
  2026-02-09 10:56       ` Wolfram Sang
  2026-02-09 15:44       ` Sudeep Holla
  0 siblings, 2 replies; 14+ messages in thread
From: Marek Vasut @ 2026-02-09 10:53 UTC (permalink / raw)
  To: Cristian Marussi, Sudeep Holla
  Cc: arm-scmi, Conor Dooley, Florian Fainelli, Krzysztof Kozlowski,
	Rob Herring, devicetree, linux-arm-kernel, linux-renesas-soc,
	Wolfram Sang

On 1/19/26 5:57 PM, Cristian Marussi wrote:
> On Sat, Jan 17, 2026 at 02:02:29AM +0100, Marek Vasut wrote:
>> Implement new property arm,no-completion-irq, which sets all SCMI
>> operation into poll mode. This is meant to work around uncooperative
>> SCP implementations, which do not generate completion interrupts.
>> This applies to mbox/shmem based implementations.
>>
>> With this property set, such implementations which do not generate
>> interrupts can be interacted with, until they are fixed to generate
>> interrupts properly.
>>
>> Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
>> ---
>> Cc: Conor Dooley <conor+dt@kernel.org>
>> Cc: Cristian Marussi <cristian.marussi@arm.com>
>> Cc: Florian Fainelli <florian.fainelli@broadcom.com>
>> Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
>> Cc: Rob Herring <robh@kernel.org>
>> Cc: Sudeep Holla <sudeep.holla@arm.com>
>> Cc: arm-scmi@vger.kernel.org
>> Cc: devicetree@vger.kernel.org
>> Cc: linux-arm-kernel@lists.infradead.org
>> Cc: linux-renesas-soc@vger.kernel.org
>> ---
>> V2: Drop no IRQ handling from SMC transport and update commit message
>> V3: Rename property from arm,poll-transport to arm,no-completion-irq
>> V4: No change
>> ---
>>   drivers/firmware/arm_scmi/common.h | 4 ++++
>>   drivers/firmware/arm_scmi/driver.c | 4 ++++
>>   2 files changed, 8 insertions(+)
>>
>> diff --git a/drivers/firmware/arm_scmi/common.h b/drivers/firmware/arm_scmi/common.h
>> index 7c35c95fddbaf..7c9617d080a02 100644
>> --- a/drivers/firmware/arm_scmi/common.h
>> +++ b/drivers/firmware/arm_scmi/common.h
>> @@ -235,6 +235,9 @@ struct scmi_transport_ops {
>>    *		      to have an execution latency lesser-equal to the threshold
>>    *		      should be considered for atomic mode operation: such
>>    *		      decision is finally left up to the SCMI drivers.
>> + * @no_completion_irq: Flag to indicate that this transport has no completion
>> + *		       interrupt and has to be polled. This is similar to the
>> + *		       force_polling below, except this is set via DT property.
>>    * @force_polling: Flag to force this whole transport to use SCMI core polling
>>    *		   mechanism instead of completion interrupts even if available.
>>    * @sync_cmds_completed_on_ret: Flag to indicate that the transport assures
>> @@ -254,6 +257,7 @@ struct scmi_desc {
>>   	int max_msg;
>>   	int max_msg_size;
>>   	unsigned int atomic_threshold;
>> +	bool no_completion_irq;
>>   	const bool force_polling;
>>   	const bool sync_cmds_completed_on_ret;
>>   	const bool atomic_enabled;
>> diff --git a/drivers/firmware/arm_scmi/driver.c b/drivers/firmware/arm_scmi/driver.c
>> index 3e76a3204ba4f..f167194f7cf67 100644
>> --- a/drivers/firmware/arm_scmi/driver.c
>> +++ b/drivers/firmware/arm_scmi/driver.c
>> @@ -2735,6 +2735,7 @@ static int scmi_chan_setup(struct scmi_info *info, struct device_node *of_node,
>>   	cinfo->is_p2a = !tx;
>>   	cinfo->rx_timeout_ms = info->desc->max_rx_timeout_ms;
>>   	cinfo->max_msg_size = info->desc->max_msg_size;
>> +	cinfo->no_completion_irq = info->desc->no_completion_irq;
>>   
>>   	/* Create a unique name for this transport device */
>>   	snprintf(name, 32, "__scmi_transport_device_%s_%02X",
>> @@ -3150,6 +3151,9 @@ static const struct scmi_desc *scmi_transport_setup(struct device *dev)
>>   	if (ret && ret != -EINVAL)
>>   		dev_err(dev, "Malformed arm,max-msg DT property.\n");
>>   
>> +	trans->desc.no_completion_irq = of_property_read_bool(dev->of_node,
>> +							      "arm,no-completion-irq");
>> +
>>   	dev_info(dev,
>>   		 "SCMI max-rx-timeout: %dms / max-msg-size: %dbytes / max-msg: %d\n",
>>   		 trans->desc.max_rx_timeout_ms, trans->desc.max_msg_size,
> 
> LGTM.
> 
> Reviewed-by: Cristian Marussi <cristian.marussi@arm.com>

Is there anything left to do with these patches, or can this now be 
picked up ?

Thank you.


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

* Re: [PATCH v4 2/2] firmware: arm_scmi: Implement arm,no-completion-irq property
  2026-02-09 10:53     ` Marek Vasut
@ 2026-02-09 10:56       ` Wolfram Sang
  2026-02-09 13:00         ` Cristian Marussi
  2026-02-09 15:44       ` Sudeep Holla
  1 sibling, 1 reply; 14+ messages in thread
From: Wolfram Sang @ 2026-02-09 10:56 UTC (permalink / raw)
  To: Marek Vasut
  Cc: Cristian Marussi, Sudeep Holla, arm-scmi, Conor Dooley,
	Florian Fainelli, Krzysztof Kozlowski, Rob Herring, devicetree,
	linux-arm-kernel, linux-renesas-soc

Hi all,

> > > Implement new property arm,no-completion-irq, which sets all SCMI
> > > operation into poll mode. This is meant to work around uncooperative
> > > SCP implementations, which do not generate completion interrupts.
> > > This applies to mbox/shmem based implementations.
> > > 
> > > With this property set, such implementations which do not generate
> > > interrupts can be interacted with, until they are fixed to generate
> > > interrupts properly.
> > > 
> > > Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
> > > ---

...

> > 
> > LGTM.
> > 
> > Reviewed-by: Cristian Marussi <cristian.marussi@arm.com>
> 
> Is there anything left to do with these patches, or can this now be picked
> up ?

Would love to see this going in. I also work with the firmware which
needs this functionality.

All the best,

   Wolfram



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

* Re: [PATCH v4 2/2] firmware: arm_scmi: Implement arm,no-completion-irq property
  2026-02-09 10:56       ` Wolfram Sang
@ 2026-02-09 13:00         ` Cristian Marussi
  0 siblings, 0 replies; 14+ messages in thread
From: Cristian Marussi @ 2026-02-09 13:00 UTC (permalink / raw)
  To: Wolfram Sang
  Cc: Marek Vasut, Cristian Marussi, Sudeep Holla, arm-scmi,
	Conor Dooley, Florian Fainelli, Krzysztof Kozlowski, Rob Herring,
	devicetree, linux-arm-kernel, linux-renesas-soc

On Mon, Feb 09, 2026 at 11:56:25AM +0100, Wolfram Sang wrote:
> Hi all,
> 
> > > > Implement new property arm,no-completion-irq, which sets all SCMI
> > > > operation into poll mode. This is meant to work around uncooperative
> > > > SCP implementations, which do not generate completion interrupts.
> > > > This applies to mbox/shmem based implementations.
> > > > 
> > > > With this property set, such implementations which do not generate
> > > > interrupts can be interacted with, until they are fixed to generate
> > > > interrupts properly.
> > > > 
> > > > Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
> > > > ---
> 
> ...
> 
> > > 
> > > LGTM.
> > > 
> > > Reviewed-by: Cristian Marussi <cristian.marussi@arm.com>
> > 
> > Is there anything left to do with these patches, or can this now be picked
> > up ?
> 
> Would love to see this going in. I also work with the firmware which
> needs this functionality.

I have not seen anymore push back around this, but I think it was late
anyway to be picked up as an update for this cycle given that it was
already -rc6 when the last series landed...so I guess it could picked up
now for the next cycle ...but I have not checked with Sudeep..

Thanks,
Cristian


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

* Re: [PATCH v4 2/2] firmware: arm_scmi: Implement arm,no-completion-irq property
  2026-02-09 10:53     ` Marek Vasut
  2026-02-09 10:56       ` Wolfram Sang
@ 2026-02-09 15:44       ` Sudeep Holla
  2026-02-09 16:19         ` Marek Vasut
  2026-02-10 11:11         ` Wolfram Sang
  1 sibling, 2 replies; 14+ messages in thread
From: Sudeep Holla @ 2026-02-09 15:44 UTC (permalink / raw)
  To: Marek Vasut
  Cc: Cristian Marussi, arm-scmi, Sudeep Holla, Conor Dooley,
	Florian Fainelli, Krzysztof Kozlowski, Rob Herring, devicetree,
	linux-arm-kernel, linux-renesas-soc, Wolfram Sang

On Mon, Feb 09, 2026 at 11:53:19AM +0100, Marek Vasut wrote:
> On 1/19/26 5:57 PM, Cristian Marussi wrote:
> > On Sat, Jan 17, 2026 at 02:02:29AM +0100, Marek Vasut wrote:
> > > Implement new property arm,no-completion-irq, which sets all SCMI
> > > operation into poll mode. This is meant to work around uncooperative
> > > SCP implementations, which do not generate completion interrupts.
> > > This applies to mbox/shmem based implementations.
> > > 
> > > With this property set, such implementations which do not generate
> > > interrupts can be interacted with, until they are fixed to generate
> > > interrupts properly.
> > > 
> > > Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
> > > ---
> > > Cc: Conor Dooley <conor+dt@kernel.org>
> > > Cc: Cristian Marussi <cristian.marussi@arm.com>
> > > Cc: Florian Fainelli <florian.fainelli@broadcom.com>
> > > Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
> > > Cc: Rob Herring <robh@kernel.org>
> > > Cc: Sudeep Holla <sudeep.holla@arm.com>
> > > Cc: arm-scmi@vger.kernel.org
> > > Cc: devicetree@vger.kernel.org
> > > Cc: linux-arm-kernel@lists.infradead.org
> > > Cc: linux-renesas-soc@vger.kernel.org
> > > ---
> > > V2: Drop no IRQ handling from SMC transport and update commit message
> > > V3: Rename property from arm,poll-transport to arm,no-completion-irq
> > > V4: No change
> > > ---
> > >   drivers/firmware/arm_scmi/common.h | 4 ++++
> > >   drivers/firmware/arm_scmi/driver.c | 4 ++++
> > >   2 files changed, 8 insertions(+)
> > > 
> > > diff --git a/drivers/firmware/arm_scmi/common.h b/drivers/firmware/arm_scmi/common.h
> > > index 7c35c95fddbaf..7c9617d080a02 100644
> > > --- a/drivers/firmware/arm_scmi/common.h
> > > +++ b/drivers/firmware/arm_scmi/common.h
> > > @@ -235,6 +235,9 @@ struct scmi_transport_ops {
> > >    *		      to have an execution latency lesser-equal to the threshold
> > >    *		      should be considered for atomic mode operation: such
> > >    *		      decision is finally left up to the SCMI drivers.
> > > + * @no_completion_irq: Flag to indicate that this transport has no completion
> > > + *		       interrupt and has to be polled. This is similar to the
> > > + *		       force_polling below, except this is set via DT property.
> > >    * @force_polling: Flag to force this whole transport to use SCMI core polling
> > >    *		   mechanism instead of completion interrupts even if available.
> > >    * @sync_cmds_completed_on_ret: Flag to indicate that the transport assures
> > > @@ -254,6 +257,7 @@ struct scmi_desc {
> > >   	int max_msg;
> > >   	int max_msg_size;
> > >   	unsigned int atomic_threshold;
> > > +	bool no_completion_irq;
> > >   	const bool force_polling;
> > >   	const bool sync_cmds_completed_on_ret;
> > >   	const bool atomic_enabled;
> > > diff --git a/drivers/firmware/arm_scmi/driver.c b/drivers/firmware/arm_scmi/driver.c
> > > index 3e76a3204ba4f..f167194f7cf67 100644
> > > --- a/drivers/firmware/arm_scmi/driver.c
> > > +++ b/drivers/firmware/arm_scmi/driver.c
> > > @@ -2735,6 +2735,7 @@ static int scmi_chan_setup(struct scmi_info *info, struct device_node *of_node,
> > >   	cinfo->is_p2a = !tx;
> > >   	cinfo->rx_timeout_ms = info->desc->max_rx_timeout_ms;
> > >   	cinfo->max_msg_size = info->desc->max_msg_size;
> > > +	cinfo->no_completion_irq = info->desc->no_completion_irq;
> > >   	/* Create a unique name for this transport device */
> > >   	snprintf(name, 32, "__scmi_transport_device_%s_%02X",
> > > @@ -3150,6 +3151,9 @@ static const struct scmi_desc *scmi_transport_setup(struct device *dev)
> > >   	if (ret && ret != -EINVAL)
> > >   		dev_err(dev, "Malformed arm,max-msg DT property.\n");
> > > +	trans->desc.no_completion_irq = of_property_read_bool(dev->of_node,
> > > +							      "arm,no-completion-irq");
> > > +
> > >   	dev_info(dev,
> > >   		 "SCMI max-rx-timeout: %dms / max-msg-size: %dbytes / max-msg: %d\n",
> > >   		 trans->desc.max_rx_timeout_ms, trans->desc.max_msg_size,
> > 
> > LGTM.
> > 
> > Reviewed-by: Cristian Marussi <cristian.marussi@arm.com>
> 
> Is there anything left to do with these patches, or can this now be picked
> up ?
> 

As I had mentioned here[1], I am happy with it and I will pick it up for
v7.1 once I start collecting the patches after v7.0-rc1. It just came in after
I had sent my PR to SoC team for v7.0

-- 
Regards,
Sudeep

[1] https://lore.kernel.org/all/aW5jwtoYCFs-Pzpk@bogus/


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

* Re: [PATCH v4 2/2] firmware: arm_scmi: Implement arm,no-completion-irq property
  2026-02-09 15:44       ` Sudeep Holla
@ 2026-02-09 16:19         ` Marek Vasut
  2026-02-10 11:11         ` Wolfram Sang
  1 sibling, 0 replies; 14+ messages in thread
From: Marek Vasut @ 2026-02-09 16:19 UTC (permalink / raw)
  To: Sudeep Holla
  Cc: Cristian Marussi, arm-scmi, Conor Dooley, Florian Fainelli,
	Krzysztof Kozlowski, Rob Herring, devicetree, linux-arm-kernel,
	linux-renesas-soc, Wolfram Sang

On 2/9/26 4:44 PM, Sudeep Holla wrote:
> On Mon, Feb 09, 2026 at 11:53:19AM +0100, Marek Vasut wrote:
>> On 1/19/26 5:57 PM, Cristian Marussi wrote:
>>> On Sat, Jan 17, 2026 at 02:02:29AM +0100, Marek Vasut wrote:
>>>> Implement new property arm,no-completion-irq, which sets all SCMI
>>>> operation into poll mode. This is meant to work around uncooperative
>>>> SCP implementations, which do not generate completion interrupts.
>>>> This applies to mbox/shmem based implementations.
>>>>
>>>> With this property set, such implementations which do not generate
>>>> interrupts can be interacted with, until they are fixed to generate
>>>> interrupts properly.
>>>>
>>>> Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
>>>> ---
>>>> Cc: Conor Dooley <conor+dt@kernel.org>
>>>> Cc: Cristian Marussi <cristian.marussi@arm.com>
>>>> Cc: Florian Fainelli <florian.fainelli@broadcom.com>
>>>> Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
>>>> Cc: Rob Herring <robh@kernel.org>
>>>> Cc: Sudeep Holla <sudeep.holla@arm.com>
>>>> Cc: arm-scmi@vger.kernel.org
>>>> Cc: devicetree@vger.kernel.org
>>>> Cc: linux-arm-kernel@lists.infradead.org
>>>> Cc: linux-renesas-soc@vger.kernel.org
>>>> ---
>>>> V2: Drop no IRQ handling from SMC transport and update commit message
>>>> V3: Rename property from arm,poll-transport to arm,no-completion-irq
>>>> V4: No change
>>>> ---
>>>>    drivers/firmware/arm_scmi/common.h | 4 ++++
>>>>    drivers/firmware/arm_scmi/driver.c | 4 ++++
>>>>    2 files changed, 8 insertions(+)
>>>>
>>>> diff --git a/drivers/firmware/arm_scmi/common.h b/drivers/firmware/arm_scmi/common.h
>>>> index 7c35c95fddbaf..7c9617d080a02 100644
>>>> --- a/drivers/firmware/arm_scmi/common.h
>>>> +++ b/drivers/firmware/arm_scmi/common.h
>>>> @@ -235,6 +235,9 @@ struct scmi_transport_ops {
>>>>     *		      to have an execution latency lesser-equal to the threshold
>>>>     *		      should be considered for atomic mode operation: such
>>>>     *		      decision is finally left up to the SCMI drivers.
>>>> + * @no_completion_irq: Flag to indicate that this transport has no completion
>>>> + *		       interrupt and has to be polled. This is similar to the
>>>> + *		       force_polling below, except this is set via DT property.
>>>>     * @force_polling: Flag to force this whole transport to use SCMI core polling
>>>>     *		   mechanism instead of completion interrupts even if available.
>>>>     * @sync_cmds_completed_on_ret: Flag to indicate that the transport assures
>>>> @@ -254,6 +257,7 @@ struct scmi_desc {
>>>>    	int max_msg;
>>>>    	int max_msg_size;
>>>>    	unsigned int atomic_threshold;
>>>> +	bool no_completion_irq;
>>>>    	const bool force_polling;
>>>>    	const bool sync_cmds_completed_on_ret;
>>>>    	const bool atomic_enabled;
>>>> diff --git a/drivers/firmware/arm_scmi/driver.c b/drivers/firmware/arm_scmi/driver.c
>>>> index 3e76a3204ba4f..f167194f7cf67 100644
>>>> --- a/drivers/firmware/arm_scmi/driver.c
>>>> +++ b/drivers/firmware/arm_scmi/driver.c
>>>> @@ -2735,6 +2735,7 @@ static int scmi_chan_setup(struct scmi_info *info, struct device_node *of_node,
>>>>    	cinfo->is_p2a = !tx;
>>>>    	cinfo->rx_timeout_ms = info->desc->max_rx_timeout_ms;
>>>>    	cinfo->max_msg_size = info->desc->max_msg_size;
>>>> +	cinfo->no_completion_irq = info->desc->no_completion_irq;
>>>>    	/* Create a unique name for this transport device */
>>>>    	snprintf(name, 32, "__scmi_transport_device_%s_%02X",
>>>> @@ -3150,6 +3151,9 @@ static const struct scmi_desc *scmi_transport_setup(struct device *dev)
>>>>    	if (ret && ret != -EINVAL)
>>>>    		dev_err(dev, "Malformed arm,max-msg DT property.\n");
>>>> +	trans->desc.no_completion_irq = of_property_read_bool(dev->of_node,
>>>> +							      "arm,no-completion-irq");
>>>> +
>>>>    	dev_info(dev,
>>>>    		 "SCMI max-rx-timeout: %dms / max-msg-size: %dbytes / max-msg: %d\n",
>>>>    		 trans->desc.max_rx_timeout_ms, trans->desc.max_msg_size,
>>>
>>> LGTM.
>>>
>>> Reviewed-by: Cristian Marussi <cristian.marussi@arm.com>
>>
>> Is there anything left to do with these patches, or can this now be picked
>> up ?
>>
> 
> As I had mentioned here[1], I am happy with it and I will pick it up for
> v7.1 once I start collecting the patches after v7.0-rc1. It just came in after
> I had sent my PR to SoC team for v7.0
OK, thank you


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

* Re: [PATCH v4 2/2] firmware: arm_scmi: Implement arm,no-completion-irq property
  2026-02-09 15:44       ` Sudeep Holla
  2026-02-09 16:19         ` Marek Vasut
@ 2026-02-10 11:11         ` Wolfram Sang
  1 sibling, 0 replies; 14+ messages in thread
From: Wolfram Sang @ 2026-02-10 11:11 UTC (permalink / raw)
  To: Sudeep Holla
  Cc: Marek Vasut, Cristian Marussi, arm-scmi, Conor Dooley,
	Florian Fainelli, Krzysztof Kozlowski, Rob Herring, devicetree,
	linux-arm-kernel, linux-renesas-soc


> As I had mentioned here[1], I am happy with it and I will pick it up for
> v7.1 once I start collecting the patches after v7.0-rc1. It just came in after
> I had sent my PR to SoC team for v7.0

Great, 7.1 is good, thank you!



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

* Re: [PATCH v4 1/2] dt-bindings: firmware: arm,scmi: Document arm,no-completion-irq property
  2026-01-17  1:02 [PATCH v4 1/2] dt-bindings: firmware: arm,scmi: Document arm,no-completion-irq property Marek Vasut
  2026-01-17  1:02 ` [PATCH v4 2/2] firmware: arm_scmi: Implement " Marek Vasut
  2026-01-19 16:53 ` [PATCH v4 1/2] dt-bindings: firmware: arm,scmi: Document " Cristian Marussi
@ 2026-03-09  9:10 ` Sudeep Holla
  2 siblings, 0 replies; 14+ messages in thread
From: Sudeep Holla @ 2026-03-09  9:10 UTC (permalink / raw)
  To: arm-scmi, Marek Vasut
  Cc: Sudeep Holla, Rob Herring (Arm), Conor Dooley, Cristian Marussi,
	Florian Fainelli, Krzysztof Kozlowski, devicetree,
	linux-arm-kernel, linux-renesas-soc

On Sat, 17 Jan 2026 02:02:28 +0100, Marek Vasut wrote:
> Document new property arm,no-completion-irq . This optional property
> is intended for hardware that does not generate completion interrupts
> and can be used to unconditionally enable forced polling mode of
> operation.
> 
> With this property set, such implementations which do not generate
> interrupts can be interacted with, until they are fixed to generate
> interrupts properly.
> 
> [...]

Applied to sudeep.holla/linux (for-next/scmi/updates), thanks!

[1/2] dt-bindings: firmware: arm,scmi: Document arm,no-completion-irq property
      https://git.kernel.org/sudeep.holla/c/0c5453bf8437
[2/2] firmware: arm_scmi: Implement arm,no-completion-irq property
      https://git.kernel.org/sudeep.holla/c/d8283ac2c8fb
--
Regards,
Sudeep



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

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

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-17  1:02 [PATCH v4 1/2] dt-bindings: firmware: arm,scmi: Document arm,no-completion-irq property Marek Vasut
2026-01-17  1:02 ` [PATCH v4 2/2] firmware: arm_scmi: Implement " Marek Vasut
2026-01-19 16:57   ` Cristian Marussi
2026-02-09 10:53     ` Marek Vasut
2026-02-09 10:56       ` Wolfram Sang
2026-02-09 13:00         ` Cristian Marussi
2026-02-09 15:44       ` Sudeep Holla
2026-02-09 16:19         ` Marek Vasut
2026-02-10 11:11         ` Wolfram Sang
2026-01-19 16:53 ` [PATCH v4 1/2] dt-bindings: firmware: arm,scmi: Document " Cristian Marussi
2026-01-19 17:02   ` Sudeep Holla
2026-01-21  2:05     ` Rob Herring
2026-01-19 19:00   ` Marek Vasut
2026-03-09  9:10 ` Sudeep Holla

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