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=-9.7 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, UNPARSEABLE_RELAY,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 64E4ECA9EBC for ; Mon, 28 Oct 2019 08:29:06 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 41C4420B7C for ; Mon, 28 Oct 2019 08:29:06 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387506AbfJ1I3F (ORCPT ); Mon, 28 Oct 2019 04:29:05 -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 S2387486AbfJ1I3C (ORCPT ); Mon, 28 Oct 2019 04:29:02 -0400 X-UUID: 5a0ee7c9e38041448279a910561e5df7-20191028 X-UUID: 5a0ee7c9e38041448279a910561e5df7-20191028 Received: from mtkmrs01.mediatek.inc [(172.21.131.159)] by mailgw02.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS) with ESMTP id 1820559169; Mon, 28 Oct 2019 16:28:57 +0800 Received: from mtkcas08.mediatek.inc (172.21.101.126) by mtkmbs06n1.mediatek.inc (172.21.101.129) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Mon, 28 Oct 2019 16:28:56 +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:53 +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 08/13] iommu/mediatek: Add mtk_domain_data structure Date: Mon, 28 Oct 2019 16:28:15 +0800 Message-ID: <20191028082820.20221-9-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 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Add mtk_domain_data structure to describe how many iova regions there are and the relevant the start and end address of each iova region. The number of iova region is equal to the number of mtk_iommu_domain. So we will use mtk_domain_data to initialize the start and end iova of mtk_iommu_domain. Signed-off-by: Chao Hao --- drivers/iommu/mtk_iommu.c | 17 +++++++++++++++-- drivers/iommu/mtk_iommu.h | 17 +++++++++++++++++ 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/drivers/iommu/mtk_iommu.c b/drivers/iommu/mtk_iommu.c index 0eacbc473374..8d68a1af8ed5 100644 --- a/drivers/iommu/mtk_iommu.c +++ b/drivers/iommu/mtk_iommu.c @@ -128,6 +128,12 @@ struct mtk_iommu_pgtable { struct io_pgtable_ops *iop; struct device *init_dev; struct list_head m4u_dom_v2; + const struct mtk_domain_data *dom_region; +}; + +const struct mtk_domain_data single_dom = { + .min_iova = 0x0, + .max_iova = DMA_BIT_MASK(32) }; static struct mtk_iommu_pgtable *share_pgtable; @@ -406,6 +412,7 @@ static struct mtk_iommu_pgtable *create_pgtable(struct mtk_iommu_data *data) dev_err(data->dev, "Failed to alloc io pgtable\n"); return ERR_PTR(-EINVAL); } + pgtable->dom_region = data->plat_data->dom_data; dev_info(data->dev, "%s create pgtable done\n", __func__); @@ -476,8 +483,10 @@ static struct iommu_domain *mtk_iommu_domain_alloc(unsigned type) /* Update our support page sizes bitmap */ dom->domain.pgsize_bitmap = pgtable->cfg.pgsize_bitmap; - dom->domain.geometry.aperture_start = 0; - dom->domain.geometry.aperture_end = DMA_BIT_MASK(32); + dom->domain.geometry.aperture_start = + pgtable->dom_region->min_iova; + dom->domain.geometry.aperture_end = + pgtable->dom_region->max_iova; dom->domain.geometry.force_aperture = true; list_add_tail(&dom->list, &pgtable->m4u_dom_v2); @@ -958,6 +967,7 @@ static const struct mtk_iommu_plat_data mt2712_data = { .has_bclk = true, .has_vld_pa_rng = true, .dom_cnt = 1, + .dom_data = &single_dom, .larbid_remap[0] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, .inv_sel_reg = REG_MMU_INV_SEL, }; @@ -965,6 +975,7 @@ static const struct mtk_iommu_plat_data mt2712_data = { static const struct mtk_iommu_plat_data mt6779_data = { .m4u_plat = M4U_MT6779, .dom_cnt = 1, + .dom_data = &single_dom, .larbid_remap[0] = {0, 1, 2, 3, 5, 7, 10, 9}, /* vp6a, vp6b, mdla/core2, mdla/edmc*/ .larbid_remap[1] = {2, 0, 3, 1}, @@ -981,6 +992,7 @@ static const struct mtk_iommu_plat_data mt8173_data = { .has_bclk = true, .reset_axi = true, .dom_cnt = 1, + .dom_data = &single_dom, .larbid_remap[0] = {0, 1, 2, 3, 4, 5}, /* Linear mapping. */ .inv_sel_reg = REG_MMU_INV_SEL, }; @@ -989,6 +1001,7 @@ static const struct mtk_iommu_plat_data mt8183_data = { .m4u_plat = M4U_MT8183, .reset_axi = true, .dom_cnt = 1, + .dom_data = &single_dom, .larbid_remap[0] = {0, 4, 5, 6, 7, 2, 3, 1}, .inv_sel_reg = REG_MMU_INV_SEL, }; diff --git a/drivers/iommu/mtk_iommu.h b/drivers/iommu/mtk_iommu.h index 6801f8496fcc..d8aef0d57b1a 100644 --- a/drivers/iommu/mtk_iommu.h +++ b/drivers/iommu/mtk_iommu.h @@ -36,6 +36,22 @@ enum mtk_iommu_plat { M4U_MT8183, }; +/* + * reserved IOVA Domain for IOMMU users of HW limitation. + */ + +/* + * struct mtk_domain_data: domain configuration + * @min_iova: Start address of iova + * @max_iova: End address of iova + * Note: one user can only belong to one domain + */ + +struct mtk_domain_data { + dma_addr_t min_iova; + dma_addr_t max_iova; +}; + struct mtk_iommu_plat_data { enum mtk_iommu_plat m4u_plat; bool has_4gb_mode; @@ -51,6 +67,7 @@ struct mtk_iommu_plat_data { u32 m4u1_mask; u32 dom_cnt; unsigned char larbid_remap[2][MTK_LARB_NR_MAX]; + const struct mtk_domain_data *dom_data; }; struct mtk_iommu_domain; -- 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=-9.7 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,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 89748CA9EC0 for ; Mon, 28 Oct 2019 11:21:42 +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 64800205ED for ; Mon, 28 Oct 2019 11:21:42 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 64800205ED 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 547F41124; 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 9ACA5B0B for ; Mon, 28 Oct 2019 08:29:00 +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 A2CCE42D for ; Mon, 28 Oct 2019 08:28:59 +0000 (UTC) X-UUID: 5a0ee7c9e38041448279a910561e5df7-20191028 X-UUID: 5a0ee7c9e38041448279a910561e5df7-20191028 Received: from mtkmrs01.mediatek.inc [(172.21.131.159)] by mailgw02.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS) with ESMTP id 1820559169; Mon, 28 Oct 2019 16:28:57 +0800 Received: from mtkcas08.mediatek.inc (172.21.101.126) by mtkmbs06n1.mediatek.inc (172.21.101.129) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Mon, 28 Oct 2019 16:28:56 +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:53 +0800 From: Chao Hao To: Joerg Roedel , Rob Herring , Matthias Brugger Subject: [PATCH 08/13] iommu/mediatek: Add mtk_domain_data structure Date: Mon, 28 Oct 2019 16:28:15 +0800 Message-ID: <20191028082820.20221-9-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-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="===============6763902467010233689==" Sender: iommu-bounces@lists.linux-foundation.org Errors-To: iommu-bounces@lists.linux-foundation.org --===============6763902467010233689== Content-Type: multipart/alternative; boundary="__=_Part_Boundary_007_423409222.500899896" --__=_Part_Boundary_007_423409222.500899896 Content-Type: text/html Content-Transfer-Encoding: base64 PHByZT4NCkFkZCBtdGtfZG9tYWluX2RhdGEgc3RydWN0dXJlIHRvIGRlc2NyaWJlIGhvdyBtYW55 IGlvdmEgcmVnaW9ucw0KdGhlcmUgYXJlIGFuZCB0aGUgcmVsZXZhbnQgdGhlIHN0YXJ0IGFuZCBl bmQgYWRkcmVzcyBvZiBlYWNoDQppb3ZhIHJlZ2lvbi4gVGhlIG51bWJlciBvZiBpb3ZhIHJlZ2lv biBpcyBlcXVhbCB0byB0aGUgbnVtYmVyDQpvZiBtdGtfaW9tbXVfZG9tYWluLiBTbyB3ZSB3aWxs IHVzZSBtdGtfZG9tYWluX2RhdGEgdG8gaW5pdGlhbGl6ZQ0KdGhlIHN0YXJ0IGFuZCBlbmQgaW92 YSBvZiBtdGtfaW9tbXVfZG9tYWluLg0KDQpTaWduZWQtb2ZmLWJ5OiBDaGFvIEhhbyAmbHQ7Y2hh by5oYW9AbWVkaWF0ZWsuY29tJmd0Ow0KLS0tDQogZHJpdmVycy9pb21tdS9tdGtfaW9tbXUuYyB8 IDE3ICsrKysrKysrKysrKysrKy0tDQogZHJpdmVycy9pb21tdS9tdGtfaW9tbXUuaCB8IDE3ICsr KysrKysrKysrKysrKysrDQogMiBmaWxlcyBjaGFuZ2VkLCAzMiBpbnNlcnRpb25zKCspLCAyIGRl bGV0aW9ucygtKQ0KDQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9pb21tdS9tdGtfaW9tbXUuYyBiL2Ry aXZlcnMvaW9tbXUvbXRrX2lvbW11LmMNCmluZGV4IDBlYWNiYzQ3MzM3NC4uOGQ2OGExYWY4ZWQ1 IDEwMDY0NA0KLS0tIGEvZHJpdmVycy9pb21tdS9tdGtfaW9tbXUuYw0KKysrIGIvZHJpdmVycy9p b21tdS9tdGtfaW9tbXUuYw0KQEAgLTEyOCw2ICsxMjgsMTIgQEAgc3RydWN0IG10a19pb21tdV9w Z3RhYmxlIHsNCiAJc3RydWN0IGlvX3BndGFibGVfb3BzCSppb3A7DQogCXN0cnVjdCBkZXZpY2UJ CSppbml0X2RldjsNCiAJc3RydWN0IGxpc3RfaGVhZAltNHVfZG9tX3YyOw0KKwljb25zdCBzdHJ1 Y3QgbXRrX2RvbWFpbl9kYXRhCSpkb21fcmVnaW9uOw0KK307DQorDQorY29uc3Qgc3RydWN0IG10 a19kb21haW5fZGF0YSBzaW5nbGVfZG9tID0gew0KKwkubWluX2lvdmEgPSAweDAsDQorCS5tYXhf aW92YSA9IERNQV9CSVRfTUFTSygzMikNCiB9Ow0KIA0KIHN0YXRpYyBzdHJ1Y3QgbXRrX2lvbW11 X3BndGFibGUgKnNoYXJlX3BndGFibGU7DQpAQCAtNDA2LDYgKzQxMiw3IEBAIHN0YXRpYyBzdHJ1 Y3QgbXRrX2lvbW11X3BndGFibGUgKmNyZWF0ZV9wZ3RhYmxlKHN0cnVjdCBtdGtfaW9tbXVfZGF0 YSAqZGF0YSkNCiAJCWRldl9lcnIoZGF0YS0mZ3Q7ZGV2LCAmcXVvdDtGYWlsZWQgdG8gYWxsb2Mg aW8gcGd0YWJsZVxuJnF1b3Q7KTsNCiAJCXJldHVybiBFUlJfUFRSKC1FSU5WQUwpOw0KIAl9DQor CXBndGFibGUtJmd0O2RvbV9yZWdpb24gPSBkYXRhLSZndDtwbGF0X2RhdGEtJmd0O2RvbV9kYXRh Ow0KIA0KIAlkZXZfaW5mbyhkYXRhLSZndDtkZXYsICZxdW90OyVzIGNyZWF0ZSBwZ3RhYmxlIGRv bmVcbiZxdW90OywgX19mdW5jX18pOw0KIA0KQEAgLTQ3Niw4ICs0ODMsMTAgQEAgc3RhdGljIHN0 cnVjdCBpb21tdV9kb21haW4gKm10a19pb21tdV9kb21haW5fYWxsb2ModW5zaWduZWQgdHlwZSkN CiAJLyogVXBkYXRlIG91ciBzdXBwb3J0IHBhZ2Ugc2l6ZXMgYml0bWFwICovDQogCWRvbS0mZ3Q7 ZG9tYWluLnBnc2l6ZV9iaXRtYXAgPSBwZ3RhYmxlLSZndDtjZmcucGdzaXplX2JpdG1hcDsNCiAN Ci0JZG9tLSZndDtkb21haW4uZ2VvbWV0cnkuYXBlcnR1cmVfc3RhcnQgPSAwOw0KLQlkb20tJmd0 O2RvbWFpbi5nZW9tZXRyeS5hcGVydHVyZV9lbmQgPSBETUFfQklUX01BU0soMzIpOw0KKwlkb20t Jmd0O2RvbWFpbi5nZW9tZXRyeS5hcGVydHVyZV9zdGFydCA9DQorCQkJCXBndGFibGUtJmd0O2Rv bV9yZWdpb24tJmd0O21pbl9pb3ZhOw0KKwlkb20tJmd0O2RvbWFpbi5nZW9tZXRyeS5hcGVydHVy ZV9lbmQgPQ0KKwkJCQlwZ3RhYmxlLSZndDtkb21fcmVnaW9uLSZndDttYXhfaW92YTsNCiAJZG9t LSZndDtkb21haW4uZ2VvbWV0cnkuZm9yY2VfYXBlcnR1cmUgPSB0cnVlOw0KIAlsaXN0X2FkZF90 YWlsKCZhbXA7ZG9tLSZndDtsaXN0LCAmYW1wO3BndGFibGUtJmd0O200dV9kb21fdjIpOw0KIA0K QEAgLTk1OCw2ICs5NjcsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IG10a19pb21tdV9wbGF0X2Rh dGEgbXQyNzEyX2RhdGEgPSB7DQogCS5oYXNfYmNsayAgICAgPSB0cnVlLA0KIAkuaGFzX3ZsZF9w YV9ybmcgICA9IHRydWUsDQogCS5kb21fY250ID0gMSwNCisJLmRvbV9kYXRhID0gJmFtcDtzaW5n bGVfZG9tLA0KIAkubGFyYmlkX3JlbWFwWzBdID0gezAsIDEsIDIsIDMsIDQsIDUsIDYsIDcsIDgs IDl9LA0KIAkuaW52X3NlbF9yZWcgPSBSRUdfTU1VX0lOVl9TRUwsDQogfTsNCkBAIC05NjUsNiAr OTc1LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBtdGtfaW9tbXVfcGxhdF9kYXRhIG10MjcxMl9k YXRhID0gew0KIHN0YXRpYyBjb25zdCBzdHJ1Y3QgbXRrX2lvbW11X3BsYXRfZGF0YSBtdDY3Nzlf ZGF0YSA9IHsNCiAJLm00dV9wbGF0ID0gTTRVX01UNjc3OSwNCiAJLmRvbV9jbnQgPSAxLA0KKwku ZG9tX2RhdGEgPSAmYW1wO3NpbmdsZV9kb20sDQogCS5sYXJiaWRfcmVtYXBbMF0gPSB7MCwgMSwg MiwgMywgNSwgNywgMTAsIDl9LA0KIAkvKiB2cDZhLCB2cDZiLCBtZGxhL2NvcmUyLCBtZGxhL2Vk bWMqLw0KIAkubGFyYmlkX3JlbWFwWzFdID0gezIsIDAsIDMsIDF9LA0KQEAgLTk4MSw2ICs5OTIs NyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IG10a19pb21tdV9wbGF0X2RhdGEgbXQ4MTczX2RhdGEg PSB7DQogCS5oYXNfYmNsayAgICAgPSB0cnVlLA0KIAkucmVzZXRfYXhpICAgID0gdHJ1ZSwNCiAJ LmRvbV9jbnQgPSAxLA0KKwkuZG9tX2RhdGEgPSAmYW1wO3NpbmdsZV9kb20sDQogCS5sYXJiaWRf cmVtYXBbMF0gPSB7MCwgMSwgMiwgMywgNCwgNX0sIC8qIExpbmVhciBtYXBwaW5nLiAqLw0KIAku aW52X3NlbF9yZWcgPSBSRUdfTU1VX0lOVl9TRUwsDQogfTsNCkBAIC05ODksNiArMTAwMSw3IEBA IHN0YXRpYyBjb25zdCBzdHJ1Y3QgbXRrX2lvbW11X3BsYXRfZGF0YSBtdDgxODNfZGF0YSA9IHsN CiAJLm00dV9wbGF0ICAgICA9IE00VV9NVDgxODMsDQogCS5yZXNldF9heGkgICAgPSB0cnVlLA0K IAkuZG9tX2NudCA9IDEsDQorCS5kb21fZGF0YSA9ICZhbXA7c2luZ2xlX2RvbSwNCiAJLmxhcmJp ZF9yZW1hcFswXSA9IHswLCA0LCA1LCA2LCA3LCAyLCAzLCAxfSwNCiAJLmludl9zZWxfcmVnID0g UkVHX01NVV9JTlZfU0VMLA0KIH07DQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9pb21tdS9tdGtfaW9t bXUuaCBiL2RyaXZlcnMvaW9tbXUvbXRrX2lvbW11LmgNCmluZGV4IDY4MDFmODQ5NmZjYy4uZDhh ZWYwZDU3YjFhIDEwMDY0NA0KLS0tIGEvZHJpdmVycy9pb21tdS9tdGtfaW9tbXUuaA0KKysrIGIv ZHJpdmVycy9pb21tdS9tdGtfaW9tbXUuaA0KQEAgLTM2LDYgKzM2LDIyIEBAIGVudW0gbXRrX2lv bW11X3BsYXQgew0KIAlNNFVfTVQ4MTgzLA0KIH07DQogDQorLyoNCisgKiByZXNlcnZlZCBJT1ZB IERvbWFpbiBmb3IgSU9NTVUgdXNlcnMgb2YgSFcgbGltaXRhdGlvbi4NCisgKi8NCisNCisvKg0K KyAqIHN0cnVjdCBtdGtfZG9tYWluX2RhdGE6CWRvbWFpbiBjb25maWd1cmF0aW9uDQorICogQG1p bl9pb3ZhOglTdGFydCBhZGRyZXNzIG9mIGlvdmENCisgKiBAbWF4X2lvdmE6CUVuZCBhZGRyZXNz IG9mIGlvdmENCisgKiBOb3RlOiBvbmUgdXNlciBjYW4gb25seSBiZWxvbmcgdG8gb25lIGRvbWFp bg0KKyAqLw0KKw0KK3N0cnVjdCBtdGtfZG9tYWluX2RhdGEgew0KKwlkbWFfYWRkcl90CW1pbl9p b3ZhOw0KKwlkbWFfYWRkcl90CW1heF9pb3ZhOw0KK307DQorDQogc3RydWN0IG10a19pb21tdV9w bGF0X2RhdGEgew0KIAllbnVtIG10a19pb21tdV9wbGF0IG00dV9wbGF0Ow0KIAlib29sICAgICAg ICAgICAgICAgIGhhc180Z2JfbW9kZTsNCkBAIC01MSw2ICs2Nyw3IEBAIHN0cnVjdCBtdGtfaW9t bXVfcGxhdF9kYXRhIHsNCiAJdTMyICAgICAgICAgICAgICAgICBtNHUxX21hc2s7DQogCXUzMgkJ ICAgIGRvbV9jbnQ7DQogCXVuc2lnbmVkIGNoYXIgICAgICAgbGFyYmlkX3JlbWFwWzJdW01US19M QVJCX05SX01BWF07DQorCWNvbnN0IHN0cnVjdCBtdGtfZG9tYWluX2RhdGEJKmRvbV9kYXRhOw0K IH07DQogDQogc3RydWN0IG10a19pb21tdV9kb21haW47DQotLSANCjIuMTguMA0KDQo8L3ByZT48 IS0tdHlwZTp0ZXh0LS0+PCEtLXstLT48cHJlPioqKioqKioqKioqKiogTUVESUFURUsgQ29uZmlk ZW50aWFsaXR5IE5vdGljZQ0KICoqKioqKioqKioqKioqKioqKioqDQpUaGUgaW5mb3JtYXRpb24g Y29udGFpbmVkIGluIHRoaXMgZS1tYWlsIG1lc3NhZ2UgKGluY2x1ZGluZyBhbnkgDQphdHRhY2ht ZW50cykgbWF5IGJlIGNvbmZpZGVudGlhbCwgcHJvcHJpZXRhcnksIHByaXZpbGVnZWQsIG9yIG90 aGVyd2lzZQ0KZXhlbXB0IGZyb20gZGlzY2xvc3VyZSB1bmRlciBhcHBsaWNhYmxlIGxhd3MuIEl0 IGlzIGludGVuZGVkIHRvIGJlIA0KY29udmV5ZWQgb25seSB0byB0aGUgZGVzaWduYXRlZCByZWNp cGllbnQocykuIEFueSB1c2UsIGRpc3NlbWluYXRpb24sIA0KZGlzdHJpYnV0aW9uLCBwcmludGlu ZywgcmV0YWluaW5nIG9yIGNvcHlpbmcgb2YgdGhpcyBlLW1haWwgKGluY2x1ZGluZyBpdHMgDQph dHRhY2htZW50cykgYnkgdW5pbnRlbmRlZCByZWNpcGllbnQocykgaXMgc3RyaWN0bHkgcHJvaGli aXRlZCBhbmQgbWF5IA0KYmUgdW5sYXdmdWwuIElmIHlvdSBhcmUgbm90IGFuIGludGVuZGVkIHJl Y2lwaWVudCBvZiB0aGlzIGUtbWFpbCwgb3IgYmVsaWV2ZQ0KIA0KdGhhdCB5b3UgaGF2ZSByZWNl aXZlZCB0aGlzIGUtbWFpbCBpbiBlcnJvciwgcGxlYXNlIG5vdGlmeSB0aGUgc2VuZGVyIA0KaW1t ZWRpYXRlbHkgKGJ5IHJlcGx5aW5nIHRvIHRoaXMgZS1tYWlsKSwgZGVsZXRlIGFueSBhbmQgYWxs IGNvcGllcyBvZiANCnRoaXMgZS1tYWlsIChpbmNsdWRpbmcgYW55IGF0dGFjaG1lbnRzKSBmcm9t IHlvdXIgc3lzdGVtLCBhbmQgZG8gbm90DQpkaXNjbG9zZSB0aGUgY29udGVudCBvZiB0aGlzIGUt bWFpbCB0byBhbnkgb3RoZXIgcGVyc29uLiBUaGFuayB5b3UhDQo8L3ByZT48IS0tfS0tPg== --__=_Part_Boundary_007_423409222.500899896 Content-Type: text/plain Content-Transfer-Encoding: base64 QWRkIG10a19kb21haW5fZGF0YSBzdHJ1Y3R1cmUgdG8gZGVzY3JpYmUgaG93IG1hbnkgaW92YSBy ZWdpb25zDQp0aGVyZSBhcmUgYW5kIHRoZSByZWxldmFudCB0aGUgc3RhcnQgYW5kIGVuZCBhZGRy ZXNzIG9mIGVhY2gNCmlvdmEgcmVnaW9uLiBUaGUgbnVtYmVyIG9mIGlvdmEgcmVnaW9uIGlzIGVx dWFsIHRvIHRoZSBudW1iZXINCm9mIG10a19pb21tdV9kb21haW4uIFNvIHdlIHdpbGwgdXNlIG10 a19kb21haW5fZGF0YSB0byBpbml0aWFsaXplDQp0aGUgc3RhcnQgYW5kIGVuZCBpb3ZhIG9mIG10 a19pb21tdV9kb21haW4uDQoNClNpZ25lZC1vZmYtYnk6IENoYW8gSGFvIDxjaGFvLmhhb0BtZWRp YXRlay5jb20+DQotLS0NCiBkcml2ZXJzL2lvbW11L210a19pb21tdS5jIHwgMTcgKysrKysrKysr KysrKysrLS0NCiBkcml2ZXJzL2lvbW11L210a19pb21tdS5oIHwgMTcgKysrKysrKysrKysrKysr KysNCiAyIGZpbGVzIGNoYW5nZWQsIDMyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pDQoN CmRpZmYgLS1naXQgYS9kcml2ZXJzL2lvbW11L210a19pb21tdS5jIGIvZHJpdmVycy9pb21tdS9t dGtfaW9tbXUuYw0KaW5kZXggMGVhY2JjNDczMzc0Li44ZDY4YTFhZjhlZDUgMTAwNjQ0DQotLS0g YS9kcml2ZXJzL2lvbW11L210a19pb21tdS5jDQorKysgYi9kcml2ZXJzL2lvbW11L210a19pb21t dS5jDQpAQCAtMTI4LDYgKzEyOCwxMiBAQCBzdHJ1Y3QgbXRrX2lvbW11X3BndGFibGUgew0KIAlz dHJ1Y3QgaW9fcGd0YWJsZV9vcHMJKmlvcDsNCiAJc3RydWN0IGRldmljZQkJKmluaXRfZGV2Ow0K IAlzdHJ1Y3QgbGlzdF9oZWFkCW00dV9kb21fdjI7DQorCWNvbnN0IHN0cnVjdCBtdGtfZG9tYWlu X2RhdGEJKmRvbV9yZWdpb247DQorfTsNCisNCitjb25zdCBzdHJ1Y3QgbXRrX2RvbWFpbl9kYXRh IHNpbmdsZV9kb20gPSB7DQorCS5taW5faW92YSA9IDB4MCwNCisJLm1heF9pb3ZhID0gRE1BX0JJ VF9NQVNLKDMyKQ0KIH07DQogDQogc3RhdGljIHN0cnVjdCBtdGtfaW9tbXVfcGd0YWJsZSAqc2hh cmVfcGd0YWJsZTsNCkBAIC00MDYsNiArNDEyLDcgQEAgc3RhdGljIHN0cnVjdCBtdGtfaW9tbXVf cGd0YWJsZSAqY3JlYXRlX3BndGFibGUoc3RydWN0IG10a19pb21tdV9kYXRhICpkYXRhKQ0KIAkJ ZGV2X2VycihkYXRhLT5kZXYsICJGYWlsZWQgdG8gYWxsb2MgaW8gcGd0YWJsZVxuIik7DQogCQly ZXR1cm4gRVJSX1BUUigtRUlOVkFMKTsNCiAJfQ0KKwlwZ3RhYmxlLT5kb21fcmVnaW9uID0gZGF0 YS0+cGxhdF9kYXRhLT5kb21fZGF0YTsNCiANCiAJZGV2X2luZm8oZGF0YS0+ZGV2LCAiJXMgY3Jl YXRlIHBndGFibGUgZG9uZVxuIiwgX19mdW5jX18pOw0KIA0KQEAgLTQ3Niw4ICs0ODMsMTAgQEAg c3RhdGljIHN0cnVjdCBpb21tdV9kb21haW4gKm10a19pb21tdV9kb21haW5fYWxsb2ModW5zaWdu ZWQgdHlwZSkNCiAJLyogVXBkYXRlIG91ciBzdXBwb3J0IHBhZ2Ugc2l6ZXMgYml0bWFwICovDQog CWRvbS0+ZG9tYWluLnBnc2l6ZV9iaXRtYXAgPSBwZ3RhYmxlLT5jZmcucGdzaXplX2JpdG1hcDsN CiANCi0JZG9tLT5kb21haW4uZ2VvbWV0cnkuYXBlcnR1cmVfc3RhcnQgPSAwOw0KLQlkb20tPmRv bWFpbi5nZW9tZXRyeS5hcGVydHVyZV9lbmQgPSBETUFfQklUX01BU0soMzIpOw0KKwlkb20tPmRv bWFpbi5nZW9tZXRyeS5hcGVydHVyZV9zdGFydCA9DQorCQkJCXBndGFibGUtPmRvbV9yZWdpb24t Pm1pbl9pb3ZhOw0KKwlkb20tPmRvbWFpbi5nZW9tZXRyeS5hcGVydHVyZV9lbmQgPQ0KKwkJCQlw Z3RhYmxlLT5kb21fcmVnaW9uLT5tYXhfaW92YTsNCiAJZG9tLT5kb21haW4uZ2VvbWV0cnkuZm9y Y2VfYXBlcnR1cmUgPSB0cnVlOw0KIAlsaXN0X2FkZF90YWlsKCZkb20tPmxpc3QsICZwZ3RhYmxl LT5tNHVfZG9tX3YyKTsNCiANCkBAIC05NTgsNiArOTY3LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVj dCBtdGtfaW9tbXVfcGxhdF9kYXRhIG10MjcxMl9kYXRhID0gew0KIAkuaGFzX2JjbGsgICAgID0g dHJ1ZSwNCiAJLmhhc192bGRfcGFfcm5nICAgPSB0cnVlLA0KIAkuZG9tX2NudCA9IDEsDQorCS5k b21fZGF0YSA9ICZzaW5nbGVfZG9tLA0KIAkubGFyYmlkX3JlbWFwWzBdID0gezAsIDEsIDIsIDMs IDQsIDUsIDYsIDcsIDgsIDl9LA0KIAkuaW52X3NlbF9yZWcgPSBSRUdfTU1VX0lOVl9TRUwsDQog fTsNCkBAIC05NjUsNiArOTc1LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBtdGtfaW9tbXVfcGxh dF9kYXRhIG10MjcxMl9kYXRhID0gew0KIHN0YXRpYyBjb25zdCBzdHJ1Y3QgbXRrX2lvbW11X3Bs YXRfZGF0YSBtdDY3NzlfZGF0YSA9IHsNCiAJLm00dV9wbGF0ID0gTTRVX01UNjc3OSwNCiAJLmRv bV9jbnQgPSAxLA0KKwkuZG9tX2RhdGEgPSAmc2luZ2xlX2RvbSwNCiAJLmxhcmJpZF9yZW1hcFsw XSA9IHswLCAxLCAyLCAzLCA1LCA3LCAxMCwgOX0sDQogCS8qIHZwNmEsIHZwNmIsIG1kbGEvY29y ZTIsIG1kbGEvZWRtYyovDQogCS5sYXJiaWRfcmVtYXBbMV0gPSB7MiwgMCwgMywgMX0sDQpAQCAt OTgxLDYgKzk5Miw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgbXRrX2lvbW11X3BsYXRfZGF0YSBt dDgxNzNfZGF0YSA9IHsNCiAJLmhhc19iY2xrICAgICA9IHRydWUsDQogCS5yZXNldF9heGkgICAg PSB0cnVlLA0KIAkuZG9tX2NudCA9IDEsDQorCS5kb21fZGF0YSA9ICZzaW5nbGVfZG9tLA0KIAku bGFyYmlkX3JlbWFwWzBdID0gezAsIDEsIDIsIDMsIDQsIDV9LCAvKiBMaW5lYXIgbWFwcGluZy4g Ki8NCiAJLmludl9zZWxfcmVnID0gUkVHX01NVV9JTlZfU0VMLA0KIH07DQpAQCAtOTg5LDYgKzEw MDEsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IG10a19pb21tdV9wbGF0X2RhdGEgbXQ4MTgzX2Rh dGEgPSB7DQogCS5tNHVfcGxhdCAgICAgPSBNNFVfTVQ4MTgzLA0KIAkucmVzZXRfYXhpICAgID0g dHJ1ZSwNCiAJLmRvbV9jbnQgPSAxLA0KKwkuZG9tX2RhdGEgPSAmc2luZ2xlX2RvbSwNCiAJLmxh cmJpZF9yZW1hcFswXSA9IHswLCA0LCA1LCA2LCA3LCAyLCAzLCAxfSwNCiAJLmludl9zZWxfcmVn ID0gUkVHX01NVV9JTlZfU0VMLA0KIH07DQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9pb21tdS9tdGtf aW9tbXUuaCBiL2RyaXZlcnMvaW9tbXUvbXRrX2lvbW11LmgNCmluZGV4IDY4MDFmODQ5NmZjYy4u ZDhhZWYwZDU3YjFhIDEwMDY0NA0KLS0tIGEvZHJpdmVycy9pb21tdS9tdGtfaW9tbXUuaA0KKysr IGIvZHJpdmVycy9pb21tdS9tdGtfaW9tbXUuaA0KQEAgLTM2LDYgKzM2LDIyIEBAIGVudW0gbXRr X2lvbW11X3BsYXQgew0KIAlNNFVfTVQ4MTgzLA0KIH07DQogDQorLyoNCisgKiByZXNlcnZlZCBJ T1ZBIERvbWFpbiBmb3IgSU9NTVUgdXNlcnMgb2YgSFcgbGltaXRhdGlvbi4NCisgKi8NCisNCisv Kg0KKyAqIHN0cnVjdCBtdGtfZG9tYWluX2RhdGE6CWRvbWFpbiBjb25maWd1cmF0aW9uDQorICog QG1pbl9pb3ZhOglTdGFydCBhZGRyZXNzIG9mIGlvdmENCisgKiBAbWF4X2lvdmE6CUVuZCBhZGRy ZXNzIG9mIGlvdmENCisgKiBOb3RlOiBvbmUgdXNlciBjYW4gb25seSBiZWxvbmcgdG8gb25lIGRv bWFpbg0KKyAqLw0KKw0KK3N0cnVjdCBtdGtfZG9tYWluX2RhdGEgew0KKwlkbWFfYWRkcl90CW1p bl9pb3ZhOw0KKwlkbWFfYWRkcl90CW1heF9pb3ZhOw0KK307DQorDQogc3RydWN0IG10a19pb21t dV9wbGF0X2RhdGEgew0KIAllbnVtIG10a19pb21tdV9wbGF0IG00dV9wbGF0Ow0KIAlib29sICAg ICAgICAgICAgICAgIGhhc180Z2JfbW9kZTsNCkBAIC01MSw2ICs2Nyw3IEBAIHN0cnVjdCBtdGtf aW9tbXVfcGxhdF9kYXRhIHsNCiAJdTMyICAgICAgICAgICAgICAgICBtNHUxX21hc2s7DQogCXUz MgkJICAgIGRvbV9jbnQ7DQogCXVuc2lnbmVkIGNoYXIgICAgICAgbGFyYmlkX3JlbWFwWzJdW01U S19MQVJCX05SX01BWF07DQorCWNvbnN0IHN0cnVjdCBtdGtfZG9tYWluX2RhdGEJKmRvbV9kYXRh Ow0KIH07DQogDQogc3RydWN0IG10a19pb21tdV9kb21haW47DQotLSANCjIuMTguMA0K --__=_Part_Boundary_007_423409222.500899896-- --===============6763902467010233689== 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 --===============6763902467010233689==--