From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ander Conselvan de Oliveira Subject: Re: [PATCH 4/9] drm/i915: Introduce intel_prepare_cursor_plane() Date: Fri, 28 Nov 2014 14:15:08 +0200 Message-ID: <5478674C.8040305@gmail.com> References: <1416858786-25376-1-git-send-email-matthew.d.roper@intel.com> <1416858786-25376-5-git-send-email-matthew.d.roper@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id 4B3DD6EAFB for ; Fri, 28 Nov 2014 04:15:01 -0800 (PST) In-Reply-To: <1416858786-25376-5-git-send-email-matthew.d.roper@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Matt Roper , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gMTEvMjQvMjAxNCAwOTo1MyBQTSwgTWF0dCBSb3BlciB3cm90ZToKPiBQcmltYXJ5IGFuZCBz cHJpdGUgcGxhbmVzIGhhdmUgYWxyZWFkeSBiZWVuIHJlZmFjdG9yZWQgdG8gaW5jbHVkZSBhCj4g J3ByZXBhcmUnIHN0ZXAgd2hpY2ggaGFuZGxlcyBhbGwgdGhlIGNvbW1pdC10aW1lIG9wZXJhdGlv bnMgdGhhdCBjb3VsZAo+IGZhaWwgKGkuZS4sIHBpbm5pbmcgYnVmZmVycyBhbmQgc3VjaCkuICBS ZWZhY3RvciB0aGUgY3Vyc29yIGNvbW1pdCBpbiBhCj4gc2ltaWxhciBtYW5uZXIuCj4KPiBGb3Ig c2ltcGxpY2l0eSBhbmQgY29uc2lzdGVuY3kgd2l0aCBvdGhlciBwbGFuZSB0eXBlcywgd2UgYWxz byBzd2l0Y2ggdG8KPiB1c2luZyBpbnRlbF9waW5fYW5kX2ZlbmNlX2ZiX29iaigpIHRvIHBlcmZv cm0gb3VyIHBpbm5pbmcgZm9yCj4gbm9uLXBoeXNpY2FsIGN1cnNvcnMuICBUaGlzIHdpbGwgYWxs b3cgdXMgdG8gbW9yZSBlYXNpbHkgbWlncmF0ZSB0aGUKPiBjb2RlIGludG8gdGhlIGF0b21pYyAn YmVnaW4nIGhhbmRsZXIgaW4gYSBwbGFuZS1hZ25vc3RpYyBtYW5uZXIgaW4gYQo+IGZ1dHVyZSBw YXRjaHNldC4KPgo+IFNpZ25lZC1vZmYtYnk6IE1hdHQgUm9wZXIgPG1hdHRoZXcuZC5yb3BlckBp bnRlbC5jb20+Cj4gLS0tCj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMg fCAxMTQgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAgIDEgZmlsZSBjaGFu Z2VkLCA0NCBpbnNlcnRpb25zKCspLCA3MCBkZWxldGlvbnMoLSkKPgo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kaXNwbGF5LmMKPiBpbmRleCAxNzc4OGY4Li5mZjk0ZTQzIDEwMDY0NAo+IC0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+IEBAIC0xMTg5OSwxOSArMTE4OTksNTEgQEAgaW50 ZWxfY2hlY2tfY3Vyc29yX3BsYW5lKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAo+ICAgfQo+Cj4g ICBzdGF0aWMgaW50Cj4gK2ludGVsX3ByZXBhcmVfY3Vyc29yX3BsYW5lKHN0cnVjdCBkcm1fcGxh bmUgKnBsYW5lLAo+ICsJCQkgICBzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKnN0YXRlKQo+ICt7 Cj4gKwlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gcGxhbmUtPmRldjsKPiArCXN0cnVjdCBkcm1f ZnJhbWVidWZmZXIgKmZiID0gc3RhdGUtPmZiOwo+ICsJc3RydWN0IGludGVsX2NydGMgKmludGVs X2NydGMgPSB0b19pbnRlbF9jcnRjKHN0YXRlLT5jcnRjKTsKPiArCXN0cnVjdCBkcm1faTkxNV9n ZW1fb2JqZWN0ICpvYmogPSBpbnRlbF9mYl9vYmooZmIpOwo+ICsJc3RydWN0IGRybV9pOTE1X2dl bV9vYmplY3QgKm9sZF9vYmogPSBpbnRlbF9mYl9vYmoocGxhbmUtPmZiKTsKPiArCWVudW0gcGlw ZSBwaXBlID0gaW50ZWxfY3J0Yy0+cGlwZTsKPiArCWludCByZXQgPSAwOwo+ICsKPiArCWlmIChv bGRfb2JqICE9IG9iaikgewo+ICsJCS8qIHdlIG9ubHkgbmVlZCB0byBwaW4gaW5zaWRlIEdUVCBp ZiBjdXJzb3IgaXMgbm9uLXBoeSAqLwo+ICsJCW11dGV4X2xvY2soJmRldi0+c3RydWN0X211dGV4 KTsKPiArCQlpZiAoIUlOVEVMX0lORk8oZGV2KS0+Y3Vyc29yX25lZWRzX3BoeXNpY2FsKSB7Cj4g KwkJCWlmIChvYmopCj4gKwkJCQlyZXQgPSBpbnRlbF9waW5fYW5kX2ZlbmNlX2ZiX29iaihwbGFu ZSwgZmIsIE5VTEwpOwo+ICsJCQlpZiAocmV0ID09IDApCj4gKwkJCQlpOTE1X2dlbV90cmFja19m YihpbnRlbF9jcnRjLT5jdXJzb3JfYm8sIG9iaiwKPiArCQkJCQkJICBJTlRFTF9GUk9OVEJVRkZF Ul9DVVJTT1IocGlwZSkpOwoKU2hvdWxkbid0IHRoZSBmcm9udGJ1ZmZlciBiaXRzIGJlIHVwZGF0 ZWQgaW4gdGhlIGVsc2UgY2FzZSB0b28/IEF0IGxlYXN0IAp0aGV5IHdlcmUsIHByaW9yIHRvIHRo aXMgcGF0Y2guCgo+ICsJCX0gZWxzZSB7Cj4gKwkJCWludCBhbGlnbiA9IElTX0k4MzAoZGV2KSA/ IDE2ICogMTAyNCA6IDI1NjsKPiArCQkJaWYgKG9iaikKPiArCQkJCXJldCA9IGk5MTVfZ2VtX29i amVjdF9hdHRhY2hfcGh5cyhvYmosIGFsaWduKTsKPiArCQkJaWYgKHJldCkKPiArCQkJCURSTV9E RUJVR19LTVMoImZhaWxlZCB0byBhdHRhY2ggcGh5cyBvYmplY3RcbiIpOwo+ICsJCX0KPiArCQlt dXRleF91bmxvY2soJmRldi0+c3RydWN0X211dGV4KTsKPiArCX0KPiArCj4gKwlyZXR1cm4gcmV0 Owo+ICt9Cj4gKwo+ICtzdGF0aWMgdm9pZAo+ICAgaW50ZWxfY29tbWl0X2N1cnNvcl9wbGFuZShz dHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKPiAgIAkJCSAgc3RydWN0IGludGVsX3BsYW5lX3N0YXRl ICpzdGF0ZSkKPiAgIHsKPiAgIAlzdHJ1Y3QgZHJtX2NydGMgKmNydGMgPSBzdGF0ZS0+Y3J0YzsK PiAgIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gY3J0Yy0+ZGV2Owo+IC0Jc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKPiAgIAlzdHJ1Y3QgaW50 ZWxfY3J0YyAqaW50ZWxfY3J0YyA9IHRvX2ludGVsX2NydGMoY3J0Yyk7Cj4gICAJc3RydWN0IGlu dGVsX3BsYW5lICppbnRlbF9wbGFuZSA9IHRvX2ludGVsX3BsYW5lKHBsYW5lKTsKPiAgIAlzdHJ1 Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqID0gaW50ZWxfZmJfb2JqKHN0YXRlLT5mYik7Cj4g ICAJZW51bSBwaXBlIHBpcGUgPSBpbnRlbF9jcnRjLT5waXBlOwo+ICAgCXVuc2lnbmVkIG9sZF93 aWR0aDsKPiAgIAl1aW50MzJfdCBhZGRyOwo+IC0JaW50IHJldDsKPgo+ICAgCWNydGMtPmN1cnNv cl94ID0gc3RhdGUtPm9yaWdfZHN0LngxOwo+ICAgCWNydGMtPmN1cnNvcl95ID0gc3RhdGUtPm9y aWdfZHN0LnkxOwo+IEBAIC0xMTkyOSw3NSArMTE5NjEsMTggQEAgaW50ZWxfY29tbWl0X2N1cnNv cl9wbGFuZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKPiAgIAlpZiAoaW50ZWxfY3J0Yy0+Y3Vy c29yX2JvID09IG9iaikKPiAgIAkJZ290byB1cGRhdGU7Cj4KPiAtCS8qIGlmIHdlIHdhbnQgdG8g dHVybiBvZmYgdGhlIGN1cnNvciBpZ25vcmUgd2lkdGggYW5kIGhlaWdodCAqLwo+IC0JaWYgKCFv YmopIHsKPiAtCQlEUk1fREVCVUdfS01TKCJjdXJzb3Igb2ZmXG4iKTsKPiArCWlmICghb2JqKQo+ ICAgCQlhZGRyID0gMDsKPiAtCQltdXRleF9sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7Cj4gLQkJ Z290byBmaW5pc2g7Cj4gLQl9Cj4gLQo+IC0JLyogd2Ugb25seSBuZWVkIHRvIHBpbiBpbnNpZGUg R1RUIGlmIGN1cnNvciBpcyBub24tcGh5ICovCj4gLQltdXRleF9sb2NrKCZkZXYtPnN0cnVjdF9t dXRleCk7Cj4gLQlpZiAoIUlOVEVMX0lORk8oZGV2KS0+Y3Vyc29yX25lZWRzX3BoeXNpY2FsKSB7 Cj4gLQkJdW5zaWduZWQgYWxpZ25tZW50Owo+IC0KPiAtCQkvKgo+IC0JCSAqIEdsb2JhbCBndHQg cHRlIHJlZ2lzdGVycyBhcmUgc3BlY2lhbCByZWdpc3RlcnMgd2hpY2ggYWN0dWFsbHkKPiAtCQkg KiBmb3J3YXJkIHdyaXRlcyB0byBhIGNodW5rIG9mIHN5c3RlbSBtZW1vcnkuIFdoaWNoIG1lYW5z IHRoYXQKPiAtCQkgKiB0aGVyZSBpcyBubyByaXNrIHRoYXQgdGhlIHJlZ2lzdGVyIHZhbHVlcyBk aXNhcHBlYXIgYXMgc29vbgo+IC0JCSAqIGFzIHdlIGNhbGwgaW50ZWxfcnVudGltZV9wbV9wdXQo KSwgc28gaXQgaXMgY29ycmVjdCB0byB3cmFwCj4gLQkJICogb25seSB0aGUgcGluL3VucGluL2Zl bmNlIGFuZCBub3QgbW9yZS4KPiAtCQkgKi8KPiAtCQlpbnRlbF9ydW50aW1lX3BtX2dldChkZXZf cHJpdik7Cj4gLQo+IC0JCS8qIE5vdGUgdGhhdCB0aGUgdy9hIGFsc28gcmVxdWlyZXMgMiBQVEUg b2YgcGFkZGluZyBmb2xsb3dpbmcKPiAtCQkgKiB0aGUgYm8uIFdlIGN1cnJlbnRseSBmaWxsIGFs bCB1bnVzZWQgUFRFIHdpdGggdGhlIHNoYWRvdwo+IC0JCSAqIHBhZ2UgYW5kIHNvIHdlIHNob3Vs ZCBhbHdheXMgaGF2ZSB2YWxpZCBQVEUgZm9sbG93aW5nIHRoZQo+IC0JCSAqIGN1cnNvciBwcmV2 ZW50aW5nIHRoZSBWVC1kIHdhcm5pbmcuCj4gLQkJICovCj4gLQkJYWxpZ25tZW50ID0gMDsKPiAt CQlpZiAobmVlZF92dGRfd2EoZGV2KSkKPiAtCQkJYWxpZ25tZW50ID0gNjQqMTAyNDsKPiAtCj4g LQkJcmV0ID0gaTkxNV9nZW1fb2JqZWN0X3Bpbl90b19kaXNwbGF5X3BsYW5lKG9iaiwgYWxpZ25t ZW50LCBOVUxMKTsKPiAtCQlpZiAocmV0KSB7Cj4gLQkJCURSTV9ERUJVR19LTVMoImZhaWxlZCB0 byBtb3ZlIGN1cnNvciBibyBpbnRvIHRoZSBHVFRcbiIpOwo+IC0JCQlpbnRlbF9ydW50aW1lX3Bt X3B1dChkZXZfcHJpdik7Cj4gLQkJCWdvdG8gZmFpbF9sb2NrZWQ7Cj4gLQkJfQo+IC0KPiAtCQly ZXQgPSBpOTE1X2dlbV9vYmplY3RfcHV0X2ZlbmNlKG9iaik7Cj4gLQkJaWYgKHJldCkgewo+IC0J CQlEUk1fREVCVUdfS01TKCJmYWlsZWQgdG8gcmVsZWFzZSBmZW5jZSBmb3IgY3Vyc29yIik7Cj4g LQkJCWludGVsX3J1bnRpbWVfcG1fcHV0KGRldl9wcml2KTsKPiAtCQkJZ290byBmYWlsX3VucGlu Owo+IC0JCX0KPiAtCj4gKwllbHNlIGlmICghSU5URUxfSU5GTyhkZXYpLT5jdXJzb3JfbmVlZHNf cGh5c2ljYWwpCj4gICAJCWFkZHIgPSBpOTE1X2dlbV9vYmpfZ2d0dF9vZmZzZXQob2JqKTsKPiAt Cj4gLQkJaW50ZWxfcnVudGltZV9wbV9wdXQoZGV2X3ByaXYpOwo+IC0KPiAtCX0gZWxzZSB7Cj4g LQkJaW50IGFsaWduID0gSVNfSTgzMChkZXYpID8gMTYgKiAxMDI0IDogMjU2Owo+IC0JCXJldCA9 IGk5MTVfZ2VtX29iamVjdF9hdHRhY2hfcGh5cyhvYmosIGFsaWduKTsKPiAtCQlpZiAocmV0KSB7 Cj4gLQkJCURSTV9ERUJVR19LTVMoImZhaWxlZCB0byBhdHRhY2ggcGh5cyBvYmplY3RcbiIpOwo+ IC0JCQlnb3RvIGZhaWxfbG9ja2VkOwo+IC0JCX0KPiArCWVsc2UKPiAgIAkJYWRkciA9IG9iai0+ cGh5c19oYW5kbGUtPmJ1c2FkZHI7Cj4gLQl9Cj4KPiAtZmluaXNoOgo+ICAgCWlmIChpbnRlbF9j cnRjLT5jdXJzb3JfYm8pIHsKPiAgIAkJaWYgKCFJTlRFTF9JTkZPKGRldiktPmN1cnNvcl9uZWVk c19waHlzaWNhbCkKPiAgIAkJCWk5MTVfZ2VtX29iamVjdF91bnBpbl9mcm9tX2Rpc3BsYXlfcGxh bmUoaW50ZWxfY3J0Yy0+Y3Vyc29yX2JvKTsKClRoaXMgaXMgbm93IGJlaW5nIGNhbGxlZCB3aXRo b3V0IGhvbGRpbmcgZGV2LT5zdHJ1Y3RfbXV0ZXguIEkgZG9uJ3Qga25vdyAKaWYgdGhhdCBpcyBu ZWNlc3Nhcnkgb3Igbm90LgoKCkFuZGVyCgo+ICAgCX0KPgo+IC0JaTkxNV9nZW1fdHJhY2tfZmIo aW50ZWxfY3J0Yy0+Y3Vyc29yX2JvLCBvYmosCj4gLQkJCSAgSU5URUxfRlJPTlRCVUZGRVJfQ1VS U09SKHBpcGUpKTsKPiAtCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+IC0KPiAg IAlpbnRlbF9jcnRjLT5jdXJzb3JfYWRkciA9IGFkZHI7Cj4gICAJaW50ZWxfY3J0Yy0+Y3Vyc29y X2JvID0gb2JqOwo+ICAgdXBkYXRlOgo+IEBAIC0xMjAxMywxMyArMTE5ODgsNiBAQCB1cGRhdGU6 Cj4KPiAgIAkJaW50ZWxfZnJvbnRidWZmZXJfZmxpcChkZXYsIElOVEVMX0ZST05UQlVGRkVSX0NV UlNPUihwaXBlKSk7Cj4gICAJfQo+IC0KPiAtCXJldHVybiAwOwo+IC1mYWlsX3VucGluOgo+IC0J aTkxNV9nZW1fb2JqZWN0X3VucGluX2Zyb21fZGlzcGxheV9wbGFuZShvYmopOwo+IC1mYWlsX2xv Y2tlZDoKPiAtCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+IC0JcmV0dXJuIHJl dDsKPiAgIH0KPgo+ICAgc3RhdGljIGludAo+IEBAIC0xMjA2MCw3ICsxMjAyOCwxMyBAQCBpbnRl bF9jdXJzb3JfcGxhbmVfdXBkYXRlKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLCBzdHJ1Y3QgZHJt X2NydGMgKmNydGMsCj4gICAJaWYgKHJldCkKPiAgIAkJcmV0dXJuIHJldDsKPgo+IC0JcmV0dXJu IGludGVsX2NvbW1pdF9jdXJzb3JfcGxhbmUocGxhbmUsICZzdGF0ZSk7Cj4gKwlyZXQgPSBpbnRl bF9wcmVwYXJlX2N1cnNvcl9wbGFuZShwbGFuZSwgJnN0YXRlKTsKPiArCWlmIChyZXQpCj4gKwkJ cmV0dXJuIHJldDsKPiArCj4gKwlpbnRlbF9jb21taXRfY3Vyc29yX3BsYW5lKHBsYW5lLCAmc3Rh dGUpOwo+ICsKPiArCXJldHVybiAwOwo+ICAgfQo+Cj4gICBzdGF0aWMgY29uc3Qgc3RydWN0IGRy bV9wbGFuZV9mdW5jcyBpbnRlbF9jdXJzb3JfcGxhbmVfZnVuY3MgPSB7Cj4KCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxp c3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==