From mboxrd@z Thu Jan 1 00:00:00 1970 From: Arun Siluvery Subject: [PATCH v2 08/15] drm/i915/tdr: Add support for per engine reset recovery Date: Fri, 17 Jun 2016 08:09:08 +0100 Message-ID: <1466147355-4635-9-git-send-email-arun.siluvery@linux.intel.com> References: <1466147355-4635-1-git-send-email-arun.siluvery@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" 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 7F29A6EADD for ; Fri, 17 Jun 2016 07:09:33 +0000 (UTC) In-Reply-To: <1466147355-4635-1-git-send-email-arun.siluvery@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: intel-gfx@lists.freedesktop.org Cc: Tomas Elf List-Id: intel-gfx@lists.freedesktop.org VGhpcyBjaGFuZ2UgaW1wbGVtZW50cyBzdXBwb3J0IGZvciBwZXItZW5naW5lIHJlc2V0IGFzIGFu IGluaXRpYWwsIGxlc3MKaW50cnVzaXZlIGhhbmcgcmVjb3Zlcnkgb3B0aW9uIHRvIGJlIGF0dGVt cHRlZCBiZWZvcmUgZmFsbGluZyBiYWNrIHRvIHRoZQpsZWdhY3kgZnVsbCBHUFUgcmVzZXQgcmVj b3ZlcnkgbW9kZSBpZiBuZWNlc3NhcnkuIFRoaXMgaXMgb25seSBzdXBwb3J0ZWQKZnJvbSBHZW44 IG9ud2FyZHMuCgpIYW5nY2hlY2tlciBkZXRlcm1pbmVzIHdoaWNoIGVuZ2luZXMgYXJlIGh1bmcg YW5kIGludm9rZXMgZXJyb3IgaGFuZGxlciB0bwpyZWNvdmVyIGZyb20gaXQuIEVycm9yIGhhbmRs ZXIgc2NoZWR1bGVzIHJlY292ZXJ5IGZvciBlYWNoIG9mIHRob3NlIGVuZ2luZXMKdGhhdCBhcmUg aHVuZy4gVGhlIHJlY292ZXJ5IHByb2NlZHVyZSBpcyBhcyBmb2xsb3dzLAogLSBmb3JjZSBlbmdp bmUgdG8gaWRsZTogdGhpcyBpcyBkb25lIGJ5IGlzc3VpbmcgYSByZXNldCByZXF1ZXN0CiAtIHNh dmUgY3VycmVudCBzdGF0ZSB3aGljaCBpbmNsdWRlcyBoZWFkIGFuZCBjdXJyZW50IHJlcXVlc3QK IC0gcmVzZXQgZW5naW5lCiAtIHJlc3RvcmUgc2F2ZWQgc3RhdGUgYW5kIHJlc3VibWl0IGNvbnRl eHQKCklmIGVuZ2luZSByZXNldCBmYWlscyB0aGVuIHdlIGZhbGwgYmFjayB0byBoZWF2eSB3ZWln aHQgZnVsbCBncHUgcmVzZXQKd2hpY2ggcmVzZXRzIGFsbCBlbmdpbmVzIGFuZCByZWluaXRpYXpl cyBjb21wbGV0ZSBzdGF0ZSBvZiBIVyBhbmQgU1cuCgpQb3NzaWJsZSByZWFzb25zIGZvciBmYWls dXJlLAogLSBlbmdpbmUgbm90IHJlYWR5IGZvciByZXNldAogLSBpZiB0aGUgSFcgYW5kIFNXIGRv ZXNuJ3QgYWdyZWUgb24gdGhlIGNvbnRleHQgdGhhdCBjYXVzZWQgdGhlIGhhbmcKIC0gcmVzZXQg aXRzZWxmIGZhaWxlZCBmb3Igc29tZSByZWFzb24KCkNjOiBDaHJpcyBXaWxzb24gPGNocmlzQGNo cmlzLXdpbHNvbi5jby51az4KQ2M6IE1pa2EgS3VvcHBhbGEgPG1pa2Eua3VvcHBhbGFAbGludXgu aW50ZWwuY29tPgpTaWduZWQtb2ZmLWJ5OiBUb21hcyBFbGYgPHRvbWFzLmVsZkBpbnRlbC5jb20+ ClNpZ25lZC1vZmYtYnk6IEFydW4gU2lsdXZlcnkgPGFydW4uc2lsdXZlcnlAbGludXguaW50ZWwu Y29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMgICAgIHwgNTQgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKystLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9kcnYuaCAgICAgfCAgNCArKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgICAg IHwgIDQgKy0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91bmNvcmUuYyB8IDMzICsrKysr KysrKysrKysrKysrKysrKysrCiA0IGZpbGVzIGNoYW5nZWQsIDkxIGluc2VydGlvbnMoKyksIDQg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMKaW5kZXggZGZhYzhiMy4uY2I3NmRh MSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jCkBAIC0xMDI3LDEwICsxMDI3LDYwIEBAIGVycm9y OgogICovCiBpbnQgaTkxNV9yZXNldF9lbmdpbmUoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5n aW5lKQogeworCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBlbmdpbmUtPmk5MTUtPmRldjsKKwlz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOworCXN0 cnVjdCBpbnRlbF9lbmdpbmVfY3Nfc3RhdGUgc3RhdGU7CiAJaW50IHJldDsKIAotCS8qIEZJWE1F OiByZXBsYWNlIG1lIHdpdGggZW5naW5lIHJlc2V0IHNlcXVlbmNlICovCi0JcmV0ID0gLUVOT0RF VjsKKwlXQVJOX09OKCFtdXRleF9pc19sb2NrZWQoJmRldi0+c3RydWN0X211dGV4KSk7CisKKwlp OTE1X2dlbV9yZXNldF9lbmdpbmVfc3RhdHVzKGRldl9wcml2LCBlbmdpbmUpOworCisJLypUYWtl IHdha2UgbG9jayB0byBwcmV2ZW50IHBvd2VyIHNhdmluZyBtb2RlICovCisJaW50ZWxfdW5jb3Jl X2ZvcmNld2FrZV9nZXQoZGV2X3ByaXYsIEZPUkNFV0FLRV9BTEwpOworCisJcmV0ID0gaW50ZWxf cmVxdWVzdF9mb3JfcmVzZXQoZW5naW5lKTsKKwlpZiAocmV0KSB7CisJCURSTV9FUlJPUigiRmFp bGVkIHRvIGRpc2FibGUgJXNcbiIsIGVuZ2luZS0+bmFtZSk7CisJCWdvdG8gb3V0OworCX0KKwor CXJldCA9IGVuZ2luZS0+c2F2ZShlbmdpbmUsICZzdGF0ZSk7CisJaWYgKHJldCkKKwkJZ290byBl bmFibGVfZW5naW5lOworCisJcmV0ID0gaW50ZWxfZ3B1X3Jlc2V0KGRldl9wcml2LCBpbnRlbF9l bmdpbmVfZmxhZyhlbmdpbmUpKTsKKwlpZiAocmV0KSB7CisJCURSTV9FUlJPUigiRmFpbGVkIHRv IHJlc2V0ICVzLCByZXQ9JWRcbiIsIGVuZ2luZS0+bmFtZSwgcmV0KTsKKwkJZ290byBlbmFibGVf ZW5naW5lOworCX0KKworCXJldCA9IGVuZ2luZS0+aW5pdF9odyhlbmdpbmUpOworCWlmIChyZXQp CisJCWdvdG8gb3V0OworCisJLyoKKwkgKiBSZXN0YXJ0IHRoZSBlbmdpbmUgYWZ0ZXIgcmVzZXQu CisJICogRW5naW5lIHN0YXRlIGlzIGZpcnN0IHJlc3RvcmVkIGFuZCB0aGUgY29udGV4dCBpcyBy ZXN1Ym1pdHRlZC4KKwkgKi8KKwllbmdpbmUtPnN0YXJ0KGVuZ2luZSwgJnN0YXRlKTsKKworZW5h YmxlX2VuZ2luZToKKwkvKgorCSAqIHdlIG9ubHkgbmVlZCB0byBlbmFibGUgZW5naW5lIGlmIHdl IGNhbm5vdCBlaXRoZXIgc2F2ZSBlbmdpbmUgc3RhdGUKKwkgKiBvciByZXNldCBmYWlscy4gSWYg dGhlIHJlc2V0IGlzIHN1Y2Nlc3NmdWwsIGVuZ2luZSBnZXRzIGVuYWJsZWQKKwkgKiBhdXRvbWF0 aWNhbGx5IHNvIHdlIGNhbiBza2lwIHRoaXMgc3RlcC4KKwkgKi8KKwlpZiAocmV0KQorCQlpbnRl bF9jbGVhcl9yZXNldF9yZXF1ZXN0KGVuZ2luZSk7CisKK291dDoKKwlpZiAoc3RhdGUucmVxKQor CQlpOTE1X2dlbV9yZXF1ZXN0X3VucmVmZXJlbmNlKHN0YXRlLnJlcSk7CisKKwkvKiBXYWtlIHVw IGFueXRoaW5nIHdhaXRpbmcgb24gdGhpcyBlbmdpbmUncyBxdWV1ZSAqLworCXdha2VfdXBfYWxs KCZlbmdpbmUtPmlycV9xdWV1ZSk7CisJaW50ZWxfdW5jb3JlX2ZvcmNld2FrZV9wdXQoZGV2X3By aXYsIEZPUkNFV0FLRV9BTEwpOwogCiAJcmV0dXJuIHJldDsKIH0KZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Ry di5oCmluZGV4IGIzNWNhMDIuLmIyMTA1YmIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAt MjkxMCw2ICsyOTEwLDggQEAgZXh0ZXJuIGludCBpbnRlbF9ncHVfcmVzZXQoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2LCB1MzIgZW5naW5lX21hc2spOwogZXh0ZXJuIGJvb2wgaW50 ZWxfaGFzX2dwdV9yZXNldChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwogZXh0 ZXJuIGludCBpOTE1X3Jlc2V0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7CiBl eHRlcm4gYm9vbCBpbnRlbF9oYXNfZW5naW5lX3Jlc2V0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdik7CitleHRlcm4gaW50IGludGVsX3JlcXVlc3RfZm9yX3Jlc2V0KHN0cnVjdCBp bnRlbF9lbmdpbmVfY3MgKmVuZ2luZSk7CitleHRlcm4gaW50IGludGVsX2NsZWFyX3Jlc2V0X3Jl cXVlc3Qoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKTsKIGV4dGVybiBpbnQgaTkxNV9y ZXNldF9lbmdpbmUoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKTsKIGV4dGVybiBpbnQg aW50ZWxfZ3VjX3Jlc2V0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7CiBleHRl cm4gdm9pZCBpbnRlbF9lbmdpbmVfaW5pdF9oYW5nY2hlY2soc3RydWN0IGludGVsX2VuZ2luZV9j cyAqZW5naW5lKTsKQEAgLTMzMzEsNiArMzMzMyw4IEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBpOTE1 X3N0b3BfcmluZ19hbGxvd193YXJuKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikK IH0KIAogdm9pZCBpOTE1X2dlbV9yZXNldChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKK3ZvaWQg aTkxNV9nZW1fcmVzZXRfZW5naW5lX3N0YXR1cyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYsCisJCQkJICBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nKTsKIGJvb2wgaTkxNV9n ZW1fY2xmbHVzaF9vYmplY3Qoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwgYm9vbCBm b3JjZSk7CiBpbnQgX19tdXN0X2NoZWNrIGk5MTVfZ2VtX2luaXQoc3RydWN0IGRybV9kZXZpY2Ug KmRldik7CiBpbnQgaTkxNV9nZW1faW5pdF9lbmdpbmVzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYp OwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKaW5kZXggMjFkMGRlYS4uNjE2MDU2NCAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2dlbS5jCkBAIC0zMDgyLDggKzMwODIsOCBAQCBpOTE1X2dlbV9maW5kX2FjdGl2 ZV9yZXF1ZXN0KHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSkKIAlyZXR1cm4gTlVMTDsK IH0KIAotc3RhdGljIHZvaWQgaTkxNV9nZW1fcmVzZXRfZW5naW5lX3N0YXR1cyhzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCi0JCQkJICAgICAgIHN0cnVjdCBpbnRlbF9lbmdpbmVf Y3MgKmVuZ2luZSkKK3ZvaWQgaTkxNV9nZW1fcmVzZXRfZW5naW5lX3N0YXR1cyhzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCisJCQkJICBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpl bmdpbmUpCiB7CiAJc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXF1ZXN0OwogCWJvb2wg cmluZ19odW5nOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdW5jb3Jl LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91bmNvcmUuYwppbmRleCBkOTczYzJhLi42 M2FjYWViIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91bmNvcmUuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91bmNvcmUuYwpAQCAtMTczNCw2ICsxNzM0 LDM5IEBAIGludCBpbnRlbF9ndWNfcmVzZXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2KQogCXJldHVybiByZXQ7CiB9CiAKKy8qCisgKiBPbiBnZW44KyBhIHJlc2V0IHJlcXVlc3Qg aGFzIHRvIGJlIGlzc3VlZCB2aWEgdGhlIHJlc2V0IGNvbnRyb2wgcmVnaXN0ZXIKKyAqIGJlZm9y ZSBhIEdQVSBlbmdpbmUgY2FuIGJlIHJlc2V0IGluIG9yZGVyIHRvIHN0b3AgdGhlIGNvbW1hbmQg c3RyZWFtZXIKKyAqIGFuZCBpZGxlIHRoZSBlbmdpbmUuIFRoaXMgcmVwbGFjZXMgdGhlIGxlZ2Fj eSB3YXkgb2Ygc3RvcHBpbmcgYW4gZW5naW5lCisgKiBieSB3cml0aW5nIHRvIHRoZSBzdG9wIHJp bmcgYml0IGluIHRoZSBNSV9NT0RFIHJlZ2lzdGVyLgorICovCitpbnQgaW50ZWxfcmVxdWVzdF9m b3JfcmVzZXQoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQoreworCWlmICghaW50ZWxf aGFzX2VuZ2luZV9yZXNldChlbmdpbmUtPmk5MTUpKSB7CisJCURSTV9FUlJPUigiRW5naW5lIFJl c2V0IG5vdCBzdXBwb3J0ZWQgb24gR2VuJWRcbiIsCisJCQkgIElOVEVMX0lORk8oZW5naW5lLT5p OTE1KS0+Z2VuKTsKKwkJcmV0dXJuIC1FSU5WQUw7CisJfQorCisJcmV0dXJuIGdlbjhfcmVxdWVz dF9lbmdpbmVfcmVzZXQoZW5naW5lKTsKK30KKworLyoKKyAqIEl0IGlzIHBvc3NpYmxlIHRvIGJh Y2sgb2ZmIGZyb20gYSBwcmV2aW91c2x5IGlzc3VlZCByZXNldCByZXF1ZXN0IGJ5IHNpbXBseQor ICogY2xlYXJpbmcgdGhlIHJlc2V0IHJlcXVlc3QgYml0IGluIHRoZSByZXNldCBjb250cm9sIHJl Z2lzdGVyLgorICovCitpbnQgaW50ZWxfY2xlYXJfcmVzZXRfcmVxdWVzdChzdHJ1Y3QgaW50ZWxf ZW5naW5lX2NzICplbmdpbmUpCit7CisJaWYgKCFpbnRlbF9oYXNfZW5naW5lX3Jlc2V0KGVuZ2lu ZS0+aTkxNSkpIHsKKwkJRFJNX0VSUk9SKCJSZXF1ZXN0IHRvIGNsZWFyIHJlc2V0IG5vdCBzdXBw b3J0ZWQgb24gR2VuJWRcbiIsCisJCQkgIElOVEVMX0lORk8oZW5naW5lLT5pOTE1KS0+Z2VuKTsK KwkJcmV0dXJuIC1FSU5WQUw7CisJfQorCisJZ2VuOF91bnJlcXVlc3RfZW5naW5lX3Jlc2V0KGVu Z2luZSk7CisJcmV0dXJuIDA7Cit9CisKIGJvb2wgaW50ZWxfdW5jb3JlX3VuY2xhaW1lZF9tbWlv KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIHsKIAlyZXR1cm4gY2hlY2tfZm9y X3VuY2xhaW1lZF9tbWlvKGRldl9wcml2KTsKLS0gCjEuOS4xCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVs LWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK