From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 04/11] drm: parse ycbcr420 vcb block Date: Mon, 8 May 2017 19:58:10 +0300 Message-ID: <20170508165810.GS12629@intel.com> References: <1491583168-20042-1-git-send-email-shashank.sharma@intel.com> <1491583168-20042-5-git-send-email-shashank.sharma@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <1491583168-20042-5-git-send-email-shashank.sharma@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Shashank Sharma Cc: intel-gfx@lists.freedesktop.org, Jose Abreu , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gRnJpLCBBcHIgMDcsIDIwMTcgYXQgMDc6Mzk6MjFQTSArMDMwMCwgU2hhc2hhbmsgU2hhcm1h IHdyb3RlOgo+IEhETUkgMi4wIHNwZWMgYWRkcyBzdXBwb3J0IGZvciB5Y2JjcjQyMCBzdWJzYW1w bGVkIG91dHB1dC4KPiBDRUEtODYxLUYgYWRkcyB0d28gbmV3IGJsb2NrcyBpbiBFRElELCB0byBw cm92aWRlIGluZm9ybWF0aW9uIGFib3V0Cj4gc2luaydzIHN1cHBvcnQgZm9yIHljYmNyNDIwIG91 dHB1dC4KPiAKPiBPbmUgb2YgdGhlc2UgbmV3IGJsb2NrcyBpczogeWNiY3I0MjAgdmNiCj4gLSB5 Y2JjcjQyMCB2aWRlbyBjYXBhYmlsaXR5IGRhdGEgKHZjYikgYmxvY2s6IHZpZGVvIG1vZGVzIHdo aWNoIGNhbiBiZQo+ICAgc3VwcG9ydCBpbiB5Y2JjcjQyMCBvdXRwdXQgbW9kZSBhbHNvIChhbG9u ZyB3aXRoIFJHQiwgWUNCQ1IgNDQ0LzQyMiBldGMpCj4gCj4gVGhpcyBwYXRjaCBhZGRzIHBhcnNp bmcgYW5kIGhhbmRsaW5nIG9mIHljYmNyNDIwLXZjYiBpbiB0aGUgRFJNIGxheWVyLgo+IFRoaXMg YmxvY2sgY29udGFpbnMgYSBiaXRtYXAgYWJvdXQgd2hpY2ggbW9kZSwgZnJvbSBhbW9uZyB0aGUg bGlzdCBvZgo+IG5vcm1hbCBzdmQgdmlkZW9tb2RlcywgY2FuIHN1cHBvcnQgeWNiY3I0MjAgb3V0 cHV0IHRvby4KPiAKPiBTbyBpZiBiaXQgMCBmcm9tIGZpcnN0IHZjYiBieXRlIGlzIHNldCwgbWVh bnMgZmlyc3QgdmlkZW8gbW9kZSBpbiB0aGUKPiBzdmQgbGlzdCwgY2FuIGJlIHN1cHBvcnRlZCBp biB5Y2JjcjQyMCBvdXRwdXQgdG9vLiBCaXQgMiBtZWFucyBzZWNvbmQKPiB2aWRlbyBtb2RlIGZy b20gc3ZkIGxpc3QsIGFuZCBzbyBvbi4KPiAKPiBDYzogVmlsbGUgU3lyamFsYSA8dmlsbGUuc3ly amFsYUBsaW51eC5pbnRlbC5jb20+Cj4gQ2M6IEpvc2UgQWJyZXUgPGpvYWJyZXVAc3lub3BzeXMu Y29tPgo+IFNpZ25lZC1vZmYtYnk6IFNoYXNoYW5rIFNoYXJtYSA8c2hhc2hhbmsuc2hhcm1hQGlu dGVsLmNvbT4KPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMgIHwgODAgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tCj4gIGluY2x1ZGUvZHJtL2Ry bV9jb25uZWN0b3IuaCB8ICAxICsKPiAgMiBmaWxlcyBjaGFuZ2VkLCA3OSBpbnNlcnRpb25zKCsp LCAyIGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2Vk aWQuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZWRpZC5jCj4gaW5kZXggNjRkOGUyZS4uZDAxYjdk ZiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2VkaWQuYwo+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9kcm1fZWRpZC5jCj4gQEAgLTI3NzgsNiArMjc3OCw3IEBAIGFkZF9kZXRhaWxl ZF9tb2RlcyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBzdHJ1Y3QgZWRpZCAqZWRp ZCwKPiAgI2RlZmluZSBTUEVBS0VSX0JMT0NLCTB4MDQKPiAgI2RlZmluZSBWSURFT19DQVBBQklM SVRZX0JMT0NLCTB4MDcKPiAgI2RlZmluZSBWSURFT19EQVRBX0JMT0NLXzQyMAkweDBFCj4gKyNk ZWZpbmUgVklERU9fQ0FQX0JMT0NLXzQyMAkweDBGCj4gICNkZWZpbmUgRURJRF9CQVNJQ19BVURJ TwkoMSA8PCA2KQo+ICAjZGVmaW5lIEVESURfQ0VBX1lDUkNCNDQ0CSgxIDw8IDUpCj4gICNkZWZp bmUgRURJRF9DRUFfWUNSQ0I0MjIJKDEgPDwgNCkKPiBAQCAtMzE0MywxMSArMzE0NCwyMSBAQCBz dGF0aWMgaW50Cj4gIGRvX2NlYV9tb2RlcyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9y LCBjb25zdCB1OCAqZGIsIHU4IGxlbikKPiAgewo+ICAJaW50IGksIG1vZGVzID0gMDsKPiArCXU2 NCBoZG1pXzQyMF9jYXBfbWFwID0gY29ubmVjdG9yLT5kaXNwbGF5X2luZm8uaGRtaS55Y2JjcjQy MF92Y2JfbWFwOwo+ICAKPiAgCWZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykgewo+ICAJCXN0cnVj dCBkcm1fZGlzcGxheV9tb2RlICptb2RlOwo+ICAJCW1vZGUgPSBkcm1fZGlzcGxheV9tb2RlX2Zy b21fdmljX2luZGV4KGNvbm5lY3RvciwgZGIsIGxlbiwgaSk7Cj4gIAkJaWYgKG1vZGUpIHsKPiAr CQkJLyoKPiArCQkJICogeWNiY3I0MjAgY2FwYWJpbGl0eSBibG9jayBjb250YWlucyBhIGJpdG1h cCB3aGljaAo+ICsJCQkgKiBnaXZlcyB0aGUgaW5kZXggb2Ygc3VjaCBDRUEgbW9kZXMgaW4gVkRC LCB3aGljaCBjYW4KPiArCQkJICogc3VwcG9ydCB5Y2JjcjQyMCBzYW1wbGluZyBvdXRwdXQgYWxz by4KPiArCQkJICogRm9yIGV4YW1wbGUsIGlmIHRoZSBiaXQgMCBpbiBiaXRtYXAgaXMgc2V0LAo+ ICsJCQkgKiBmaXJzdCBtb2RlIGluIFZEQiBjYW4gc3VwcG9ydCB5Y2JjcjQyMCBvdXRwdXQgdG9v Lgo+ICsJCQkgKi8KPiArCQkJaWYgKGhkbWlfNDIwX2NhcF9tYXAgJiAoMSA8PCBpKSkKCldlJ2Qg bmVlZCB0byBtYWtlIHN1cmUgJ2xlbicgaXMgPD02NC4gTm90IHN1cmUgaWYgdGhlcmUncyBhbnkg cG9pbnQgaW4KbWFraW5nIGl0IHBvc3NpYmxlIHRvIGhhdmUgbW9yZSB0aGFuIDY0IFZEQnMuIElm IHRoZXJlIGlzLCB0aGVuIHRoZSBzdGFuZGFyZApiaXRvcHMuaCBzdHVmZiBjb3VsZCBiZSB1c2Vk IHRvIG1ha2UgdGhlIG1hcCBsb25nZXIgcXVpdGUgdHJpdmlhbGx5LgoKV2hhdGV2ZXIgbGltaXQg d2UgY2hvb3NlIEkgdGhpbmsgd2Ugc2hvdWxkIHByaW50IHNvbWUga2luZCBvZiB3YXJuaW5nCnRv IGluZGljYXRlIHRoYXQgd2UndmUgZXhjZWVkZWQgd2hhdGV2ZXIgYXJiaXRyYXJ5IGxpbWl0IHdl IGNob3NlLiBBbmQKSSBkZWZpbml0ZWx5IHRoaW5rIGl0IHNob3VsZCBiZSBhIHdhcm5pbmcgbGV2 ZWwgYXQgbGVhc3QgdG8gbWFrZSBzdXJlCndlIGdldCBhIGJ1ZyByZXBvcnQgYWJvdXQgaXQuCgo+ ICsJCQkJbW9kZS0+ZmxhZ3MgfD0gRFJNX01PREVfRkxBR180MjA7Cj4gIAkJCWRybV9tb2RlX3By b2JlZF9hZGQoY29ubmVjdG9yLCBtb2RlKTsKPiAgCQkJbW9kZXMrKzsKPiAgCQl9Cj4gQEAgLTM1 MjYsOSArMzUzNyw2NCBAQCBzdGF0aWMgYm9vbCBjZWFfZGJfaXNfaGRtaV92ZGI0MjAoY29uc3Qg dTggKmRiKQo+ICAJcmV0dXJuIHRydWU7Cj4gIH0KPiAgCj4gK3N0YXRpYyBib29sIGNlYV9kYl9p c19oZG1pX3ZjYjQyMChjb25zdCB1OCAqZGIpCgpUbyBrZWVwIHdpdGggdGhlIHNwZWMgdGVybWlu b2xvZ3kgdGhpcyBzaG91bGQgcHJvYmFibHkgYmUgY2FsbGVkCmNlYV9kYl9pc195NDIwY21kYigp LiBTYW1lIGZvciB0aGUgZGVmaW5lIGFuZCBvdGhlciBmdW5jdGlvbnMgZGVhbGluZwp3aXRyaCB0 aGlzIGJsb2NrLgoKPiArewo+ICsJaWYgKGNlYV9kYl90YWcoZGIpICE9IFZJREVPX0NBUEFCSUxJ VFlfQkxPQ0spCj4gKwkJcmV0dXJuIGZhbHNlOwo+ICsKCldlIG5lZWQgdG8gbWFrZSBzdXJlIHRo ZSBwYXlsb2FkIGlzIGxvbmcgZW5vdWdoIHRvIGFjdHVhbGwgY29udGFpbiB0aGUKZXh0ZW5kZWQg dGFnLgoKPiArCWlmIChjZWFfZGJfZXh0ZW5kZWRfdGFnKGRiKSAhPSBWSURFT19DQVBfQkxPQ0tf NDIwKQo+ICsJCXJldHVybiBmYWxzZTsKPiArCj4gKwlyZXR1cm4gdHJ1ZTsKPiArfQo+ICsKPiAg I2RlZmluZSBmb3JfZWFjaF9jZWFfZGIoY2VhLCBpLCBzdGFydCwgZW5kKSBcCj4gIAlmb3IgKChp KSA9IChzdGFydCk7IChpKSA8IChlbmQpICYmIChpKSArIGNlYV9kYl9wYXlsb2FkX2xlbigmKGNl YSlbKGkpXSkgPCAoZW5kKTsgKGkpICs9IGNlYV9kYl9wYXlsb2FkX2xlbigmKGNlYSlbKGkpXSkg KyAxKQo+ICAKPiArc3RhdGljIHZvaWQgZHJtX3BhcnNlX3ZjYl80MjBfYml0bWFwKHN0cnVjdCBk cm1fY29ubmVjdG9yICpjb25uZWN0b3IsCj4gKwkJCQkgICAgIGNvbnN0IHU4ICpkYikKPiArewo+ ICsJc3RydWN0IGRybV9kaXNwbGF5X2luZm8gKmluZm8gPSAmY29ubmVjdG9yLT5kaXNwbGF5X2lu Zm87Cj4gKwlzdHJ1Y3QgZHJtX2hkbWlfaW5mbyAqaGRtaSA9ICZpbmZvLT5oZG1pOwo+ICsJdTgg bWFwX2xlbiA9IGNlYV9kYl9wYXlsb2FkX2xlbihkYikgLSAxOwo+ICsJdTggY291bnQ7Cj4gKwl1 NjQgbWFwID0gMDsKPiArCj4gKwlpZiAoIWRiKQo+ICsJCXJldHVybjsKCklzIHRoYXQgcG9zc2li bGUgc29tZWhvdz8KCj4gKwo+ICsJaWYgKG1hcF9sZW4gPT0gMCkgewo+ICsJCS8qIEFsbCBDRUEg bW9kZXMgc3VwcG9ydCB5Y2JjcjQyMCBzYW1wbGluZyBhbHNvLiovCj4gKwkJaGRtaS0+eWNiY3I0 MjBfdmNiX21hcCA9IFU2NF9NQVg7Cj4gKwkJcmV0dXJuOwo+ICsJfQo+ICsKPiArCS8qCj4gKwkg KiBUaGlzIG1hcCBpbmRpY2F0ZXMgd2hpY2ggb2YgdGhlIGV4aXN0aW5nIENFQSBibG9jayBtb2Rl cwo+ICsJICogZnJvbSBWREIgY2FuIHN1cHBvcnQgWUNCQ1I0MjAgb3V0cHV0IHRvby4gU28gaWYg Yml0PTAgaXMKPiArCSAqIHNldCwgZmlyc3QgbW9kZSBmcm9tIFZEQiBjYW4gc3VwcG9ydCBZQ0JD UjQyMCBvdXRwdXQgdG9vLgo+ICsJICogV2Ugd2lsbCBwYXJzZSBhbmQga2VlcCB0aGlzIG1hcCwg YmVmb3JlIHBhcnNpbmcgVkRCIGl0c2VsZgo+ICsJICogdG8gYXZvaWQgZ29pbmcgdGhyb3VnaCB0 aGUgc2FtZSBibG9jayBhZ2FpbiBhbmQgYWdhaW4uCj4gKwkgKgo+ICsJICogU3BlYyBpcyBub3Qg Y2xlYXIgYWJvdXQgbWF4IHBvc3NpYmxlIHNpemUgb2YgdGhpcyBibG9jay4KPiArCSAqIENsYW1w aW5nIG1heCBiaXRtYXAgYmxvY2sgc2l6ZSBhdCA4IGJ5dGVzLiBFdmVyeSBieXRlIGNhbgo+ICsJ ICogYWRkcmVzcyA4IENFQSBtb2RlcywgaW4gdGhpcyB3YXkgdGhpcyBtYXAgY2FuIGFkZHJlc3MK PiArCSAqIDgqOCA9IGZpcnN0IDY0IFNWRHMuCj4gKwkgKi8KPiArCWlmIChtYXBfbGVuID4gOCkK PiArCQltYXBfbGVuID0gODsKPiArCj4gKwlmb3IgKGNvdW50ID0gMDsgY291bnQgPCBtYXBfbGVu OyBjb3VudCsrKQo+ICsJCW1hcCA9IChkYlsyICsgY291bnRdIDw8IDggKiBjb3VudCkgfCBtYXA7 Cj4gKwo+ICsJaWYgKG1hcCkgewo+ICsJCURSTV9ERUJVR19LTVMoIlNpbmsgc3VwcG9ydHMgeWNi Y3IgNDIwXG4iKTsKPiArCQlpbmZvLT5jb2xvcl9mb3JtYXRzIHw9IERSTV9DT0xPUl9GT1JNQVRf WUNSQ0I0MjA7Cj4gKwl9Cj4gKwo+ICsJaGRtaS0+eWNiY3I0MjBfdmNiX21hcCA9IG1hcDsKPiAr fQo+ICsKPiAgc3RhdGljIGludAo+ICBhZGRfY2VhX21vZGVzKHN0cnVjdCBkcm1fY29ubmVjdG9y ICpjb25uZWN0b3IsIHN0cnVjdCBlZGlkICplZGlkKQo+ICB7Cj4gQEAgLTM1NjEsNiArMzYyNyw4 IEBAIGFkZF9jZWFfbW9kZXMoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rvciwgc3RydWN0 IGVkaWQgKmVkaWQpCj4gIAkJCQkvKiBBZGQgNDoyOjAob25seSkgbW9kZXMgcHJlc2VudCBpbiBF RElEICovCj4gIAkJCQltb2RlcyArPSBkb180MjBfdmRiX21vZGVzKGNvbm5lY3RvciwgdmRiNDIw LAo+ICAJCQkJCQkJICB2ZGI0MjBfbGVuKTsKPiArCQkJfSBlbHNlIGlmIChjZWFfZGJfaXNfaGRt aV92Y2I0MjAoZGIpKSB7Cj4gKwkJCQlkcm1fcGFyc2VfdmNiXzQyMF9iaXRtYXAoY29ubmVjdG9y LCBkYik7Cj4gIAkJCX0KPiAgCQl9Cj4gIAl9Cj4gQEAgLTQyNDEsNiArNDMwOSw4IEBAIHN0YXRp YyB2b2lkIGRybV9wYXJzZV9jZWFfZXh0KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3Is Cj4gIAkJCWRybV9wYXJzZV9oZG1pX3ZzZGJfdmlkZW8oY29ubmVjdG9yLCBkYik7Cj4gIAkJaWYg KGNlYV9kYl9pc19oZG1pX2ZvcnVtX3ZzZGIoZGIpKQo+ICAJCQlkcm1fcGFyc2VfaGRtaV9mb3J1 bV92c2RiKGNvbm5lY3RvciwgZGIpOwo+ICsJCWlmIChjZWFfZGJfaXNfaGRtaV92Y2I0MjAoZGIp KQo+ICsJCQlkcm1fcGFyc2VfdmNiXzQyMF9iaXRtYXAoY29ubmVjdG9yLCBkYik7Cj4gIAl9Cj4g IH0KPiAgCj4gQEAgLTQ0OTIsNiArNDU2MiwxNCBAQCBpbnQgZHJtX2FkZF9lZGlkX21vZGVzKHN0 cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsIHN0cnVjdCBlZGlkICplZGlkKQo+ICAJbnVt X21vZGVzICs9IGFkZF9jdnRfbW9kZXMoY29ubmVjdG9yLCBlZGlkKTsKPiAgCW51bV9tb2RlcyAr PSBhZGRfc3RhbmRhcmRfbW9kZXMoY29ubmVjdG9yLCBlZGlkKTsKPiAgCW51bV9tb2RlcyArPSBh ZGRfZXN0YWJsaXNoZWRfbW9kZXMoY29ubmVjdG9yLCBlZGlkKTsKPiArCj4gKwkvKgo+ICsJICog Q0VBLTg2MS1GIGFkZHMgeWNiY3IgY2FwYWJpbGl0eSBtYXAgYmxvY2ssIGZvciBIRE1JIDIuMCBz aW5rcy4KPiArCSAqIFRvIGF2b2lkIG11bHRpcGxlIHBhcnNpbmcgb2Ygc2FtZSBibG9jaywgbGV0 cyBnZXQgdGhlIHNpbmsgaW5mbwo+ICsJICogYmVmb3JlIHBhcnNpbmcgQ0VBIG1vZGVzLgo+ICsJ ICovCj4gKwlkcm1fYWRkX2Rpc3BsYXlfaW5mbyhjb25uZWN0b3IsIGVkaWQpOwoKSXMgdGhlcmUg YW55IHJlYXNvbiB3aHkgdGhpcyBjYW4ndCBiZSBtb3ZlZCB0byBiZSBjYWxsZWQgYmVmb3JlIGFu eQptb2RlcyBhcmUgYWRkZWQ/IEhhdmluZyBpdCBpbiB0aGUgbWlkZGxlIGxpa2UgdGhpcyBmZWVs cyB3cm9uZy4KCj4gKwo+ICAJbnVtX21vZGVzICs9IGFkZF9jZWFfbW9kZXMoY29ubmVjdG9yLCBl ZGlkKTsKPiAgCW51bV9tb2RlcyArPSBhZGRfYWx0ZXJuYXRlX2NlYV9tb2Rlcyhjb25uZWN0b3Is IGVkaWQpOwo+ICAJbnVtX21vZGVzICs9IGFkZF9kaXNwbGF5aWRfZGV0YWlsZWRfbW9kZXMoY29u bmVjdG9yLCBlZGlkKTsKPiBAQCAtNDUwMSw4ICs0NTc5LDYgQEAgaW50IGRybV9hZGRfZWRpZF9t b2RlcyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBzdHJ1Y3QgZWRpZCAqZWRpZCkK PiAgCWlmIChxdWlya3MgJiAoRURJRF9RVUlSS19QUkVGRVJfTEFSR0VfNjAgfCBFRElEX1FVSVJL X1BSRUZFUl9MQVJHRV83NSkpCj4gIAkJZWRpZF9maXh1cF9wcmVmZXJyZWQoY29ubmVjdG9yLCBx dWlya3MpOwo+ICAKPiAtCWRybV9hZGRfZGlzcGxheV9pbmZvKGNvbm5lY3RvciwgZWRpZCk7Cj4g LQo+ICAJaWYgKHF1aXJrcyAmIEVESURfUVVJUktfRk9SQ0VfNkJQQykKPiAgCQljb25uZWN0b3It PmRpc3BsYXlfaW5mby5icGMgPSA2Owo+ICAKPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJt X2Nvbm5lY3Rvci5oIGIvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCj4gaW5kZXggY2VmNzZi Mi4uZGJmYTZhMSAxMDA2NDQKPiAtLS0gYS9pbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmgKPiAr KysgYi9pbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmgKPiBAQCAtMTM2LDYgKzEzNiw3IEBAIHN0 cnVjdCBkcm1fc2NkYyB7Cj4gIHN0cnVjdCBkcm1faGRtaV9pbmZvIHsKPiAgCS8qKiBAc2NkYzog c2luaydzIHNjZGMgc3VwcG9ydCBhbmQgY2FwYWJpbGl0aWVzICovCj4gIAlzdHJ1Y3QgZHJtX3Nj ZGMgc2NkYzsKPiArCXU2NCB5Y2JjcjQyMF92Y2JfbWFwOwo+ICB9Owo+ICAKPiAgLyoqCj4gLS0g Cj4gMi43LjQKCi0tIApWaWxsZSBTeXJqw6Rsw6QKSW50ZWwgT1RDCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJp LWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=