From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michel Thierry Subject: [PATCH v6] drm/i915/guc: Add support for reset engine using GuC commands Date: Tue, 31 Oct 2017 15:53:09 -0700 Message-ID: <20171031225309.10888-1-michel.thierry@intel.com> References: <20171030185616.32836-3-michel.thierry@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id DC4136E651 for ; Tue, 31 Oct 2017 22:53:09 +0000 (UTC) In-Reply-To: <20171030185616.32836-3-michel.thierry@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 List-Id: intel-gfx@lists.freedesktop.org VGhpcyBwYXRjaCBhZGRzIHBlciBlbmdpbmUgcmVzZXQgYW5kIHJlY292ZXJ5IChURFIpIHN1cHBv cnQgd2hlbiBHdUMgaXMKdXNlZCB0byBzdWJtaXQgd29ya2xvYWRzIHRvIEdQVS4KCkluIHRoZSBj YXNlIG9mIGk5MTUgZGlyZWN0bHkgc3VibWlzc2lvbiB0byBFTFNQLCBkcml2ZXIgbWFuYWdlcyBo YW5nCmRldGVjdGlvbiwgcmVjb3ZlcnkgYW5kIHJlc3VibWlzc2lvbi4gV2l0aCBHdUMgc3VibWlz c2lvbiB0aGVzZSB0YXNrcwphcmUgc2hhcmVkIGJldHdlZW4gZHJpdmVyIGFuZCBHdUMuIGk5MTUg aXMgc3RpbGwgcmVzcG9uc2libGUgZm9yIGRldGVjdGluZwphIGhhbmcsIGFuZCB3aGVuIGl0IGRv ZXMgaXQgb25seSByZXF1ZXN0cyBHdUMgdG8gcmVzZXQgdGhhdCBFbmdpbmUuIEd1QwppbnRlcm5h bGx5IG1hbmFnZXMgYWNxdWlyaW5nIGZvcmNld2FrZSBhbmQgaWRsaW5nIHRoZSBlbmdpbmUgYmVm b3JlCnJlc2V0dGluZyBpdC4KCk9uY2UgdGhlIHJlc2V0IGlzIHN1Y2Nlc3NmdWwsIGk5MTUgdGFr ZXMgb3ZlciBhZ2FpbiBhbmQgaGFuZGxlcyB0aGUKcmVzdWJtaXNzaW9uLiBUaGUgc2NoZWR1bGVy IGluIGk5MTUga25vd3Mgd2hpY2ggcmVxdWVzdHMgYXJlIHBlbmRpbmcgc28KYWZ0ZXIgcmVzZXR0 aW5nIGEgZW5naW5lLCBwZW5kaW5nIHdvcmtsb2Fkcy9yZXF1ZXN0cyBhcmUgcmVzdWJtaXR0ZWQK YWdhaW4uCgp2Mjogcy9pOTE1X2d1Y19yZXF1ZXN0X2VuZ2luZV9yZXNldC9pOTE1X2d1Y19yZXNl dF9lbmdpbmUvIHRvIG1hdGNoIHRoZQpub24tZ3VjIGZ1bmN0aW9uIG5hbWVzLgoKdjM6IFJlbW92 ZWQgZGVidWcgbWVzc2FnZSBhYm91dCBlbmdpbmUgcmVzdGFydGluZyBmcm9tIHdoaWNoIHJlcXVl c3QsCnNpbmNlIHRoZSBuZXcgYmFzZWxpbmUgZG8gaXQgcmVnYXJkbGVzcyBvZiBzdWJtaXNzaW9u IG1vZGUuIChDaHJpcykKCnY0OiBSZWJhc2UuCgp2NTogRG8gbm90IHBhc3MgdW5uZWNlc3Nhcnkg cmVwb3J0aW5nIGZsYWdzIHRvIHRoZSBmdyAoSmVmZik7CnRhc2tsZXRfc2NoZWR1bGUoJmV4ZWNs aXN0cy0+aXJxX3Rhc2tsZXQpIGhhbmRsZXMgdGhlIHJlc3VibWl0OyByZWJhc2UuCgp2NjogUmVu YW1lIHRoZSBleGlzdGluZyByZXNldCBlbmdpbmUgZnVuY3Rpb24gYW5kIHNoYXJlIGEgc2ltaWxh cgppbnRlcmZhY2UgYmV0d2VlbiBndWMgYW5kIG5vbi1ndWMgcGF0aHMgKENocmlzKS4KClNpZ25l ZC1vZmYtYnk6IE1pY2hlbCBUaGllcnJ5IDxtaWNoZWwudGhpZXJyeUBpbnRlbC5jb20+CkNjOiBD aHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KLS0tCiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2Rydi5jICAgICAgIHwgMTUgKysrKysrKysrKysrKy0tCiBkcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICAgIHwgIDIgKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2d1Yy5jICAgICAgfCAyNCArKysrKysrKysrKysrKysrKysrKysrKysKIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2d1Y19md2lmLmggfCAgMSArCiBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF91bmNvcmUuYyAgIHwgIDUgLS0tLS0KIDUgZmlsZXMgY2hhbmdlZCwgNDAgaW5zZXJ0 aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2Rydi5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYwppbmRleCBhZjc0 NTc0OTUwOWMuLjM1OTMzM2E0MjNjZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9kcnYuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jCkBAIC0xOTUw LDYgKzE5NTAsMTIgQEAgdm9pZCBpOTE1X3Jlc2V0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpp OTE1LCB1bnNpZ25lZCBpbnQgZmxhZ3MpCiAJZ290byBmaW5pc2g7CiB9CiAKK3N0YXRpYyBpbmxp bmUgaW50IGludGVsX2d0X3Jlc2V0X2VuZ2luZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYsCisJCQkJCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSkKK3sKKwlyZXR1cm4g aW50ZWxfZ3B1X3Jlc2V0KGRldl9wcml2LCBpbnRlbF9lbmdpbmVfZmxhZyhlbmdpbmUpKTsKK30K KwogLyoqCiAgKiBpOTE1X3Jlc2V0X2VuZ2luZSAtIHJlc2V0IEdQVSBlbmdpbmUgdG8gcmVjb3Zl ciBmcm9tIGEgaGFuZwogICogQGVuZ2luZTogZW5naW5lIHRvIHJlc2V0CkBAIC0xOTg0LDEwICsx OTkwLDE1IEBAIGludCBpOTE1X3Jlc2V0X2VuZ2luZShzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpl bmdpbmUsIHVuc2lnbmVkIGludCBmbGFncykKIAkJZ290byBvdXQ7CiAJfQogCi0JcmV0ID0gaW50 ZWxfZ3B1X3Jlc2V0KGVuZ2luZS0+aTkxNSwgaW50ZWxfZW5naW5lX2ZsYWcoZW5naW5lKSk7CisJ aWYgKCFlbmdpbmUtPmk5MTUtPmd1Yy5leGVjYnVmX2NsaWVudCkKKwkJcmV0ID0gaW50ZWxfZ3Rf cmVzZXRfZW5naW5lKGVuZ2luZS0+aTkxNSwgZW5naW5lKTsKKwllbHNlCisJCXJldCA9IGludGVs X2d1Y19yZXNldF9lbmdpbmUoJmVuZ2luZS0+aTkxNS0+Z3VjLCBlbmdpbmUpOworCiAJaWYgKHJl dCkgewogCQkvKiBJZiB3ZSBmYWlsIGhlcmUsIHdlIGV4cGVjdCB0byBmYWxsYmFjayB0byBhIGds b2JhbCByZXNldCAqLwotCQlEUk1fREVCVUdfRFJJVkVSKCJGYWlsZWQgdG8gcmVzZXQgJXMsIHJl dD0lZFxuIiwKKwkJRFJNX0RFQlVHX0RSSVZFUigiJXNGYWlsZWQgdG8gcmVzZXQgJXMsIHJldD0l ZFxuIiwKKwkJCQkgKGVuZ2luZS0+aTkxNS0+Z3VjLmV4ZWNidWZfY2xpZW50ID8gIkdVQyAiOiIi KSwKIAkJCQkgZW5naW5lLT5uYW1lLCByZXQpOwogCQlnb3RvIG91dDsKIAl9CmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9kcnYuaAppbmRleCBjZmYxYjU3NTk4YzMuLmNlMjcyNTY5NjE4NyAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2Rydi5oCkBAIC0zMzMwLDYgKzMzMzAsOCBAQCBleHRlcm4gaW50IGk5MTVfcmVzZXRf ZW5naW5lKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSwKIAogZXh0ZXJuIGJvb2wgaW50 ZWxfaGFzX3Jlc2V0X2VuZ2luZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwog ZXh0ZXJuIGludCBpbnRlbF9yZXNldF9ndWMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2KTsKK2V4dGVybiBpbnQgaW50ZWxfZ3VjX3Jlc2V0X2VuZ2luZShzdHJ1Y3QgaW50ZWxfZ3Vj ICpndWMsCisJCQkJICBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpOwogZXh0ZXJuIHZv aWQgaW50ZWxfZW5naW5lX2luaXRfaGFuZ2NoZWNrKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVu Z2luZSk7CiBleHRlcm4gdm9pZCBpbnRlbF9oYW5nY2hlY2tfaW5pdChzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYpOwogZXh0ZXJuIHVuc2lnbmVkIGxvbmcgaTkxNV9jaGlwc2V0X3Zh bChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZ3VjLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9n dWMuYwppbmRleCBmNzRkNTBmZGFlYjAuLjk2Nzg2MzBhMWM3MCAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZ3VjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfZ3VjLmMKQEAgLTI0LDYgKzI0LDcgQEAKIAogI2luY2x1ZGUgImludGVsX2d1Yy5oIgogI2lu Y2x1ZGUgImk5MTVfZHJ2LmgiCisjaW5jbHVkZSAiaTkxNV9ndWNfc3VibWlzc2lvbi5oIgogCiBz dGF0aWMgdm9pZCBnZW44X2d1Y19yYWlzZV9pcnEoc3RydWN0IGludGVsX2d1YyAqZ3VjKQogewpA QCAtMjgzLDYgKzI4NCwyOSBAQCBpbnQgaW50ZWxfZ3VjX3N1c3BlbmQoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2KQogCXJldHVybiBpbnRlbF9ndWNfc2VuZChndWMsIGRhdGEsIEFS UkFZX1NJWkUoZGF0YSkpOwogfQogCisvKioKKyAqIGludGVsX2d1Y19yZXNldF9lbmdpbmUoKSAt IGFzayBHdUMgdG8gcmVzZXQgYW4gZW5naW5lCisgKiBAZ3VjOglpbnRlbF9ndWMgc3RydWN0dXJl CisgKiBAZW5naW5lOgllbmdpbmUgdG8gYmUgcmVzZXQKKyAqLworaW50IGludGVsX2d1Y19yZXNl dF9lbmdpbmUoc3RydWN0IGludGVsX2d1YyAqZ3VjLAorCQkJICAgc3RydWN0IGludGVsX2VuZ2lu ZV9jcyAqZW5naW5lKQoreworCXUzMiBkYXRhWzddOworCisJR0VNX0JVR19PTighZ3VjLT5leGVj YnVmX2NsaWVudCk7CisKKwlkYXRhWzBdID0gSU5URUxfR1VDX0FDVElPTl9SRVFVRVNUX0VOR0lO RV9SRVNFVDsKKwlkYXRhWzFdID0gZW5naW5lLT5ndWNfaWQ7CisJZGF0YVsyXSA9IDA7CisJZGF0 YVszXSA9IDA7CisJZGF0YVs0XSA9IDA7CisJZGF0YVs1XSA9IGd1Yy0+ZXhlY2J1Zl9jbGllbnQt PnN0YWdlX2lkOworCWRhdGFbNl0gPSBndWNfZ2d0dF9vZmZzZXQoZ3VjLT5zaGFyZWRfZGF0YSk7 CisKKwlyZXR1cm4gaW50ZWxfZ3VjX3NlbmQoZ3VjLCBkYXRhLCBBUlJBWV9TSVpFKGRhdGEpKTsK K30KKwogLyoqCiAgKiBpbnRlbF9ndWNfcmVzdW1lKCkgLSBub3RpZnkgR3VDIHJlc3VtaW5nIGZy b20gc3VzcGVuZCBzdGF0ZQogICogQGRldl9wcml2OglpOTE1IGRldmljZSBwcml2YXRlCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ndWNfZndpZi5oIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZ3VjX2Z3aWYuaAppbmRleCBlMjRkYmVjMmVhZDguLjZhMTBhYTZm MDRkMyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZ3VjX2Z3aWYuaAor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ndWNfZndpZi5oCkBAIC01NzQsNiArNTc0 LDcgQEAgc3RydWN0IGd1Y19zaGFyZWRfY3R4X2RhdGEgewogZW51bSBpbnRlbF9ndWNfYWN0aW9u IHsKIAlJTlRFTF9HVUNfQUNUSU9OX0RFRkFVTFQgPSAweDAsCiAJSU5URUxfR1VDX0FDVElPTl9S RVFVRVNUX1BSRUVNUFRJT04gPSAweDIsCisJSU5URUxfR1VDX0FDVElPTl9SRVFVRVNUX0VOR0lO RV9SRVNFVCA9IDB4MywKIAlJTlRFTF9HVUNfQUNUSU9OX1NBTVBMRV9GT1JDRVdBS0UgPSAweDYs CiAJSU5URUxfR1VDX0FDVElPTl9BTExPQ0FURV9ET09SQkVMTCA9IDB4MTAsCiAJSU5URUxfR1VD X0FDVElPTl9ERUFMTE9DQVRFX0RPT1JCRUxMID0gMHgyMCwKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX3VuY29yZS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf dW5jb3JlLmMKaW5kZXggZDYyOWIyZTQwMDEzLi4wNTY0ZDg3YWQ0MTYgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3VuY29yZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX3VuY29yZS5jCkBAIC0xNzkyLDE0ICsxNzkyLDkgQEAgYm9vbCBpbnRlbF9oYXNf Z3B1X3Jlc2V0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAlyZXR1cm4gaW50 ZWxfZ2V0X2dwdV9yZXNldChkZXZfcHJpdikgIT0gTlVMTDsKIH0KIAotLyoKLSAqIFdoZW4gR3VD IHN1Ym1pc3Npb24gaXMgZW5hYmxlZCwgR3VDIG1hbmFnZXMgRUxTUCBhbmQgY2FuIGluaXRpYXRl IHRoZQotICogZW5naW5lIHJlc2V0IHRvby4gRm9yIG5vdywgZmFsbCBiYWNrIHRvIGZ1bGwgR1BV IHJlc2V0IGlmIGl0IGlzIGVuYWJsZWQuCi0gKi8KIGJvb2wgaW50ZWxfaGFzX3Jlc2V0X2VuZ2lu ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiB7CiAJcmV0dXJuIChkZXZfcHJp di0+aW5mby5oYXNfcmVzZXRfZW5naW5lICYmCi0JCSFkZXZfcHJpdi0+Z3VjLmV4ZWNidWZfY2xp ZW50ICYmCiAJCWk5MTVfbW9kcGFyYW1zLnJlc2V0ID49IDIpOwogfQogCi0tIAoyLjE0LjIKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBt YWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=