[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <713e01c9-4850-dd03-841f-060c1eec1cbd@arm.com>
Date: Wed, 7 Mar 2018 12:55:54 +0000
From: Robin Murphy <robin.murphy@....com>
To: Jeffy Chen <jeffy.chen@...k-chips.com>,
linux-kernel@...r.kernel.org
Cc: jcliang@...omium.org, xxm@...k-chips.com, tfiga@...omium.org,
Heiko Stuebner <heiko@...ech.de>,
linux-rockchip@...ts.infradead.org,
iommu@...ts.linux-foundation.org, Joerg Roedel <joro@...tes.org>,
linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH v7 01/14] iommu/rockchip: Prohibit unbind and remove
On 06/03/18 03:02, Jeffy Chen wrote:
> Removal of IOMMUs cannot be done reliably.
>
> This is similar to exynos iommu driver.
Acked-by: Robin Murphy <robin.murphy@....com>
> Signed-off-by: Jeffy Chen <jeffy.chen@...k-chips.com>
> Reviewed-by: Tomasz Figa <tfiga@...omium.org>
> ---
>
> Changes in v7: None
> Changes in v6: None
> Changes in v5: None
> Changes in v4:
> Rewrite commit message.
>
> Changes in v3:
> Also remove remove() and module_exit() as Tomasz suggested.
>
> Changes in v2: None
>
> drivers/iommu/rockchip-iommu.c | 21 +--------------------
> 1 file changed, 1 insertion(+), 20 deletions(-)
>
> diff --git a/drivers/iommu/rockchip-iommu.c b/drivers/iommu/rockchip-iommu.c
> index 9d991c2d8767..16cd8780c289 100644
> --- a/drivers/iommu/rockchip-iommu.c
> +++ b/drivers/iommu/rockchip-iommu.c
> @@ -1197,18 +1197,6 @@ static int rk_iommu_probe(struct platform_device *pdev)
> return err;
> }
>
> -static int rk_iommu_remove(struct platform_device *pdev)
> -{
> - struct rk_iommu *iommu = platform_get_drvdata(pdev);
> -
> - if (iommu) {
> - iommu_device_sysfs_remove(&iommu->iommu);
> - iommu_device_unregister(&iommu->iommu);
> - }
> -
> - return 0;
> -}
> -
> static const struct of_device_id rk_iommu_dt_ids[] = {
> { .compatible = "rockchip,iommu" },
> { /* sentinel */ }
> @@ -1217,10 +1205,10 @@ MODULE_DEVICE_TABLE(of, rk_iommu_dt_ids);
>
> static struct platform_driver rk_iommu_driver = {
> .probe = rk_iommu_probe,
> - .remove = rk_iommu_remove,
> .driver = {
> .name = "rk_iommu",
> .of_match_table = rk_iommu_dt_ids,
> + .suppress_bind_attrs = true,
> },
> };
>
> @@ -1248,14 +1236,7 @@ static int __init rk_iommu_init(void)
> platform_driver_unregister(&rk_iommu_domain_driver);
> return ret;
> }
> -static void __exit rk_iommu_exit(void)
> -{
> - platform_driver_unregister(&rk_iommu_driver);
> - platform_driver_unregister(&rk_iommu_domain_driver);
> -}
> -
> subsys_initcall(rk_iommu_init);
> -module_exit(rk_iommu_exit);
>
> MODULE_DESCRIPTION("IOMMU API for Rockchip");
> MODULE_AUTHOR("Simon Xue <xxm@...k-chips.com> and Daniel Kurtz <djkurtz@...omium.org>");
>
Powered by blists - more mailing lists