From: Daniel Vetter Subject: Re: [PATCH] drm/msm/mdp4: Support NV12MT format in mdp4 Date: Wed, 20 May 2015 17:32:17 +0200 Message-ID: <20150520153217.GH15256@phenom.ffwll.local> References: <1432134927-16331-1-git-send-email-robdclark@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wi0-f182.google.com (mail-wi0-f182.google.com [209.85.212.182]) by gabe.freedesktop.org (Postfix) with ESMTP id 6F0EA6E799 for ; Wed, 20 May 2015 08:29:51 -0700 (PDT) Received: by wicmx19 with SMTP id mx19so159274461wic.0 for ; Wed, 20 May 2015 08:29:50 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1432134927-16331-1-git-send-email-robdclark@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Rob Clark Cc: linux-arm-msm@vger.kernel.org, freedreno@lists.freedesktop.org, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gV2VkLCBNYXkgMjAsIDIwMTUgYXQgMTE6MTU6MjdBTSAtMDQwMCwgUm9iIENsYXJrIHdyb3Rl Ogo+IFVzaW5nIGZiIG1vZGlmaWVyIGZsYWcsIHN1cHBvcnQgTlYxMk1UIGZvcm1hdCBpbiBNRFA0 Lgo+IAo+IHYyOgo+IC0gcmV3b3JrIHRoZSBtb2RpZmllcidzIGRlc2NyaXB0aW9uIFtEYW5pZWwg VmV0dGVyJ3MgY29tbWVudF0KPiAtIGRyb3AgLnNldF9tb2RlX2NvbmZpZygpIGNhbGxiYWNrIFtS b2IgQ2xhcmsncyBjb21tZW50XQo+IHYzOgo+IC0gY2hhbmdlIFZFTkRPUidzIG5hbWUgYW5kIHJl c3RyaWN0IHVzYWdlIHRvIE5WMTIgW3BvaW50ZWQgYnkgRGFuaWVsXQo+IAo+IFNpZ25lZC1vZmYt Ynk6IFJvYiBDbGFyayA8cm9iZGNsYXJrQGdtYWlsLmNvbT4KPiAtLS0KPiAgZHJpdmVycy9ncHUv ZHJtL2RybV9jcnRjLmMgICAgICAgICAgICAgICAgfCAxNCArKysrKysrKysrKysrKwo+ICBkcml2 ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA0L21kcDRfa21zLmMgICB8ICAyICsrCj4gIGRyaXZlcnMv Z3B1L2RybS9tc20vbWRwL21kcDQvbWRwNF9wbGFuZS5jIHwgMjIgKysrKysrKysrKysrKysrKysr KysrKwo+ICBpbmNsdWRlL3VhcGkvZHJtL2RybV9mb3VyY2MuaCAgICAgICAgICAgICB8IDE1ICsr KysrKysrKysrKysrKwo+ICA0IGZpbGVzIGNoYW5nZWQsIDUzIGluc2VydGlvbnMoKykKPiAKPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjLmMgYi9kcml2ZXJzL2dwdS9kcm0v ZHJtX2NydGMuYwo+IGluZGV4IDMwMDdiNDQuLmVkNWQzZjkgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2RybV9jcnRjLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGMuYwo+ IEBAIC0zMzA0LDYgKzMzMDQsMjAgQEAgc3RhdGljIGludCBmcmFtZWJ1ZmZlcl9jaGVjayhjb25z dCBzdHJ1Y3QgZHJtX21vZGVfZmJfY21kMiAqcikKPiAgCQkJCSAgICAgIHItPm1vZGlmaWVyW2ld LCBpKTsKPiAgCQkJcmV0dXJuIC1FSU5WQUw7Cj4gIAkJfQo+ICsKPiArCQkvKiBtb2RpZmllciBz cGVjaWZpYyBjaGVja3M6ICovCj4gKwkJc3dpdGNoIChyLT5tb2RpZmllcltpXSkgewo+ICsJCWNh c2UgRFJNX0ZPUk1BVF9NT0RfU0FNU1VOR182NF8zMl9USUxFOgo+ICsJCQlpZiAoci0+cGl4ZWxf Zm9ybWF0ICE9IERSTV9GT1JNQVRfTlYxMiB8fAo+ICsJCQkJCXdpZHRoICUgMTI4IHx8IGhlaWdo dCAlIDMyKSB7Cj4gKwkJCQlEUk1fREVCVUdfS01TKCJiYWQgbW9kaWZpZXIgZGF0YSBmb3IgcGxh bmUgJWRcbiIsIGkpOwo+ICsJCQkJcmV0dXJuIC1FSU5WQUw7Cj4gKwkJCX0KClNob3VsZCB3ZSBh bHNvIGNoZWNrIHRoYXQgdGhlIHN0cmlkZSBtYXRjaGVzIHRoZSBtYWNyb2Jsb2NrIHNpemU/IGxn dG0Kb3RoZXJ3aXNlLgotRGFuaWVsCgo+ICsJCQlicmVhazsKPiArCj4gKwkJZGVmYXVsdDoKPiAr CQkJYnJlYWs7Cj4gKwkJfQo+ICAJfQo+ICAKPiAgCXJldHVybiAwOwo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA0L21kcDRfa21zLmMgYi9kcml2ZXJzL2dwdS9kcm0v bXNtL21kcC9tZHA0L21kcDRfa21zLmMKPiBpbmRleCBkODQ3Yjk0Li44OGE3NWNiIDEwMDY0NAo+ IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDQvbWRwNF9rbXMuYwo+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDQvbWRwNF9rbXMuYwo+IEBAIC0xMTksNiArMTE5LDgg QEAgc3RhdGljIGludCBtZHA0X2h3X2luaXQoc3RydWN0IG1zbV9rbXMgKmttcykKPiAgCWlmICht ZHA0X2ttcy0+cmV2ID4gMSkKPiAgCQltZHA0X3dyaXRlKG1kcDRfa21zLCBSRUdfTURQNF9SRVNF VF9TVEFUVVMsIDEpOwo+ICAKPiArCWRldi0+bW9kZV9jb25maWcuYWxsb3dfZmJfbW9kaWZpZXJz ID0gdHJ1ZTsKPiArCj4gIG91dDoKPiAgCXBtX3J1bnRpbWVfcHV0X3N5bmMoZGV2LT5kZXYpOwo+ ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNC9tZHA0X3BsYW5l LmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA0L21kcDRfcGxhbmUuYwo+IGluZGV4IGRi YzA2ODkuLjBkMWRiYjcgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRw NC9tZHA0X3BsYW5lLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA0L21kcDRf cGxhbmUuYwo+IEBAIC0zMyw2ICszMywyMSBAQCBzdHJ1Y3QgbWRwNF9wbGFuZSB7Cj4gIH07Cj4g ICNkZWZpbmUgdG9fbWRwNF9wbGFuZSh4KSBjb250YWluZXJfb2YoeCwgc3RydWN0IG1kcDRfcGxh bmUsIGJhc2UpCj4gIAo+ICsvKiBNRFAgZm9ybWF0IGhlbHBlciBmdW5jdGlvbnMgKi8KPiArc3Rh dGljIGlubGluZQo+ICtlbnVtIG1kcDRfZnJhbWVfZm9ybWF0IG1kcDRfZ2V0X2ZyYW1lX2Zvcm1h dChzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYikKPiArewo+ICsJYm9vbCBpc190aWxlID0gZmFs c2U7Cj4gKwo+ICsJaWYgKGZiLT5tb2RpZmllclsxXSA9PSBEUk1fRk9STUFUX01PRF9TQU1TVU5H XzY0XzMyX1RJTEUpCj4gKwkJaXNfdGlsZSA9IHRydWU7Cj4gKwo+ICsJaWYgKGZiLT5waXhlbF9m b3JtYXQgPT0gRFJNX0ZPUk1BVF9OVjEyICYmIGlzX3RpbGUpCj4gKwkJcmV0dXJuIEZSQU1FX1RJ TEVfWUNCQ1JfNDIwOwo+ICsKPiArCXJldHVybiBGUkFNRV9MSU5FQVI7Cj4gK30KPiArCj4gIHN0 YXRpYyB2b2lkIG1kcDRfcGxhbmVfc2V0X3NjYW5vdXQoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUs Cj4gIAkJc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIpOwo+ICBzdGF0aWMgaW50IG1kcDRfcGxh bmVfbW9kZV9zZXQoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCj4gQEAgLTIwNSw2ICsyMjAsNyBA QCBzdGF0aWMgaW50IG1kcDRfcGxhbmVfbW9kZV9zZXQoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUs Cj4gIAl1aW50MzJfdCBvcF9tb2RlID0gMDsKPiAgCXVpbnQzMl90IHBoYXNleF9zdGVwID0gTURQ NF9WR19QSEFTRV9TVEVQX0RFRkFVTFQ7Cj4gIAl1aW50MzJfdCBwaGFzZXlfc3RlcCA9IE1EUDRf VkdfUEhBU0VfU1RFUF9ERUZBVUxUOwo+ICsJZW51bSBtZHA0X2ZyYW1lX2Zvcm1hdCBmcmFtZV90 eXBlID0gbWRwNF9nZXRfZnJhbWVfZm9ybWF0KGZiKTsKPiAgCj4gIAlpZiAoIShjcnRjICYmIGZi KSkgewo+ICAJCURCRygiJXM6IGRpc2FibGVkISIsIG1kcDRfcGxhbmUtPm5hbWUpOwo+IEBAIC0z MDQsNiArMzIwLDcgQEAgc3RhdGljIGludCBtZHA0X3BsYW5lX21vZGVfc2V0KHN0cnVjdCBkcm1f cGxhbmUgKnBsYW5lLAo+ICAJCQlNRFA0X1BJUEVfU1JDX0ZPUk1BVF9VTlBBQ0tfQ09VTlQoZm9y bWF0LT51bnBhY2tfY291bnQgLSAxKSB8Cj4gIAkJCU1EUDRfUElQRV9TUkNfRk9STUFUX0ZFVENI X1BMQU5FUyhmb3JtYXQtPmZldGNoX3R5cGUpIHwKPiAgCQkJTURQNF9QSVBFX1NSQ19GT1JNQVRf Q0hST01BX1NBTVAoZm9ybWF0LT5jaHJvbWFfc2FtcGxlKSB8Cj4gKwkJCU1EUDRfUElQRV9TUkNf Rk9STUFUX0ZSQU1FX0ZPUk1BVChmcmFtZV90eXBlKSB8Cj4gIAkJCUNPTkQoZm9ybWF0LT51bnBh Y2tfdGlnaHQsIE1EUDRfUElQRV9TUkNfRk9STUFUX1VOUEFDS19USUdIVCkpOwo+ICAKPiAgCW1k cDRfd3JpdGUobWRwNF9rbXMsIFJFR19NRFA0X1BJUEVfU1JDX1VOUEFDSyhwaXBlKSwKPiBAQCAt MzI0LDYgKzM0MSwxMSBAQCBzdGF0aWMgaW50IG1kcDRfcGxhbmVfbW9kZV9zZXQoc3RydWN0IGRy bV9wbGFuZSAqcGxhbmUsCj4gIAltZHA0X3dyaXRlKG1kcDRfa21zLCBSRUdfTURQNF9QSVBFX1BI QVNFWF9TVEVQKHBpcGUpLCBwaGFzZXhfc3RlcCk7Cj4gIAltZHA0X3dyaXRlKG1kcDRfa21zLCBS RUdfTURQNF9QSVBFX1BIQVNFWV9TVEVQKHBpcGUpLCBwaGFzZXlfc3RlcCk7Cj4gIAo+ICsJaWYg KGZyYW1lX3R5cGUgIT0gRlJBTUVfTElORUFSKQo+ICsJCW1kcDRfd3JpdGUobWRwNF9rbXMsIFJF R19NRFA0X1BJUEVfU1NUSUxFX0ZSQU1FX1NJWkUocGlwZSksCj4gKwkJCQlNRFA0X1BJUEVfU1NU SUxFX0ZSQU1FX1NJWkVfV0lEVEgoc3JjX3cpIHwKPiArCQkJCU1EUDRfUElQRV9TU1RJTEVfRlJB TUVfU0laRV9IRUlHSFQoc3JjX2gpKTsKPiArCj4gIAlyZXR1cm4gMDsKPiAgfQo+ICAKPiBkaWZm IC0tZ2l0IGEvaW5jbHVkZS91YXBpL2RybS9kcm1fZm91cmNjLmggYi9pbmNsdWRlL3VhcGkvZHJt L2RybV9mb3VyY2MuaAo+IGluZGV4IDA3NzM1ODIuLjJmMjk1Y2QgMTAwNjQ0Cj4gLS0tIGEvaW5j bHVkZS91YXBpL2RybS9kcm1fZm91cmNjLmgKPiArKysgYi9pbmNsdWRlL3VhcGkvZHJtL2RybV9m b3VyY2MuaAo+IEBAIC0yMDcsNCArMjA3LDE5IEBACj4gICAqLwo+ICAjZGVmaW5lIEk5MTVfRk9S TUFUX01PRF9ZZl9USUxFRCBmb3VyY2NfbW9kX2NvZGUoSU5URUwsIDMpCj4gIAo+ICsvKgo+ICsg KiBUaWxlZCwgTlYxMk1ULCBncm91cGVkIGluIDY0IChwaXhlbHMpIHggMzIgKGxpbmVzKSAtc2l6 ZWQgbWFjcm9ibG9ja3MKPiArICoKPiArICogTWFjcm9ibG9ja3MgYXJlIGxhaWQgaW4gYSBaLXNo YXBlLCBhbmQgZWFjaCBwaXhlbCBkYXRhIGlzIGZvbGxvd2luZyB0aGUKPiArICogc3RhbmRhcmQg TlYxMiBzdHlsZS4KPiArICogQXMgZm9yIE5WMTIsIGFuIGltYWdlIGlzIHRoZSByZXN1bHQgb2Yg dHdvIGZyYW1lIGJ1ZmZlcnM6IG9uZSBmb3IgWSwKPiArICogb25lIGZvciB0aGUgaW50ZXJsZWF2 ZWQgQ2IvQ3IgY29tcG9uZW50cyAoMS8yIHRoZSBoZWlnaHQgb2YgdGhlIFkgYnVmZmVyKS4KPiAr ICogQWxpZ25tZW50IHJlcXVpcmVtZW50cyBhcmUgKGZvciBlYWNoIGJ1ZmZlcik6Cj4gKyAqIC0g bXVsdGlwbGUgb2YgMTI4IHBpeGVscyBmb3IgdGhlIHdpZHRoCj4gKyAqIC0gbXVsdGlwbGUgb2Yg IDMyIHBpeGVscyBmb3IgdGhlIGhlaWdodAo+ICsgKgo+ICsgKiBGb3IgbW9yZSBpbmZvcm1hdGlv bjogc2VlIGh0dHA6Ly9saW51eHR2Lm9yZy9kb3dubG9hZHMvdjRsLWR2Yi1hcGlzL3JlMzIuaHRt bAo+ICsgKi8KPiArI2RlZmluZSBEUk1fRk9STUFUX01PRF9TQU1TVU5HXzY0XzMyX1RJTEUJZm91 cmNjX21vZF9jb2RlKFNBTVNVTkcsIDEpCj4gKwo+ICAjZW5kaWYgLyogRFJNX0ZPVVJDQ19IICov Cj4gLS0gCj4gMi40LjEKPiAKCi0tIApEYW5pZWwgVmV0dGVyClNvZnR3YXJlIEVuZ2luZWVyLCBJ bnRlbCBDb3Jwb3JhdGlvbgpodHRwOi8vYmxvZy5mZndsbC5jaApfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1k ZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9t YWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=