Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp1834740ybb; Thu, 26 Mar 2020 08:10:43 -0700 (PDT) X-Google-Smtp-Source: ADFU+vvDs7BD1b47e6M4O3lwzVXDJPL5/9MAPLYA8UUxVv5B4rbW7s1BWreZ7ypFApTZvP9tDYrw X-Received: by 2002:a9d:69d5:: with SMTP id v21mr14567oto.197.1585235443270; Thu, 26 Mar 2020 08:10:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1585235443; cv=none; d=google.com; s=arc-20160816; b=KS2+/cekuQ9m/8moX95TkqJbw8OwG5NblEmTqNPESJirCs39DhR8wI+wpxCGHZ6YXW hSy2g5GV7+6TPVX2t8Sm3I3N+izQxLXsyXlYNJTmg/s6ejpUktPp5RtlMrPBFzZU0JHN /rE2RtUFFMxpP8uwT+Q6uXtg4jQ6wAX3bDL7VdSbdCnkYCoZUkPOkIkbmqmb+ck47i69 8yz93IBQf1lPVxl3DWGcnCNkLIm4acf96b77gz4dXs1NdDvb8COdnkIoHjkMrQDxTJwL MGT4R5Mb/+SOAZ14N0QCLVvb5XCCGAHNLgt6CGsFcqEa1BT3LeinaDFhQutuSqQH40Wr qsFg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from; bh=8D/xr7kbBSTpHkR9wHji0D8YMt9Gz13zAZcFu3wtyqU=; b=Kw494hAEDEkHtXJUtWythntH3D9bWs+BgOsDkeW/RCOVLy3axEP8xMkH6+5GSql93r Ez3OeGYC+aHpyrHxld7/1gTQNZIycHzCjF+yJZRTCQH4WZbpSfCwxV97rwrmtESp+c/J oJWq6S81LHMZJM2LyQ38OXOtn2MxENfFGHuepZgOASig8IzlCZMZH6r/CcnYmwI873y0 AIwm0I4pZa1hKfC0AG90HhnjGgPIHaw5ZtVm67bEsCQVAHyVzii1W1pgeY8K/0Cr9f/P IqNZf3TWzwKJ/yfS9dRaFqVS+4F6klBdTxbXaxZDkG6r1u8WcTm6Z685mVMLyQ4h4Qiw xljQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=8bytes.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id u7si1150237oor.36.2020.03.26.08.10.08; Thu, 26 Mar 2020 08:10:43 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=8bytes.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728458AbgCZPJF (ORCPT + 99 others); Thu, 26 Mar 2020 11:09:05 -0400 Received: from 8bytes.org ([81.169.241.247]:55834 "EHLO theia.8bytes.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728243AbgCZPIx (ORCPT ); Thu, 26 Mar 2020 11:08:53 -0400 Received: by theia.8bytes.org (Postfix, from userid 1000) id 68E209B2; Thu, 26 Mar 2020 16:08:48 +0100 (CET) From: Joerg Roedel To: iommu@lists.linux-foundation.org Cc: linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-mediatek@lists.infradead.org, guohanjun@huawei.com, Sudeep Holla , Rob Clark , Sean Paul , Will Deacon , Robin Murphy , Joerg Roedel , Matthias Brugger , Thierry Reding , Jean-Philippe Brucker , Andy Gross , Bjorn Andersson , Greg Kroah-Hartman , Joerg Roedel Subject: [PATCH v4 13/16] iommu/mediatek: Use accessor functions for iommu private data Date: Thu, 26 Mar 2020 16:08:38 +0100 Message-Id: <20200326150841.10083-14-joro@8bytes.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200326150841.10083-1-joro@8bytes.org> References: <20200326150841.10083-1-joro@8bytes.org> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Joerg Roedel Make use of dev_iommu_priv_set/get() functions. Reviewed-by: Jean-Philippe Brucker Signed-off-by: Joerg Roedel --- drivers/iommu/mtk_iommu.c | 13 ++++++------- drivers/iommu/mtk_iommu_v1.c | 14 +++++++------- 2 files changed, 13 insertions(+), 14 deletions(-) diff --git a/drivers/iommu/mtk_iommu.c b/drivers/iommu/mtk_iommu.c index 95945f467c03..5f4d6df59cf6 100644 --- a/drivers/iommu/mtk_iommu.c +++ b/drivers/iommu/mtk_iommu.c @@ -358,8 +358,8 @@ static void mtk_iommu_domain_free(struct iommu_domain *domain) static int mtk_iommu_attach_device(struct iommu_domain *domain, struct device *dev) { + struct mtk_iommu_data *data = dev_iommu_priv_get(dev); struct mtk_iommu_domain *dom = to_mtk_domain(domain); - struct mtk_iommu_data *data = dev_iommu_fwspec_get(dev)->iommu_priv; if (!data) return -ENODEV; @@ -378,7 +378,7 @@ static int mtk_iommu_attach_device(struct iommu_domain *domain, static void mtk_iommu_detach_device(struct iommu_domain *domain, struct device *dev) { - struct mtk_iommu_data *data = dev_iommu_fwspec_get(dev)->iommu_priv; + struct mtk_iommu_data *data = dev_iommu_priv_get(dev); if (!data) return; @@ -450,7 +450,7 @@ static int mtk_iommu_add_device(struct device *dev) if (!fwspec || fwspec->ops != &mtk_iommu_ops) return -ENODEV; /* Not a iommu client device */ - data = fwspec->iommu_priv; + data = dev_iommu_priv_get(dev); iommu_device_link(&data->iommu, dev); group = iommu_group_get_for_dev(dev); @@ -469,7 +469,7 @@ static void mtk_iommu_remove_device(struct device *dev) if (!fwspec || fwspec->ops != &mtk_iommu_ops) return; - data = fwspec->iommu_priv; + data = dev_iommu_priv_get(dev); iommu_device_unlink(&data->iommu, dev); iommu_group_remove_device(dev); @@ -496,7 +496,6 @@ static struct iommu_group *mtk_iommu_device_group(struct device *dev) static int mtk_iommu_of_xlate(struct device *dev, struct of_phandle_args *args) { - struct iommu_fwspec *fwspec = dev_iommu_fwspec_get(dev); struct platform_device *m4updev; if (args->args_count != 1) { @@ -505,13 +504,13 @@ static int mtk_iommu_of_xlate(struct device *dev, struct of_phandle_args *args) return -EINVAL; } - if (!fwspec->iommu_priv) { + if (!dev_iommu_priv_get(dev)) { /* Get the m4u device */ m4updev = of_find_device_by_node(args->np); if (WARN_ON(!m4updev)) return -EINVAL; - fwspec->iommu_priv = platform_get_drvdata(m4updev); + dev_iommu_priv_set(dev, platform_get_drvdata(m4updev)); } return iommu_fwspec_add_ids(dev, args->args, 1); diff --git a/drivers/iommu/mtk_iommu_v1.c b/drivers/iommu/mtk_iommu_v1.c index e93b94ecac45..a31be05601c9 100644 --- a/drivers/iommu/mtk_iommu_v1.c +++ b/drivers/iommu/mtk_iommu_v1.c @@ -263,8 +263,8 @@ static void mtk_iommu_domain_free(struct iommu_domain *domain) static int mtk_iommu_attach_device(struct iommu_domain *domain, struct device *dev) { + struct mtk_iommu_data *data = dev_iommu_priv_get(dev); struct mtk_iommu_domain *dom = to_mtk_domain(domain); - struct mtk_iommu_data *data = dev_iommu_fwspec_get(dev)->iommu_priv; int ret; if (!data) @@ -286,7 +286,7 @@ static int mtk_iommu_attach_device(struct iommu_domain *domain, static void mtk_iommu_detach_device(struct iommu_domain *domain, struct device *dev) { - struct mtk_iommu_data *data = dev_iommu_fwspec_get(dev)->iommu_priv; + struct mtk_iommu_data *data = dev_iommu_priv_get(dev); if (!data) return; @@ -387,20 +387,20 @@ static int mtk_iommu_create_mapping(struct device *dev, return -EINVAL; } - if (!fwspec->iommu_priv) { + if (!dev_iommu_priv_get(dev)) { /* Get the m4u device */ m4updev = of_find_device_by_node(args->np); if (WARN_ON(!m4updev)) return -EINVAL; - fwspec->iommu_priv = platform_get_drvdata(m4updev); + dev_iommu_priv_set(dev, platform_get_drvdata(m4updev)); } ret = iommu_fwspec_add_ids(dev, args->args, 1); if (ret) return ret; - data = fwspec->iommu_priv; + data = dev_iommu_priv_get(dev); m4udev = data->dev; mtk_mapping = m4udev->archdata.iommu; if (!mtk_mapping) { @@ -459,7 +459,7 @@ static int mtk_iommu_add_device(struct device *dev) if (err) return err; - data = fwspec->iommu_priv; + data = dev_iommu_priv_get(dev); mtk_mapping = data->dev->archdata.iommu; err = arm_iommu_attach_device(dev, mtk_mapping); if (err) { @@ -478,7 +478,7 @@ static void mtk_iommu_remove_device(struct device *dev) if (!fwspec || fwspec->ops != &mtk_iommu_ops) return; - data = fwspec->iommu_priv; + data = dev_iommu_priv_get(dev); iommu_device_unlink(&data->iommu, dev); iommu_group_remove_device(dev); -- 2.17.1