From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Gordon Subject: Re: [PATCH] drm/i915: Replace gen6 semaphore signal table with code Date: Thu, 21 Jul 2016 12:56:00 +0100 Message-ID: <5790B850.8080601@intel.com> References: <1469093495-2745-1-git-send-email-tvrtko.ursulin@linux.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 EB9C46E16F for ; Thu, 21 Jul 2016 11:56:01 +0000 (UTC) In-Reply-To: <1469093495-2745-1-git-send-email-tvrtko.ursulin@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Tvrtko Ursulin , Intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gMjEvMDcvMTYgMTA6MzEsIFR2cnRrbyBVcnN1bGluIHdyb3RlOgo+IEZyb206IFR2cnRrbyBV cnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Cj4KPiBTdGF0aWMgdGFibGUgd2FzdGVz IHNwYWNlIGZvciBpbnZhbGlkIGNvbWJpbmF0aW9ucyBhbmQKPiBlbmdpbmVzIHdoaWNoIGFyZSBu b3Qgc3VwcG9ydGVkIGJ5IEdlbjYgKGxlZ2FjeSBzZW1hcGhvcmVzKS4KPgo+IFJlcGxhY2UgaXQg d2l0aCBhIGZ1bmN0aW9uIGRldmlzZWQgYnkgRGF2ZSBHb3Jkb24uCj4KPiBJIGhhdmUgdmVyaWZp ZWQgdGhhdCBpdCBnZW5lcmF0ZXMgdGhlIHNhbWUgbWFwcGluZ3MgYmV0d2Vlbgo+IG1ib3ggc2Vs ZWN0b3JzIGFuZCBzaWduYWxsaW5nIHJlZ2lzdGVycy4KPgo+IFNpZ25lZC1vZmYtYnk6IFR2cnRr byBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Cj4gQ2M6IERhdmUgR29yZG9uIDxk YXZpZC5zLmdvcmRvbkBpbnRlbC5jb20+Cj4gQ2M6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMt d2lsc29uLmNvLnVrPgo+IC0tLQo+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCAg ICAgICAgIHwgIDcgKystLS0KPiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2VuZ2luZV9j cy5jICB8IDQ4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ICAgZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jIHwgNDAgKystLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmggfCAgMyAr KysKPiAgIDQgZmlsZXMgY2hhbmdlZCwgNTcgaW5zZXJ0aW9ucygrKSwgNDEgZGVsZXRpb25zKC0p Cj4KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKPiBpbmRleCA4YmZkZTc1Nzg5ZjYuLjI4YWE4NzZl MmQ4NyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAo+IEBAIC0xNjA0LDkgKzE2MDQsMTAg QEAgZW51bSBza2xfZGlzcF9wb3dlcl93ZWxscyB7Cj4gICAjZGVmaW5lIFJJTkdfSEVBRChiYXNl KQkJX01NSU8oKGJhc2UpKzB4MzQpCj4gICAjZGVmaW5lIFJJTkdfU1RBUlQoYmFzZSkJX01NSU8o KGJhc2UpKzB4MzgpCj4gICAjZGVmaW5lIFJJTkdfQ1RMKGJhc2UpCQlfTU1JTygoYmFzZSkrMHgz YykKPiAtI2RlZmluZSBSSU5HX1NZTkNfMChiYXNlKQlfTU1JTygoYmFzZSkrMHg0MCkKPiAtI2Rl ZmluZSBSSU5HX1NZTkNfMShiYXNlKQlfTU1JTygoYmFzZSkrMHg0NCkKPiAtI2RlZmluZSBSSU5H X1NZTkNfMihiYXNlKQlfTU1JTygoYmFzZSkrMHg0OCkKPiArI2RlZmluZSBSSU5HX1NZTkMoYmFz ZSwgbikJX01NSU8oKGJhc2UpICsgMHg0MCArIChuKSAqIDQpCj4gKyNkZWZpbmUgUklOR19TWU5D XzAoYmFzZSkJUklOR19TWU5DKGJhc2UsIDApCj4gKyNkZWZpbmUgUklOR19TWU5DXzEoYmFzZSkJ UklOR19TWU5DKGJhc2UsIDEpCj4gKyNkZWZpbmUgUklOR19TWU5DXzIoYmFzZSkJUklOR19TWU5D KGJhc2UsIDIpCj4gICAjZGVmaW5lIEdFTjZfUlZTWU5DCShSSU5HX1NZTkNfMChSRU5ERVJfUklO R19CQVNFKSkKPiAgICNkZWZpbmUgR0VONl9SQlNZTkMJKFJJTkdfU1lOQ18xKFJFTkRFUl9SSU5H X0JBU0UpKQo+ICAgI2RlZmluZSBHRU42X1JWRVNZTkMJKFJJTkdfU1lOQ18yKFJFTkRFUl9SSU5H X0JBU0UpKQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9lbmdpbmVf Y3MuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2VuZ2luZV9jcy5jCj4gaW5kZXggZjRh MzVlYzc4NDgxLi45ODM3ZmRkYWUyNTkgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZW5naW5lX2NzLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9l bmdpbmVfY3MuYwo+IEBAIC0yMDksMyArMjA5LDUxIEBAIGludCBpbnRlbF9lbmdpbmVfaW5pdF9j b21tb24oc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQo+Cj4gICAJcmV0dXJuIGk5MTVf Y21kX3BhcnNlcl9pbml0X3JpbmcoZW5naW5lKTsKPiAgIH0KPiArCj4gKyNkZWZpbmUgSTkxNV9O VU1fR0VONl9TRU1BUEhPUkVfRU5HSU5FUyAoNCkKPiArCj4gK3N0YXRpYyBpbnQgZ2VuNl9zZW1f Zih1bnNpZ25lZCBpbnQgeCwgdW5zaWduZWQgaW50IHkpCj4gK3sKPiArCWlmICh4ID09IHkpCj4g KwkJcmV0dXJuIC0xOwo+ICsKPiArCXggPSBpbnRlbF9lbmdpbmVzW3hdLmd1Y19pZDsKPiArCXkg PSBpbnRlbF9lbmdpbmVzW3ldLmd1Y19pZDsKCllvdSBjb3VsZCBoYXZlIHRoZSBjYWxsZXIgcGFz cyB0d28gZW5naW5lIHBvaW50ZXJzIHJhdGhlciB0aGFuIApjb252ZXJ0aW5nIHBhc3NpbmcgaW5k ZXhlcyB0aGF0IGFyZW4ndCBhY3R1YWxseSB0aGUgdmFsdWVzIG5lZWRlZC4KCk9yIHlvdSBjb3Vs ZCBoYXZlIHRoZSBjYWxsZXIgcGFzcyB0aGUgJ2h3X2lkJyAocHJvYmFibHkgYmV0dGVyIHRoYW4g CidndWNfaWQnKSBkaXJlY3RseS4KCj4gKwo+ICsJaWYgKHggPj0gSTkxNV9OVU1fR0VONl9TRU1B UEhPUkVfRU5HSU5FUyB8fAo+ICsJICAgIHkgPj0gSTkxNV9OVU1fR0VONl9TRU1BUEhPUkVfRU5H SU5FUykKPiArCQlyZXR1cm4gLTE7CgpBbmQgbWF5YmUgbW92ZSBhbGwgdGhlIGVycm9yIGNoZWNr aW5nIG91dCwgc28gdGhpcyBmdW5jdGlvbiAqanVzdCogCmNvbnRhaW5zIHRoZSB0cmlja3N5IGNh bGN1bGF0aW9uIGJlbG93PwoKPiArCj4gKwl4IC09IHggPj0geTsKPiArCWlmICh5ID09IDEpCj4g KwkJeCA9IDMgLSB4Owo+ICsJeCArPSB5ICYgMTsKPiArCXJldHVybiB4ICUgMzsKPiArfQo+ICsK PiArdTMyIGdlbjZfd2FpdF9tYm94KGVudW0gaW50ZWxfZW5naW5lX2lkIHgsIGVudW0gaW50ZWxf ZW5naW5lX2lkIHkpCj4gK3sKPiArCWludCByOwo+ICsKPiArCXIgPSBnZW42X3NlbV9mKHgsIHkp Owo+ICsJaWYgKHIgPCAwKQo+ICsJCXJldHVybiBNSV9TRU1BUEhPUkVfU1lOQ19JTlZBTElEOwo+ ICsKPiArCWlmIChyID09IDEpCj4gKwkJciA9IDI7Cj4gKwllbHNlIGlmIChyID09IDIpCj4gKwkJ ciA9IDE7CgpCVFcgdGhpcyBpcyAoKC1yKSAlIDMpLiBTaW5jZSBnZW42X3NlbV9mKCkgYWxyZWFk eSBkb2VzIGEgIiUgMyIgYXQgdGhlIAplbmQgeW91IG1pZ2h0IHdhbnQgdG8gcGFzcyBpdCBhIGZs YWcgYW5kIGxldCBpdCBkbyB0aGUgbmVnYXRpb24gd2hlbiAKcmVxdWlyZWQuCgppbnQgZ2VuNl9z ZW1fZjIodW5zaWduZWQgaW50IGh3X3gsIHVuc2lnbmVkIGludCBod195LCBib29sIHdhaXQpCnsK ICAgICBod194IC09IGh3X3ggPj0gaHdfeTsKICAgICBod194ICs9IGh3X3kgJiAxOwogICAgIGh3 X3ggXj0gaHdfeSAmIGh3X3ggPj4gaHdfeTsgLyogV1RGPyAqLwogICAgIHJldHVybiAod2FpdCA/ IC1od194IDogaHdfeCkgJSAzOwp9CgouRGF2ZS4KCj4gKwo+ICsJcmV0dXJuIHIgPDwgMTY7Cj4g K30KPiArCj4gK2k5MTVfcmVnX3QgZ2VuNl9zaWduYWxfcmVnKGVudW0gaW50ZWxfZW5naW5lX2lk IHgsIGVudW0gaW50ZWxfZW5naW5lX2lkIHkpCj4gK3sKPiArCWludCByOwo+ICsKPiArCXIgPSBn ZW42X3NlbV9mKHgsIHkpOwo+ICsJaWYgKHIgPCAwKQo+ICsJCXJldHVybiBHRU42X05PU1lOQzsK PiArCj4gKwlyZXR1cm4gUklOR19TWU5DKGludGVsX2VuZ2luZXNbeV0ubW1pb19iYXNlLCByKTsK PiArfQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVy LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMKPiBpbmRleCBiODQ0 ZTY5ODRhZTcuLjA0OTUyN2QzODFkZSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9yaW5nYnVmZmVyLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9y aW5nYnVmZmVyLmMKPiBAQCAtMjczMSw0NCArMjczMSw4IEBAIHN0YXRpYyB2b2lkIGludGVsX3Jp bmdfaW5pdF9zZW1hcGhvcmVzKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiAg IAkJICogc2VtYSBiZXR3ZWVuIFZDUzIgYW5kIFJDUyBsYXRlci4KPiAgIAkJICovCj4gICAJCWZv ciAoaSA9IDA7IGkgPCBJOTE1X05VTV9FTkdJTkVTOyBpKyspIHsKPiAtCQkJc3RhdGljIGNvbnN0 IHN0cnVjdCB7Cj4gLQkJCQl1MzIgd2FpdF9tYm94Owo+IC0JCQkJaTkxNV9yZWdfdCBtYm94X3Jl ZzsKPiAtCQkJfSBzZW1fZGF0YVtJOTE1X05VTV9FTkdJTkVTXVtJOTE1X05VTV9FTkdJTkVTXSA9 IHsKPiAtCQkJCVtSQ1NdID0gewo+IC0JCQkJCVtWQ1NdID0gIHsgLndhaXRfbWJveCA9IE1JX1NF TUFQSE9SRV9TWU5DX1JWLCAgLm1ib3hfcmVnID0gR0VONl9WUlNZTkMgfSwKPiAtCQkJCQlbQkNT XSA9ICB7IC53YWl0X21ib3ggPSBNSV9TRU1BUEhPUkVfU1lOQ19SQiwgIC5tYm94X3JlZyA9IEdF TjZfQlJTWU5DIH0sCj4gLQkJCQkJW1ZFQ1NdID0geyAud2FpdF9tYm94ID0gTUlfU0VNQVBIT1JF X1NZTkNfUlZFLCAubWJveF9yZWcgPSBHRU42X1ZFUlNZTkMgfSwKPiAtCQkJCX0sCj4gLQkJCQlb VkNTXSA9IHsKPiAtCQkJCQlbUkNTXSA9ICB7IC53YWl0X21ib3ggPSBNSV9TRU1BUEhPUkVfU1lO Q19WUiwgIC5tYm94X3JlZyA9IEdFTjZfUlZTWU5DIH0sCj4gLQkJCQkJW0JDU10gPSAgeyAud2Fp dF9tYm94ID0gTUlfU0VNQVBIT1JFX1NZTkNfVkIsICAubWJveF9yZWcgPSBHRU42X0JWU1lOQyB9 LAo+IC0JCQkJCVtWRUNTXSA9IHsgLndhaXRfbWJveCA9IE1JX1NFTUFQSE9SRV9TWU5DX1ZWRSwg Lm1ib3hfcmVnID0gR0VONl9WRVZTWU5DIH0sCj4gLQkJCQl9LAo+IC0JCQkJW0JDU10gPSB7Cj4g LQkJCQkJW1JDU10gPSAgeyAud2FpdF9tYm94ID0gTUlfU0VNQVBIT1JFX1NZTkNfQlIsICAubWJv eF9yZWcgPSBHRU42X1JCU1lOQyB9LAo+IC0JCQkJCVtWQ1NdID0gIHsgLndhaXRfbWJveCA9IE1J X1NFTUFQSE9SRV9TWU5DX0JWLCAgLm1ib3hfcmVnID0gR0VONl9WQlNZTkMgfSwKPiAtCQkJCQlb VkVDU10gPSB7IC53YWl0X21ib3ggPSBNSV9TRU1BUEhPUkVfU1lOQ19CVkUsIC5tYm94X3JlZyA9 IEdFTjZfVkVCU1lOQyB9LAo+IC0JCQkJfSwKPiAtCQkJCVtWRUNTXSA9IHsKPiAtCQkJCQlbUkNT XSA9ICB7IC53YWl0X21ib3ggPSBNSV9TRU1BUEhPUkVfU1lOQ19WRVIsIC5tYm94X3JlZyA9IEdF TjZfUlZFU1lOQyB9LAo+IC0JCQkJCVtWQ1NdID0gIHsgLndhaXRfbWJveCA9IE1JX1NFTUFQSE9S RV9TWU5DX1ZFViwgLm1ib3hfcmVnID0gR0VONl9WVkVTWU5DIH0sCj4gLQkJCQkJW0JDU10gPSAg eyAud2FpdF9tYm94ID0gTUlfU0VNQVBIT1JFX1NZTkNfVkVCLCAubWJveF9yZWcgPSBHRU42X0JW RVNZTkMgfSwKPiAtCQkJCX0sCj4gLQkJCX07Cj4gLQkJCXUzMiB3YWl0X21ib3g7Cj4gLQkJCWk5 MTVfcmVnX3QgbWJveF9yZWc7Cj4gLQo+IC0JCQlpZiAoaSA9PSBlbmdpbmUtPmlkIHx8IGkgPT0g VkNTMikgewo+IC0JCQkJd2FpdF9tYm94ID0gTUlfU0VNQVBIT1JFX1NZTkNfSU5WQUxJRDsKPiAt CQkJCW1ib3hfcmVnID0gR0VONl9OT1NZTkM7Cj4gLQkJCX0gZWxzZSB7Cj4gLQkJCQl3YWl0X21i b3ggPSBzZW1fZGF0YVtlbmdpbmUtPmlkXVtpXS53YWl0X21ib3g7Cj4gLQkJCQltYm94X3JlZyA9 IHNlbV9kYXRhW2VuZ2luZS0+aWRdW2ldLm1ib3hfcmVnOwo+IC0JCQl9Cj4gLQo+IC0JCQllbmdp bmUtPnNlbWFwaG9yZS5tYm94LndhaXRbaV0gPSB3YWl0X21ib3g7Cj4gLQkJCWVuZ2luZS0+c2Vt YXBob3JlLm1ib3guc2lnbmFsW2ldID0gbWJveF9yZWc7Cj4gKwkJCWVuZ2luZS0+c2VtYXBob3Jl Lm1ib3gud2FpdFtpXSA9IGdlbjZfd2FpdF9tYm94KGVuZ2luZS0+aWQsIGkpOwo+ICsJCQllbmdp bmUtPnNlbWFwaG9yZS5tYm94LnNpZ25hbFtpXSA9IGdlbjZfc2lnbmFsX3JlZyhlbmdpbmUtPmlk LCBpKTsKPiAgIAkJfQo+ICAgCX0KPiAgIH0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmlu Z2J1ZmZlci5oCj4gaW5kZXggMDViYWI4YmRhNjNkLi44MDJhZGNkNTE1NjkgMTAwNjQ0Cj4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oCj4gKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oCj4gQEAgLTQ5Myw2ICs0OTMsOSBAQCBp bnQgaW50ZWxfcmluZ19pbnZhbGlkYXRlX2FsbF9jYWNoZXMoc3RydWN0IGRybV9pOTE1X2dlbV9y ZXF1ZXN0ICpyZXEpOwo+ICAgaW50IGludGVsX2luaXRfcGlwZV9jb250cm9sKHN0cnVjdCBpbnRl bF9lbmdpbmVfY3MgKmVuZ2luZSwgaW50IHNpemUpOwo+ICAgdm9pZCBpbnRlbF9maW5pX3BpcGVf Y29udHJvbChzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpOwo+Cj4gK3UzMiBnZW42X3dh aXRfbWJveChlbnVtIGludGVsX2VuZ2luZV9pZCB4LCBlbnVtIGludGVsX2VuZ2luZV9pZCB5KTsK PiAraTkxNV9yZWdfdCBnZW42X3NpZ25hbF9yZWcoZW51bSBpbnRlbF9lbmdpbmVfaWQgeCwgZW51 bSBpbnRlbF9lbmdpbmVfaWQgeSk7Cj4gKwo+ICAgdm9pZCBpbnRlbF9lbmdpbmVfc2V0dXBfY29t bW9uKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSk7Cj4gICBpbnQgaW50ZWxfZW5naW5l X2luaXRfY29tbW9uKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSk7Cj4KPgoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxp bmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==