From mboxrd@z Thu Jan 1 00:00:00 1970 From: CK Hu Subject: Re: [PATCH 28/28] drm/mediatek: Add support for mediatek SOC MT2712 Date: Wed, 13 Jun 2018 15:48:03 +0800 Message-ID: <1528876083.30263.16.camel@mtksdaap41> References: <1528687580-549-1-git-send-email-stu.hsieh@mediatek.com> <1528687580-549-29-git-send-email-stu.hsieh@mediatek.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1528687580-549-29-git-send-email-stu.hsieh@mediatek.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Stu Hsieh Cc: Mark Rutland , devicetree@vger.kernel.org, srv_heupstream@mediatek.com, David Airlie , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Rob Herring , linux-mediatek@lists.infradead.org, Matthias Brugger , linux-arm-kernel@lists.infradead.org List-Id: linux-mediatek@lists.infradead.org SGksIFN0dToKCk9uIE1vbiwgMjAxOC0wNi0xMSBhdCAxMToyNiArMDgwMCwgU3R1IEhzaWVoIHdy b3RlOgo+IFRoaXMgcGF0Y2ggYWRkIHN1cHBvcnQgZm9yIHRoZSBNZWRpYXRlayBNVDI3MTIgRElT UCBzdWJzeXN0ZW0uCj4gVGhlcmUgYXJlIHR3byBPVkwgZW5naW5lIGFuZCB0aHJlZSBkaXNwIG91 dHB1dCBpbiBNVDI3MTIuCj4gCj4gU2lnbmVkLW9mZi1ieTogU3R1IEhzaWVoIDxzdHUuaHNpZWhA bWVkaWF0ZWsuY29tPgoKUmV2aWV3ZWQtYnk6IENLIEh1IDxjay5odSBhdCBtZWRpYXRlay5jb20+ Cgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kZHAuYyB8IDM5ICsr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiAgZHJpdmVycy9ncHUvZHJtL21lZGlh dGVrL210a19kcm1fZHJ2LmMgfCAzOCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysK PiAgMiBmaWxlcyBjaGFuZ2VkLCA3NyBpbnNlcnRpb25zKCspCj4gCj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2RkcC5jIGIvZHJpdmVycy9ncHUvZHJtL21l ZGlhdGVrL210a19kcm1fZGRwLmMKPiBpbmRleCAyOGRkODUzMWE3ZGUuLmMzZmE1NTkxYmZjOCAx MDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kZHAuYwo+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2RkcC5jCj4gQEAgLTY1LDYgKzY1 LDI0IEBACj4gICNkZWZpbmUgTVQ4MTczX01VVEVYX01PRF9ESVNQX1BXTTEJCTI0Cj4gICNkZWZp bmUgTVQ4MTczX01VVEVYX01PRF9ESVNQX09ECQkyNQo+ICAKPiArI2RlZmluZSBNVDI3MTJfTVVU RVhfTU9EX0RJU1BfUFdNMgkJMTAKPiArI2RlZmluZSBNVDI3MTJfTVVURVhfTU9EX0RJU1BfT1ZM MAkJMTEKPiArI2RlZmluZSBNVDI3MTJfTVVURVhfTU9EX0RJU1BfT1ZMMQkJMTIKPiArI2RlZmlu ZSBNVDI3MTJfTVVURVhfTU9EX0RJU1BfUkRNQTAJCTEzCj4gKyNkZWZpbmUgTVQyNzEyX01VVEVY X01PRF9ESVNQX1JETUExCQkxNAo+ICsjZGVmaW5lIE1UMjcxMl9NVVRFWF9NT0RfRElTUF9SRE1B MgkJMTUKPiArI2RlZmluZSBNVDI3MTJfTVVURVhfTU9EX0RJU1BfV0RNQTAJCTE2Cj4gKyNkZWZp bmUgTVQyNzEyX01VVEVYX01PRF9ESVNQX1dETUExCQkxNwo+ICsjZGVmaW5lIE1UMjcxMl9NVVRF WF9NT0RfRElTUF9DT0xPUjAJCTE4Cj4gKyNkZWZpbmUgTVQyNzEyX01VVEVYX01PRF9ESVNQX0NP TE9SMQkJMTkKPiArI2RlZmluZSBNVDI3MTJfTVVURVhfTU9EX0RJU1BfQUFMMAkJMjAKPiArI2Rl ZmluZSBNVDI3MTJfTVVURVhfTU9EX0RJU1BfVUZPRQkJMjIKPiArI2RlZmluZSBNVDI3MTJfTVVU RVhfTU9EX0RJU1BfUFdNMAkJMjMKPiArI2RlZmluZSBNVDI3MTJfTVVURVhfTU9EX0RJU1BfUFdN MQkJMjQKPiArI2RlZmluZSBNVDI3MTJfTVVURVhfTU9EX0RJU1BfT0QwCQkyNQo+ICsjZGVmaW5l IE1UMjcxMl9NVVRFWF9NT0QyX0RJU1BfQUFMMQkJMzMKPiArI2RlZmluZSBNVDI3MTJfTVVURVhf TU9EMl9ESVNQX09EMQkJMzQKPiArCj4gICNkZWZpbmUgTVQyNzAxX01VVEVYX01PRF9ESVNQX09W TAkJMwo+ICAjZGVmaW5lIE1UMjcwMV9NVVRFWF9NT0RfRElTUF9XRE1BCQk2Cj4gICNkZWZpbmUg TVQyNzAxX01VVEVYX01PRF9ESVNQX0NPTE9SCQk3Cj4gQEAgLTEzOCw2ICsxNTYsMjYgQEAgc3Rh dGljIGNvbnN0IHVuc2lnbmVkIGludCBtdDI3MDFfbXV0ZXhfbW9kW0REUF9DT01QT05FTlRfSURf TUFYXSA9IHsKPiAgCVtERFBfQ09NUE9ORU5UX1dETUEwXSA9IE1UMjcwMV9NVVRFWF9NT0RfRElT UF9XRE1BLAo+ICB9Owo+ICAKPiArc3RhdGljIGNvbnN0IHVuc2lnbmVkIGludCBtdDI3MTJfbXV0 ZXhfbW9kW0REUF9DT01QT05FTlRfSURfTUFYXSA9IHsKPiArCVtERFBfQ09NUE9ORU5UX0FBTDBd ID0gTVQyNzEyX01VVEVYX01PRF9ESVNQX0FBTDAsCj4gKwlbRERQX0NPTVBPTkVOVF9BQUwxXSA9 IE1UMjcxMl9NVVRFWF9NT0QyX0RJU1BfQUFMMSwKPiArCVtERFBfQ09NUE9ORU5UX0NPTE9SMF0g PSBNVDI3MTJfTVVURVhfTU9EX0RJU1BfQ09MT1IwLAo+ICsJW0REUF9DT01QT05FTlRfQ09MT1Ix XSA9IE1UMjcxMl9NVVRFWF9NT0RfRElTUF9DT0xPUjEsCj4gKwlbRERQX0NPTVBPTkVOVF9PRDBd ID0gTVQyNzEyX01VVEVYX01PRF9ESVNQX09EMCwKPiArCVtERFBfQ09NUE9ORU5UX09EMV0gPSBN VDI3MTJfTVVURVhfTU9EMl9ESVNQX09EMSwKPiArCVtERFBfQ09NUE9ORU5UX09WTDBdID0gTVQy NzEyX01VVEVYX01PRF9ESVNQX09WTDAsCj4gKwlbRERQX0NPTVBPTkVOVF9PVkwxXSA9IE1UMjcx Ml9NVVRFWF9NT0RfRElTUF9PVkwxLAo+ICsJW0REUF9DT01QT05FTlRfUFdNMF0gPSBNVDI3MTJf TVVURVhfTU9EX0RJU1BfUFdNMCwKPiArCVtERFBfQ09NUE9ORU5UX1BXTTFdID0gTVQyNzEyX01V VEVYX01PRF9ESVNQX1BXTTEsCj4gKwlbRERQX0NPTVBPTkVOVF9QV00yXSA9IE1UMjcxMl9NVVRF WF9NT0RfRElTUF9QV00yLAo+ICsJW0REUF9DT01QT05FTlRfUkRNQTBdID0gTVQyNzEyX01VVEVY X01PRF9ESVNQX1JETUEwLAo+ICsJW0REUF9DT01QT05FTlRfUkRNQTFdID0gTVQyNzEyX01VVEVY X01PRF9ESVNQX1JETUExLAo+ICsJW0REUF9DT01QT05FTlRfUkRNQTJdID0gTVQyNzEyX01VVEVY X01PRF9ESVNQX1JETUEyLAo+ICsJW0REUF9DT01QT05FTlRfVUZPRV0gPSBNVDI3MTJfTVVURVhf TU9EX0RJU1BfVUZPRSwKPiArCVtERFBfQ09NUE9ORU5UX1dETUEwXSA9IE1UMjcxMl9NVVRFWF9N T0RfRElTUF9XRE1BMCwKPiArCVtERFBfQ09NUE9ORU5UX1dETUExXSA9IE1UMjcxMl9NVVRFWF9N T0RfRElTUF9XRE1BMSwKPiArfTsKPiArCj4gIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBpbnQgbXQ4 MTczX211dGV4X21vZFtERFBfQ09NUE9ORU5UX0lEX01BWF0gPSB7Cj4gIAlbRERQX0NPTVBPTkVO VF9BQUwwXSA9IE1UODE3M19NVVRFWF9NT0RfRElTUF9BQUwsCj4gIAlbRERQX0NPTVBPTkVOVF9D T0xPUjBdID0gTVQ4MTczX01VVEVYX01PRF9ESVNQX0NPTE9SMCwKPiBAQCAtNTMzLDYgKzU3MSw3 IEBAIHN0YXRpYyBpbnQgbXRrX2RkcF9yZW1vdmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRl dikKPiAgCj4gIHN0YXRpYyBjb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNlX2lkIGRkcF9kcml2ZXJfZHRf bWF0Y2hbXSA9IHsKPiAgCXsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQyNzAxLWRpc3AtbXV0 ZXgiLCAuZGF0YSA9IG10MjcwMV9tdXRleF9tb2R9LAo+ICsJeyAuY29tcGF0aWJsZSA9ICJtZWRp YXRlayxtdDI3MTItZGlzcC1tdXRleCIsIC5kYXRhID0gbXQyNzEyX211dGV4X21vZH0sCj4gIAl7 IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE3My1kaXNwLW11dGV4IiwgLmRhdGEgPSBtdDgx NzNfbXV0ZXhfbW9kfSwKPiAgCXt9LAo+ICB9Owo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vbWVkaWF0ZWsvbXRrX2RybV9kcnYuYyBiL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtf ZHJtX2Rydi5jCj4gaW5kZXggM2QyNzlhMjk5MzgzLi4zYTg2NmUxZDZhZjQgMTAwNjQ0Cj4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZHJ2LmMKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kcnYuYwo+IEBAIC0xNDYsNiArMTQ2LDMyIEBAIHN0 YXRpYyBjb25zdCBlbnVtIG10a19kZHBfY29tcF9pZCBtdDI3MDFfbXRrX2RkcF9leHRbXSA9IHsK PiAgCUREUF9DT01QT05FTlRfRFBJMCwKPiAgfTsKPiAgCj4gK3N0YXRpYyBjb25zdCBlbnVtIG10 a19kZHBfY29tcF9pZCBtdDI3MTJfbXRrX2RkcF9tYWluW10gPSB7Cj4gKwlERFBfQ09NUE9ORU5U X09WTDAsCj4gKwlERFBfQ09NUE9ORU5UX0NPTE9SMCwKPiArCUREUF9DT01QT05FTlRfQUFMMCwK PiArCUREUF9DT01QT05FTlRfT0QwLAo+ICsJRERQX0NPTVBPTkVOVF9SRE1BMCwKPiArCUREUF9D T01QT05FTlRfRFBJMCwKPiArCUREUF9DT01QT05FTlRfUFdNMCwKPiArfTsKPiArCj4gK3N0YXRp YyBjb25zdCBlbnVtIG10a19kZHBfY29tcF9pZCBtdDI3MTJfbXRrX2RkcF9leHRbXSA9IHsKPiAr CUREUF9DT01QT05FTlRfT1ZMMSwKPiArCUREUF9DT01QT05FTlRfQ09MT1IxLAo+ICsJRERQX0NP TVBPTkVOVF9BQUwxLAo+ICsJRERQX0NPTVBPTkVOVF9PRDEsCj4gKwlERFBfQ09NUE9ORU5UX1JE TUExLAo+ICsJRERQX0NPTVBPTkVOVF9EUEkxLAo+ICsJRERQX0NPTVBPTkVOVF9QV00xLAo+ICt9 Owo+ICsKPiArc3RhdGljIGNvbnN0IGVudW0gbXRrX2RkcF9jb21wX2lkIG10MjcxMl9tdGtfZGRw X3RoaXJkW10gPSB7Cj4gKwlERFBfQ09NUE9ORU5UX1JETUEyLAo+ICsJRERQX0NPTVBPTkVOVF9E U0kzLAo+ICsJRERQX0NPTVBPTkVOVF9QV00yLAo+ICt9Owo+ICsKPiAgc3RhdGljIGNvbnN0IGVu dW0gbXRrX2RkcF9jb21wX2lkIG10ODE3M19tdGtfZGRwX21haW5bXSA9IHsKPiAgCUREUF9DT01Q T05FTlRfT1ZMMCwKPiAgCUREUF9DT01QT05FTlRfQ09MT1IwLAo+IEBAIC0xNzMsNiArMTk5LDE1 IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgbXRrX21tc3lzX2RyaXZlcl9kYXRhIG10MjcwMV9tbXN5 c19kcml2ZXJfZGF0YSA9IHsKPiAgCS5zaGFkb3dfcmVnaXN0ZXIgPSB0cnVlLAo+ICB9Owo+ICAK PiArc3RhdGljIGNvbnN0IHN0cnVjdCBtdGtfbW1zeXNfZHJpdmVyX2RhdGEgbXQyNzEyX21tc3lz X2RyaXZlcl9kYXRhID0gewo+ICsJLm1haW5fcGF0aCA9IG10MjcxMl9tdGtfZGRwX21haW4sCj4g KwkubWFpbl9sZW4gPSBBUlJBWV9TSVpFKG10MjcxMl9tdGtfZGRwX21haW4pLAo+ICsJLmV4dF9w YXRoID0gbXQyNzEyX210a19kZHBfZXh0LAo+ICsJLmV4dF9sZW4gPSBBUlJBWV9TSVpFKG10Mjcx Ml9tdGtfZGRwX2V4dCksCj4gKwkudGhpcmRfcGF0aCA9IG10MjcxMl9tdGtfZGRwX3RoaXJkLAo+ ICsJLnRoaXJkX2xlbiA9IEFSUkFZX1NJWkUobXQyNzEyX210a19kZHBfdGhpcmQpLAo+ICt9Owo+ ICsKPiAgc3RhdGljIGNvbnN0IHN0cnVjdCBtdGtfbW1zeXNfZHJpdmVyX2RhdGEgbXQ4MTczX21t c3lzX2RyaXZlcl9kYXRhID0gewo+ICAJLm1haW5fcGF0aCA9IG10ODE3M19tdGtfZGRwX21haW4s Cj4gIAkubWFpbl9sZW4gPSBBUlJBWV9TSVpFKG10ODE3M19tdGtfZGRwX21haW4pLAo+IEBAIC0z NzksNiArNDE0LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgbXRrX2RkcF9j b21wX2R0X2lkc1tdID0gewo+ICAJeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxNzMtZHNp IiwgICAgICAgIC5kYXRhID0gKHZvaWQgKilNVEtfRFNJIH0sCj4gIAl7IC5jb21wYXRpYmxlID0g Im1lZGlhdGVrLG10ODE3My1kcGkiLCAgICAgICAgLmRhdGEgPSAodm9pZCAqKU1US19EUEkgfSwK PiAgCXsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQyNzAxLWRpc3AtbXV0ZXgiLCAuZGF0YSA9 ICh2b2lkICopTVRLX0RJU1BfTVVURVggfSwKPiArCXsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWss bXQyNzEyLWRpc3AtbXV0ZXgiLCAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfTVVURVggfSwKPiAg CXsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQ4MTczLWRpc3AtbXV0ZXgiLCAuZGF0YSA9ICh2 b2lkICopTVRLX0RJU1BfTVVURVggfSwKPiAgCXsgLmNvbXBhdGlibGUgPSAibWVkaWF0ZWssbXQy NzAxLWRpc3AtcHdtIiwgICAuZGF0YSA9ICh2b2lkICopTVRLX0RJU1BfQkxTIH0sCj4gIAl7IC5j b21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE3My1kaXNwLXB3bSIsICAgLmRhdGEgPSAodm9pZCAq KU1US19ESVNQX1BXTSB9LAo+IEBAIC01NTcsNiArNTkzLDggQEAgc3RhdGljIFNJTVBMRV9ERVZf UE1fT1BTKG10a19kcm1fcG1fb3BzLCBtdGtfZHJtX3N5c19zdXNwZW5kLAo+ICBzdGF0aWMgY29u c3Qgc3RydWN0IG9mX2RldmljZV9pZCBtdGtfZHJtX29mX2lkc1tdID0gewo+ICAJeyAuY29tcGF0 aWJsZSA9ICJtZWRpYXRlayxtdDI3MDEtbW1zeXMiLAo+ICAJICAuZGF0YSA9ICZtdDI3MDFfbW1z eXNfZHJpdmVyX2RhdGF9LAo+ICsJeyAuY29tcGF0aWJsZSA9ICJtZWRpYXRlayxtdDI3MTItbW1z eXMiLAo+ICsJICAuZGF0YSA9ICZtdDI3MTJfbW1zeXNfZHJpdmVyX2RhdGF9LAo+ICAJeyAuY29t cGF0aWJsZSA9ICJtZWRpYXRlayxtdDgxNzMtbW1zeXMiLAo+ICAJICAuZGF0YSA9ICZtdDgxNzNf bW1zeXNfZHJpdmVyX2RhdGF9LAo+ICAJeyB9CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vZHJpLWRldmVsCg== From mboxrd@z Thu Jan 1 00:00:00 1970 From: ck.hu@mediatek.com (CK Hu) Date: Wed, 13 Jun 2018 15:48:03 +0800 Subject: [PATCH 28/28] drm/mediatek: Add support for mediatek SOC MT2712 In-Reply-To: <1528687580-549-29-git-send-email-stu.hsieh@mediatek.com> References: <1528687580-549-1-git-send-email-stu.hsieh@mediatek.com> <1528687580-549-29-git-send-email-stu.hsieh@mediatek.com> Message-ID: <1528876083.30263.16.camel@mtksdaap41> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi, Stu: On Mon, 2018-06-11 at 11:26 +0800, Stu Hsieh wrote: > This patch add support for the Mediatek MT2712 DISP subsystem. > There are two OVL engine and three disp output in MT2712. > > Signed-off-by: Stu Hsieh Reviewed-by: CK Hu > --- > drivers/gpu/drm/mediatek/mtk_drm_ddp.c | 39 ++++++++++++++++++++++++++++++++++ > drivers/gpu/drm/mediatek/mtk_drm_drv.c | 38 +++++++++++++++++++++++++++++++++ > 2 files changed, 77 insertions(+) > > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_ddp.c b/drivers/gpu/drm/mediatek/mtk_drm_ddp.c > index 28dd8531a7de..c3fa5591bfc8 100644 > --- a/drivers/gpu/drm/mediatek/mtk_drm_ddp.c > +++ b/drivers/gpu/drm/mediatek/mtk_drm_ddp.c > @@ -65,6 +65,24 @@ > #define MT8173_MUTEX_MOD_DISP_PWM1 24 > #define MT8173_MUTEX_MOD_DISP_OD 25 > > +#define MT2712_MUTEX_MOD_DISP_PWM2 10 > +#define MT2712_MUTEX_MOD_DISP_OVL0 11 > +#define MT2712_MUTEX_MOD_DISP_OVL1 12 > +#define MT2712_MUTEX_MOD_DISP_RDMA0 13 > +#define MT2712_MUTEX_MOD_DISP_RDMA1 14 > +#define MT2712_MUTEX_MOD_DISP_RDMA2 15 > +#define MT2712_MUTEX_MOD_DISP_WDMA0 16 > +#define MT2712_MUTEX_MOD_DISP_WDMA1 17 > +#define MT2712_MUTEX_MOD_DISP_COLOR0 18 > +#define MT2712_MUTEX_MOD_DISP_COLOR1 19 > +#define MT2712_MUTEX_MOD_DISP_AAL0 20 > +#define MT2712_MUTEX_MOD_DISP_UFOE 22 > +#define MT2712_MUTEX_MOD_DISP_PWM0 23 > +#define MT2712_MUTEX_MOD_DISP_PWM1 24 > +#define MT2712_MUTEX_MOD_DISP_OD0 25 > +#define MT2712_MUTEX_MOD2_DISP_AAL1 33 > +#define MT2712_MUTEX_MOD2_DISP_OD1 34 > + > #define MT2701_MUTEX_MOD_DISP_OVL 3 > #define MT2701_MUTEX_MOD_DISP_WDMA 6 > #define MT2701_MUTEX_MOD_DISP_COLOR 7 > @@ -138,6 +156,26 @@ static const unsigned int mt2701_mutex_mod[DDP_COMPONENT_ID_MAX] = { > [DDP_COMPONENT_WDMA0] = MT2701_MUTEX_MOD_DISP_WDMA, > }; > > +static const unsigned int mt2712_mutex_mod[DDP_COMPONENT_ID_MAX] = { > + [DDP_COMPONENT_AAL0] = MT2712_MUTEX_MOD_DISP_AAL0, > + [DDP_COMPONENT_AAL1] = MT2712_MUTEX_MOD2_DISP_AAL1, > + [DDP_COMPONENT_COLOR0] = MT2712_MUTEX_MOD_DISP_COLOR0, > + [DDP_COMPONENT_COLOR1] = MT2712_MUTEX_MOD_DISP_COLOR1, > + [DDP_COMPONENT_OD0] = MT2712_MUTEX_MOD_DISP_OD0, > + [DDP_COMPONENT_OD1] = MT2712_MUTEX_MOD2_DISP_OD1, > + [DDP_COMPONENT_OVL0] = MT2712_MUTEX_MOD_DISP_OVL0, > + [DDP_COMPONENT_OVL1] = MT2712_MUTEX_MOD_DISP_OVL1, > + [DDP_COMPONENT_PWM0] = MT2712_MUTEX_MOD_DISP_PWM0, > + [DDP_COMPONENT_PWM1] = MT2712_MUTEX_MOD_DISP_PWM1, > + [DDP_COMPONENT_PWM2] = MT2712_MUTEX_MOD_DISP_PWM2, > + [DDP_COMPONENT_RDMA0] = MT2712_MUTEX_MOD_DISP_RDMA0, > + [DDP_COMPONENT_RDMA1] = MT2712_MUTEX_MOD_DISP_RDMA1, > + [DDP_COMPONENT_RDMA2] = MT2712_MUTEX_MOD_DISP_RDMA2, > + [DDP_COMPONENT_UFOE] = MT2712_MUTEX_MOD_DISP_UFOE, > + [DDP_COMPONENT_WDMA0] = MT2712_MUTEX_MOD_DISP_WDMA0, > + [DDP_COMPONENT_WDMA1] = MT2712_MUTEX_MOD_DISP_WDMA1, > +}; > + > static const unsigned int mt8173_mutex_mod[DDP_COMPONENT_ID_MAX] = { > [DDP_COMPONENT_AAL0] = MT8173_MUTEX_MOD_DISP_AAL, > [DDP_COMPONENT_COLOR0] = MT8173_MUTEX_MOD_DISP_COLOR0, > @@ -533,6 +571,7 @@ static int mtk_ddp_remove(struct platform_device *pdev) > > static const struct of_device_id ddp_driver_dt_match[] = { > { .compatible = "mediatek,mt2701-disp-mutex", .data = mt2701_mutex_mod}, > + { .compatible = "mediatek,mt2712-disp-mutex", .data = mt2712_mutex_mod}, > { .compatible = "mediatek,mt8173-disp-mutex", .data = mt8173_mutex_mod}, > {}, > }; > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c > index 3d279a299383..3a866e1d6af4 100644 > --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c > +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c > @@ -146,6 +146,32 @@ static const enum mtk_ddp_comp_id mt2701_mtk_ddp_ext[] = { > DDP_COMPONENT_DPI0, > }; > > +static const enum mtk_ddp_comp_id mt2712_mtk_ddp_main[] = { > + DDP_COMPONENT_OVL0, > + DDP_COMPONENT_COLOR0, > + DDP_COMPONENT_AAL0, > + DDP_COMPONENT_OD0, > + DDP_COMPONENT_RDMA0, > + DDP_COMPONENT_DPI0, > + DDP_COMPONENT_PWM0, > +}; > + > +static const enum mtk_ddp_comp_id mt2712_mtk_ddp_ext[] = { > + DDP_COMPONENT_OVL1, > + DDP_COMPONENT_COLOR1, > + DDP_COMPONENT_AAL1, > + DDP_COMPONENT_OD1, > + DDP_COMPONENT_RDMA1, > + DDP_COMPONENT_DPI1, > + DDP_COMPONENT_PWM1, > +}; > + > +static const enum mtk_ddp_comp_id mt2712_mtk_ddp_third[] = { > + DDP_COMPONENT_RDMA2, > + DDP_COMPONENT_DSI3, > + DDP_COMPONENT_PWM2, > +}; > + > static const enum mtk_ddp_comp_id mt8173_mtk_ddp_main[] = { > DDP_COMPONENT_OVL0, > DDP_COMPONENT_COLOR0, > @@ -173,6 +199,15 @@ static const struct mtk_mmsys_driver_data mt2701_mmsys_driver_data = { > .shadow_register = true, > }; > > +static const struct mtk_mmsys_driver_data mt2712_mmsys_driver_data = { > + .main_path = mt2712_mtk_ddp_main, > + .main_len = ARRAY_SIZE(mt2712_mtk_ddp_main), > + .ext_path = mt2712_mtk_ddp_ext, > + .ext_len = ARRAY_SIZE(mt2712_mtk_ddp_ext), > + .third_path = mt2712_mtk_ddp_third, > + .third_len = ARRAY_SIZE(mt2712_mtk_ddp_third), > +}; > + > static const struct mtk_mmsys_driver_data mt8173_mmsys_driver_data = { > .main_path = mt8173_mtk_ddp_main, > .main_len = ARRAY_SIZE(mt8173_mtk_ddp_main), > @@ -379,6 +414,7 @@ static const struct of_device_id mtk_ddp_comp_dt_ids[] = { > { .compatible = "mediatek,mt8173-dsi", .data = (void *)MTK_DSI }, > { .compatible = "mediatek,mt8173-dpi", .data = (void *)MTK_DPI }, > { .compatible = "mediatek,mt2701-disp-mutex", .data = (void *)MTK_DISP_MUTEX }, > + { .compatible = "mediatek,mt2712-disp-mutex", .data = (void *)MTK_DISP_MUTEX }, > { .compatible = "mediatek,mt8173-disp-mutex", .data = (void *)MTK_DISP_MUTEX }, > { .compatible = "mediatek,mt2701-disp-pwm", .data = (void *)MTK_DISP_BLS }, > { .compatible = "mediatek,mt8173-disp-pwm", .data = (void *)MTK_DISP_PWM }, > @@ -557,6 +593,8 @@ static SIMPLE_DEV_PM_OPS(mtk_drm_pm_ops, mtk_drm_sys_suspend, > static const struct of_device_id mtk_drm_of_ids[] = { > { .compatible = "mediatek,mt2701-mmsys", > .data = &mt2701_mmsys_driver_data}, > + { .compatible = "mediatek,mt2712-mmsys", > + .data = &mt2712_mmsys_driver_data}, > { .compatible = "mediatek,mt8173-mmsys", > .data = &mt8173_mmsys_driver_data}, > { } 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=-0.7 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,UNPARSEABLE_RELAY,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by aws-us-west-2-korg-lkml-1.web.codeaurora.org (Postfix) with ESMTP id 57993C004E4 for ; Wed, 13 Jun 2018 07:48:11 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 0BACC208AF for ; Wed, 13 Jun 2018 07:48:11 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 0BACC208AF Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=mediatek.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934412AbeFMHsI (ORCPT ); Wed, 13 Jun 2018 03:48:08 -0400 Received: from mailgw02.mediatek.com ([210.61.82.184]:31099 "EHLO mailgw02.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S933704AbeFMHsH (ORCPT ); Wed, 13 Jun 2018 03:48:07 -0400 X-UUID: 7b897cff282d4fa0bd4f0c8fb70443c1-20180613 Received: from mtkexhb02.mediatek.inc [(172.21.101.103)] by mailgw02.mediatek.com (envelope-from ) (mhqrelay.mediatek.com ESMTP with TLS) with ESMTP id 674066135; Wed, 13 Jun 2018 15:48:05 +0800 Received: from mtkcas09.mediatek.inc (172.21.101.178) by mtkmbs03n1.mediatek.inc (172.21.101.181) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Wed, 13 Jun 2018 15:48:03 +0800 Received: from [172.21.77.4] (172.21.77.4) by mtkcas09.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1210.3 via Frontend Transport; Wed, 13 Jun 2018 15:48:03 +0800 Message-ID: <1528876083.30263.16.camel@mtksdaap41> Subject: Re: [PATCH 28/28] drm/mediatek: Add support for mediatek SOC MT2712 From: CK Hu To: Stu Hsieh CC: Philipp Zabel , David Airlie , Rob Herring , Mark Rutland , Matthias Brugger , , , , , , Date: Wed, 13 Jun 2018 15:48:03 +0800 In-Reply-To: <1528687580-549-29-git-send-email-stu.hsieh@mediatek.com> References: <1528687580-549-1-git-send-email-stu.hsieh@mediatek.com> <1528687580-549-29-git-send-email-stu.hsieh@mediatek.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.10.4-0ubuntu2 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-MTK: N Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, Stu: On Mon, 2018-06-11 at 11:26 +0800, Stu Hsieh wrote: > This patch add support for the Mediatek MT2712 DISP subsystem. > There are two OVL engine and three disp output in MT2712. > > Signed-off-by: Stu Hsieh Reviewed-by: CK Hu > --- > drivers/gpu/drm/mediatek/mtk_drm_ddp.c | 39 ++++++++++++++++++++++++++++++++++ > drivers/gpu/drm/mediatek/mtk_drm_drv.c | 38 +++++++++++++++++++++++++++++++++ > 2 files changed, 77 insertions(+) > > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_ddp.c b/drivers/gpu/drm/mediatek/mtk_drm_ddp.c > index 28dd8531a7de..c3fa5591bfc8 100644 > --- a/drivers/gpu/drm/mediatek/mtk_drm_ddp.c > +++ b/drivers/gpu/drm/mediatek/mtk_drm_ddp.c > @@ -65,6 +65,24 @@ > #define MT8173_MUTEX_MOD_DISP_PWM1 24 > #define MT8173_MUTEX_MOD_DISP_OD 25 > > +#define MT2712_MUTEX_MOD_DISP_PWM2 10 > +#define MT2712_MUTEX_MOD_DISP_OVL0 11 > +#define MT2712_MUTEX_MOD_DISP_OVL1 12 > +#define MT2712_MUTEX_MOD_DISP_RDMA0 13 > +#define MT2712_MUTEX_MOD_DISP_RDMA1 14 > +#define MT2712_MUTEX_MOD_DISP_RDMA2 15 > +#define MT2712_MUTEX_MOD_DISP_WDMA0 16 > +#define MT2712_MUTEX_MOD_DISP_WDMA1 17 > +#define MT2712_MUTEX_MOD_DISP_COLOR0 18 > +#define MT2712_MUTEX_MOD_DISP_COLOR1 19 > +#define MT2712_MUTEX_MOD_DISP_AAL0 20 > +#define MT2712_MUTEX_MOD_DISP_UFOE 22 > +#define MT2712_MUTEX_MOD_DISP_PWM0 23 > +#define MT2712_MUTEX_MOD_DISP_PWM1 24 > +#define MT2712_MUTEX_MOD_DISP_OD0 25 > +#define MT2712_MUTEX_MOD2_DISP_AAL1 33 > +#define MT2712_MUTEX_MOD2_DISP_OD1 34 > + > #define MT2701_MUTEX_MOD_DISP_OVL 3 > #define MT2701_MUTEX_MOD_DISP_WDMA 6 > #define MT2701_MUTEX_MOD_DISP_COLOR 7 > @@ -138,6 +156,26 @@ static const unsigned int mt2701_mutex_mod[DDP_COMPONENT_ID_MAX] = { > [DDP_COMPONENT_WDMA0] = MT2701_MUTEX_MOD_DISP_WDMA, > }; > > +static const unsigned int mt2712_mutex_mod[DDP_COMPONENT_ID_MAX] = { > + [DDP_COMPONENT_AAL0] = MT2712_MUTEX_MOD_DISP_AAL0, > + [DDP_COMPONENT_AAL1] = MT2712_MUTEX_MOD2_DISP_AAL1, > + [DDP_COMPONENT_COLOR0] = MT2712_MUTEX_MOD_DISP_COLOR0, > + [DDP_COMPONENT_COLOR1] = MT2712_MUTEX_MOD_DISP_COLOR1, > + [DDP_COMPONENT_OD0] = MT2712_MUTEX_MOD_DISP_OD0, > + [DDP_COMPONENT_OD1] = MT2712_MUTEX_MOD2_DISP_OD1, > + [DDP_COMPONENT_OVL0] = MT2712_MUTEX_MOD_DISP_OVL0, > + [DDP_COMPONENT_OVL1] = MT2712_MUTEX_MOD_DISP_OVL1, > + [DDP_COMPONENT_PWM0] = MT2712_MUTEX_MOD_DISP_PWM0, > + [DDP_COMPONENT_PWM1] = MT2712_MUTEX_MOD_DISP_PWM1, > + [DDP_COMPONENT_PWM2] = MT2712_MUTEX_MOD_DISP_PWM2, > + [DDP_COMPONENT_RDMA0] = MT2712_MUTEX_MOD_DISP_RDMA0, > + [DDP_COMPONENT_RDMA1] = MT2712_MUTEX_MOD_DISP_RDMA1, > + [DDP_COMPONENT_RDMA2] = MT2712_MUTEX_MOD_DISP_RDMA2, > + [DDP_COMPONENT_UFOE] = MT2712_MUTEX_MOD_DISP_UFOE, > + [DDP_COMPONENT_WDMA0] = MT2712_MUTEX_MOD_DISP_WDMA0, > + [DDP_COMPONENT_WDMA1] = MT2712_MUTEX_MOD_DISP_WDMA1, > +}; > + > static const unsigned int mt8173_mutex_mod[DDP_COMPONENT_ID_MAX] = { > [DDP_COMPONENT_AAL0] = MT8173_MUTEX_MOD_DISP_AAL, > [DDP_COMPONENT_COLOR0] = MT8173_MUTEX_MOD_DISP_COLOR0, > @@ -533,6 +571,7 @@ static int mtk_ddp_remove(struct platform_device *pdev) > > static const struct of_device_id ddp_driver_dt_match[] = { > { .compatible = "mediatek,mt2701-disp-mutex", .data = mt2701_mutex_mod}, > + { .compatible = "mediatek,mt2712-disp-mutex", .data = mt2712_mutex_mod}, > { .compatible = "mediatek,mt8173-disp-mutex", .data = mt8173_mutex_mod}, > {}, > }; > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c > index 3d279a299383..3a866e1d6af4 100644 > --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c > +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c > @@ -146,6 +146,32 @@ static const enum mtk_ddp_comp_id mt2701_mtk_ddp_ext[] = { > DDP_COMPONENT_DPI0, > }; > > +static const enum mtk_ddp_comp_id mt2712_mtk_ddp_main[] = { > + DDP_COMPONENT_OVL0, > + DDP_COMPONENT_COLOR0, > + DDP_COMPONENT_AAL0, > + DDP_COMPONENT_OD0, > + DDP_COMPONENT_RDMA0, > + DDP_COMPONENT_DPI0, > + DDP_COMPONENT_PWM0, > +}; > + > +static const enum mtk_ddp_comp_id mt2712_mtk_ddp_ext[] = { > + DDP_COMPONENT_OVL1, > + DDP_COMPONENT_COLOR1, > + DDP_COMPONENT_AAL1, > + DDP_COMPONENT_OD1, > + DDP_COMPONENT_RDMA1, > + DDP_COMPONENT_DPI1, > + DDP_COMPONENT_PWM1, > +}; > + > +static const enum mtk_ddp_comp_id mt2712_mtk_ddp_third[] = { > + DDP_COMPONENT_RDMA2, > + DDP_COMPONENT_DSI3, > + DDP_COMPONENT_PWM2, > +}; > + > static const enum mtk_ddp_comp_id mt8173_mtk_ddp_main[] = { > DDP_COMPONENT_OVL0, > DDP_COMPONENT_COLOR0, > @@ -173,6 +199,15 @@ static const struct mtk_mmsys_driver_data mt2701_mmsys_driver_data = { > .shadow_register = true, > }; > > +static const struct mtk_mmsys_driver_data mt2712_mmsys_driver_data = { > + .main_path = mt2712_mtk_ddp_main, > + .main_len = ARRAY_SIZE(mt2712_mtk_ddp_main), > + .ext_path = mt2712_mtk_ddp_ext, > + .ext_len = ARRAY_SIZE(mt2712_mtk_ddp_ext), > + .third_path = mt2712_mtk_ddp_third, > + .third_len = ARRAY_SIZE(mt2712_mtk_ddp_third), > +}; > + > static const struct mtk_mmsys_driver_data mt8173_mmsys_driver_data = { > .main_path = mt8173_mtk_ddp_main, > .main_len = ARRAY_SIZE(mt8173_mtk_ddp_main), > @@ -379,6 +414,7 @@ static const struct of_device_id mtk_ddp_comp_dt_ids[] = { > { .compatible = "mediatek,mt8173-dsi", .data = (void *)MTK_DSI }, > { .compatible = "mediatek,mt8173-dpi", .data = (void *)MTK_DPI }, > { .compatible = "mediatek,mt2701-disp-mutex", .data = (void *)MTK_DISP_MUTEX }, > + { .compatible = "mediatek,mt2712-disp-mutex", .data = (void *)MTK_DISP_MUTEX }, > { .compatible = "mediatek,mt8173-disp-mutex", .data = (void *)MTK_DISP_MUTEX }, > { .compatible = "mediatek,mt2701-disp-pwm", .data = (void *)MTK_DISP_BLS }, > { .compatible = "mediatek,mt8173-disp-pwm", .data = (void *)MTK_DISP_PWM }, > @@ -557,6 +593,8 @@ static SIMPLE_DEV_PM_OPS(mtk_drm_pm_ops, mtk_drm_sys_suspend, > static const struct of_device_id mtk_drm_of_ids[] = { > { .compatible = "mediatek,mt2701-mmsys", > .data = &mt2701_mmsys_driver_data}, > + { .compatible = "mediatek,mt2712-mmsys", > + .data = &mt2712_mmsys_driver_data}, > { .compatible = "mediatek,mt8173-mmsys", > .data = &mt8173_mmsys_driver_data}, > { }