From mboxrd@z Thu Jan 1 00:00:00 1970 From: Joonas Lahtinen Subject: Re: [PATCH 07/27] drm/i915/icl: Interrupt handling Date: Wed, 10 Jan 2018 12:16:28 +0200 Message-ID: <1515579388.4144.21.camel@linux.intel.com> References: <20180109232336.11029-1-paulo.r.zanoni@intel.com> <20180109232336.11029-8-paulo.r.zanoni@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTPS id 7239E89C05 for ; Wed, 10 Jan 2018 10:16:31 +0000 (UTC) In-Reply-To: <20180109232336.11029-8-paulo.r.zanoni@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Paulo Zanoni , intel-gfx@lists.freedesktop.org Cc: Rodrigo Vivi List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCAyMDE4LTAxLTA5IGF0IDIxOjIzIC0wMjAwLCBQYXVsbyBaYW5vbmkgd3JvdGU6Cj4g RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KPiAKPiB2Mjog UmViYXNlLgo+IAo+IHYzOgo+ICAgKiBSZW1vdmUgRFBGLCBpdCBoYXMgYmVlbiByZW1vdmVkIGZy b20gU0tMKy4KPiAgICogRml4IC1pbnRlcm5hbCByZWJhc2Ugd3J0LiBleGVjbGlzdHMgaW50ZXJy dXB0IGhhbmRsaW5nLgo+IAo+IHY0OiBSZWJhc2UuCj4gCj4gdjU6Cj4gICAqIFVwZGF0ZWQgZm9y IFBPUiBjaGFuZ2VzLiAoRGFuaWVsZSBDZXJhb2xvIFNwdXJpbykKPiAgICogTWVyZ2VkIHdpdGgg aXJxIGhhbmRsaW5nIGZpeGVzIGJ5IERhbmllbGUgQ2VyYW9sbyBTcHVyaW86Cj4gICAgICAgKiBT aW1wbGlmeSB0aGUgY29kZSBieSB1c2luZyBnZW44X2NzX2lycV9oYW5kbGVyLgo+ICAgICAgICog Rml4IGludGVycnVwdCBoYW5kbGluZyBmb3IgdGhlIHVwc3RyZWFtIGtlcm5lbC4KPiAKPiB2NjoK PiAgICogUmVtb3ZlIGVhcmx5IGJyaW5ndXAgZGVidWcgbWVzc2FnZXMgKFR2cnRrbykKPiAgICog QWRkIE5CIGFib3V0IGFyYml0cmFyeSBzcGluIHdhaXQgdGltZW91dCAoVHZydGtvKQo+IAo+IHY3 IChmcm9tIFBhdWxvKToKPiAgICogRG9uJ3QgdHJ5IHRvIHdyaXRlIFJPIGJpdHMgdG8gcmVnaXN0 ZXJzLgo+ICAgKiBEb24ndCBjaGVjayBmb3IgUENIIHR5cGVzIHRoYXQgZG9uJ3QgZXhpc3QuIFBD SCBpbnRlcnJ1cHRzIGFyZSBub3QKPiAgICAgaGVyZSB5ZXQuCj4gCj4gU2lnbmVkLW9mZi1ieTog VHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KPiBTaWduZWQtb2ZmLWJ5 OiBSb2RyaWdvIFZpdmkgPHJvZHJpZ28udml2aUBpbnRlbC5jb20+Cj4gU2lnbmVkLW9mZi1ieTog RGFuaWVsZSBDZXJhb2xvIFNwdXJpbyA8ZGFuaWVsZS5jZXJhb2xvc3B1cmlvQGludGVsLmNvbT4K PiBTaWduZWQtb2ZmLWJ5OiBPc2NhciBNYXRlbyA8b3NjYXIubWF0ZW9AaW50ZWwuY29tPgo+IFNp Z25lZC1vZmYtYnk6IFBhdWxvIFphbm9uaSA8cGF1bG8uci56YW5vbmlAaW50ZWwuY29tPgoKPFNO SVA+Cgo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfaXJxLmMKPiBAQCAtNDE1LDYg KzQxNSw5IEBAIHZvaWQgZ2VuNl9lbmFibGVfcnBzX2ludGVycnVwdHMoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2KQo+ICAJaWYgKFJFQURfT05DRShycHMtPmludGVycnVwdHNfZW5h YmxlZCkpCj4gIAkJcmV0dXJuOwo+ICAKPiArCWlmIChXQVJOX09OX09OQ0UoSVNfR0VOMTEoZGV2 X3ByaXYpKSkKPiArCQlyZXR1cm47Cj4gKwo+ICAJc3Bpbl9sb2NrX2lycSgmZGV2X3ByaXYtPmly cV9sb2NrKTsKPiAgCVdBUk5fT05fT05DRShycHMtPnBtX2lpcik7Cj4gIAlXQVJOX09OX09OQ0Uo STkxNV9SRUFEKGdlbjZfcG1faWlyKGRldl9wcml2KSkgJiBkZXZfcHJpdi0+cG1fcnBzX2V2ZW50 cyk7Cj4gQEAgLTQzMSw2ICs0MzQsOSBAQCB2b2lkIGdlbjZfZGlzYWJsZV9ycHNfaW50ZXJydXB0 cyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gIAlpZiAoIVJFQURfT05DRShy cHMtPmludGVycnVwdHNfZW5hYmxlZCkpCj4gIAkJcmV0dXJuOwo+ICAKPiArCWlmIChXQVJOX09O X09OQ0UoSVNfR0VOMTEoZGV2X3ByaXYpKSkKPiArCQlyZXR1cm47Cj4gKwoKVGhlc2Ugc2hvdWxk IGJlIEdFTV9CVUdfT04gYXQgbW9zdCBhbmQgc2hvdWxkIGJlIHRoZSBmaXJzdCB0aGluZyBpbgpm dW5jdGlvbi4KCj4gIAlzcGluX2xvY2tfaXJxKCZkZXZfcHJpdi0+aXJxX2xvY2spOwo+ICAJcnBz LT5pbnRlcnJ1cHRzX2VuYWJsZWQgPSBmYWxzZTsKPiAgCj4gQEAgLTI3NTEsNiArMjc1NywxMzEg QEAgc3RhdGljIHZvaWQgX19maW5pX3dlZGdlKHN0cnVjdCB3ZWRnZV9tZSAqdykKPiAgCSAgICAg KFcpLT5pOTE1OwkJCQkJCQlcCj4gIAkgICAgIF9fZmluaV93ZWRnZSgoVykpKQo+ICAKPiArc3Rh dGljIF9fYWx3YXlzX2lubGluZSB2b2lkCj4gK2dlbjExX2NzX2lycV9oYW5kbGVyKHN0cnVjdCBp bnRlbF9lbmdpbmVfY3MgKmVuZ2luZSwgdTMyIGlpcikKPiArewo+ICsJZ2VuOF9jc19pcnFfaGFu ZGxlcihlbmdpbmUsIGlpciwgMCk7Cj4gK30KPiArCj4gK3N0YXRpYyBpcnFyZXR1cm5fdAo+ICtn ZW4xMV9ndF9pcnFfaGFuZGxlcihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIHUz MiBtYXN0ZXJfY3RsKQoKVGhpcyBmdW5jdGlvbiBjb3VsZCB1c2Ugc29tZSByZWFkYWJpbGl0eSA6 KQoKPiArewo+ICsJaXJxcmV0dXJuX3QgcmV0ID0gSVJRX05PTkU7Cj4gKwl1MTYgaXJxWzJdWzMy XTsKPiArCXUzMiBkdywgaWRlbnQ7Cj4gKwl1bnNpZ25lZCBsb25nIHRtcDsKPiArCXVuc2lnbmVk IGludCBiYW5rLCBiaXQsIGVuZ2luZTsKPiArCXVuc2lnbmVkIGxvbmcgd2FpdF9zdGFydCwgd2Fp dF9lbmQ7Cj4gKwo+ICsJbWVtc2V0KGlycSwgMCwgc2l6ZW9mKGlycSkpOwo+ICsKPiArCWZvciAo YmFuayA9IDA7IGJhbmsgPCAyOyBiYW5rKyspIHsKPiArCQlpZiAobWFzdGVyX2N0bCAmIEdFTjEx X0dUX0RXX0lSUShiYW5rKSkgewoKSW52ZXJ0IGNvbmRpdGlvbiBhbmQgdXNlIGNvbnRpbnVlOwoK PiArCQkJZHcgPSBJOTE1X1JFQURfRlcoR0VOMTFfR1RfSU5UUl9EVyhiYW5rKSk7Cj4gKwkJCWlm ICghZHcpCj4gKwkJCQlEUk1fRVJST1IoIkdUX0lOVFJfRFcldSBibGFuayFcbiIsIGJhbmspOwoK UHJvYmFibHkgbmVlZHMgYSBtb3JlIGFwcHJvcHJpYXRlIGFjdGlvbiwgR0VNX0JVR19PTiBpZiB3 ZSd2ZSBuZXZlcgpzZWVuIHRoaXMgb24gSFcuCgo+ICsJCQl0bXAgPSBkdzsKPiArCQkJZm9yX2Vh Y2hfc2V0X2JpdChiaXQsICZ0bXAsIDMyKSB7Cj4gKwkJCQlJOTE1X1dSSVRFX0ZXKEdFTjExX0lJ Ul9SRUdfU0VMRUNUT1IoYmFuayksIDEgPDwgYml0KTsKCkJJVChiaXQpCgorIG5ld2xpbmUgaGVy ZQoKPiArCQkJCXdhaXRfc3RhcnQgPSBsb2NhbF9jbG9jaygpID4+IDEwOwo+ICsJCQkJLyogTkI6 IFNwZWNzIGRvIG5vdCBzcGVjaWZ5IGhvdyBsb25nIHRvIHNwaW4gd2FpdC4KPiArCQkJCSAqIFRh a2luZyAxMDB1cyBhcyBhbiBlZHVjYXRlZCBndWVzcyAqLwo+ICsJCQkJd2FpdF9lbmQgPSB3YWl0 X3N0YXJ0ICsgMTAwOwo+ICsJCQkJZG8gewo+ICsJCQkJCWlkZW50ID0gSTkxNV9SRUFEX0ZXKEdF TjExX0lOVFJfSURFTlRJVFlfUkVHKGJhbmspKTsKPiArCQkJCX0gd2hpbGUgKCEoaWRlbnQgJiBH RU4xMV9JTlRSX0RBVEFfVkFMSUQpICYmCj4gKwkJCQkJICF0aW1lX2FmdGVyKCh1bnNpZ25lZCBs b25nKWxvY2FsX2Nsb2NrKCkgPj4gMTAsIHdhaXRfZW5kKSk7CgpVaCBvaCwgbm90IGEgcmVhbGx5 IG5pY2UgdGhpbmcgdG8gZG8gaW4gSVJRIGhhbmRsZXIgOiggV2Ugc2hvdWxkCnByb2JhYmx5IGxv b2sgYXQgc29tZSBhY3R1YWwgZGVsYXkgbnVtYmVycyBhbmQgbm90IGRvIHRoaXMuCgo+ICsKPiAr CQkJCWlmICghKGlkZW50ICYgR0VOMTFfSU5UUl9EQVRBX1ZBTElEKSkKPiArCQkJCQlEUk1fRVJS T1IoIklOVFJfSURFTlRJVFlfUkVHJXU6JXUgdGltZWQgb3V0IVxuIiwKPiArCQkJCQkJICBiYW5r LCBiaXQpOwo+ICsKPiArCQkJCWlycVtiYW5rXVtiaXRdID0gaWRlbnQgJiBHRU4xMV9JTlRSX0VO R0lORV9NQVNLOwo+ICsJCQkJaWYgKCFpcnFbYmFua11bYml0XSkKPiArCQkJCQlEUk1fRVJST1Io IklOVFJfSURFTlRJVFlfUkVHJXU6JXUgYmxhbmshXG4iLAo+ICsJCQkJCQkgIGJhbmssIGJpdCk7 CgpEUk1fRVJST1IgYWdhaW4gc2VlbXMgbGlrZSBiaXQgb2YgYW4gdW5kZXJzdGF0ZW1lbnQgZm9y IGludGVycnVwdC4KCisgbmV3bGluZSBoZXJlCgo+ICsJCQkJSTkxNV9XUklURV9GVyhHRU4xMV9J TlRSX0lERU5USVRZX1JFRyhiYW5rKSwgaWRlbnQpOwo+ICsJCQl9CgorIG5ld2xpbmUgaGVyZQoK PiArCQkJSTkxNV9XUklURV9GVyhHRU4xMV9HVF9JTlRSX0RXKGJhbmspLCBkdyk7Cj4gKwkJfQo+ ICsJfQo+ICsKPiArCWlmIChpcnFbMF1bR0VOMTFfUkNTMF0pIHsKPiArCQlnZW4xMV9jc19pcnFf aGFuZGxlcihkZXZfcHJpdi0+ZW5naW5lW1JDU10sCj4gKwkJCQkgICAgIGlycVswXVtHRU4xMV9S Q1MwXSk7Cj4gKwkJcmV0ID0gSVJRX0hBTkRMRUQ7Cj4gKwl9Cj4gKwo+ICsJaWYgKGlycVswXVtH RU4xMV9CQ1NdKSB7Cj4gKwkJZ2VuMTFfY3NfaXJxX2hhbmRsZXIoZGV2X3ByaXYtPmVuZ2luZVtC Q1NdLAo+ICsJCQkJICAgICBpcnFbMF1bR0VOMTFfQkNTXSk7Cj4gKwkJcmV0ID0gSVJRX0hBTkRM RUQ7Cj4gKwl9Cj4gKwo+ICsJZm9yIChlbmdpbmUgPSAwOyBlbmdpbmUgPCA0OyBlbmdpbmUrKykg ewo+ICsJCWlmIChpcnFbMV1bR0VOMTFfVkNTKGVuZ2luZSldKSB7Cj4gKwkJCWdlbjExX2NzX2ly cV9oYW5kbGVyKGRldl9wcml2LT5lbmdpbmVbX1ZDUyhlbmdpbmUpXSwKPiArCQkJCQkgICAgIGly cVsxXVtHRU4xMV9WQ1MoZW5naW5lKV0pOwo+ICsJCQlyZXQgPSBJUlFfSEFORExFRDsKPiArCQl9 Cj4gKwl9Cj4gKwo+ICsJZm9yIChlbmdpbmUgPSAwOyBlbmdpbmUgPCAyOyBlbmdpbmUrKykgewo+ ICsJCWlmIChpcnFbMV1bR0VOMTFfVkVDUyhlbmdpbmUpXSkgewo+ICsJCQlnZW4xMV9jc19pcnFf aGFuZGxlcihkZXZfcHJpdi0+ZW5naW5lW19WRUNTKGVuZ2luZSldLAo+ICsJCQkJCSAgICAgaXJx WzFdW0dFTjExX1ZFQ1MoZW5naW5lKV0pOwo+ICsJCQlyZXQgPSBJUlFfSEFORExFRDsKPiArCQl9 Cj4gKwl9CgpEb2Vzbid0IHRoZSBhYm92ZSBjb2RlIGxvb2sgbGlrZSBhIHRhYmxlIHRvIGJlIGl0 ZXJhdGVkIG92ZXI/Cgo8U05JUD4KCj4gK3N0YXRpYyB2b2lkIGdlbjExX2d0X2lycV9wb3N0aW5z dGFsbChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gK3sKPiArCWNvbnN0IHUz MiBpcnFzID0gR1RfUkVOREVSX1VTRVJfSU5URVJSVVBUIHwgR1RfQ09OVEVYVF9TV0lUQ0hfSU5U RVJSVVBUOwo+ICsKPiArCUJVSUxEX0JVR19PTihpcnFzICYgMHhmZmZmMDAwMCk7CgojZGVmaW5l IGZvciB0aGUgbWFzay4KCj4gKwo+ICsJLyogRW5hYmxlIFJDUywgQkNTLCBWQ1MgYW5kIFZFQ1Mg Y2xhc3MgaW50ZXJydXB0cy4gKi8KPiArCUk5MTVfV1JJVEUoR0VOMTFfUkVOREVSX0NPUFlfSU5U Ul9FTkFCTEUsIGlycXMgPDwgMTYgfCBpcnFzKTsKPiArCUk5MTVfV1JJVEUoR0VOMTFfVkNTX1ZF Q1NfSU5UUl9FTkFCTEUsCSAgaXJxcyA8PCAxNiB8IGlycXMpOwo+ICsKPiArCS8qIFVubWFzayBp cnFzIG9uIFJDUywgQkNTLCBWQ1MgYW5kIFZFQ1MgZW5naW5lcy4gKi8KPiArCUk5MTVfV1JJVEUo R0VOMTFfUkNTMF9SU1ZEX0lOVFJfTUFTSywJfihpcnFzIDw8IDE2KSk7Cj4gKwlJOTE1X1dSSVRF KEdFTjExX0JDU19SU1ZEX0lOVFJfTUFTSywJfihpcnFzIDw8IDE2KSk7Cj4gKwlJOTE1X1dSSVRF KEdFTjExX1ZDUzBfVkNTMV9JTlRSX01BU0ssCX4oaXJxcyB8IGlycXMgPDwgMTYpKTsKPiArCUk5 MTVfV1JJVEUoR0VOMTFfVkNTMl9WQ1MzX0lOVFJfTUFTSywJfihpcnFzIHwgaXJxcyA8PCAxNikp Owo+ICsJSTkxNV9XUklURShHRU4xMV9WRUNTMF9WRUNTMV9JTlRSX01BU0ssCX4oaXJxcyB8IGly cXMgPDwgMTYpKTsKCldlIHNob3VsZCBhbHNvIGhhdmUgYW4gYWN0dWFsIHNoaWZ0IGFuZCBtYXNr ICNkZWZpbmVzIGZvciB0aGVzZSwgbm93Cml0J3MgYWxsIGhhcmRjb2RlZCBoZXJlLgoKPiArCj4g KwlkZXZfcHJpdi0+cG1faW1yID0gMHhmZmZmZmZmZjsgLyogVE9ETyAqLwoKU29tZSBjb2RlIG1p c3NpbmcgaXQgc2VlbXMuCgo+ICt9Cgo8U05JUD4KCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfcG0uYwo+IEBAIC03OTU3LDcgKzc5NTcsMTAgQEAgdm9pZCBpbnRlbF9zYW5pdGl6 ZV9ndF9wb3dlcnNhdmUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ICAJZGV2 X3ByaXYtPmd0X3BtLnJjNi5lbmFibGVkID0gdHJ1ZTsgLyogZm9yY2UgUkM2IGRpc2FibGluZyAq Lwo+ICAJaW50ZWxfZGlzYWJsZV9ndF9wb3dlcnNhdmUoZGV2X3ByaXYpOwo+ICAKPiAtCWdlbjZf cmVzZXRfcnBzX2ludGVycnVwdHMoZGV2X3ByaXYpOwo+ICsJaWYgKElOVEVMX0dFTihkZXZfcHJp dikgPCAxMSkKPiArCQlnZW42X3Jlc2V0X3Jwc19pbnRlcnJ1cHRzKGRldl9wcml2KTsKPiArCWVs c2UKPiArCQlXQVJOX09OX09OQ0UoMSk7CgpTb21lIGNvZGUgaXMgb2J2aW91c2x5IG1pc3Npbmcg aGVyZS4KCj4gIH0KPiAgCj4gIHN0YXRpYyBpbmxpbmUgdm9pZCBpbnRlbF9kaXNhYmxlX2xsY19w c3RhdGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpCj4gQEAgLTgwNzAsNiArODA3Myw4 IEBAIHN0YXRpYyB2b2lkIGludGVsX2VuYWJsZV9ycHMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2KQo+ICAJCWNoZXJyeXZpZXdfZW5hYmxlX3JwcyhkZXZfcHJpdik7Cj4gIAl9IGVs c2UgaWYgKElTX1ZBTExFWVZJRVcoZGV2X3ByaXYpKSB7Cj4gIAkJdmFsbGV5dmlld19lbmFibGVf cnBzKGRldl9wcml2KTsKPiArCX0gZWxzZSBpZiAoV0FSTl9PTl9PTkNFKElOVEVMX0dFTihkZXZf cHJpdikgPj0gMTEpKSB7Cj4gKwkJLyogVE9ETyAqLwoKRGl0dG8uCgpJZiB0aGVzZSBhcmUgaW4g YSBsYXRlciBwYXRjaCwgc2hvdWxkIGJlIHNxdWFzaGVkIGhlcmUuCgpSZWdhcmRzLCBKb29uYXMK LS0gCkpvb25hcyBMYWh0aW5lbgpPcGVuIFNvdXJjZSBUZWNobm9sb2d5IENlbnRlcgpJbnRlbCBD b3Jwb3JhdGlvbgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcK aHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK