From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, UNPARSEABLE_RELAY,UNWANTED_LANGUAGE_BODY,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3D750CA9EBC for ; Mon, 28 Oct 2019 08:29:13 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 18444222D0 for ; Mon, 28 Oct 2019 08:29:13 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387520AbfJ1I3H (ORCPT ); Mon, 28 Oct 2019 04:29:07 -0400 Received: from mailgw02.mediatek.com ([210.61.82.184]:8023 "EHLO mailgw02.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1731824AbfJ1I3F (ORCPT ); Mon, 28 Oct 2019 04:29:05 -0400 X-UUID: 5cf853185f3343b2900ae2ba9dbdf640-20191028 X-UUID: 5cf853185f3343b2900ae2ba9dbdf640-20191028 Received: from mtkexhb02.mediatek.inc [(172.21.101.103)] by mailgw02.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS) with ESMTP id 149267148; Mon, 28 Oct 2019 16:29:01 +0800 Received: from mtkcas08.mediatek.inc (172.21.101.126) by mtkmbs06n2.mediatek.inc (172.21.101.130) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Mon, 28 Oct 2019 16:28:59 +0800 Received: from localhost.localdomain (10.15.20.246) by mtkcas08.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1395.4 via Frontend Transport; Mon, 28 Oct 2019 16:28:56 +0800 From: Chao Hao To: Joerg Roedel , Rob Herring , Matthias Brugger CC: , , , , , , Jun Yan , Cui Zhang , Guangming Cao , Yong Wu , Anan Sun , Miles Chen , Chao Hao Subject: [PATCH 09/13] iommu/mediatek: Remove the usage of m4u_dom variable Date: Mon, 28 Oct 2019 16:28:16 +0800 Message-ID: <20191028082820.20221-10-chao.hao@mediatek.com> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20191028082820.20221-1-chao.hao@mediatek.com> References: <20191028082820.20221-1-chao.hao@mediatek.com> MIME-Version: 1.0 Content-Type: text/plain X-TM-SNTS-SMTP: E6DAAF6F1FB7DC544D8AF43EAB395DA4814A94CC3C392803A32AA6AF3A38C33B2000:8 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patch will remove the usage of the m4u_dom variable. We have already redefined mtk_iommu_domain structure and it includes iommu_domain, so m4u_dom variable will not be used. Signed-off-by: Chao Hao --- drivers/iommu/mtk_iommu.c | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/drivers/iommu/mtk_iommu.c b/drivers/iommu/mtk_iommu.c index 8d68a1af8ed5..42fad1cf73f3 100644 --- a/drivers/iommu/mtk_iommu.c +++ b/drivers/iommu/mtk_iommu.c @@ -113,6 +113,7 @@ * Get the local arbiter ID and the portid within the larb arbiter * from mtk_m4u_id which is defined by MTK_M4U_ID. */ +#define MTK_M4U_ID(larb, port) (((larb) << 5) | (port)) #define MTK_M4U_TO_LARB(id) (((id) >> 5) & 0xf) #define MTK_M4U_TO_PORT(id) ((id) & 0x1f) @@ -205,6 +206,22 @@ static u32 mtk_iommu_get_domain_id(struct device *dev) return get_domain_id(data, portid); } +static struct iommu_domain *_get_mtk_domain(struct mtk_iommu_data *data, + u32 larbid, u32 portid) +{ + u32 domain_id; + u32 port_mask = MTK_M4U_ID(larbid, portid); + struct mtk_iommu_domain *dom; + + domain_id = get_domain_id(data, port_mask); + + list_for_each_entry(dom, &data->pgtable->m4u_dom_v2, list) { + if (dom->id == domain_id) + return &dom->domain; + } + return NULL; +} + static struct mtk_iommu_domain *get_mtk_domain(struct device *dev) { struct mtk_iommu_data *data = dev->iommu_fwspec->iommu_priv; @@ -307,7 +324,7 @@ static const struct iommu_flush_ops mtk_iommu_flush_ops = { static irqreturn_t mtk_iommu_isr(int irq, void *dev_id) { struct mtk_iommu_data *data = dev_id; - struct mtk_iommu_domain *dom = data->m4u_dom; + struct iommu_domain *domain; u32 int_state, regval, fault_iova, fault_pa; unsigned int fault_larb, fault_port, sub_comm = 0; bool layer, write; @@ -342,7 +359,8 @@ static irqreturn_t mtk_iommu_isr(int irq, void *dev_id) fault_larb = data->plat_data->larbid_remap[data->m4u_id][fault_larb]; - if (report_iommu_fault(&dom->domain, data->dev, fault_iova, + domain = _get_mtk_domain(data, fault_larb, fault_port); + if (report_iommu_fault(domain, data->dev, fault_iova, write ? IOMMU_FAULT_WRITE : IOMMU_FAULT_READ)) { dev_err_ratelimited( data->dev, @@ -512,16 +530,11 @@ 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_domain *dom = to_mtk_domain(domain); struct mtk_iommu_data *data = dev_iommu_fwspec_get(dev)->iommu_priv; if (!data) return -ENODEV; - /* Update the pgtable base address register of the M4U HW */ - if (!data->m4u_dom) - data->m4u_dom = dom; - mtk_iommu_config(data, dev, true); return 0; } -- 2.18.0 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, HTML_MESSAGE,INCLUDES_PATCH,MAILING_LIST_MULTI,MIME_BASE64_TEXT,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY,UNWANTED_LANGUAGE_BODY,URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7A3C8CA9EC0 for ; Mon, 28 Oct 2019 11:21:47 +0000 (UTC) Received: from mail.linuxfoundation.org (mail.linuxfoundation.org [140.211.169.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 54F922086D for ; Mon, 28 Oct 2019 11:21:47 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 54F922086D Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=mediatek.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=iommu-bounces@lists.linux-foundation.org Received: from mail.linux-foundation.org (localhost [127.0.0.1]) by mail.linuxfoundation.org (Postfix) with ESMTP id 79A19112F; Mon, 28 Oct 2019 11:21:03 +0000 (UTC) Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id D1B6FB1F for ; Mon, 28 Oct 2019 08:29:04 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mailgw02.mediatek.com (unknown [210.61.82.184]) by smtp1.linuxfoundation.org (Postfix) with ESMTP id D71BA42D for ; Mon, 28 Oct 2019 08:29:03 +0000 (UTC) X-UUID: 5cf853185f3343b2900ae2ba9dbdf640-20191028 X-UUID: 5cf853185f3343b2900ae2ba9dbdf640-20191028 Received: from mtkexhb02.mediatek.inc [(172.21.101.103)] by mailgw02.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS) with ESMTP id 149267148; Mon, 28 Oct 2019 16:29:01 +0800 Received: from mtkcas08.mediatek.inc (172.21.101.126) by mtkmbs06n2.mediatek.inc (172.21.101.130) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Mon, 28 Oct 2019 16:28:59 +0800 Received: from localhost.localdomain (10.15.20.246) by mtkcas08.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1395.4 via Frontend Transport; Mon, 28 Oct 2019 16:28:56 +0800 From: Chao Hao To: Joerg Roedel , Rob Herring , Matthias Brugger Subject: [PATCH 09/13] iommu/mediatek: Remove the usage of m4u_dom variable Date: Mon, 28 Oct 2019 16:28:16 +0800 Message-ID: <20191028082820.20221-10-chao.hao@mediatek.com> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20191028082820.20221-1-chao.hao@mediatek.com> References: <20191028082820.20221-1-chao.hao@mediatek.com> MIME-Version: 1.0 X-TM-SNTS-SMTP: E6DAAF6F1FB7DC544D8AF43EAB395DA4814A94CC3C392803A32AA6AF3A38C33B2000:8 X-Mailman-Approved-At: Mon, 28 Oct 2019 11:21:00 +0000 Cc: Anan Sun , devicetree@vger.kernel.org, Cui Zhang , Jun Yan , wsd_upstream@mediatek.com, linux-kernel@vger.kernel.org, Chao Hao , iommu@lists.linux-foundation.org, linux-mediatek@lists.infradead.org, Miles Chen , linux-arm-kernel@lists.infradead.org, Guangming Cao X-BeenThere: iommu@lists.linux-foundation.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Development issues for Linux IOMMU support List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============5181444029077008827==" Sender: iommu-bounces@lists.linux-foundation.org Errors-To: iommu-bounces@lists.linux-foundation.org --===============5181444029077008827== Content-Type: multipart/alternative; boundary="__=_Part_Boundary_008_1853518908.2047213007" --__=_Part_Boundary_008_1853518908.2047213007 Content-Type: text/html Content-Transfer-Encoding: base64 PHByZT4NClRoaXMgcGF0Y2ggd2lsbCByZW1vdmUgdGhlIHVzYWdlIG9mIHRoZSBtNHVfZG9tIHZh cmlhYmxlLg0KDQpXZSBoYXZlIGFscmVhZHkgcmVkZWZpbmVkIG10a19pb21tdV9kb21haW4gc3Ry dWN0dXJlIGFuZCBpdA0KaW5jbHVkZXMgaW9tbXVfZG9tYWluLCBzbyBtNHVfZG9tIHZhcmlhYmxl IHdpbGwgbm90IGJlIHVzZWQuDQoNClNpZ25lZC1vZmYtYnk6IENoYW8gSGFvICZsdDtjaGFvLmhh b0BtZWRpYXRlay5jb20mZ3Q7DQotLS0NCiBkcml2ZXJzL2lvbW11L210a19pb21tdS5jIHwgMjcg KysrKysrKysrKysrKysrKysrKystLS0tLS0tDQogMSBmaWxlIGNoYW5nZWQsIDIwIGluc2VydGlv bnMoKyksIDcgZGVsZXRpb25zKC0pDQoNCmRpZmYgLS1naXQgYS9kcml2ZXJzL2lvbW11L210a19p b21tdS5jIGIvZHJpdmVycy9pb21tdS9tdGtfaW9tbXUuYw0KaW5kZXggOGQ2OGExYWY4ZWQ1Li40 MmZhZDFjZjczZjMgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL2lvbW11L210a19pb21tdS5jDQorKysg Yi9kcml2ZXJzL2lvbW11L210a19pb21tdS5jDQpAQCAtMTEzLDYgKzExMyw3IEBADQogICogR2V0 IHRoZSBsb2NhbCBhcmJpdGVyIElEIGFuZCB0aGUgcG9ydGlkIHdpdGhpbiB0aGUgbGFyYiBhcmJp dGVyDQogICogZnJvbSBtdGtfbTR1X2lkIHdoaWNoIGlzIGRlZmluZWQgYnkgTVRLX000VV9JRC4N CiAgKi8NCisjZGVmaW5lIE1US19NNFVfSUQobGFyYiwgcG9ydCkJCSgoKGxhcmIpICZsdDsmbHQ7 IDUpIHwgKHBvcnQpKQ0KICNkZWZpbmUgTVRLX000VV9UT19MQVJCKGlkKQkJKCgoaWQpICZndDsm Z3Q7IDUpICZhbXA7IDB4ZikNCiAjZGVmaW5lIE1US19NNFVfVE9fUE9SVChpZCkJCSgoaWQpICZh bXA7IDB4MWYpDQogDQpAQCAtMjA1LDYgKzIwNiwyMiBAQCBzdGF0aWMgdTMyIG10a19pb21tdV9n ZXRfZG9tYWluX2lkKHN0cnVjdCBkZXZpY2UgKmRldikNCiAJcmV0dXJuIGdldF9kb21haW5faWQo ZGF0YSwgcG9ydGlkKTsNCiB9DQogDQorc3RhdGljIHN0cnVjdCBpb21tdV9kb21haW4gKl9nZXRf bXRrX2RvbWFpbihzdHJ1Y3QgbXRrX2lvbW11X2RhdGEgKmRhdGEsDQorCQkJCQkgICAgdTMyIGxh cmJpZCwgdTMyIHBvcnRpZCkNCit7DQorCXUzMiBkb21haW5faWQ7DQorCXUzMiBwb3J0X21hc2sg PSBNVEtfTTRVX0lEKGxhcmJpZCwgcG9ydGlkKTsNCisJc3RydWN0IG10a19pb21tdV9kb21haW4g KmRvbTsNCisNCisJZG9tYWluX2lkID0gZ2V0X2RvbWFpbl9pZChkYXRhLCBwb3J0X21hc2spOw0K Kw0KKwlsaXN0X2Zvcl9lYWNoX2VudHJ5KGRvbSwgJmFtcDtkYXRhLSZndDtwZ3RhYmxlLSZndDtt NHVfZG9tX3YyLCBsaXN0KSB7DQorCQlpZiAoZG9tLSZndDtpZCA9PSBkb21haW5faWQpDQorCQkJ cmV0dXJuICZhbXA7ZG9tLSZndDtkb21haW47DQorCX0NCisJcmV0dXJuIE5VTEw7DQorfQ0KKw0K IHN0YXRpYyBzdHJ1Y3QgbXRrX2lvbW11X2RvbWFpbiAqZ2V0X210a19kb21haW4oc3RydWN0IGRl dmljZSAqZGV2KQ0KIHsNCiAJc3RydWN0IG10a19pb21tdV9kYXRhICpkYXRhID0gZGV2LSZndDtp b21tdV9md3NwZWMtJmd0O2lvbW11X3ByaXY7DQpAQCAtMzA3LDcgKzMyNCw3IEBAIHN0YXRpYyBj b25zdCBzdHJ1Y3QgaW9tbXVfZmx1c2hfb3BzIG10a19pb21tdV9mbHVzaF9vcHMgPSB7DQogc3Rh dGljIGlycXJldHVybl90IG10a19pb21tdV9pc3IoaW50IGlycSwgdm9pZCAqZGV2X2lkKQ0KIHsN CiAJc3RydWN0IG10a19pb21tdV9kYXRhICpkYXRhID0gZGV2X2lkOw0KLQlzdHJ1Y3QgbXRrX2lv bW11X2RvbWFpbiAqZG9tID0gZGF0YS0mZ3Q7bTR1X2RvbTsNCisJc3RydWN0IGlvbW11X2RvbWFp biAqZG9tYWluOw0KIAl1MzIgaW50X3N0YXRlLCByZWd2YWwsIGZhdWx0X2lvdmEsIGZhdWx0X3Bh Ow0KIAl1bnNpZ25lZCBpbnQgZmF1bHRfbGFyYiwgZmF1bHRfcG9ydCwgc3ViX2NvbW0gPSAwOw0K IAlib29sIGxheWVyLCB3cml0ZTsNCkBAIC0zNDIsNyArMzU5LDggQEAgc3RhdGljIGlycXJldHVy bl90IG10a19pb21tdV9pc3IoaW50IGlycSwgdm9pZCAqZGV2X2lkKQ0KIA0KIAlmYXVsdF9sYXJi ID0gZGF0YS0mZ3Q7cGxhdF9kYXRhLSZndDtsYXJiaWRfcmVtYXBbZGF0YS0mZ3Q7bTR1X2lkXVtm YXVsdF9sYXJiXTsNCiANCi0JaWYgKHJlcG9ydF9pb21tdV9mYXVsdCgmYW1wO2RvbS0mZ3Q7ZG9t YWluLCBkYXRhLSZndDtkZXYsIGZhdWx0X2lvdmEsDQorCWRvbWFpbiA9IF9nZXRfbXRrX2RvbWFp bihkYXRhLCBmYXVsdF9sYXJiLCBmYXVsdF9wb3J0KTsNCisJaWYgKHJlcG9ydF9pb21tdV9mYXVs dChkb21haW4sIGRhdGEtJmd0O2RldiwgZmF1bHRfaW92YSwNCiAJCQkgICAgICAgd3JpdGUgPyBJ T01NVV9GQVVMVF9XUklURSA6IElPTU1VX0ZBVUxUX1JFQUQpKSB7DQogCQlkZXZfZXJyX3JhdGVs aW1pdGVkKA0KIAkJCWRhdGEtJmd0O2RldiwNCkBAIC01MTIsMTYgKzUzMCwxMSBAQCBzdGF0aWMg dm9pZCBtdGtfaW9tbXVfZG9tYWluX2ZyZWUoc3RydWN0IGlvbW11X2RvbWFpbiAqZG9tYWluKQ0K IHN0YXRpYyBpbnQgbXRrX2lvbW11X2F0dGFjaF9kZXZpY2Uoc3RydWN0IGlvbW11X2RvbWFpbiAq ZG9tYWluLA0KIAkJCQkgICBzdHJ1Y3QgZGV2aWNlICpkZXYpDQogew0KLQlzdHJ1Y3QgbXRrX2lv bW11X2RvbWFpbiAqZG9tID0gdG9fbXRrX2RvbWFpbihkb21haW4pOw0KIAlzdHJ1Y3QgbXRrX2lv bW11X2RhdGEgKmRhdGEgPSBkZXZfaW9tbXVfZndzcGVjX2dldChkZXYpLSZndDtpb21tdV9wcml2 Ow0KIA0KIAlpZiAoIWRhdGEpDQogCQlyZXR1cm4gLUVOT0RFVjsNCiANCi0JLyogVXBkYXRlIHRo ZSBwZ3RhYmxlIGJhc2UgYWRkcmVzcyByZWdpc3RlciBvZiB0aGUgTTRVIEhXICovDQotCWlmICgh ZGF0YS0mZ3Q7bTR1X2RvbSkNCi0JCWRhdGEtJmd0O200dV9kb20gPSBkb207DQotDQogCW10a19p b21tdV9jb25maWcoZGF0YSwgZGV2LCB0cnVlKTsNCiAJcmV0dXJuIDA7DQogfQ0KLS0gDQoyLjE4 LjANCg0KPC9wcmU+PCEtLXR5cGU6dGV4dC0tPjwhLS17LS0+PHByZT4qKioqKioqKioqKioqIE1F RElBVEVLIENvbmZpZGVudGlhbGl0eSBOb3RpY2UNCiAqKioqKioqKioqKioqKioqKioqKg0KVGhl IGluZm9ybWF0aW9uIGNvbnRhaW5lZCBpbiB0aGlzIGUtbWFpbCBtZXNzYWdlIChpbmNsdWRpbmcg YW55IA0KYXR0YWNobWVudHMpIG1heSBiZSBjb25maWRlbnRpYWwsIHByb3ByaWV0YXJ5LCBwcml2 aWxlZ2VkLCBvciBvdGhlcndpc2UNCmV4ZW1wdCBmcm9tIGRpc2Nsb3N1cmUgdW5kZXIgYXBwbGlj YWJsZSBsYXdzLiBJdCBpcyBpbnRlbmRlZCB0byBiZSANCmNvbnZleWVkIG9ubHkgdG8gdGhlIGRl c2lnbmF0ZWQgcmVjaXBpZW50KHMpLiBBbnkgdXNlLCBkaXNzZW1pbmF0aW9uLCANCmRpc3RyaWJ1 dGlvbiwgcHJpbnRpbmcsIHJldGFpbmluZyBvciBjb3B5aW5nIG9mIHRoaXMgZS1tYWlsIChpbmNs dWRpbmcgaXRzIA0KYXR0YWNobWVudHMpIGJ5IHVuaW50ZW5kZWQgcmVjaXBpZW50KHMpIGlzIHN0 cmljdGx5IHByb2hpYml0ZWQgYW5kIG1heSANCmJlIHVubGF3ZnVsLiBJZiB5b3UgYXJlIG5vdCBh biBpbnRlbmRlZCByZWNpcGllbnQgb2YgdGhpcyBlLW1haWwsIG9yIGJlbGlldmUNCiANCnRoYXQg eW91IGhhdmUgcmVjZWl2ZWQgdGhpcyBlLW1haWwgaW4gZXJyb3IsIHBsZWFzZSBub3RpZnkgdGhl IHNlbmRlciANCmltbWVkaWF0ZWx5IChieSByZXBseWluZyB0byB0aGlzIGUtbWFpbCksIGRlbGV0 ZSBhbnkgYW5kIGFsbCBjb3BpZXMgb2YgDQp0aGlzIGUtbWFpbCAoaW5jbHVkaW5nIGFueSBhdHRh Y2htZW50cykgZnJvbSB5b3VyIHN5c3RlbSwgYW5kIGRvIG5vdA0KZGlzY2xvc2UgdGhlIGNvbnRl bnQgb2YgdGhpcyBlLW1haWwgdG8gYW55IG90aGVyIHBlcnNvbi4gVGhhbmsgeW91IQ0KPC9wcmU+ PCEtLX0tLT4= --__=_Part_Boundary_008_1853518908.2047213007 Content-Type: text/plain Content-Transfer-Encoding: base64 VGhpcyBwYXRjaCB3aWxsIHJlbW92ZSB0aGUgdXNhZ2Ugb2YgdGhlIG00dV9kb20gdmFyaWFibGUu DQoNCldlIGhhdmUgYWxyZWFkeSByZWRlZmluZWQgbXRrX2lvbW11X2RvbWFpbiBzdHJ1Y3R1cmUg YW5kIGl0DQppbmNsdWRlcyBpb21tdV9kb21haW4sIHNvIG00dV9kb20gdmFyaWFibGUgd2lsbCBu b3QgYmUgdXNlZC4NCg0KU2lnbmVkLW9mZi1ieTogQ2hhbyBIYW8gPGNoYW8uaGFvQG1lZGlhdGVr LmNvbT4NCi0tLQ0KIGRyaXZlcnMvaW9tbXUvbXRrX2lvbW11LmMgfCAyNyArKysrKysrKysrKysr KysrKysrKy0tLS0tLS0NCiAxIGZpbGUgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwgNyBkZWxl dGlvbnMoLSkNCg0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvaW9tbXUvbXRrX2lvbW11LmMgYi9kcml2 ZXJzL2lvbW11L210a19pb21tdS5jDQppbmRleCA4ZDY4YTFhZjhlZDUuLjQyZmFkMWNmNzNmMyAx MDA2NDQNCi0tLSBhL2RyaXZlcnMvaW9tbXUvbXRrX2lvbW11LmMNCisrKyBiL2RyaXZlcnMvaW9t bXUvbXRrX2lvbW11LmMNCkBAIC0xMTMsNiArMTEzLDcgQEANCiAgKiBHZXQgdGhlIGxvY2FsIGFy Yml0ZXIgSUQgYW5kIHRoZSBwb3J0aWQgd2l0aGluIHRoZSBsYXJiIGFyYml0ZXINCiAgKiBmcm9t IG10a19tNHVfaWQgd2hpY2ggaXMgZGVmaW5lZCBieSBNVEtfTTRVX0lELg0KICAqLw0KKyNkZWZp bmUgTVRLX000VV9JRChsYXJiLCBwb3J0KQkJKCgobGFyYikgPDwgNSkgfCAocG9ydCkpDQogI2Rl ZmluZSBNVEtfTTRVX1RPX0xBUkIoaWQpCQkoKChpZCkgPj4gNSkgJiAweGYpDQogI2RlZmluZSBN VEtfTTRVX1RPX1BPUlQoaWQpCQkoKGlkKSAmIDB4MWYpDQogDQpAQCAtMjA1LDYgKzIwNiwyMiBA QCBzdGF0aWMgdTMyIG10a19pb21tdV9nZXRfZG9tYWluX2lkKHN0cnVjdCBkZXZpY2UgKmRldikN CiAJcmV0dXJuIGdldF9kb21haW5faWQoZGF0YSwgcG9ydGlkKTsNCiB9DQogDQorc3RhdGljIHN0 cnVjdCBpb21tdV9kb21haW4gKl9nZXRfbXRrX2RvbWFpbihzdHJ1Y3QgbXRrX2lvbW11X2RhdGEg KmRhdGEsDQorCQkJCQkgICAgdTMyIGxhcmJpZCwgdTMyIHBvcnRpZCkNCit7DQorCXUzMiBkb21h aW5faWQ7DQorCXUzMiBwb3J0X21hc2sgPSBNVEtfTTRVX0lEKGxhcmJpZCwgcG9ydGlkKTsNCisJ c3RydWN0IG10a19pb21tdV9kb21haW4gKmRvbTsNCisNCisJZG9tYWluX2lkID0gZ2V0X2RvbWFp bl9pZChkYXRhLCBwb3J0X21hc2spOw0KKw0KKwlsaXN0X2Zvcl9lYWNoX2VudHJ5KGRvbSwgJmRh dGEtPnBndGFibGUtPm00dV9kb21fdjIsIGxpc3QpIHsNCisJCWlmIChkb20tPmlkID09IGRvbWFp bl9pZCkNCisJCQlyZXR1cm4gJmRvbS0+ZG9tYWluOw0KKwl9DQorCXJldHVybiBOVUxMOw0KK30N CisNCiBzdGF0aWMgc3RydWN0IG10a19pb21tdV9kb21haW4gKmdldF9tdGtfZG9tYWluKHN0cnVj dCBkZXZpY2UgKmRldikNCiB7DQogCXN0cnVjdCBtdGtfaW9tbXVfZGF0YSAqZGF0YSA9IGRldi0+ aW9tbXVfZndzcGVjLT5pb21tdV9wcml2Ow0KQEAgLTMwNyw3ICszMjQsNyBAQCBzdGF0aWMgY29u c3Qgc3RydWN0IGlvbW11X2ZsdXNoX29wcyBtdGtfaW9tbXVfZmx1c2hfb3BzID0gew0KIHN0YXRp YyBpcnFyZXR1cm5fdCBtdGtfaW9tbXVfaXNyKGludCBpcnEsIHZvaWQgKmRldl9pZCkNCiB7DQog CXN0cnVjdCBtdGtfaW9tbXVfZGF0YSAqZGF0YSA9IGRldl9pZDsNCi0Jc3RydWN0IG10a19pb21t dV9kb21haW4gKmRvbSA9IGRhdGEtPm00dV9kb207DQorCXN0cnVjdCBpb21tdV9kb21haW4gKmRv bWFpbjsNCiAJdTMyIGludF9zdGF0ZSwgcmVndmFsLCBmYXVsdF9pb3ZhLCBmYXVsdF9wYTsNCiAJ dW5zaWduZWQgaW50IGZhdWx0X2xhcmIsIGZhdWx0X3BvcnQsIHN1Yl9jb21tID0gMDsNCiAJYm9v bCBsYXllciwgd3JpdGU7DQpAQCAtMzQyLDcgKzM1OSw4IEBAIHN0YXRpYyBpcnFyZXR1cm5fdCBt dGtfaW9tbXVfaXNyKGludCBpcnEsIHZvaWQgKmRldl9pZCkNCiANCiAJZmF1bHRfbGFyYiA9IGRh dGEtPnBsYXRfZGF0YS0+bGFyYmlkX3JlbWFwW2RhdGEtPm00dV9pZF1bZmF1bHRfbGFyYl07DQog DQotCWlmIChyZXBvcnRfaW9tbXVfZmF1bHQoJmRvbS0+ZG9tYWluLCBkYXRhLT5kZXYsIGZhdWx0 X2lvdmEsDQorCWRvbWFpbiA9IF9nZXRfbXRrX2RvbWFpbihkYXRhLCBmYXVsdF9sYXJiLCBmYXVs dF9wb3J0KTsNCisJaWYgKHJlcG9ydF9pb21tdV9mYXVsdChkb21haW4sIGRhdGEtPmRldiwgZmF1 bHRfaW92YSwNCiAJCQkgICAgICAgd3JpdGUgPyBJT01NVV9GQVVMVF9XUklURSA6IElPTU1VX0ZB VUxUX1JFQUQpKSB7DQogCQlkZXZfZXJyX3JhdGVsaW1pdGVkKA0KIAkJCWRhdGEtPmRldiwNCkBA IC01MTIsMTYgKzUzMCwxMSBAQCBzdGF0aWMgdm9pZCBtdGtfaW9tbXVfZG9tYWluX2ZyZWUoc3Ry dWN0IGlvbW11X2RvbWFpbiAqZG9tYWluKQ0KIHN0YXRpYyBpbnQgbXRrX2lvbW11X2F0dGFjaF9k ZXZpY2Uoc3RydWN0IGlvbW11X2RvbWFpbiAqZG9tYWluLA0KIAkJCQkgICBzdHJ1Y3QgZGV2aWNl ICpkZXYpDQogew0KLQlzdHJ1Y3QgbXRrX2lvbW11X2RvbWFpbiAqZG9tID0gdG9fbXRrX2RvbWFp bihkb21haW4pOw0KIAlzdHJ1Y3QgbXRrX2lvbW11X2RhdGEgKmRhdGEgPSBkZXZfaW9tbXVfZndz cGVjX2dldChkZXYpLT5pb21tdV9wcml2Ow0KIA0KIAlpZiAoIWRhdGEpDQogCQlyZXR1cm4gLUVO T0RFVjsNCiANCi0JLyogVXBkYXRlIHRoZSBwZ3RhYmxlIGJhc2UgYWRkcmVzcyByZWdpc3RlciBv ZiB0aGUgTTRVIEhXICovDQotCWlmICghZGF0YS0+bTR1X2RvbSkNCi0JCWRhdGEtPm00dV9kb20g PSBkb207DQotDQogCW10a19pb21tdV9jb25maWcoZGF0YSwgZGV2LCB0cnVlKTsNCiAJcmV0dXJu IDA7DQogfQ0KLS0gDQoyLjE4LjANCg== --__=_Part_Boundary_008_1853518908.2047213007-- --===============5181444029077008827== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ iommu mailing list iommu@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/iommu --===============5181444029077008827==--