Re: [PATCH v2 18/22] iommu/tegra241-cmdqv: Use request_threaded_irq

Pranjal Shrivastava
2025-04-29T21:51:03Z

On Fri, Apr 25, 2025 at 10:58:13PM -0700, Nicolin Chen wrote:
> A vIRQ can be reported only from a threaded IRQ context. Change to use
> to request_threaded_irq to support that.
>
> Signed-off-by: Nicolin Chen <nicolinc@nvidia.com>

Acked-by: Pranjal Shrivastava <praan@google.com>

> ---
> drivers/iommu/arm/arm-smmu-v3/tegra241-cmdqv.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/iommu/arm/arm-smmu-v3/tegra241-cmdqv.c b/drivers/iommu/arm/arm-smmu-v3/tegra241-cmdqv.c
> index dd7d030d2e89..ba029f7d24ce 100644
> --- a/drivers/iommu/arm/arm-smmu-v3/tegra241-cmdqv.c
> +++ b/drivers/iommu/arm/arm-smmu-v3/tegra241-cmdqv.c
> @@ -824,8 +824,9 @@ __tegra241_cmdqv_probe(struct arm_smmu_device *smmu, struct resource *res,
> cmdqv->dev = smmu->impl_dev;
>
> if (cmdqv->irq > 0) {
> - ret = request_irq(irq, tegra241_cmdqv_isr, 0, "tegra241-cmdqv",
> - cmdqv);
> + ret = request_threaded_irq(irq, NULL, tegra241_cmdqv_isr,
> + IRQF_ONESHOT, "tegra241-cmdqv",
> + cmdqv);
> if (ret) {
> dev_err(cmdqv->dev, "failed to request irq (%d): %d\n",
> cmdqv->irq, ret);
> --
> 2.43.0
>