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=-11.6 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY, URIBL_BLOCKED,USER_AGENT_SANE_2 autolearn=unavailable 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 07FF0C433E0 for ; Thu, 23 Jul 2020 01:44:46 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id CF8B720781 for ; Thu, 23 Jul 2020 01:44:45 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="MZ5Ul3xk" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387453AbgGWBoo (ORCPT ); Wed, 22 Jul 2020 21:44:44 -0400 Received: from mailgw02.mediatek.com ([210.61.82.184]:27281 "EHLO mailgw02.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1729198AbgGWBoo (ORCPT ); Wed, 22 Jul 2020 21:44:44 -0400 X-UUID: 737ffbcf37b14de09cd15acb110df036-20200723 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:MIME-Version:Content-Type:References:In-Reply-To:Date:CC:To:From:Subject:Message-ID; bh=cKmMFK1O+h5dPYD9MsyI3StTIBTg4rxNNGZFhvkWx2U=; b=MZ5Ul3xkqE8l3RiWKdAExcWkOcYw4+kzaKMGkLCas6Q/r5C6Xma6hsB9fBEmZzW2o2mNEGZpfnUYmKbyF+qfT2hU0VtilBRkmXeMR8+V+O3VGa3JROhrTN3aQeWUnb3hmWy67rl6d67EH7xr7hoNLpdjGyht5iTDvBvjxJ2iJkE=; X-UUID: 737ffbcf37b14de09cd15acb110df036-20200723 Received: from mtkcas08.mediatek.inc [(172.21.101.126)] by mailgw02.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS) with ESMTP id 1167492603; Thu, 23 Jul 2020 09:44:36 +0800 Received: from mtkcas07.mediatek.inc (172.21.101.84) by mtkmbs02n1.mediatek.inc (172.21.101.77) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 23 Jul 2020 09:44:33 +0800 Received: from [172.21.77.33] (172.21.77.33) by mtkcas07.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Thu, 23 Jul 2020 09:44:30 +0800 Message-ID: <1595468673.10848.10.camel@mtkswgap22> Subject: Re: [PATCH v3] iommu/mediatek: check 4GB mode by reading infracfg From: Miles Chen To: Matthias Brugger CC: Joerg Roedel , Rob Herring , , , , , , Mike Rapoport , "David Hildenbrand" , Yong Wu , "Yingjoe Chen" , Christoph Hellwig Date: Thu, 23 Jul 2020 09:44:33 +0800 In-Reply-To: References: <20200722141925.14861-1-miles.chen@mediatek.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.2.3-0ubuntu6 MIME-Version: 1.0 X-MTK: N Content-Transfer-Encoding: base64 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org T24gV2VkLCAyMDIwLTA3LTIyIGF0IDE3OjE5ICswMjAwLCBNYXR0aGlhcyBCcnVnZ2VyIHdyb3Rl Og0KPiANCj4gT24gMjIvMDcvMjAyMCAxNjoxOSwgTWlsZXMgQ2hlbiB3cm90ZToNCj4gPiBJbiBw cmV2aW91cyBkaXNjdXNzaW9uIFsxXSBhbmQgWzJdLCB3ZSBmb3VuZCB0aGF0IGl0IGlzIHJpc2t5 IHRvDQo+ID4gdXNlIG1heF9wZm4gb3IgdG90YWxyYW1fcGFnZXMgdG8gdGVsbCBpZiA0R0IgbW9k ZSBpcyBlbmFibGVkLg0KPiA+IA0KPiA+IENoZWNrIDRHQiBtb2RlIGJ5IHJlYWRpbmcgaW5mcmFj ZmcgcmVnaXN0ZXIsIHJlbW92ZSB0aGUgdXNhZ2UNCj4gPiBvZiB0aGUgdW4tZXhwb3J0ZWQgc3lt Ym9sIG1heF9wZm4uDQo+ID4gDQo+ID4gVGhpcyBpcyBhIHN0ZXAgdG93YXJkcyBidWlsZGluZyBt dGtfaW9tbXUgYXMgYSBrZXJuZWwgbW9kdWxlLg0KPiA+IA0KPiA+IC0tLQ0KPiANCj4gVGhhdCdz IHdyb25nLiBUaGUgY29tbWl0IG1lc3NhZ2Ugd291bGQgYmUgY3V0IGFmdGVyIHRoaXMgJy0tLScg c28gd2Ugd291bGQgbG9vc2UgDQo+IHRoZSBDYyBhbmQgU2lnbmVkLW9mLWJ5IHRhZ3MuDQoNClRo YW5rcyBmb3IgdGhlIGNvbW1lbnQuDQp1bmRlcnN0b29kLCBJIHdpbGwgZml4IHRoYXQgaW4gcGF0 Y2ggdjQuDQo+IA0KPiA+IA0KPiA+IENoYW5nZSBzaW5jZSB2MjoNCj4gPiAtIGRldGVybWluZSBj b21wYXRpYmxlIHN0cmluZyBieSBtNHVfcGxhdA0KPiA+IC0gcmViYXNlIHRvIG5leHQtMjAyMDA3 MjANCj4gPiAtIGFkZCAiLS0tIg0KPiA+IA0KPiA+IENoYW5nZSBzaW5jZSB2MToNCj4gPiAtIHJl bW92ZSB0aGUgcGhhbmRsZSB1c2FnZSwgc2VhcmNoIGZvciBpbmZyYWNmZyBpbnN0ZWFkIFszXQ0K PiA+IC0gdXNlIGluZnJhY2ZnIGluc3RlYWQgb2YgaW5mcmFjZmdfcmVnbWFwDQo+ID4gLSBtb3Zl IGluZnJhY2ZnIGRlZmluaXRhaW9ucyB0byBsaW51eC9zb2MvbWVkaWF0ZWsvaW5mcmFjZmcuaA0K PiA+IC0gdXBkYXRlIGVuYWJsZV80R0Igb25seSB3aGVuIGhhc180Z2JfbW9kZQ0KPiA+IA0KPiA+ IFsxXSBodHRwczovL3VybGRlZmVuc2UuY29tL3YzL19faHR0cHM6Ly9sa21sLm9yZy9sa21sLzIw MjAvNi8zLzczM19fOyEhQ1RSTktBOXdNZzBBUmJ3ITA3M19XXzBxbWVRbkhnU0dKUk5QVGJLMktu UGE0VnphUHFGQmZmRm4xMm9keUVMMUxEYVF0WkVtck1ZNHRCX3ZCdyQgDQo+ID4gWzJdIGh0dHBz Oi8vdXJsZGVmZW5zZS5jb20vdjMvX19odHRwczovL2xrbWwub3JnL2xrbWwvMjAyMC82LzQvMTM2 X187ISFDVFJOS0E5d01nMEFSYnchMDczX1dfMHFtZVFuSGdTR0pSTlBUYksyS25QYTRWemFQcUZC ZmZGbjEyb2R5RUwxTERhUXRaRW1yTVo3UFJzN3l3JCANCj4gDQo+IEkgdGhpbmsgdXNpbmcgbGlu a3MgdG8gbG9yZS5rZXJuZWwub3JnIHdvdWxkIG1ha2Ugc3VyZSB0aGF0IHRoZSBVUkwgZG9lcyBu b3QgDQo+IGNoYW5nZSBvdmVyIHRpbWUuIEFzIHRoZSBjb21taXQgbG9nIHdpbGwgc3RheSB0aGVy ZSBmb3IgZXZlciwgYnV0IHdobyBrb253cyB3aGF0IA0KPiBoYXBwZW5zIHdpdGggbGttbC5vcmcN Cg0KSSB3aWxsIHVzZSBsb3JlLmtlcm5lbC5vcmcgbGlua3MNCj4gDQo+ID4gWzNdIGh0dHBzOi8v dXJsZGVmZW5zZS5jb20vdjMvX19odHRwczovL2xrbWwub3JnL2xrbWwvMjAyMC83LzE1LzExNDdf XzshIUNUUk5LQTl3TWcwQVJidyEwNzNfV18wcW1lUW5IZ1NHSlJOUFRiSzJLblBhNFZ6YVBxRkJm ZkZuMTJvZHlFTDFMRGFRdFpFbXJNWXJlWS1xcUEkIA0KPiA+IA0KPiA+IENjOiBNaWtlIFJhcG9w b3J0IDxycHB0QGxpbnV4LmlibS5jb20+DQo+ID4gQ2M6IERhdmlkIEhpbGRlbmJyYW5kIDxkYXZp ZEByZWRoYXQuY29tPg0KPiA+IENjOiBZb25nIFd1IDx5b25nLnd1QG1lZGlhdGVrLmNvbT4NCj4g PiBDYzogWWluZ2pvZSBDaGVuIDx5aW5nam9lLmNoZW5AbWVkaWF0ZWsuY29tPg0KPiA+IENjOiBD aHJpc3RvcGggSGVsbHdpZyA8aGNoQGxzdC5kZT4NCj4gPiBDYzogUm9iIEhlcnJpbmcgPHJvYmhA a2VybmVsLm9yZz4NCj4gPiBDYzogTWF0dGhpYXMgQnJ1Z2dlciA8bWF0dGhpYXMuYmdnQGdtYWls LmNvbT4NCj4gPiBTaWduZWQtb2ZmLWJ5OiBNaWxlcyBDaGVuIDxtaWxlcy5jaGVuQG1lZGlhdGVr LmNvbT4NCj4gDQo+IFRoZSBmb3JtYXRpbmcgc2hvdWxkIGxvb2sgbGlrZSB0aGlzOg0KPiBJbiBw cmV2aW91cyBkaXNjdXNzaW9uIFsxXSBhbmQgWzJdLCB3ZSBmb3VuZCB0aGF0IGl0IGlzIHJpc2t5 IHRvDQo+IHVzZSBtYXhfcGZuIG9yIHRvdGFscmFtX3BhZ2VzIHRvIHRlbGwgaWYgNEdCIG1vZGUg aXMgZW5hYmxlZC4NCj4gDQo+IENoZWNrIDRHQiBtb2RlIGJ5IHJlYWRpbmcgaW5mcmFjZmcgcmVn aXN0ZXIsIHJlbW92ZSB0aGUgdXNhZ2UNCj4gb2YgdGhlIHVuLWV4cG9ydGVkIHN5bWJvbCBtYXhf cGZuLg0KPiANCj4gVGhpcyBpcyBhIHN0ZXAgdG93YXJkcyBidWlsZGluZyBtdGtfaW9tbXUgYXMg YSBrZXJuZWwgbW9kdWxlLg0KPiANCj4gWzFdIGh0dHBzOi8vdXJsZGVmZW5zZS5jb20vdjMvX19o dHRwczovL2xrbWwub3JnL2xrbWwvMjAyMC82LzMvNzMzX187ISFDVFJOS0E5d01nMEFSYnchMDcz X1dfMHFtZVFuSGdTR0pSTlBUYksyS25QYTRWemFQcUZCZmZGbjEyb2R5RUwxTERhUXRaRW1yTVk0 dEJfdkJ3JCANCj4gWzJdIGh0dHBzOi8vdXJsZGVmZW5zZS5jb20vdjMvX19odHRwczovL2xrbWwu b3JnL2xrbWwvMjAyMC82LzQvMTM2X187ISFDVFJOS0E5d01nMEFSYnchMDczX1dfMHFtZVFuSGdT R0pSTlBUYksyS25QYTRWemFQcUZCZmZGbjEyb2R5RUwxTERhUXRaRW1yTVo3UFJzN3l3JCANCj4g DQo+IENjOiBNaWtlIFJhcG9wb3J0IDxycHB0QGxpbnV4LmlibS5jb20+DQo+IENjOiBEYXZpZCBI aWxkZW5icmFuZCA8ZGF2aWRAcmVkaGF0LmNvbT4NCj4gQ2M6IFlvbmcgV3UgPHlvbmcud3VAbWVk aWF0ZWsuY29tPg0KPiBDYzogWWluZ2pvZSBDaGVuIDx5aW5nam9lLmNoZW5AbWVkaWF0ZWsuY29t Pg0KPiBDYzogQ2hyaXN0b3BoIEhlbGx3aWcgPGhjaEBsc3QuZGU+DQo+IENjOiBSb2IgSGVycmlu ZyA8cm9iaEBrZXJuZWwub3JnPg0KPiBDYzogTWF0dGhpYXMgQnJ1Z2dlciA8bWF0dGhpYXMuYmdn QGdtYWlsLmNvbT4NCj4gU2lnbmVkLW9mZi1ieTogTWlsZXMgQ2hlbiA8bWlsZXMuY2hlbkBtZWRp YXRlay5jb20+DQo+IC0tLQ0KPiANCj4gQ2hhbmdlIHNpbmNlIHYyOg0KPiAtIGRldGVybWluZSBj b21wYXRpYmxlIHN0cmluZyBieSBtNHVfcGxhdA0KPiAtIHJlYmFzZSB0byBuZXh0LTIwMjAwNzIw DQo+IC0gYWRkICItLS0iDQo+IA0KPiBDaGFuZ2Ugc2luY2UgdjE6DQo+IC0gcmVtb3ZlIHRoZSBw aGFuZGxlIHVzYWdlLCBzZWFyY2ggZm9yIGluZnJhY2ZnIGluc3RlYWQgDQo+IGh0dHBzOi8vdXJs ZGVmZW5zZS5jb20vdjMvX19odHRwczovL2xrbWwub3JnL2xrbWwvMjAyMC83LzE1LzExNDdfXzsh IUNUUk5LQTl3TWcwQVJidyEwNzNfV18wcW1lUW5IZ1NHSlJOUFRiSzJLblBhNFZ6YVBxRkJmZkZu MTJvZHlFTDFMRGFRdFpFbXJNWXJlWS1xcUEkIA0KPiAtIHVzZSBpbmZyYWNmZyBpbnN0ZWFkIG9m IGluZnJhY2ZnX3JlZ21hcA0KPiAtIG1vdmUgaW5mcmFjZmcgZGVmaW5pdGFpb25zIHRvIGxpbnV4 L3NvYy9tZWRpYXRlay9pbmZyYWNmZy5oDQo+IC0gdXBkYXRlIGVuYWJsZV80R0Igb25seSB3aGVu IGhhc180Z2JfbW9kZQ0KPiANCj4gDQo+IA0KPiA+IC0tLQ0KPiA+ICAgZHJpdmVycy9pb21tdS9t dGtfaW9tbXUuYyAgICAgICAgICAgICB8IDM0ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLQ0K PiA+ICAgaW5jbHVkZS9saW51eC9zb2MvbWVkaWF0ZWsvaW5mcmFjZmcuaCB8ICAzICsrKw0KPiA+ ICAgMiBmaWxlcyBjaGFuZ2VkLCAzMiBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQ0KPiA+ IA0KPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2lvbW11L210a19pb21tdS5jIGIvZHJpdmVycy9p b21tdS9tdGtfaW9tbXUuYw0KPiA+IGluZGV4IDU5ZTVhNjJhMzRkYi4uOWVjNjY2MTY4ODIyIDEw MDY0NA0KPiA+IC0tLSBhL2RyaXZlcnMvaW9tbXUvbXRrX2lvbW11LmMNCj4gPiArKysgYi9kcml2 ZXJzL2lvbW11L210a19pb21tdS5jDQo+ID4gQEAgLTMsNyArMyw2IEBADQo+ID4gICAgKiBDb3B5 cmlnaHQgKGMpIDIwMTUtMjAxNiBNZWRpYVRlayBJbmMuDQo+ID4gICAgKiBBdXRob3I6IFlvbmcg V3UgPHlvbmcud3VAbWVkaWF0ZWsuY29tPg0KPiA+ICAgICovDQo+ID4gLSNpbmNsdWRlIDxsaW51 eC9tZW1ibG9jay5oPg0KPiA+ICAgI2luY2x1ZGUgPGxpbnV4L2J1Zy5oPg0KPiA+ICAgI2luY2x1 ZGUgPGxpbnV4L2Nsay5oPg0KPiA+ICAgI2luY2x1ZGUgPGxpbnV4L2NvbXBvbmVudC5oPg0KPiA+ IEBAIC0xNSwxMyArMTQsMTYgQEANCj4gPiAgICNpbmNsdWRlIDxsaW51eC9pb21tdS5oPg0KPiA+ ICAgI2luY2x1ZGUgPGxpbnV4L2lvcG9sbC5oPg0KPiA+ICAgI2luY2x1ZGUgPGxpbnV4L2xpc3Qu aD4NCj4gPiArI2luY2x1ZGUgPGxpbnV4L21mZC9zeXNjb24uaD4NCj4gPiAgICNpbmNsdWRlIDxs aW51eC9vZl9hZGRyZXNzLmg+DQo+ID4gICAjaW5jbHVkZSA8bGludXgvb2ZfaW9tbXUuaD4NCj4g PiAgICNpbmNsdWRlIDxsaW51eC9vZl9pcnEuaD4NCj4gPiAgICNpbmNsdWRlIDxsaW51eC9vZl9w bGF0Zm9ybS5oPg0KPiA+ICAgI2luY2x1ZGUgPGxpbnV4L3BsYXRmb3JtX2RldmljZS5oPg0KPiA+ ICsjaW5jbHVkZSA8bGludXgvcmVnbWFwLmg+DQo+ID4gICAjaW5jbHVkZSA8bGludXgvc2xhYi5o Pg0KPiA+ICAgI2luY2x1ZGUgPGxpbnV4L3NwaW5sb2NrLmg+DQo+ID4gKyNpbmNsdWRlIDxsaW51 eC9zb2MvbWVkaWF0ZWsvaW5mcmFjZmcuaD4NCj4gPiAgICNpbmNsdWRlIDxhc20vYmFycmllci5o Pg0KPiA+ICAgI2luY2x1ZGUgPHNvYy9tZWRpYXRlay9zbWkuaD4NCj4gPiAgIA0KPiA+IEBAIC02 NDAsOCArNjQyLDExIEBAIHN0YXRpYyBpbnQgbXRrX2lvbW11X3Byb2JlKHN0cnVjdCBwbGF0Zm9y bV9kZXZpY2UgKnBkZXYpDQo+ID4gICAJc3RydWN0IHJlc291cmNlICAgICAgICAgKnJlczsNCj4g PiAgIAlyZXNvdXJjZV9zaXplX3QJCWlvYWRkcjsNCj4gPiAgIAlzdHJ1Y3QgY29tcG9uZW50X21h dGNoICAqbWF0Y2ggPSBOVUxMOw0KPiA+ICsJc3RydWN0IHJlZ21hcAkJKmluZnJhY2ZnOw0KPiA+ ICAgCXZvaWQgICAgICAgICAgICAgICAgICAgICpwcm90ZWN0Ow0KPiA+ICAgCWludCAgICAgICAg ICAgICAgICAgICAgIGksIGxhcmJfbnIsIHJldDsNCj4gPiArCXUzMgkJCXZhbDsNCj4gPiArCWNo YXIgICAgICAgICAgICAgICAgICAgICpwOw0KPiA+ICAgDQo+ID4gICAJZGF0YSA9IGRldm1fa3ph bGxvYyhkZXYsIHNpemVvZigqZGF0YSksIEdGUF9LRVJORUwpOw0KPiA+ICAgCWlmICghZGF0YSkN Cj4gPiBAQCAtNjU1LDEwICs2NjAsMjkgQEAgc3RhdGljIGludCBtdGtfaW9tbXVfcHJvYmUoc3Ry dWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikNCj4gPiAgIAkJcmV0dXJuIC1FTk9NRU07DQo+ID4g ICAJZGF0YS0+cHJvdGVjdF9iYXNlID0gQUxJR04odmlydF90b19waHlzKHByb3RlY3QpLCBNVEtf UFJPVEVDVF9QQV9BTElHTik7DQo+ID4gICANCj4gPiAtCS8qIFdoZXRoZXIgdGhlIGN1cnJlbnQg ZHJhbSBpcyBvdmVyIDRHQiAqLw0KPiA+IC0JZGF0YS0+ZW5hYmxlXzRHQiA9ICEhKG1heF9wZm4g PiAoQklUX1VMTCgzMikgPj4gUEFHRV9TSElGVCkpOw0KPiA+IC0JaWYgKCFNVEtfSU9NTVVfSEFT X0ZMQUcoZGF0YS0+cGxhdF9kYXRhLCBIQVNfNEdCX01PREUpKQ0KPiA+IC0JCWRhdGEtPmVuYWJs ZV80R0IgPSBmYWxzZTsNCj4gPiArCWRhdGEtPmVuYWJsZV80R0IgPSBmYWxzZTsNCj4gPiArCWlm IChNVEtfSU9NTVVfSEFTX0ZMQUcoZGF0YS0+cGxhdF9kYXRhLCBIQVNfNEdCX01PREUpKSB7DQo+ ID4gKwkJc3dpdGNoIChkYXRhLT5wbGF0X2RhdGEtPm00dV9wbGF0KSB7DQo+ID4gKwkJY2FzZSBN NFVfTVQyNzEyOg0KPiA+ICsJCQlwID0gIm1lZGlhdGVrLG10MjcxMi1pbmZyYWNmZyI7DQo+ID4g KwkJCWJyZWFrOw0KPiA+ICsJCWNhc2UgTTRVX01UODE3MzoNCj4gPiArCQkJcCA9ICJtZWRpYXRl ayxtdDgxNzMtaW5mcmFjZmciOw0KPiA+ICsJCQlicmVhazsNCj4gPiArCQlkZWZhdWx0Og0KPiA+ ICsJCQlwID0gTlVMTDsNCj4gPiArCQl9DQo+ID4gKw0KPiA+ICsJCWluZnJhY2ZnID0gc3lzY29u X3JlZ21hcF9sb29rdXBfYnlfY29tcGF0aWJsZShwKTsNCj4gDQo+IAlpZiAoTVRLX0lPTU1VX0hB U19GTEFHKGRhdGEtPnBsYXRfZGF0YSwgSEFTXzRHQl9NT0RFKSkgew0KPiAJCXN3aXRjaCAoZGF0 YS0+cGxhdF9kYXRhLT5tNHVfcGxhdCkgew0KPiAJCWNhc2UgTTRVX01UMjcxMjoNCj4gCQkJaW5m cmFjZmcgPSBzeXNjb25fcmVnbWFwX2xvb2t1cF9ieV9jb21wYXRpYmxlKCJtZWRpYXRlayxtdDI3 MTItaW5mcmFjZmciKTsNCj4gCQkJYnJlYWs7DQo+IAkJY2FzZSBNNFVfTVQ4MTczOg0KPiAJCQlp bmZyYWNmZyA9IHN5c2Nvbl9yZWdtYXBfbG9va3VwX2J5X2NvbXBhdGlibGUoIm1lZGlhdGVrLG10 ODE3My1pbmZyYWNmZyIpOw0KPiAJCQlicmVhazsNCj4gCQlkZWZhdWx0Og0KPiAJCQlpbmZyYWNm ZyA9IC1FTk9ERVY7DQo+IAkJfQ0KPiA+ICsNCj4gPiArCQlpZiAoSVNfRVJSKGluZnJhY2ZnKSkN Cj4gPiArCQkJcmV0dXJuIFBUUl9FUlIoaW5mcmFjZmcpOw0KPiA+ICsNCj4gPiArCQlyZXQgPSBy ZWdtYXBfcmVhZChpbmZyYWNmZywgUkVHX0lORlJBX01JU0MsICZ2YWwpOw0KPiA+ICsJCWlmIChy ZXQpDQo+ID4gKwkJCXJldHVybiByZXQ7DQo+ID4gKwkJZGF0YS0+ZW5hYmxlXzRHQiA9ICEhKHZh bCAmIEZfRERSXzRHQl9TVVBQT1JUX0VOKTsNCj4gPiArCX0NCj4gPiAgIA0KPiA+ICAgCXJlcyA9 IHBsYXRmb3JtX2dldF9yZXNvdXJjZShwZGV2LCBJT1JFU09VUkNFX01FTSwgMCk7DQo+ID4gICAJ ZGF0YS0+YmFzZSA9IGRldm1faW9yZW1hcF9yZXNvdXJjZShkZXYsIHJlcyk7DQo+ID4gZGlmZiAt LWdpdCBhL2luY2x1ZGUvbGludXgvc29jL21lZGlhdGVrL2luZnJhY2ZnLmggYi9pbmNsdWRlL2xp bnV4L3NvYy9tZWRpYXRlay9pbmZyYWNmZy5oDQo+ID4gaW5kZXggZmQyNWYwMTQ4NTY2Li4yMzM0 NjNkNzg5YzYgMTAwNjQ0DQo+ID4gLS0tIGEvaW5jbHVkZS9saW51eC9zb2MvbWVkaWF0ZWsvaW5m cmFjZmcuaA0KPiA+ICsrKyBiL2luY2x1ZGUvbGludXgvc29jL21lZGlhdGVrL2luZnJhY2ZnLmgN Cj4gPiBAQCAtMzIsNiArMzIsOSBAQA0KPiA+ICAgI2RlZmluZSBNVDc2MjJfVE9QX0FYSV9QUk9U X0VOX1dCCQkoQklUKDIpIHwgQklUKDYpIHwgXA0KPiA+ICAgCQkJCQkJIEJJVCg3KSB8IEJJVCg4 KSkNCj4gPiAgIA0KPiA+ICsjZGVmaW5lIFJFR19JTkZSQV9NSVNDCQkJCTB4ZjAwDQo+ID4gKyNk ZWZpbmUgRl9ERFJfNEdCX1NVUFBPUlRfRU4JCQlCSVQoMTMpDQo+ID4gKw0KPiA+ICAgaW50IG10 a19pbmZyYWNmZ19zZXRfYnVzX3Byb3RlY3Rpb24oc3RydWN0IHJlZ21hcCAqaW5mcmFjZmcsIHUz MiBtYXNrLA0KPiA+ICAgCQlib29sIHJlZ191cGRhdGUpOw0KPiA+ICAgaW50IG10a19pbmZyYWNm Z19jbGVhcl9idXNfcHJvdGVjdGlvbihzdHJ1Y3QgcmVnbWFwICppbmZyYWNmZywgdTMyIG1hc2ss DQo+ID4gDQoNCg== 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=-11.3 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY,URIBL_BLOCKED, USER_AGENT_SANE_2 autolearn=unavailable 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 8426EC433DF for ; Thu, 23 Jul 2020 01:44:45 +0000 (UTC) Received: from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136]) (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 43C2F20781 for ; Thu, 23 Jul 2020 01:44:45 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="MZ5Ul3xk" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 43C2F20781 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 localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id E43FE22EC9; Thu, 23 Jul 2020 01:44:44 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id NapbLASQjmmF; Thu, 23 Jul 2020 01:44:43 +0000 (UTC) Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [140.211.9.56]) by silver.osuosl.org (Postfix) with ESMTP id 38E3C22EC1; Thu, 23 Jul 2020 01:44:43 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id 20A5EC004D; Thu, 23 Jul 2020 01:44:43 +0000 (UTC) Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by lists.linuxfoundation.org (Postfix) with ESMTP id 17B1FC004C for ; Thu, 23 Jul 2020 01:44:42 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 0672187DC5 for ; Thu, 23 Jul 2020 01:44:42 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id opAetI-eC5HH for ; Thu, 23 Jul 2020 01:44:40 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mailgw02.mediatek.com (unknown [210.61.82.184]) by whitealder.osuosl.org (Postfix) with ESMTP id D62EC887FD for ; Thu, 23 Jul 2020 01:44:39 +0000 (UTC) X-UUID: 737ffbcf37b14de09cd15acb110df036-20200723 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:MIME-Version:Content-Type:References:In-Reply-To:Date:CC:To:From:Subject:Message-ID; bh=cKmMFK1O+h5dPYD9MsyI3StTIBTg4rxNNGZFhvkWx2U=; b=MZ5Ul3xkqE8l3RiWKdAExcWkOcYw4+kzaKMGkLCas6Q/r5C6Xma6hsB9fBEmZzW2o2mNEGZpfnUYmKbyF+qfT2hU0VtilBRkmXeMR8+V+O3VGa3JROhrTN3aQeWUnb3hmWy67rl6d67EH7xr7hoNLpdjGyht5iTDvBvjxJ2iJkE=; X-UUID: 737ffbcf37b14de09cd15acb110df036-20200723 Received: from mtkcas08.mediatek.inc [(172.21.101.126)] by mailgw02.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS) with ESMTP id 1167492603; Thu, 23 Jul 2020 09:44:36 +0800 Received: from mtkcas07.mediatek.inc (172.21.101.84) by mtkmbs02n1.mediatek.inc (172.21.101.77) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 23 Jul 2020 09:44:33 +0800 Received: from [172.21.77.33] (172.21.77.33) by mtkcas07.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Thu, 23 Jul 2020 09:44:30 +0800 Message-ID: <1595468673.10848.10.camel@mtkswgap22> Subject: Re: [PATCH v3] iommu/mediatek: check 4GB mode by reading infracfg From: Miles Chen To: Matthias Brugger Date: Thu, 23 Jul 2020 09:44:33 +0800 In-Reply-To: References: <20200722141925.14861-1-miles.chen@mediatek.com> X-Mailer: Evolution 3.2.3-0ubuntu6 MIME-Version: 1.0 X-MTK: N Cc: Rob Herring , wsd_upstream@mediatek.com, David Hildenbrand , linux-kernel@vger.kernel.org, Mike Rapoport , iommu@lists.linux-foundation.org, linux-mediatek@lists.infradead.org, Yingjoe Chen , Christoph Hellwig , linux-arm-kernel@lists.infradead.org X-BeenThere: iommu@lists.linux-foundation.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Development issues for Linux IOMMU support List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: iommu-bounces@lists.linux-foundation.org Sender: "iommu" On Wed, 2020-07-22 at 17:19 +0200, Matthias Brugger wrote: > > On 22/07/2020 16:19, Miles Chen wrote: > > In previous discussion [1] and [2], we found that it is risky to > > use max_pfn or totalram_pages to tell if 4GB mode is enabled. > > > > Check 4GB mode by reading infracfg register, remove the usage > > of the un-exported symbol max_pfn. > > > > This is a step towards building mtk_iommu as a kernel module. > > > > --- > > That's wrong. The commit message would be cut after this '---' so we would loose > the Cc and Signed-of-by tags. Thanks for the comment. understood, I will fix that in patch v4. > > > > > Change since v2: > > - determine compatible string by m4u_plat > > - rebase to next-20200720 > > - add "---" > > > > Change since v1: > > - remove the phandle usage, search for infracfg instead [3] > > - use infracfg instead of infracfg_regmap > > - move infracfg definitaions to linux/soc/mediatek/infracfg.h > > - update enable_4GB only when has_4gb_mode > > > > [1] https://urldefense.com/v3/__https://lkml.org/lkml/2020/6/3/733__;!!CTRNKA9wMg0ARbw!073_W_0qmeQnHgSGJRNPTbK2KnPa4VzaPqFBffFn12odyEL1LDaQtZEmrMY4tB_vBw$ > > [2] https://urldefense.com/v3/__https://lkml.org/lkml/2020/6/4/136__;!!CTRNKA9wMg0ARbw!073_W_0qmeQnHgSGJRNPTbK2KnPa4VzaPqFBffFn12odyEL1LDaQtZEmrMZ7PRs7yw$ > > I think using links to lore.kernel.org would make sure that the URL does not > change over time. As the commit log will stay there for ever, but who konws what > happens with lkml.org I will use lore.kernel.org links > > > [3] https://urldefense.com/v3/__https://lkml.org/lkml/2020/7/15/1147__;!!CTRNKA9wMg0ARbw!073_W_0qmeQnHgSGJRNPTbK2KnPa4VzaPqFBffFn12odyEL1LDaQtZEmrMYreY-qqA$ > > > > Cc: Mike Rapoport > > Cc: David Hildenbrand > > Cc: Yong Wu > > Cc: Yingjoe Chen > > Cc: Christoph Hellwig > > Cc: Rob Herring > > Cc: Matthias Brugger > > Signed-off-by: Miles Chen > > The formating should look like this: > In previous discussion [1] and [2], we found that it is risky to > use max_pfn or totalram_pages to tell if 4GB mode is enabled. > > Check 4GB mode by reading infracfg register, remove the usage > of the un-exported symbol max_pfn. > > This is a step towards building mtk_iommu as a kernel module. > > [1] https://urldefense.com/v3/__https://lkml.org/lkml/2020/6/3/733__;!!CTRNKA9wMg0ARbw!073_W_0qmeQnHgSGJRNPTbK2KnPa4VzaPqFBffFn12odyEL1LDaQtZEmrMY4tB_vBw$ > [2] https://urldefense.com/v3/__https://lkml.org/lkml/2020/6/4/136__;!!CTRNKA9wMg0ARbw!073_W_0qmeQnHgSGJRNPTbK2KnPa4VzaPqFBffFn12odyEL1LDaQtZEmrMZ7PRs7yw$ > > Cc: Mike Rapoport > Cc: David Hildenbrand > Cc: Yong Wu > Cc: Yingjoe Chen > Cc: Christoph Hellwig > Cc: Rob Herring > Cc: Matthias Brugger > Signed-off-by: Miles Chen > --- > > Change since v2: > - determine compatible string by m4u_plat > - rebase to next-20200720 > - add "---" > > Change since v1: > - remove the phandle usage, search for infracfg instead > https://urldefense.com/v3/__https://lkml.org/lkml/2020/7/15/1147__;!!CTRNKA9wMg0ARbw!073_W_0qmeQnHgSGJRNPTbK2KnPa4VzaPqFBffFn12odyEL1LDaQtZEmrMYreY-qqA$ > - use infracfg instead of infracfg_regmap > - move infracfg definitaions to linux/soc/mediatek/infracfg.h > - update enable_4GB only when has_4gb_mode > > > > > --- > > drivers/iommu/mtk_iommu.c | 34 +++++++++++++++++++++++---- > > include/linux/soc/mediatek/infracfg.h | 3 +++ > > 2 files changed, 32 insertions(+), 5 deletions(-) > > > > diff --git a/drivers/iommu/mtk_iommu.c b/drivers/iommu/mtk_iommu.c > > index 59e5a62a34db..9ec666168822 100644 > > --- a/drivers/iommu/mtk_iommu.c > > +++ b/drivers/iommu/mtk_iommu.c > > @@ -3,7 +3,6 @@ > > * Copyright (c) 2015-2016 MediaTek Inc. > > * Author: Yong Wu > > */ > > -#include > > #include > > #include > > #include > > @@ -15,13 +14,16 @@ > > #include > > #include > > #include > > +#include > > #include > > #include > > #include > > #include > > #include > > +#include > > #include > > #include > > +#include > > #include > > #include > > > > @@ -640,8 +642,11 @@ static int mtk_iommu_probe(struct platform_device *pdev) > > struct resource *res; > > resource_size_t ioaddr; > > struct component_match *match = NULL; > > + struct regmap *infracfg; > > void *protect; > > int i, larb_nr, ret; > > + u32 val; > > + char *p; > > > > data = devm_kzalloc(dev, sizeof(*data), GFP_KERNEL); > > if (!data) > > @@ -655,10 +660,29 @@ static int mtk_iommu_probe(struct platform_device *pdev) > > return -ENOMEM; > > data->protect_base = ALIGN(virt_to_phys(protect), MTK_PROTECT_PA_ALIGN); > > > > - /* Whether the current dram is over 4GB */ > > - data->enable_4GB = !!(max_pfn > (BIT_ULL(32) >> PAGE_SHIFT)); > > - if (!MTK_IOMMU_HAS_FLAG(data->plat_data, HAS_4GB_MODE)) > > - data->enable_4GB = false; > > + data->enable_4GB = false; > > + if (MTK_IOMMU_HAS_FLAG(data->plat_data, HAS_4GB_MODE)) { > > + switch (data->plat_data->m4u_plat) { > > + case M4U_MT2712: > > + p = "mediatek,mt2712-infracfg"; > > + break; > > + case M4U_MT8173: > > + p = "mediatek,mt8173-infracfg"; > > + break; > > + default: > > + p = NULL; > > + } > > + > > + infracfg = syscon_regmap_lookup_by_compatible(p); > > if (MTK_IOMMU_HAS_FLAG(data->plat_data, HAS_4GB_MODE)) { > switch (data->plat_data->m4u_plat) { > case M4U_MT2712: > infracfg = syscon_regmap_lookup_by_compatible("mediatek,mt2712-infracfg"); > break; > case M4U_MT8173: > infracfg = syscon_regmap_lookup_by_compatible("mediatek,mt8173-infracfg"); > break; > default: > infracfg = -ENODEV; > } > > + > > + if (IS_ERR(infracfg)) > > + return PTR_ERR(infracfg); > > + > > + ret = regmap_read(infracfg, REG_INFRA_MISC, &val); > > + if (ret) > > + return ret; > > + data->enable_4GB = !!(val & F_DDR_4GB_SUPPORT_EN); > > + } > > > > res = platform_get_resource(pdev, IORESOURCE_MEM, 0); > > data->base = devm_ioremap_resource(dev, res); > > diff --git a/include/linux/soc/mediatek/infracfg.h b/include/linux/soc/mediatek/infracfg.h > > index fd25f0148566..233463d789c6 100644 > > --- a/include/linux/soc/mediatek/infracfg.h > > +++ b/include/linux/soc/mediatek/infracfg.h > > @@ -32,6 +32,9 @@ > > #define MT7622_TOP_AXI_PROT_EN_WB (BIT(2) | BIT(6) | \ > > BIT(7) | BIT(8)) > > > > +#define REG_INFRA_MISC 0xf00 > > +#define F_DDR_4GB_SUPPORT_EN BIT(13) > > + > > int mtk_infracfg_set_bus_protection(struct regmap *infracfg, u32 mask, > > bool reg_update); > > int mtk_infracfg_clear_bus_protection(struct regmap *infracfg, u32 mask, > > _______________________________________________ iommu mailing list iommu@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/iommu 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=-11.5 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY, URIBL_BLOCKED,USER_AGENT_SANE_2 autolearn=unavailable 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 DC6BFC433E4 for ; Thu, 23 Jul 2020 01:44:55 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (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 AA3D820781 for ; Thu, 23 Jul 2020 01:44:55 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="VzjIco1k"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="MZ5Ul3xk" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org AA3D820781 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=mediatek.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Date:To:From: Subject:Message-ID:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=FA6HmPeLJaM49LN4ojSz4mNz8+UWjxtJzoUg6/pdlPI=; b=VzjIco1kQHc/cprSEoU5ZAbWm t5d14EiLfb+1fR3Y1dou+Hm1YA/Jyv+JMLLkh7cHCtaWqMxxegD/IMoWEGtjxdLPF8wzI3QyaXQ3g g6evi5suHHTE2XZ3LBukzE7eojnbXGU8mClZ7gzQYct0uvzyr5I3kPpnbmWLvlICMjFPpmSaRoh7f p8J1pbr2ehG+lFCOfwgbwWg0Af/kij9SSdB5ueG3M3vnvFP17wc5lPSvL7BY2bz3tMipCbMqOpc4c yzHGFCqn1ySVHZgkhV2ToCA5qAtZhvGbXOw6L4Lq5dXvlnVKiCpUdmZczFD6GZw8GYtLlF/uabp3A qVknAHJ4A==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jyQHt-00020W-Av; Thu, 23 Jul 2020 01:44:45 +0000 Received: from mailgw01.mediatek.com ([216.200.240.184]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1jyQHp-0001zw-Um; Thu, 23 Jul 2020 01:44:43 +0000 X-UUID: 78ade0290bd644149eb9f1b186f6da2a-20200722 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:MIME-Version:Content-Type:References:In-Reply-To:Date:CC:To:From:Subject:Message-ID; bh=cKmMFK1O+h5dPYD9MsyI3StTIBTg4rxNNGZFhvkWx2U=; b=MZ5Ul3xkqE8l3RiWKdAExcWkOcYw4+kzaKMGkLCas6Q/r5C6Xma6hsB9fBEmZzW2o2mNEGZpfnUYmKbyF+qfT2hU0VtilBRkmXeMR8+V+O3VGa3JROhrTN3aQeWUnb3hmWy67rl6d67EH7xr7hoNLpdjGyht5iTDvBvjxJ2iJkE=; X-UUID: 78ade0290bd644149eb9f1b186f6da2a-20200722 Received: from mtkcas67.mediatek.inc [(172.29.193.45)] by mailgw01.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLS) with ESMTP id 311085723; Wed, 22 Jul 2020 17:44:36 -0800 Received: from MTKMBS02N1.mediatek.inc (172.21.101.77) by MTKMBS62DR.mediatek.inc (172.29.94.18) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 22 Jul 2020 18:44:35 -0700 Received: from mtkcas07.mediatek.inc (172.21.101.84) by mtkmbs02n1.mediatek.inc (172.21.101.77) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 23 Jul 2020 09:44:33 +0800 Received: from [172.21.77.33] (172.21.77.33) by mtkcas07.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Thu, 23 Jul 2020 09:44:30 +0800 Message-ID: <1595468673.10848.10.camel@mtkswgap22> Subject: Re: [PATCH v3] iommu/mediatek: check 4GB mode by reading infracfg From: Miles Chen To: Matthias Brugger Date: Thu, 23 Jul 2020 09:44:33 +0800 In-Reply-To: References: <20200722141925.14861-1-miles.chen@mediatek.com> X-Mailer: Evolution 3.2.3-0ubuntu6 MIME-Version: 1.0 X-MTK: N X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200722_214442_277686_C2D0165D X-CRM114-Status: GOOD ( 32.11 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Rob Herring , wsd_upstream@mediatek.com, David Hildenbrand , Joerg Roedel , linux-kernel@vger.kernel.org, Mike Rapoport , iommu@lists.linux-foundation.org, linux-mediatek@lists.infradead.org, Yong Wu , Yingjoe Chen , Christoph Hellwig , linux-arm-kernel@lists.infradead.org Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org On Wed, 2020-07-22 at 17:19 +0200, Matthias Brugger wrote: > > On 22/07/2020 16:19, Miles Chen wrote: > > In previous discussion [1] and [2], we found that it is risky to > > use max_pfn or totalram_pages to tell if 4GB mode is enabled. > > > > Check 4GB mode by reading infracfg register, remove the usage > > of the un-exported symbol max_pfn. > > > > This is a step towards building mtk_iommu as a kernel module. > > > > --- > > That's wrong. The commit message would be cut after this '---' so we would loose > the Cc and Signed-of-by tags. Thanks for the comment. understood, I will fix that in patch v4. > > > > > Change since v2: > > - determine compatible string by m4u_plat > > - rebase to next-20200720 > > - add "---" > > > > Change since v1: > > - remove the phandle usage, search for infracfg instead [3] > > - use infracfg instead of infracfg_regmap > > - move infracfg definitaions to linux/soc/mediatek/infracfg.h > > - update enable_4GB only when has_4gb_mode > > > > [1] https://urldefense.com/v3/__https://lkml.org/lkml/2020/6/3/733__;!!CTRNKA9wMg0ARbw!073_W_0qmeQnHgSGJRNPTbK2KnPa4VzaPqFBffFn12odyEL1LDaQtZEmrMY4tB_vBw$ > > [2] https://urldefense.com/v3/__https://lkml.org/lkml/2020/6/4/136__;!!CTRNKA9wMg0ARbw!073_W_0qmeQnHgSGJRNPTbK2KnPa4VzaPqFBffFn12odyEL1LDaQtZEmrMZ7PRs7yw$ > > I think using links to lore.kernel.org would make sure that the URL does not > change over time. As the commit log will stay there for ever, but who konws what > happens with lkml.org I will use lore.kernel.org links > > > [3] https://urldefense.com/v3/__https://lkml.org/lkml/2020/7/15/1147__;!!CTRNKA9wMg0ARbw!073_W_0qmeQnHgSGJRNPTbK2KnPa4VzaPqFBffFn12odyEL1LDaQtZEmrMYreY-qqA$ > > > > Cc: Mike Rapoport > > Cc: David Hildenbrand > > Cc: Yong Wu > > Cc: Yingjoe Chen > > Cc: Christoph Hellwig > > Cc: Rob Herring > > Cc: Matthias Brugger > > Signed-off-by: Miles Chen > > The formating should look like this: > In previous discussion [1] and [2], we found that it is risky to > use max_pfn or totalram_pages to tell if 4GB mode is enabled. > > Check 4GB mode by reading infracfg register, remove the usage > of the un-exported symbol max_pfn. > > This is a step towards building mtk_iommu as a kernel module. > > [1] https://urldefense.com/v3/__https://lkml.org/lkml/2020/6/3/733__;!!CTRNKA9wMg0ARbw!073_W_0qmeQnHgSGJRNPTbK2KnPa4VzaPqFBffFn12odyEL1LDaQtZEmrMY4tB_vBw$ > [2] https://urldefense.com/v3/__https://lkml.org/lkml/2020/6/4/136__;!!CTRNKA9wMg0ARbw!073_W_0qmeQnHgSGJRNPTbK2KnPa4VzaPqFBffFn12odyEL1LDaQtZEmrMZ7PRs7yw$ > > Cc: Mike Rapoport > Cc: David Hildenbrand > Cc: Yong Wu > Cc: Yingjoe Chen > Cc: Christoph Hellwig > Cc: Rob Herring > Cc: Matthias Brugger > Signed-off-by: Miles Chen > --- > > Change since v2: > - determine compatible string by m4u_plat > - rebase to next-20200720 > - add "---" > > Change since v1: > - remove the phandle usage, search for infracfg instead > https://urldefense.com/v3/__https://lkml.org/lkml/2020/7/15/1147__;!!CTRNKA9wMg0ARbw!073_W_0qmeQnHgSGJRNPTbK2KnPa4VzaPqFBffFn12odyEL1LDaQtZEmrMYreY-qqA$ > - use infracfg instead of infracfg_regmap > - move infracfg definitaions to linux/soc/mediatek/infracfg.h > - update enable_4GB only when has_4gb_mode > > > > > --- > > drivers/iommu/mtk_iommu.c | 34 +++++++++++++++++++++++---- > > include/linux/soc/mediatek/infracfg.h | 3 +++ > > 2 files changed, 32 insertions(+), 5 deletions(-) > > > > diff --git a/drivers/iommu/mtk_iommu.c b/drivers/iommu/mtk_iommu.c > > index 59e5a62a34db..9ec666168822 100644 > > --- a/drivers/iommu/mtk_iommu.c > > +++ b/drivers/iommu/mtk_iommu.c > > @@ -3,7 +3,6 @@ > > * Copyright (c) 2015-2016 MediaTek Inc. > > * Author: Yong Wu > > */ > > -#include > > #include > > #include > > #include > > @@ -15,13 +14,16 @@ > > #include > > #include > > #include > > +#include > > #include > > #include > > #include > > #include > > #include > > +#include > > #include > > #include > > +#include > > #include > > #include > > > > @@ -640,8 +642,11 @@ static int mtk_iommu_probe(struct platform_device *pdev) > > struct resource *res; > > resource_size_t ioaddr; > > struct component_match *match = NULL; > > + struct regmap *infracfg; > > void *protect; > > int i, larb_nr, ret; > > + u32 val; > > + char *p; > > > > data = devm_kzalloc(dev, sizeof(*data), GFP_KERNEL); > > if (!data) > > @@ -655,10 +660,29 @@ static int mtk_iommu_probe(struct platform_device *pdev) > > return -ENOMEM; > > data->protect_base = ALIGN(virt_to_phys(protect), MTK_PROTECT_PA_ALIGN); > > > > - /* Whether the current dram is over 4GB */ > > - data->enable_4GB = !!(max_pfn > (BIT_ULL(32) >> PAGE_SHIFT)); > > - if (!MTK_IOMMU_HAS_FLAG(data->plat_data, HAS_4GB_MODE)) > > - data->enable_4GB = false; > > + data->enable_4GB = false; > > + if (MTK_IOMMU_HAS_FLAG(data->plat_data, HAS_4GB_MODE)) { > > + switch (data->plat_data->m4u_plat) { > > + case M4U_MT2712: > > + p = "mediatek,mt2712-infracfg"; > > + break; > > + case M4U_MT8173: > > + p = "mediatek,mt8173-infracfg"; > > + break; > > + default: > > + p = NULL; > > + } > > + > > + infracfg = syscon_regmap_lookup_by_compatible(p); > > if (MTK_IOMMU_HAS_FLAG(data->plat_data, HAS_4GB_MODE)) { > switch (data->plat_data->m4u_plat) { > case M4U_MT2712: > infracfg = syscon_regmap_lookup_by_compatible("mediatek,mt2712-infracfg"); > break; > case M4U_MT8173: > infracfg = syscon_regmap_lookup_by_compatible("mediatek,mt8173-infracfg"); > break; > default: > infracfg = -ENODEV; > } > > + > > + if (IS_ERR(infracfg)) > > + return PTR_ERR(infracfg); > > + > > + ret = regmap_read(infracfg, REG_INFRA_MISC, &val); > > + if (ret) > > + return ret; > > + data->enable_4GB = !!(val & F_DDR_4GB_SUPPORT_EN); > > + } > > > > res = platform_get_resource(pdev, IORESOURCE_MEM, 0); > > data->base = devm_ioremap_resource(dev, res); > > diff --git a/include/linux/soc/mediatek/infracfg.h b/include/linux/soc/mediatek/infracfg.h > > index fd25f0148566..233463d789c6 100644 > > --- a/include/linux/soc/mediatek/infracfg.h > > +++ b/include/linux/soc/mediatek/infracfg.h > > @@ -32,6 +32,9 @@ > > #define MT7622_TOP_AXI_PROT_EN_WB (BIT(2) | BIT(6) | \ > > BIT(7) | BIT(8)) > > > > +#define REG_INFRA_MISC 0xf00 > > +#define F_DDR_4GB_SUPPORT_EN BIT(13) > > + > > int mtk_infracfg_set_bus_protection(struct regmap *infracfg, u32 mask, > > bool reg_update); > > int mtk_infracfg_clear_bus_protection(struct regmap *infracfg, u32 mask, > > _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek 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=-11.5 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY, URIBL_BLOCKED,USER_AGENT_SANE_2 autolearn=unavailable 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 609ECC433E1 for ; Thu, 23 Jul 2020 01:46:35 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (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 2E1F52071A for ; Thu, 23 Jul 2020 01:46:35 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="yug0gdn7"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="MZ5Ul3xk" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 2E1F52071A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=mediatek.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Date:To:From: Subject:Message-ID:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=xEVKGFPjba6a87YAoH4bl1unVWir6GgkQ8vgoULzlDQ=; b=yug0gdn7cJC8e3+FVwjoVcoJu pwVfuaSBj1Q81lQka0idt51mxhEUNEdldOZo7NhuG6sB0bUqW9QFJl5SAxAiei0O6H76DoX7QMG7Q dOjR8FU1olmBGLL08ojbtU8mKtKdMJ8FYBWBoSenBnrDZTOKJQUhXE8fLj2BV5DTqE0x4Avwu1zE7 42GpFaG/Tz+FVHUJRvJ5/ND1eBJ7kPzJguAnt7oBfyuU1qzWnIKluP27YvxfQbqhru/3kgHUK8eNY C/yTE4XQYCW4bKiP7SQ4prilWK6jpvhm4pMgP8hPx7P5MXS1+HH8gGqEaEK+FWD/LbOf31vRvhZx1 4FjM+njJA==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jyQHu-00020g-Ei; Thu, 23 Jul 2020 01:44:46 +0000 Received: from mailgw01.mediatek.com ([216.200.240.184]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1jyQHp-0001zw-Um; Thu, 23 Jul 2020 01:44:43 +0000 X-UUID: 78ade0290bd644149eb9f1b186f6da2a-20200722 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:MIME-Version:Content-Type:References:In-Reply-To:Date:CC:To:From:Subject:Message-ID; bh=cKmMFK1O+h5dPYD9MsyI3StTIBTg4rxNNGZFhvkWx2U=; b=MZ5Ul3xkqE8l3RiWKdAExcWkOcYw4+kzaKMGkLCas6Q/r5C6Xma6hsB9fBEmZzW2o2mNEGZpfnUYmKbyF+qfT2hU0VtilBRkmXeMR8+V+O3VGa3JROhrTN3aQeWUnb3hmWy67rl6d67EH7xr7hoNLpdjGyht5iTDvBvjxJ2iJkE=; X-UUID: 78ade0290bd644149eb9f1b186f6da2a-20200722 Received: from mtkcas67.mediatek.inc [(172.29.193.45)] by mailgw01.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLS) with ESMTP id 311085723; Wed, 22 Jul 2020 17:44:36 -0800 Received: from MTKMBS02N1.mediatek.inc (172.21.101.77) by MTKMBS62DR.mediatek.inc (172.29.94.18) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 22 Jul 2020 18:44:35 -0700 Received: from mtkcas07.mediatek.inc (172.21.101.84) by mtkmbs02n1.mediatek.inc (172.21.101.77) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 23 Jul 2020 09:44:33 +0800 Received: from [172.21.77.33] (172.21.77.33) by mtkcas07.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Thu, 23 Jul 2020 09:44:30 +0800 Message-ID: <1595468673.10848.10.camel@mtkswgap22> Subject: Re: [PATCH v3] iommu/mediatek: check 4GB mode by reading infracfg From: Miles Chen To: Matthias Brugger Date: Thu, 23 Jul 2020 09:44:33 +0800 In-Reply-To: References: <20200722141925.14861-1-miles.chen@mediatek.com> X-Mailer: Evolution 3.2.3-0ubuntu6 MIME-Version: 1.0 X-MTK: N X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200722_214442_277686_C2D0165D X-CRM114-Status: GOOD ( 32.11 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Rob Herring , wsd_upstream@mediatek.com, David Hildenbrand , Joerg Roedel , linux-kernel@vger.kernel.org, Mike Rapoport , iommu@lists.linux-foundation.org, linux-mediatek@lists.infradead.org, Yong Wu , Yingjoe Chen , Christoph Hellwig , linux-arm-kernel@lists.infradead.org Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Wed, 2020-07-22 at 17:19 +0200, Matthias Brugger wrote: > > On 22/07/2020 16:19, Miles Chen wrote: > > In previous discussion [1] and [2], we found that it is risky to > > use max_pfn or totalram_pages to tell if 4GB mode is enabled. > > > > Check 4GB mode by reading infracfg register, remove the usage > > of the un-exported symbol max_pfn. > > > > This is a step towards building mtk_iommu as a kernel module. > > > > --- > > That's wrong. The commit message would be cut after this '---' so we would loose > the Cc and Signed-of-by tags. Thanks for the comment. understood, I will fix that in patch v4. > > > > > Change since v2: > > - determine compatible string by m4u_plat > > - rebase to next-20200720 > > - add "---" > > > > Change since v1: > > - remove the phandle usage, search for infracfg instead [3] > > - use infracfg instead of infracfg_regmap > > - move infracfg definitaions to linux/soc/mediatek/infracfg.h > > - update enable_4GB only when has_4gb_mode > > > > [1] https://urldefense.com/v3/__https://lkml.org/lkml/2020/6/3/733__;!!CTRNKA9wMg0ARbw!073_W_0qmeQnHgSGJRNPTbK2KnPa4VzaPqFBffFn12odyEL1LDaQtZEmrMY4tB_vBw$ > > [2] https://urldefense.com/v3/__https://lkml.org/lkml/2020/6/4/136__;!!CTRNKA9wMg0ARbw!073_W_0qmeQnHgSGJRNPTbK2KnPa4VzaPqFBffFn12odyEL1LDaQtZEmrMZ7PRs7yw$ > > I think using links to lore.kernel.org would make sure that the URL does not > change over time. As the commit log will stay there for ever, but who konws what > happens with lkml.org I will use lore.kernel.org links > > > [3] https://urldefense.com/v3/__https://lkml.org/lkml/2020/7/15/1147__;!!CTRNKA9wMg0ARbw!073_W_0qmeQnHgSGJRNPTbK2KnPa4VzaPqFBffFn12odyEL1LDaQtZEmrMYreY-qqA$ > > > > Cc: Mike Rapoport > > Cc: David Hildenbrand > > Cc: Yong Wu > > Cc: Yingjoe Chen > > Cc: Christoph Hellwig > > Cc: Rob Herring > > Cc: Matthias Brugger > > Signed-off-by: Miles Chen > > The formating should look like this: > In previous discussion [1] and [2], we found that it is risky to > use max_pfn or totalram_pages to tell if 4GB mode is enabled. > > Check 4GB mode by reading infracfg register, remove the usage > of the un-exported symbol max_pfn. > > This is a step towards building mtk_iommu as a kernel module. > > [1] https://urldefense.com/v3/__https://lkml.org/lkml/2020/6/3/733__;!!CTRNKA9wMg0ARbw!073_W_0qmeQnHgSGJRNPTbK2KnPa4VzaPqFBffFn12odyEL1LDaQtZEmrMY4tB_vBw$ > [2] https://urldefense.com/v3/__https://lkml.org/lkml/2020/6/4/136__;!!CTRNKA9wMg0ARbw!073_W_0qmeQnHgSGJRNPTbK2KnPa4VzaPqFBffFn12odyEL1LDaQtZEmrMZ7PRs7yw$ > > Cc: Mike Rapoport > Cc: David Hildenbrand > Cc: Yong Wu > Cc: Yingjoe Chen > Cc: Christoph Hellwig > Cc: Rob Herring > Cc: Matthias Brugger > Signed-off-by: Miles Chen > --- > > Change since v2: > - determine compatible string by m4u_plat > - rebase to next-20200720 > - add "---" > > Change since v1: > - remove the phandle usage, search for infracfg instead > https://urldefense.com/v3/__https://lkml.org/lkml/2020/7/15/1147__;!!CTRNKA9wMg0ARbw!073_W_0qmeQnHgSGJRNPTbK2KnPa4VzaPqFBffFn12odyEL1LDaQtZEmrMYreY-qqA$ > - use infracfg instead of infracfg_regmap > - move infracfg definitaions to linux/soc/mediatek/infracfg.h > - update enable_4GB only when has_4gb_mode > > > > > --- > > drivers/iommu/mtk_iommu.c | 34 +++++++++++++++++++++++---- > > include/linux/soc/mediatek/infracfg.h | 3 +++ > > 2 files changed, 32 insertions(+), 5 deletions(-) > > > > diff --git a/drivers/iommu/mtk_iommu.c b/drivers/iommu/mtk_iommu.c > > index 59e5a62a34db..9ec666168822 100644 > > --- a/drivers/iommu/mtk_iommu.c > > +++ b/drivers/iommu/mtk_iommu.c > > @@ -3,7 +3,6 @@ > > * Copyright (c) 2015-2016 MediaTek Inc. > > * Author: Yong Wu > > */ > > -#include > > #include > > #include > > #include > > @@ -15,13 +14,16 @@ > > #include > > #include > > #include > > +#include > > #include > > #include > > #include > > #include > > #include > > +#include > > #include > > #include > > +#include > > #include > > #include > > > > @@ -640,8 +642,11 @@ static int mtk_iommu_probe(struct platform_device *pdev) > > struct resource *res; > > resource_size_t ioaddr; > > struct component_match *match = NULL; > > + struct regmap *infracfg; > > void *protect; > > int i, larb_nr, ret; > > + u32 val; > > + char *p; > > > > data = devm_kzalloc(dev, sizeof(*data), GFP_KERNEL); > > if (!data) > > @@ -655,10 +660,29 @@ static int mtk_iommu_probe(struct platform_device *pdev) > > return -ENOMEM; > > data->protect_base = ALIGN(virt_to_phys(protect), MTK_PROTECT_PA_ALIGN); > > > > - /* Whether the current dram is over 4GB */ > > - data->enable_4GB = !!(max_pfn > (BIT_ULL(32) >> PAGE_SHIFT)); > > - if (!MTK_IOMMU_HAS_FLAG(data->plat_data, HAS_4GB_MODE)) > > - data->enable_4GB = false; > > + data->enable_4GB = false; > > + if (MTK_IOMMU_HAS_FLAG(data->plat_data, HAS_4GB_MODE)) { > > + switch (data->plat_data->m4u_plat) { > > + case M4U_MT2712: > > + p = "mediatek,mt2712-infracfg"; > > + break; > > + case M4U_MT8173: > > + p = "mediatek,mt8173-infracfg"; > > + break; > > + default: > > + p = NULL; > > + } > > + > > + infracfg = syscon_regmap_lookup_by_compatible(p); > > if (MTK_IOMMU_HAS_FLAG(data->plat_data, HAS_4GB_MODE)) { > switch (data->plat_data->m4u_plat) { > case M4U_MT2712: > infracfg = syscon_regmap_lookup_by_compatible("mediatek,mt2712-infracfg"); > break; > case M4U_MT8173: > infracfg = syscon_regmap_lookup_by_compatible("mediatek,mt8173-infracfg"); > break; > default: > infracfg = -ENODEV; > } > > + > > + if (IS_ERR(infracfg)) > > + return PTR_ERR(infracfg); > > + > > + ret = regmap_read(infracfg, REG_INFRA_MISC, &val); > > + if (ret) > > + return ret; > > + data->enable_4GB = !!(val & F_DDR_4GB_SUPPORT_EN); > > + } > > > > res = platform_get_resource(pdev, IORESOURCE_MEM, 0); > > data->base = devm_ioremap_resource(dev, res); > > diff --git a/include/linux/soc/mediatek/infracfg.h b/include/linux/soc/mediatek/infracfg.h > > index fd25f0148566..233463d789c6 100644 > > --- a/include/linux/soc/mediatek/infracfg.h > > +++ b/include/linux/soc/mediatek/infracfg.h > > @@ -32,6 +32,9 @@ > > #define MT7622_TOP_AXI_PROT_EN_WB (BIT(2) | BIT(6) | \ > > BIT(7) | BIT(8)) > > > > +#define REG_INFRA_MISC 0xf00 > > +#define F_DDR_4GB_SUPPORT_EN BIT(13) > > + > > int mtk_infracfg_set_bus_protection(struct regmap *infracfg, u32 mask, > > bool reg_update); > > int mtk_infracfg_clear_bus_protection(struct regmap *infracfg, u32 mask, > > _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel