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 46CCCCA9EC0 for ; Mon, 28 Oct 2019 11:22:02 +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 21AAC2086D for ; Mon, 28 Oct 2019 11:22:02 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 21AAC2086D 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 F065A1144; 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 5BF1FB0B for ; Mon, 28 Oct 2019 08:29:17 +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 D15CC42D for ; Mon, 28 Oct 2019 08:29:15 +0000 (UTC) X-UUID: cd10620050c344e9b56235f01c8ba8cd-20191028 X-UUID: cd10620050c344e9b56235f01c8ba8cd-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 705313963; Mon, 28 Oct 2019 16:29:13 +0800 Received: from mtkcas08.mediatek.inc (172.21.101.126) by mtkmbs07n1.mediatek.inc (172.21.101.16) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Mon, 28 Oct 2019 16:29:09 +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:29:08 +0800 From: Chao Hao To: Joerg Roedel , Rob Herring , Matthias Brugger Subject: [PATCH 12/13] iommu/mediatek: Change single domain to multiple domains Date: Mon, 28 Oct 2019 16:28:19 +0800 Message-ID: <20191028082820.20221-13-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="===============2466571264555282472==" Sender: iommu-bounces@lists.linux-foundation.org Errors-To: iommu-bounces@lists.linux-foundation.org --===============2466571264555282472== Content-Type: multipart/alternative; boundary="__=_Part_Boundary_001_1310900475.2104888994" --__=_Part_Boundary_001_1310900475.2104888994 Content-Type: text/html Content-Transfer-Encoding: base64 PHByZT4NCkJhc2VkIG9uIG9uZSBtdGtfaW9tbXVfZG9tYWluLCB0aGlzIHBhdGNoIHN1cHBvcnRz IG11bHRpcGxlDQptdGtfaW9tbXVfZG9tYWlucyB0byByZWFsaXplIGRpZmZlcmVudCBpb3ZhIHJl Z2lvbnMuDQoNCkV2ZXJ5IG1vZHVsZSBoYXMgb25lIHNtaV9sYXJiIHBvcnQsIHNvIHdlIGNhbiBj cmVhdGUgZGlmZmVyZW50DQptdGtfaW9tbXVfZG9tYWlucyBieSBzbWlfbGFyYiBwb3J0IGRlZmlu ZS4gU28gd2Ugd2lsbCBhZGQgcG9ydF9tYXNrDQp2YXJpYWJsZSB0byBtdGtfZG9tYWluX2RhdGEs IGlmIHNvbWUgbW9kdWxlcyBuZWVkIHNwZWNpYWwgaW92YSByZWdpb25zLA0KdGhleSBjYW4gd3Jp dGUgc21pX2xhcmIgcG9ydCB3aGljaCBjb3JyZXNwb25kaW5nIHRvIHRoZW1zZWx2ZXMgdG8NCnBv c3RfbWFzayB2YXJpYWJsZSBhbmQgc3BlY2lmeSB0aGUgc3RhcnQgYW5kIGVuZCBhZGRyZXNzIG9m IGlvdmEgcmVnaW9uLg0KVGhlIGZvcm0gb2YgcG9ydF9tYXNrIGNhbiB1c2UgJnF1b3Q7TVRLX000 VV9JRChsYXJiLCBwb3J0KSZxdW90OywgbGFyYiBhbmQgcG9ydCBjYW4NCnJlZmVyIHRvICZxdW90 O210eHh4eC1sYXJiLXBvcnQuaChleDogbXQ2Nzc5LWxhcmItcG9ydC5oKSZxdW90OyBmaWxlLg0K DQpUaGUgYXJjaGl0ZWN0dXJlIGRpYWdyYW0gaXMgYXMgYmVsb3c6DQoNCgkJCQltdGtfaW9tbXVf cGd0YWJsZQ0KCQkJCQl8DQoJCQkJbXRrX2RvbWFpbl9kYXRhDQoJCQkJCXwNCgkJLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KCQl8CQkJfAkJCXwNCglt dGtfaW9tbXVfZG9tYWluMQltdGtfaW9tbXVfZG9tYWluMgltdGtfaW9tbXVfZG9tYWluMw0KDQpT aWduZWQtb2ZmLWJ5OiBDaGFvIEhhbyAmbHQ7Y2hhby5oYW9AbWVkaWF0ZWsuY29tJmd0Ow0KLS0t DQogZHJpdmVycy9pb21tdS9tdGtfaW9tbXUuYyB8IDQ4ICsrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKy0tLS0tLQ0KIGRyaXZlcnMvaW9tbXUvbXRrX2lvbW11LmggfCAxMSArKysrKysr Ky0NCiAyIGZpbGVzIGNoYW5nZWQsIDUxIGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pDQoN CmRpZmYgLS1naXQgYS9kcml2ZXJzL2lvbW11L210a19pb21tdS5jIGIvZHJpdmVycy9pb21tdS9t dGtfaW9tbXUuYw0KaW5kZXggYzBjZDdkYTcxYzJjLi5jMzNlYTU1YTE4NDEgMTAwNjQ0DQotLS0g YS9kcml2ZXJzL2lvbW11L210a19pb21tdS5jDQorKysgYi9kcml2ZXJzL2lvbW11L210a19pb21t dS5jDQpAQCAtMTMwLDYgKzEzMCw4IEBAIHN0cnVjdCBtdGtfaW9tbXVfcGd0YWJsZSB7DQogCXN0 cnVjdCBpb19wZ3RhYmxlX29wcwkqaW9wOw0KIAlzdHJ1Y3QgZGV2aWNlCQkqaW5pdF9kZXY7DQog CXN0cnVjdCBsaXN0X2hlYWQJbTR1X2RvbV92MjsNCisJc3BpbmxvY2tfdAkJZG9tYWluX2xvY2s7 IC8qIGxvY2sgZm9yIGRvbWFpbiBjb3VudCAqLw0KKwl1MzIJCQlkb21haW5fY291bnQ7DQogCWNv bnN0IHN0cnVjdCBtdGtfZG9tYWluX2RhdGEJKmRvbV9yZWdpb247DQogfTsNCiANCkBAIC0xNzIs MTEgKzE3NCwxNSBAQCBzdGF0aWMgTElTVF9IRUFEKG00dWxpc3QpOwkvKiBMaXN0IGFsbCB0aGUg TTRVIEhXcyAqLw0KIHN0YXRpYyB1MzIgZ2V0X2RvbWFpbl9pZChzdHJ1Y3QgbXRrX2lvbW11X2Rh dGEgKmRhdGEsIHUzMiBwb3J0aWQpDQogew0KIAl1MzIgZG9tX2lkID0gMDsNCi0JaW50IGk7DQor CWNvbnN0IHN0cnVjdCBtdGtfZG9tYWluX2RhdGEgKm10a19kb21fYXJyYXkgPSBkYXRhLSZndDtw bGF0X2RhdGEtJmd0O2RvbV9kYXRhOw0KKwlpbnQgaSwgajsNCiANCi0JLyogb25seSBzdXBwb3J0 IG9uZSBtdGtfaW9tbXVfZG9tYWluIGN1cnJlbnRseShkb21fY250ID0gMSkgKi8NCi0JZm9yIChp ID0gMDsgaSAmbHQ7IGRhdGEtJmd0O3BsYXRfZGF0YS0mZ3Q7ZG9tX2NudDsgaSsrKQ0KLQkJcmV0 dXJuIGk7DQorCWZvciAoaSA9IDA7IGkgJmx0OyBkYXRhLSZndDtwbGF0X2RhdGEtJmd0O2RvbV9j bnQ7IGkrKykgew0KKwkJZm9yIChqID0gMDsgaiAmbHQ7IE1US19NQVhfUE9SVF9OVU07IGorKykg ew0KKwkJCWlmIChwb3J0aWQgPT0gbXRrX2RvbV9hcnJheVtpXS5wb3J0X21hc2tbal0pDQorCQkJ CXJldHVybiBpOw0KKwkJfQ0KKwl9DQogDQogCXJldHVybiBkb21faWQ7DQogfQ0KQEAgLTQxNiw2 ICs0MjIsOCBAQCBzdGF0aWMgc3RydWN0IG10a19pb21tdV9wZ3RhYmxlICpjcmVhdGVfcGd0YWJs ZShzdHJ1Y3QgbXRrX2lvbW11X2RhdGEgKmRhdGEpDQogCWlmICghcGd0YWJsZSkNCiAJCXJldHVy biBFUlJfUFRSKC1FTk9NRU0pOw0KIA0KKwlzcGluX2xvY2tfaW5pdCgmYW1wO3BndGFibGUtJmd0 O2RvbWFpbl9sb2NrKTsNCisJcGd0YWJsZS0mZ3Q7ZG9tYWluX2NvdW50ID0gMDsNCiAJSU5JVF9M SVNUX0hFQUQoJmFtcDtwZ3RhYmxlLSZndDttNHVfZG9tX3YyKTsNCiANCiAJcGd0YWJsZS0mZ3Q7 Y2ZnID0gKHN0cnVjdCBpb19wZ3RhYmxlX2NmZykgew0KQEAgLTQ3Niw2ICs0ODQsNyBAQCBzdGF0 aWMgc3RydWN0IGlvbW11X2RvbWFpbiAqbXRrX2lvbW11X2RvbWFpbl9hbGxvYyh1bnNpZ25lZCB0 eXBlKQ0KIAlzdHJ1Y3QgbXRrX2lvbW11X2RhdGEgKmRhdGE7DQogCXN0cnVjdCBtdGtfaW9tbXVf ZG9tYWluICpkb207DQogCXN0cnVjdCBkZXZpY2UgKmRldjsNCisJdW5zaWduZWQgbG9uZyBmbGFn czsNCiANCiAJaWYgKHR5cGUgIT0gSU9NTVVfRE9NQUlOX0RNQSkNCiAJCXJldHVybiBOVUxMOw0K QEAgLTUwMywxOCArNTEyLDM0IEBAIHN0YXRpYyBzdHJ1Y3QgaW9tbXVfZG9tYWluICptdGtfaW9t bXVfZG9tYWluX2FsbG9jKHVuc2lnbmVkIHR5cGUpDQogCWlmIChkb20tJmd0O2lkICZndDs9IGRh dGEtJmd0O3BsYXRfZGF0YS0mZ3Q7ZG9tX2NudCkNCiAJCWdvdG8gIHB1dF9kbWFfY29va2llOw0K IA0KKwlzcGluX2xvY2tfaXJxc2F2ZSgmYW1wO3BndGFibGUtJmd0O2RvbWFpbl9sb2NrLCBmbGFn cyk7DQorCWlmIChwZ3RhYmxlLSZndDtkb21haW5fY291bnQgJmd0Oz0gZGF0YS0mZ3Q7cGxhdF9k YXRhLSZndDtkb21fY250KSB7DQorCQlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZhbXA7cGd0YWJs ZS0mZ3Q7ZG9tYWluX2xvY2ssIGZsYWdzKTsNCisJCWRldl9lcnIoZGV2LCAmcXVvdDslcywgdG9v IG1hbnkgZG9tYWluLCBjb3VudD0ldVxuJnF1b3Q7LA0KKwkJCV9fZnVuY19fLCBwZ3RhYmxlLSZn dDtkb21haW5fY291bnQpOw0KKwkJZ290byAgcHV0X2RtYV9jb29raWU7DQorCX0NCisJcGd0YWJs ZS0mZ3Q7ZG9tYWluX2NvdW50Kys7DQorCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmFtcDtwZ3Rh YmxlLSZndDtkb21haW5fbG9jaywgZmxhZ3MpOw0KIAlkb20tJmd0O2RhdGEgPSBkYXRhOw0KIAlk b20tJmd0O2dyb3VwID0gZGF0YS0mZ3Q7bTR1X2dyb3VwOw0KKw0KIAkvKiBVcGRhdGUgb3VyIHN1 cHBvcnQgcGFnZSBzaXplcyBiaXRtYXAgKi8NCiAJZG9tLSZndDtkb21haW4ucGdzaXplX2JpdG1h cCA9IHBndGFibGUtJmd0O2NmZy5wZ3NpemVfYml0bWFwOw0KIA0KIAlkb20tJmd0O2RvbWFpbi5n ZW9tZXRyeS5hcGVydHVyZV9zdGFydCA9DQotCQkJCXBndGFibGUtJmd0O2RvbV9yZWdpb24tJmd0 O21pbl9pb3ZhOw0KKwkJCQlwZ3RhYmxlLSZndDtkb21fcmVnaW9uW2RvbS0mZ3Q7aWRdLm1pbl9p b3ZhOw0KIAlkb20tJmd0O2RvbWFpbi5nZW9tZXRyeS5hcGVydHVyZV9lbmQgPQ0KLQkJCQlwZ3Rh YmxlLSZndDtkb21fcmVnaW9uLSZndDttYXhfaW92YTsNCisJCQkJcGd0YWJsZS0mZ3Q7ZG9tX3Jl Z2lvbltkb20tJmd0O2lkXS5tYXhfaW92YTsNCiAJZG9tLSZndDtkb21haW4uZ2VvbWV0cnkuZm9y Y2VfYXBlcnR1cmUgPSB0cnVlOw0KIAlsaXN0X2FkZF90YWlsKCZhbXA7ZG9tLSZndDtsaXN0LCAm YW1wO3BndGFibGUtJmd0O200dV9kb21fdjIpOw0KIA0KKwlkZXZfaW5mbyhkZXYsICZxdW90OyVz OiBkb21faWQ6JXUsIHN0YXJ0OiVwYSwgZW5kOiVwYSwgZG9tX2NudDoldVxuJnF1b3Q7LA0KKwkJ IF9fZnVuY19fLCBkb20tJmd0O2lkLA0KKwkJICZhbXA7ZG9tLSZndDtkb21haW4uZ2VvbWV0cnku YXBlcnR1cmVfc3RhcnQsDQorCQkgJmFtcDtkb20tJmd0O2RvbWFpbi5nZW9tZXRyeS5hcGVydHVy ZV9lbmQsDQorCQkgcGd0YWJsZS0mZ3Q7ZG9tYWluX2NvdW50KTsNCisNCiAJcmV0dXJuICZhbXA7 ZG9tLSZndDtkb21haW47DQogDQogcHV0X2RtYV9jb29raWU6DQpAQCAtNTI3LDkgKzU1MiwxNyBA QCBzdGF0aWMgc3RydWN0IGlvbW11X2RvbWFpbiAqbXRrX2lvbW11X2RvbWFpbl9hbGxvYyh1bnNp Z25lZCB0eXBlKQ0KIHN0YXRpYyB2b2lkIG10a19pb21tdV9kb21haW5fZnJlZShzdHJ1Y3QgaW9t bXVfZG9tYWluICpkb21haW4pDQogew0KIAlzdHJ1Y3QgbXRrX2lvbW11X3BndGFibGUgKnBndGFi bGUgPSBtdGtfaW9tbXVfZ2V0X3BndGFibGUoKTsNCisJdW5zaWduZWQgbG9uZyBmbGFnczsNCiAN CiAJaW9tbXVfcHV0X2RtYV9jb29raWUoZG9tYWluKTsNCiAJa2ZyZWUodG9fbXRrX2RvbWFpbihk b21haW4pKTsNCisJc3Bpbl9sb2NrX2lycXNhdmUoJmFtcDtwZ3RhYmxlLSZndDtkb21haW5fbG9j aywgZmxhZ3MpOw0KKwlwZ3RhYmxlLSZndDtkb21haW5fY291bnQtLTsNCisJaWYgKHBndGFibGUt Jmd0O2RvbWFpbl9jb3VudCAmZ3Q7IDApIHsNCisJCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmFt cDtwZ3RhYmxlLSZndDtkb21haW5fbG9jaywgZmxhZ3MpOw0KKwkJcmV0dXJuOw0KKwl9DQorCXNw aW5fdW5sb2NrX2lycXJlc3RvcmUoJmFtcDtwZ3RhYmxlLSZndDtkb21haW5fbG9jaywgZmxhZ3Mp Ow0KIAlmcmVlX2lvX3BndGFibGVfb3BzKHBndGFibGUtJmd0O2lvcCk7DQogCWtmcmVlKHBndGFi bGUpOw0KIH0NCkBAIC03MDMsNiArNzM2LDcgQEAgc3RhdGljIHZvaWQgbXRrX2lvbW11X2dldF9y ZXN2X3JlZ2lvbnMoc3RydWN0IGRldmljZSAqZGV2LA0KIHsNCiAJc3RydWN0IG10a19pb21tdV9k YXRhICpkYXRhID0gZGV2X2lvbW11X2Z3c3BlY19nZXQoZGV2KS0mZ3Q7aW9tbXVfcHJpdjsNCiAJ dW5zaWduZWQgaW50IGksIHRvdGFsX2NudCA9IGRhdGEtJmd0O3BsYXRfZGF0YS0mZ3Q7cmVzdl9j bnQ7DQorCXUzMiBkb21faWQgPSBtdGtfaW9tbXVfZ2V0X2RvbWFpbl9pZChkZXYpOw0KIAljb25z dCBzdHJ1Y3QgbXRrX2lvbW11X3Jlc3ZfaW92YV9yZWdpb24gKnJlc3ZfZGF0YTsNCiAJc3RydWN0 IGlvbW11X3Jlc3ZfcmVnaW9uICpyZWdpb247DQogCXVuc2lnbmVkIGxvbmcgYmFzZSA9IDA7DQpA QCAtNzE3LDcgKzc1MSw3IEBAIHN0YXRpYyB2b2lkIG10a19pb21tdV9nZXRfcmVzdl9yZWdpb25z KHN0cnVjdCBkZXZpY2UgKmRldiwNCiAJCQliYXNlID0gKHVuc2lnbmVkIGxvbmcpcmVzdl9kYXRh W2ldLmlvdmFfYmFzZTsNCiAJCQlzaXplID0gcmVzdl9kYXRhW2ldLmlvdmFfc2l6ZTsNCiAJCX0N Ci0JCWlmICghc2l6ZSkNCisJCWlmICghc2l6ZSB8fCByZXN2X2RhdGFbaV0uZG9tX2lkICE9IGRv bV9pZCkNCiAJCQljb250aW51ZTsNCiANCiAJCXJlZ2lvbiA9IGlvbW11X2FsbG9jX3Jlc3ZfcmVn aW9uKGJhc2UsIHNpemUsIHByb3QsDQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9pb21tdS9tdGtfaW9t bXUuaCBiL2RyaXZlcnMvaW9tbXUvbXRrX2lvbW11LmgNCmluZGV4IDEwNDc2YjIzYWRlZS4uMzQ1 YzBhMGMyODgxIDEwMDY0NA0KLS0tIGEvZHJpdmVycy9pb21tdS9tdGtfaW9tbXUuaA0KKysrIGIv ZHJpdmVycy9pb21tdS9tdGtfaW9tbXUuaA0KQEAgLTM3LDYgKzM3LDcgQEAgZW51bSBtdGtfaW9t bXVfcGxhdCB7DQogfTsNCiANCiBzdHJ1Y3QgbXRrX2lvbW11X3Jlc3ZfaW92YV9yZWdpb24gew0K Kwl1MzIJCQlkb21faWQ7DQogCWRtYV9hZGRyX3QJCWlvdmFfYmFzZTsNCiAJc2l6ZV90CQkJaW92 YV9zaXplOw0KIAllbnVtIGlvbW11X3Jlc3ZfdHlwZQl0eXBlOw0KQEAgLTUwLDEyICs1MSwyMCBA QCBzdHJ1Y3QgbXRrX2lvbW11X3Jlc3ZfaW92YV9yZWdpb24gew0KICAqIHN0cnVjdCBtdGtfZG9t YWluX2RhdGE6CWRvbWFpbiBjb25maWd1cmF0aW9uDQogICogQG1pbl9pb3ZhOglTdGFydCBhZGRy ZXNzIG9mIGlvdmENCiAgKiBAbWF4X2lvdmE6CUVuZCBhZGRyZXNzIG9mIGlvdmENCi0gKiBOb3Rl OiBvbmUgdXNlciBjYW4gb25seSBiZWxvbmcgdG8gb25lIGRvbWFpbg0KKyAqIEBwb3J0X21hc2s6 CVVzZXIgY2FuIHNwZWNpZnkgbXRrX2lvbW11X2RvbWFpbiBieSBzbWkgbGFyYiBhbmQgcG9ydC4N CisgKgkJRGlmZmVyZW50IG10a19pb21tdV9kb21haW4gaGF2ZSBkaWZmZXJlbnQgaW92YSBzcGFj ZSwNCisgKgkJcG9ydF9tYXNrIGlzIG1hZGUgdXAgb2YgbGFyYl9pZCBhbmQgcG9ydF9pZC4NCisg KgkJVGhlIGZvcm1hdCBvZiBsYXJiIGFuZCBwb3J0IGNhbiByZWZlciB0byBtdHh4eHgtbGFyYi1w b3J0LmguDQorICoJCWJpdFs0OjBdID0gcG9ydF9pZCAgYml0WzExOjVdID0gbGFyYl9pZC4NCisg KiBOb3RlOiBvbmUgdXNlciBjYW4gb25seSBiZWxvbmcgdG8gb25lIGRvbWFpbiwNCisgKiB0aGUg cG9ydCBtYXNrIGlzIGluIHVuaXQgb2YgU01JIGxhcmIuDQogICovDQorI2RlZmluZSBNVEtfTUFY X1BPUlRfTlVNCTUNCiANCiBzdHJ1Y3QgbXRrX2RvbWFpbl9kYXRhIHsNCiAJZG1hX2FkZHJfdAlt aW5faW92YTsNCiAJZG1hX2FkZHJfdAltYXhfaW92YTsNCisJdTMyCQlwb3J0X21hc2tbTVRLX01B WF9QT1JUX05VTV07DQogfTsNCiANCiBzdHJ1Y3QgbXRrX2lvbW11X3BsYXRfZGF0YSB7DQotLSAN CjIuMTguMA0KDQo8L3ByZT48IS0tdHlwZTp0ZXh0LS0+PCEtLXstLT48cHJlPioqKioqKioqKioq KiogTUVESUFURUsgQ29uZmlkZW50aWFsaXR5IE5vdGljZQ0KICoqKioqKioqKioqKioqKioqKioq DQpUaGUgaW5mb3JtYXRpb24gY29udGFpbmVkIGluIHRoaXMgZS1tYWlsIG1lc3NhZ2UgKGluY2x1 ZGluZyBhbnkgDQphdHRhY2htZW50cykgbWF5IGJlIGNvbmZpZGVudGlhbCwgcHJvcHJpZXRhcnks IHByaXZpbGVnZWQsIG9yIG90aGVyd2lzZQ0KZXhlbXB0IGZyb20gZGlzY2xvc3VyZSB1bmRlciBh cHBsaWNhYmxlIGxhd3MuIEl0IGlzIGludGVuZGVkIHRvIGJlIA0KY29udmV5ZWQgb25seSB0byB0 aGUgZGVzaWduYXRlZCByZWNpcGllbnQocykuIEFueSB1c2UsIGRpc3NlbWluYXRpb24sIA0KZGlz dHJpYnV0aW9uLCBwcmludGluZywgcmV0YWluaW5nIG9yIGNvcHlpbmcgb2YgdGhpcyBlLW1haWwg KGluY2x1ZGluZyBpdHMgDQphdHRhY2htZW50cykgYnkgdW5pbnRlbmRlZCByZWNpcGllbnQocykg aXMgc3RyaWN0bHkgcHJvaGliaXRlZCBhbmQgbWF5IA0KYmUgdW5sYXdmdWwuIElmIHlvdSBhcmUg bm90IGFuIGludGVuZGVkIHJlY2lwaWVudCBvZiB0aGlzIGUtbWFpbCwgb3IgYmVsaWV2ZQ0KIA0K dGhhdCB5b3UgaGF2ZSByZWNlaXZlZCB0aGlzIGUtbWFpbCBpbiBlcnJvciwgcGxlYXNlIG5vdGlm eSB0aGUgc2VuZGVyIA0KaW1tZWRpYXRlbHkgKGJ5IHJlcGx5aW5nIHRvIHRoaXMgZS1tYWlsKSwg ZGVsZXRlIGFueSBhbmQgYWxsIGNvcGllcyBvZiANCnRoaXMgZS1tYWlsIChpbmNsdWRpbmcgYW55 IGF0dGFjaG1lbnRzKSBmcm9tIHlvdXIgc3lzdGVtLCBhbmQgZG8gbm90DQpkaXNjbG9zZSB0aGUg Y29udGVudCBvZiB0aGlzIGUtbWFpbCB0byBhbnkgb3RoZXIgcGVyc29uLiBUaGFuayB5b3UhDQo8 L3ByZT48IS0tfS0tPg== --__=_Part_Boundary_001_1310900475.2104888994 Content-Type: text/plain Content-Transfer-Encoding: base64 QmFzZWQgb24gb25lIG10a19pb21tdV9kb21haW4sIHRoaXMgcGF0Y2ggc3VwcG9ydHMgbXVsdGlw bGUNCm10a19pb21tdV9kb21haW5zIHRvIHJlYWxpemUgZGlmZmVyZW50IGlvdmEgcmVnaW9ucy4N Cg0KRXZlcnkgbW9kdWxlIGhhcyBvbmUgc21pX2xhcmIgcG9ydCwgc28gd2UgY2FuIGNyZWF0ZSBk aWZmZXJlbnQNCm10a19pb21tdV9kb21haW5zIGJ5IHNtaV9sYXJiIHBvcnQgZGVmaW5lLiBTbyB3 ZSB3aWxsIGFkZCBwb3J0X21hc2sNCnZhcmlhYmxlIHRvIG10a19kb21haW5fZGF0YSwgaWYgc29t ZSBtb2R1bGVzIG5lZWQgc3BlY2lhbCBpb3ZhIHJlZ2lvbnMsDQp0aGV5IGNhbiB3cml0ZSBzbWlf bGFyYiBwb3J0IHdoaWNoIGNvcnJlc3BvbmRpbmcgdG8gdGhlbXNlbHZlcyB0bw0KcG9zdF9tYXNr IHZhcmlhYmxlIGFuZCBzcGVjaWZ5IHRoZSBzdGFydCBhbmQgZW5kIGFkZHJlc3Mgb2YgaW92YSBy ZWdpb24uDQpUaGUgZm9ybSBvZiBwb3J0X21hc2sgY2FuIHVzZSAiTVRLX000VV9JRChsYXJiLCBw b3J0KSIsIGxhcmIgYW5kIHBvcnQgY2FuDQpyZWZlciB0byAibXR4eHh4LWxhcmItcG9ydC5oKGV4 OiBtdDY3NzktbGFyYi1wb3J0LmgpIiBmaWxlLg0KDQpUaGUgYXJjaGl0ZWN0dXJlIGRpYWdyYW0g aXMgYXMgYmVsb3c6DQoNCgkJCQltdGtfaW9tbXVfcGd0YWJsZQ0KCQkJCQl8DQoJCQkJbXRrX2Rv bWFpbl9kYXRhDQoJCQkJCXwNCgkJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQ0KCQl8CQkJfAkJCXwNCgltdGtfaW9tbXVfZG9tYWluMQltdGtfaW9tbXVf ZG9tYWluMgltdGtfaW9tbXVfZG9tYWluMw0KDQpTaWduZWQtb2ZmLWJ5OiBDaGFvIEhhbyA8Y2hh by5oYW9AbWVkaWF0ZWsuY29tPg0KLS0tDQogZHJpdmVycy9pb21tdS9tdGtfaW9tbXUuYyB8IDQ4 ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLQ0KIGRyaXZlcnMvaW9tbXUv bXRrX2lvbW11LmggfCAxMSArKysrKysrKy0NCiAyIGZpbGVzIGNoYW5nZWQsIDUxIGluc2VydGlv bnMoKyksIDggZGVsZXRpb25zKC0pDQoNCmRpZmYgLS1naXQgYS9kcml2ZXJzL2lvbW11L210a19p b21tdS5jIGIvZHJpdmVycy9pb21tdS9tdGtfaW9tbXUuYw0KaW5kZXggYzBjZDdkYTcxYzJjLi5j MzNlYTU1YTE4NDEgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL2lvbW11L210a19pb21tdS5jDQorKysg Yi9kcml2ZXJzL2lvbW11L210a19pb21tdS5jDQpAQCAtMTMwLDYgKzEzMCw4IEBAIHN0cnVjdCBt dGtfaW9tbXVfcGd0YWJsZSB7DQogCXN0cnVjdCBpb19wZ3RhYmxlX29wcwkqaW9wOw0KIAlzdHJ1 Y3QgZGV2aWNlCQkqaW5pdF9kZXY7DQogCXN0cnVjdCBsaXN0X2hlYWQJbTR1X2RvbV92MjsNCisJ c3BpbmxvY2tfdAkJZG9tYWluX2xvY2s7IC8qIGxvY2sgZm9yIGRvbWFpbiBjb3VudCAqLw0KKwl1 MzIJCQlkb21haW5fY291bnQ7DQogCWNvbnN0IHN0cnVjdCBtdGtfZG9tYWluX2RhdGEJKmRvbV9y ZWdpb247DQogfTsNCiANCkBAIC0xNzIsMTEgKzE3NCwxNSBAQCBzdGF0aWMgTElTVF9IRUFEKG00 dWxpc3QpOwkvKiBMaXN0IGFsbCB0aGUgTTRVIEhXcyAqLw0KIHN0YXRpYyB1MzIgZ2V0X2RvbWFp bl9pZChzdHJ1Y3QgbXRrX2lvbW11X2RhdGEgKmRhdGEsIHUzMiBwb3J0aWQpDQogew0KIAl1MzIg ZG9tX2lkID0gMDsNCi0JaW50IGk7DQorCWNvbnN0IHN0cnVjdCBtdGtfZG9tYWluX2RhdGEgKm10 a19kb21fYXJyYXkgPSBkYXRhLT5wbGF0X2RhdGEtPmRvbV9kYXRhOw0KKwlpbnQgaSwgajsNCiAN Ci0JLyogb25seSBzdXBwb3J0IG9uZSBtdGtfaW9tbXVfZG9tYWluIGN1cnJlbnRseShkb21fY250 ID0gMSkgKi8NCi0JZm9yIChpID0gMDsgaSA8IGRhdGEtPnBsYXRfZGF0YS0+ZG9tX2NudDsgaSsr KQ0KLQkJcmV0dXJuIGk7DQorCWZvciAoaSA9IDA7IGkgPCBkYXRhLT5wbGF0X2RhdGEtPmRvbV9j bnQ7IGkrKykgew0KKwkJZm9yIChqID0gMDsgaiA8IE1US19NQVhfUE9SVF9OVU07IGorKykgew0K KwkJCWlmIChwb3J0aWQgPT0gbXRrX2RvbV9hcnJheVtpXS5wb3J0X21hc2tbal0pDQorCQkJCXJl dHVybiBpOw0KKwkJfQ0KKwl9DQogDQogCXJldHVybiBkb21faWQ7DQogfQ0KQEAgLTQxNiw2ICs0 MjIsOCBAQCBzdGF0aWMgc3RydWN0IG10a19pb21tdV9wZ3RhYmxlICpjcmVhdGVfcGd0YWJsZShz dHJ1Y3QgbXRrX2lvbW11X2RhdGEgKmRhdGEpDQogCWlmICghcGd0YWJsZSkNCiAJCXJldHVybiBF UlJfUFRSKC1FTk9NRU0pOw0KIA0KKwlzcGluX2xvY2tfaW5pdCgmcGd0YWJsZS0+ZG9tYWluX2xv Y2spOw0KKwlwZ3RhYmxlLT5kb21haW5fY291bnQgPSAwOw0KIAlJTklUX0xJU1RfSEVBRCgmcGd0 YWJsZS0+bTR1X2RvbV92Mik7DQogDQogCXBndGFibGUtPmNmZyA9IChzdHJ1Y3QgaW9fcGd0YWJs ZV9jZmcpIHsNCkBAIC00NzYsNiArNDg0LDcgQEAgc3RhdGljIHN0cnVjdCBpb21tdV9kb21haW4g Km10a19pb21tdV9kb21haW5fYWxsb2ModW5zaWduZWQgdHlwZSkNCiAJc3RydWN0IG10a19pb21t dV9kYXRhICpkYXRhOw0KIAlzdHJ1Y3QgbXRrX2lvbW11X2RvbWFpbiAqZG9tOw0KIAlzdHJ1Y3Qg ZGV2aWNlICpkZXY7DQorCXVuc2lnbmVkIGxvbmcgZmxhZ3M7DQogDQogCWlmICh0eXBlICE9IElP TU1VX0RPTUFJTl9ETUEpDQogCQlyZXR1cm4gTlVMTDsNCkBAIC01MDMsMTggKzUxMiwzNCBAQCBz dGF0aWMgc3RydWN0IGlvbW11X2RvbWFpbiAqbXRrX2lvbW11X2RvbWFpbl9hbGxvYyh1bnNpZ25l ZCB0eXBlKQ0KIAlpZiAoZG9tLT5pZCA+PSBkYXRhLT5wbGF0X2RhdGEtPmRvbV9jbnQpDQogCQln b3RvICBwdXRfZG1hX2Nvb2tpZTsNCiANCisJc3Bpbl9sb2NrX2lycXNhdmUoJnBndGFibGUtPmRv bWFpbl9sb2NrLCBmbGFncyk7DQorCWlmIChwZ3RhYmxlLT5kb21haW5fY291bnQgPj0gZGF0YS0+ cGxhdF9kYXRhLT5kb21fY250KSB7DQorCQlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZwZ3RhYmxl LT5kb21haW5fbG9jaywgZmxhZ3MpOw0KKwkJZGV2X2VycihkZXYsICIlcywgdG9vIG1hbnkgZG9t YWluLCBjb3VudD0ldVxuIiwNCisJCQlfX2Z1bmNfXywgcGd0YWJsZS0+ZG9tYWluX2NvdW50KTsN CisJCWdvdG8gIHB1dF9kbWFfY29va2llOw0KKwl9DQorCXBndGFibGUtPmRvbWFpbl9jb3VudCsr Ow0KKwlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZwZ3RhYmxlLT5kb21haW5fbG9jaywgZmxhZ3Mp Ow0KIAlkb20tPmRhdGEgPSBkYXRhOw0KIAlkb20tPmdyb3VwID0gZGF0YS0+bTR1X2dyb3VwOw0K Kw0KIAkvKiBVcGRhdGUgb3VyIHN1cHBvcnQgcGFnZSBzaXplcyBiaXRtYXAgKi8NCiAJZG9tLT5k b21haW4ucGdzaXplX2JpdG1hcCA9IHBndGFibGUtPmNmZy5wZ3NpemVfYml0bWFwOw0KIA0KIAlk b20tPmRvbWFpbi5nZW9tZXRyeS5hcGVydHVyZV9zdGFydCA9DQotCQkJCXBndGFibGUtPmRvbV9y ZWdpb24tPm1pbl9pb3ZhOw0KKwkJCQlwZ3RhYmxlLT5kb21fcmVnaW9uW2RvbS0+aWRdLm1pbl9p b3ZhOw0KIAlkb20tPmRvbWFpbi5nZW9tZXRyeS5hcGVydHVyZV9lbmQgPQ0KLQkJCQlwZ3RhYmxl LT5kb21fcmVnaW9uLT5tYXhfaW92YTsNCisJCQkJcGd0YWJsZS0+ZG9tX3JlZ2lvbltkb20tPmlk XS5tYXhfaW92YTsNCiAJZG9tLT5kb21haW4uZ2VvbWV0cnkuZm9yY2VfYXBlcnR1cmUgPSB0cnVl Ow0KIAlsaXN0X2FkZF90YWlsKCZkb20tPmxpc3QsICZwZ3RhYmxlLT5tNHVfZG9tX3YyKTsNCiAN CisJZGV2X2luZm8oZGV2LCAiJXM6IGRvbV9pZDoldSwgc3RhcnQ6JXBhLCBlbmQ6JXBhLCBkb21f Y250OiV1XG4iLA0KKwkJIF9fZnVuY19fLCBkb20tPmlkLA0KKwkJICZkb20tPmRvbWFpbi5nZW9t ZXRyeS5hcGVydHVyZV9zdGFydCwNCisJCSAmZG9tLT5kb21haW4uZ2VvbWV0cnkuYXBlcnR1cmVf ZW5kLA0KKwkJIHBndGFibGUtPmRvbWFpbl9jb3VudCk7DQorDQogCXJldHVybiAmZG9tLT5kb21h aW47DQogDQogcHV0X2RtYV9jb29raWU6DQpAQCAtNTI3LDkgKzU1MiwxNyBAQCBzdGF0aWMgc3Ry dWN0IGlvbW11X2RvbWFpbiAqbXRrX2lvbW11X2RvbWFpbl9hbGxvYyh1bnNpZ25lZCB0eXBlKQ0K IHN0YXRpYyB2b2lkIG10a19pb21tdV9kb21haW5fZnJlZShzdHJ1Y3QgaW9tbXVfZG9tYWluICpk b21haW4pDQogew0KIAlzdHJ1Y3QgbXRrX2lvbW11X3BndGFibGUgKnBndGFibGUgPSBtdGtfaW9t bXVfZ2V0X3BndGFibGUoKTsNCisJdW5zaWduZWQgbG9uZyBmbGFnczsNCiANCiAJaW9tbXVfcHV0 X2RtYV9jb29raWUoZG9tYWluKTsNCiAJa2ZyZWUodG9fbXRrX2RvbWFpbihkb21haW4pKTsNCisJ c3Bpbl9sb2NrX2lycXNhdmUoJnBndGFibGUtPmRvbWFpbl9sb2NrLCBmbGFncyk7DQorCXBndGFi bGUtPmRvbWFpbl9jb3VudC0tOw0KKwlpZiAocGd0YWJsZS0+ZG9tYWluX2NvdW50ID4gMCkgew0K KwkJc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmcGd0YWJsZS0+ZG9tYWluX2xvY2ssIGZsYWdzKTsN CisJCXJldHVybjsNCisJfQ0KKwlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZwZ3RhYmxlLT5kb21h aW5fbG9jaywgZmxhZ3MpOw0KIAlmcmVlX2lvX3BndGFibGVfb3BzKHBndGFibGUtPmlvcCk7DQog CWtmcmVlKHBndGFibGUpOw0KIH0NCkBAIC03MDMsNiArNzM2LDcgQEAgc3RhdGljIHZvaWQgbXRr X2lvbW11X2dldF9yZXN2X3JlZ2lvbnMoc3RydWN0IGRldmljZSAqZGV2LA0KIHsNCiAJc3RydWN0 IG10a19pb21tdV9kYXRhICpkYXRhID0gZGV2X2lvbW11X2Z3c3BlY19nZXQoZGV2KS0+aW9tbXVf cHJpdjsNCiAJdW5zaWduZWQgaW50IGksIHRvdGFsX2NudCA9IGRhdGEtPnBsYXRfZGF0YS0+cmVz dl9jbnQ7DQorCXUzMiBkb21faWQgPSBtdGtfaW9tbXVfZ2V0X2RvbWFpbl9pZChkZXYpOw0KIAlj b25zdCBzdHJ1Y3QgbXRrX2lvbW11X3Jlc3ZfaW92YV9yZWdpb24gKnJlc3ZfZGF0YTsNCiAJc3Ry dWN0IGlvbW11X3Jlc3ZfcmVnaW9uICpyZWdpb247DQogCXVuc2lnbmVkIGxvbmcgYmFzZSA9IDA7 DQpAQCAtNzE3LDcgKzc1MSw3IEBAIHN0YXRpYyB2b2lkIG10a19pb21tdV9nZXRfcmVzdl9yZWdp b25zKHN0cnVjdCBkZXZpY2UgKmRldiwNCiAJCQliYXNlID0gKHVuc2lnbmVkIGxvbmcpcmVzdl9k YXRhW2ldLmlvdmFfYmFzZTsNCiAJCQlzaXplID0gcmVzdl9kYXRhW2ldLmlvdmFfc2l6ZTsNCiAJ CX0NCi0JCWlmICghc2l6ZSkNCisJCWlmICghc2l6ZSB8fCByZXN2X2RhdGFbaV0uZG9tX2lkICE9 IGRvbV9pZCkNCiAJCQljb250aW51ZTsNCiANCiAJCXJlZ2lvbiA9IGlvbW11X2FsbG9jX3Jlc3Zf cmVnaW9uKGJhc2UsIHNpemUsIHByb3QsDQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9pb21tdS9tdGtf aW9tbXUuaCBiL2RyaXZlcnMvaW9tbXUvbXRrX2lvbW11LmgNCmluZGV4IDEwNDc2YjIzYWRlZS4u MzQ1YzBhMGMyODgxIDEwMDY0NA0KLS0tIGEvZHJpdmVycy9pb21tdS9tdGtfaW9tbXUuaA0KKysr IGIvZHJpdmVycy9pb21tdS9tdGtfaW9tbXUuaA0KQEAgLTM3LDYgKzM3LDcgQEAgZW51bSBtdGtf aW9tbXVfcGxhdCB7DQogfTsNCiANCiBzdHJ1Y3QgbXRrX2lvbW11X3Jlc3ZfaW92YV9yZWdpb24g ew0KKwl1MzIJCQlkb21faWQ7DQogCWRtYV9hZGRyX3QJCWlvdmFfYmFzZTsNCiAJc2l6ZV90CQkJ aW92YV9zaXplOw0KIAllbnVtIGlvbW11X3Jlc3ZfdHlwZQl0eXBlOw0KQEAgLTUwLDEyICs1MSwy MCBAQCBzdHJ1Y3QgbXRrX2lvbW11X3Jlc3ZfaW92YV9yZWdpb24gew0KICAqIHN0cnVjdCBtdGtf ZG9tYWluX2RhdGE6CWRvbWFpbiBjb25maWd1cmF0aW9uDQogICogQG1pbl9pb3ZhOglTdGFydCBh ZGRyZXNzIG9mIGlvdmENCiAgKiBAbWF4X2lvdmE6CUVuZCBhZGRyZXNzIG9mIGlvdmENCi0gKiBO b3RlOiBvbmUgdXNlciBjYW4gb25seSBiZWxvbmcgdG8gb25lIGRvbWFpbg0KKyAqIEBwb3J0X21h c2s6CVVzZXIgY2FuIHNwZWNpZnkgbXRrX2lvbW11X2RvbWFpbiBieSBzbWkgbGFyYiBhbmQgcG9y dC4NCisgKgkJRGlmZmVyZW50IG10a19pb21tdV9kb21haW4gaGF2ZSBkaWZmZXJlbnQgaW92YSBz cGFjZSwNCisgKgkJcG9ydF9tYXNrIGlzIG1hZGUgdXAgb2YgbGFyYl9pZCBhbmQgcG9ydF9pZC4N CisgKgkJVGhlIGZvcm1hdCBvZiBsYXJiIGFuZCBwb3J0IGNhbiByZWZlciB0byBtdHh4eHgtbGFy Yi1wb3J0LmguDQorICoJCWJpdFs0OjBdID0gcG9ydF9pZCAgYml0WzExOjVdID0gbGFyYl9pZC4N CisgKiBOb3RlOiBvbmUgdXNlciBjYW4gb25seSBiZWxvbmcgdG8gb25lIGRvbWFpbiwNCisgKiB0 aGUgcG9ydCBtYXNrIGlzIGluIHVuaXQgb2YgU01JIGxhcmIuDQogICovDQorI2RlZmluZSBNVEtf TUFYX1BPUlRfTlVNCTUNCiANCiBzdHJ1Y3QgbXRrX2RvbWFpbl9kYXRhIHsNCiAJZG1hX2FkZHJf dAltaW5faW92YTsNCiAJZG1hX2FkZHJfdAltYXhfaW92YTsNCisJdTMyCQlwb3J0X21hc2tbTVRL X01BWF9QT1JUX05VTV07DQogfTsNCiANCiBzdHJ1Y3QgbXRrX2lvbW11X3BsYXRfZGF0YSB7DQot LSANCjIuMTguMA0K --__=_Part_Boundary_001_1310900475.2104888994-- --===============2466571264555282472== 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 --===============2466571264555282472==--