[PATCH v7 09/11] iommu/arm-smmu-v3: Enable pm_runtime and setup devlinks

Nicolin Chen nicolinc at nvidia.com
Thu May 28 13:13:40 PDT 2026


On Wed, May 27, 2026 at 10:14:05PM +0000, Pranjal Shrivastava wrote:
> @@ -5592,11 +5595,18 @@ static int arm_smmu_device_probe(struct platform_device *pdev)
>  	if (ret)
>  		goto err_disable;
>  
> +	if (dev->pm_domain) {
> +		pm_runtime_set_active(dev);
> +		pm_runtime_use_autosuspend(dev);
> +		pm_runtime_set_autosuspend_delay(dev, RPM_AUTOSUSPEND_DELAY_MS);
> +		pm_runtime_enable(dev);
> +	}
> +
>  	/* And we're up. Go go go! */
>  	ret = iommu_device_sysfs_add(&smmu->iommu, dev, NULL,
>  				     "smmu3.%pa", &ioaddr);
>  	if (ret)
> -		goto err_disable;
> +		goto err_rpm_disable;
>  
>  	ret = iommu_device_register(&smmu->iommu, &arm_smmu_ops, dev);
>  	if (ret) {

Can we move the entire pm_runtime_* piece at the end of this probe
function, like arm-smmu v2 driver does?

It is no-fail, so we wouldn't need to add the revert path.

Otherwise,
Reviewed-by: Nicolin Chen <nicolinc at nvidia.com>



More information about the linux-arm-kernel mailing list