From mboxrd@z Thu Jan 1 00:00:00 1970 From: Arun Siluvery Subject: [PATCH v2 06/15] drm/i915/tdr: Capture engine state before reset Date: Fri, 17 Jun 2016 08:09:06 +0100 Message-ID: <1466147355-4635-7-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 7EB146EADD for ; Fri, 17 Jun 2016 07:09:30 +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 TWluaW1hbCBzdGF0ZSBvZiBlbmdpbmUgaXMgc2F2ZWQgYmVmb3JlIHJlc2V0dGluZyBpdCwgdGhp cyBzdGF0ZSBpbmNsdWRlcwpoZWFkLCBjdXJyZW50IGFjdGl2ZSByZXF1ZXN0LgoKQSBjb25zaXN0 ZW5jeSBjaGVjayBpcyBwZXJmb3JtZWQgb24gdGhlIGFjdGl2ZSByZXF1ZXN0IHRvIG1ha2Ugc3Vy ZSB0aGF0CnRoZSBjb250ZXh0IEhXIGlzIGV4ZWN1dGluZyBpcyBzYW1lIGFzIHRoZSBvbmUgZm9y IHRoZSBhY3RpdmUgcmVxdWVzdC4gVGhpcwpjaGVjayBpcyBpbXBvcnRhbnQgYmVjYXVzZSBlbmdp bmUgcmVjb3ZlcnkgaW4gZXhlY2xpc3QgbW9kZSByZWxpZXMgb24gdGhlCmNvbnRleHQgcmVzdWJt aXNzaW9uIGFmdGVyIHJlc2V0LiBJZiB0aGUgc3RhdGUgaXMgaW5jb25zaXN0ZW50LApyZXN1Ym1p c3Npb24gY2FuIGNhdXNlIHVuZm9yc2VlbiBzaWRlLWVmZmVjdHMgc3VjaCBhcyB1bmV4cGVjdGVk CnByZWVtcHRpb25zLgoKRW5naW5lIGlzIHJlc3RhcnRlZCBhZnRlciByZXNldCB3aXRoIHRoaXMg c3RhdGUuCgpTaWduZWQtb2ZmLWJ5OiBUb21hcyBFbGYgPHRvbWFzLmVsZkBpbnRlbC5jb20+ClNp Z25lZC1vZmYtYnk6IEFydW4gU2lsdXZlcnkgPGFydW4uc2lsdXZlcnlAbGludXguaW50ZWwuY29t PgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jICAgICAgICB8IDgwICsrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf bHJjLmggICAgICAgIHwgIDMgKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZm ZXIuaCB8IDEwICsrKysrCiAzIGZpbGVzIGNoYW5nZWQsIDkzIGluc2VydGlvbnMoKykKCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2xyYy5jCmluZGV4IDM1MjU1Y2UuLmI4MzU1MmEgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2xyYy5jCkBAIC0xMDIyLDYgKzEwMjIsODIgQEAgdm9pZCBpbnRlbF9scl9jb250ZXh0 X3VucGluKHN0cnVjdCBpOTE1X2dlbV9jb250ZXh0ICpjdHgsCiAJaTkxNV9nZW1fY29udGV4dF91 bnJlZmVyZW5jZShjdHgpOwogfQogCisvKioKKyAqIGludGVsX2V4ZWNsaXN0X2dldF9jdXJyZW50 X3JlcXVlc3QoKSAtIHJldHVybnMgcmVxdWVzdCBjdXJyZW50bHkgcHJvY2Vzc2VkCisgKiBieSB0 aGUgZ2l2ZW4gZW5naW5lCisgKgorICogQGVuZ2luZTogRW5naW5lIGN1cnJlbnRseSBydW5uaW5n IGNvbnRleHQgdG8gYmUgcmV0dXJuZWQuCisgKgorICogUmV0dXJuczoKKyAqICByZXEgLSBpZiBh IHZhbGlkIHJlcSBpcyBmb3VuZCBpbiB0aGUgZXhlY2xpc3QgcXVldWUgYW5kIEhXIGFsc28gYWdy ZWVzLgorICogICAgICAgIGNhbGxlciBoYXMgdG8gZGVyZWZlcmVuY2UgYXQgdGhlIGVuZCBvZiBp dHMgbGlmZWN5Y2xlLgorICogIE5VTEwgLSBvdGhlcndpc2UKKyAqLworc3RhdGljIHN0cnVjdCBk cm1faTkxNV9nZW1fcmVxdWVzdCAqCitpbnRlbF9leGVjbGlzdF9nZXRfY3VycmVudF9yZXF1ZXN0 KHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSkKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X3JlcXVlc3QgKnJlcTsKKwl1bnNpZ25lZCBsb25nIGZsYWdzOworCisJc3Bpbl9sb2NrX2lycXNh dmUoJmVuZ2luZS0+ZXhlY2xpc3RfbG9jaywgZmxhZ3MpOworCisJcmVxID0gbGlzdF9maXJzdF9l bnRyeV9vcl9udWxsKCZlbmdpbmUtPmV4ZWNsaXN0X3F1ZXVlLAorCQkJCSAgICAgICBzdHJ1Y3Qg ZHJtX2k5MTVfZ2VtX3JlcXVlc3QsCisJCQkJICAgICAgIGV4ZWNsaXN0X2xpbmspOworCS8qCisJ ICogT25seSBhY2tub3dsZWRnZSB0aGUgcmVxdWVzdCBpbiB0aGUgZXhlY2xpc3QgcXVldWUgaWYg aXQncyBhY3R1YWxseQorCSAqIGJlZW4gc3VibWl0dGVkIHRvIGhhcmR3YXJlLCBvdGhlcndpc2Ug dGhlcmUncyB0aGUgcmlzayBvZgorCSAqIGluY29uc2lzdGVuY3kgYmV0d2VlbiB0aGUgKHVuc3Vi bWl0dGVkKSByZXF1ZXN0IGFuZCB0aGUgaWRsZQorCSAqIGhhcmR3YXJlIHN0YXRlLgorCSAqLwor CWlmIChyZXEgJiYgcmVxLT5jdHggJiYgcmVxLT5lbHNwX3N1Ym1pdHRlZCkgeworCQl1MzIgZXhl Y2xpc3Rfc3RhdHVzOworCQl1MzIgaHdfY29udGV4dDsKKwkJdTMyIGh3X2FjdGl2ZTsKKwkJc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZW5naW5lLT5pOTE1OworCisJCWh3X2Nv bnRleHQgPSBJOTE1X1JFQUQoUklOR19FWEVDTElTVF9TVEFUVVNfQ1RYX0lEKGVuZ2luZSkpOwor CQlleGVjbGlzdF9zdGF0dXMgPSBJOTE1X1JFQUQoUklOR19FWEVDTElTVF9TVEFUVVNfTE8oZW5n aW5lKSk7CisJCWh3X2FjdGl2ZSA9ICgoZXhlY2xpc3Rfc3RhdHVzICYgRVhFQ0xJU1RfU1RBVFVT X0VMRU1FTlQwX0FDVElWRSkgfHwKKwkJCSAgICAgKGV4ZWNsaXN0X3N0YXR1cyAmIEVYRUNMSVNU X1NUQVRVU19FTEVNRU5UMV9BQ1RJVkUpKTsKKworCQkvKiBJZiBib3RoIEhXIGFuZCBkcml2ZXIg YWdyZWVzIHRoZW4gd2UgZm91bmQgaXQgKi8KKwkJaWYgKGh3X2FjdGl2ZSAmJiBod19jb250ZXh0 ID09IHJlcS0+Y3R4LT5od19pZCkKKwkJCWk5MTVfZ2VtX3JlcXVlc3RfcmVmZXJlbmNlKHJlcSk7 CisJfSBlbHNlIHsKKwkJcmVxID0gTlVMTDsKKwkJV0FSTigxLCAiTm8gYWN0aXZlIHJlcXVlc3Qg Zm9yICVzXG4iLCBlbmdpbmUtPm5hbWUpOworCX0KKworCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUo JmVuZ2luZS0+ZXhlY2xpc3RfbG9jaywgZmxhZ3MpOworCisJcmV0dXJuIHJlcTsKK30KKworLyoq CisgKiBnZW44X2VuZ2luZV9zdGF0ZV9zYXZlKCkgLSBzYXZlIG1pbmltdW0gZW5naW5lIHN0YXRl CisgKiBAZW5naW5lOiBlbmdpbmUgd2hvc2Ugc3RhdGUgaXMgdG8gYmUgc2F2ZWQKKyAqIEBzdGF0 ZTogbG9jYXRpb24gd2hlcmUgdGhlIHN0YXRlIGlzIHNhdmVkCisgKgorICogY2FwdHVyZWQgZW5n aW5lIHN0YXRlIGluY2x1ZGVzIGhlYWQsIHRhaWwsIGFjdGl2ZSByZXF1ZXN0LiBBZnRlciByZXNl dCwKKyAqIGVuZ2luZSBpcyByZXN0YXJ0ZWQgd2l0aCB0aGlzIHN0YXRlLgorICoKKyAqIFJldHVy bnM6CisgKgkwIGlmIG9rLCBvdGhlcndpc2UgcHJvcGFnYXRlcyBlcnJvciBjb2Rlcy4KKyAqLwor c3RhdGljIGludCBnZW44X2VuZ2luZV9zdGF0ZV9zYXZlKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3Mg KmVuZ2luZSwKKwkJCQkgIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3Nfc3RhdGUgKnN0YXRlKQorewor CXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGVuZ2luZS0+aTkxNTsKKworCXN0 YXRlLT5oZWFkID0gSTkxNV9SRUFEX0hFQUQoZW5naW5lKTsKKwlzdGF0ZS0+cmVxID0gaW50ZWxf ZXhlY2xpc3RfZ2V0X2N1cnJlbnRfcmVxdWVzdChlbmdpbmUpOworCWlmICghc3RhdGUtPnJlcSkK KwkJcmV0dXJuIC1FSU5WQUw7CisKKwlyZXR1cm4gMDsKK30KKwogc3RhdGljIGludCBpbnRlbF9s b2dpY2FsX3Jpbmdfd29ya2Fyb3VuZHNfZW1pdChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3Qg KnJlcSkKIHsKIAlpbnQgcmV0LCBpOwpAQCAtMTk3Nyw2ICsyMDUzLDEwIEBAIGxvZ2ljYWxfcmlu Z19kZWZhdWx0X3ZmdW5jcyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCiAJZW5naW5l LT5lbWl0X2JiX3N0YXJ0ID0gZ2VuOF9lbWl0X2JiX3N0YXJ0OwogCWVuZ2luZS0+Z2V0X3NlcW5v ID0gZ2VuOF9nZXRfc2Vxbm87CiAJZW5naW5lLT5zZXRfc2Vxbm8gPSBnZW44X3NldF9zZXFubzsK KworCS8qIGVuZ2luZSByZXNldCBzdXBwb3J0aW5nIGZ1bmN0aW9ucyAqLworCWVuZ2luZS0+c2F2 ZSA9IGdlbjhfZW5naW5lX3N0YXRlX3NhdmU7CisKIAlpZiAoSVNfQlhUX1JFVklEKGVuZ2luZS0+ aTkxNSwgMCwgQlhUX1JFVklEX0ExKSkgewogCQllbmdpbmUtPmlycV9zZXFub19iYXJyaWVyID0g Ynh0X2Ffc2Vxbm9fYmFycmllcjsKIAkJZW5naW5lLT5zZXRfc2Vxbm8gPSBieHRfYV9zZXRfc2Vx bm87CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuaCBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5oCmluZGV4IGE4ZGI0MmEuLjBlZjZmYjUgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5oCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2xyYy5oCkBAIC0zMSw3ICszMSwxMCBAQAogLyogRXhlY2xpc3RzIHJl Z3MgKi8KICNkZWZpbmUgUklOR19FTFNQKHJpbmcpCQkJCV9NTUlPKChyaW5nKS0+bW1pb19iYXNl ICsgMHgyMzApCiAjZGVmaW5lIFJJTkdfRVhFQ0xJU1RfU1RBVFVTX0xPKHJpbmcpCQlfTU1JTygo cmluZyktPm1taW9fYmFzZSArIDB4MjM0KQorI2RlZmluZSAgIEVYRUNMSVNUX1NUQVRVU19FTEVN RU5UMF9BQ1RJVkUgICAgICAgKDEgPDwgMTQpCisjZGVmaW5lICAgRVhFQ0xJU1RfU1RBVFVTX0VM RU1FTlQxX0FDVElWRSAgICAgICAoMSA8PCAxNSkKICNkZWZpbmUgUklOR19FWEVDTElTVF9TVEFU VVNfSEkocmluZykJCV9NTUlPKChyaW5nKS0+bW1pb19iYXNlICsgMHgyMzQgKyA0KQorI2RlZmlu ZSBSSU5HX0VYRUNMSVNUX1NUQVRVU19DVFhfSUQocmluZykJUklOR19FWEVDTElTVF9TVEFUVVNf SEkocmluZykKICNkZWZpbmUgUklOR19DT05URVhUX0NPTlRST0wocmluZykJCV9NTUlPKChyaW5n KS0+bW1pb19iYXNlICsgMHgyNDQpCiAjZGVmaW5lCSAgQ1RYX0NUUkxfSU5ISUJJVF9TWU5fQ1RY X1NXSVRDSAkoMSA8PCAzKQogI2RlZmluZQkgIENUWF9DVFJMX0VOR0lORV9DVFhfUkVTVE9SRV9J TkhJQklUCSgxIDw8IDApCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9y aW5nYnVmZmVyLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgKaW5k ZXggYjMzYzg3Ni4uZGFmMjcyNyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfcmluZ2J1ZmZlci5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZm ZXIuaApAQCAtMTQxLDYgKzE0MSwxMiBAQCBzdHJ1Y3QgIGk5MTVfY3R4X3dvcmthcm91bmRzIHsK IAlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqOwogfTsKIAorc3RydWN0IGludGVsX2Vu Z2luZV9jc19zdGF0ZSB7CisJdTMyIGhlYWQ7CisJdTMyIHRhaWw7CisJc3RydWN0IGRybV9pOTE1 X2dlbV9yZXF1ZXN0ICpyZXE7Cit9OworCiBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzIHsKIAlzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNTsKIAljb25zdCBjaGFyCSpuYW1lOwpAQCAtMjA0LDYg KzIxMCwxMCBAQCBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzIHsKICNkZWZpbmUgSTkxNV9ESVNQQVRD SF9SUyAgICAgMHg0CiAJdm9pZAkJKCpjbGVhbnVwKShzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpy aW5nKTsKIAorCS8qIGVuZ2luZSByZXNldCBzdXBwb3J0aW5nIGZ1bmN0aW9ucyAqLworCWludCAo KnNhdmUpKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSwKKwkJICAgIHN0cnVjdCBpbnRl bF9lbmdpbmVfY3Nfc3RhdGUgKnN0YXRlKTsKKwogCS8qIEdFTjggc2lnbmFsL3dhaXQgdGFibGUg LSBuZXZlciB0cnVzdCBjb21tZW50cyEKIAkgKgkgIHNpZ25hbCB0bwlzaWduYWwgdG8gICAgc2ln bmFsIHRvICAgc2lnbmFsIHRvICAgICAgc2lnbmFsIHRvCiAJICoJICAgIFJDUwkJICAgVkNTICAg ICAgICAgIEJDUyAgICAgICAgVkVDUwkJIFZDUzIKLS0gCjEuOS4xCgpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0Cklu dGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5v cmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK