From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Gordon Subject: [PATCH v2 1/2] drm/i915/guc: Reset GuC and retry on firmware load failure Date: Wed, 23 Mar 2016 17:05:45 +0000 Message-ID: <1458752746-14248-1-git-send-email-david.s.gordon@intel.com> References: <56F19212.9000705@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id 0FBDE6E8C9 for ; Wed, 23 Mar 2016 17:05:57 +0000 (UTC) In-Reply-To: <56F19212.9000705@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 List-Id: intel-gfx@lists.freedesktop.org RnJvbTogQXJ1biBTaWx1dmVyeSA8YXJ1bi5zaWx1dmVyeUBsaW51eC5pbnRlbC5jb20+CgpEdWUg dG8gdGltaW5nIGlzc3VlcyBpbiB0aGUgSFcgc29tZSBvZiB0aGUgc3RhdHVzIGJpdHMgcmVxdWly ZWQgZm9yIEd1QwphdXRoZW50aWNhdGlvbiBkb2Vzbid0IGdldCBzZXQgb2NjYXNzaW9uYWxseSwg d2hlbiB0aGF0IGhhcHBlbnMsIEd1QyBjYW5ub3QKYmUgaW5pdGlhbGl6ZWQgYW5kIHdlIHdpbGwg YmUgbGVmdCB3aXRoIGEgd2VkZ2VkIEdQVS4gVGhlIFdBIHN1Z2dlc3RlZCBpcwp0byBwZXJmb3Jt IGEgc29mdCByZXNldCBvZiBHdUMgYW5kIGF0dGVtcHQgdG8gcmVsb2FkIHRoZSBmdyBhZ2FpbiBm b3IgZmV3CnRpbWVzIGJlZm9yZSBnaXZpbmcgdXAuCgpBcyB0aGUgZmFpbHVyZSBpcyBkZXBlbmRl bnQgb24gdGltaW5nLCB0ZXN0cyBwZXJmb3JtZWQgYnkgdHJpZ2dlcmluZyBtYW51YWwKZnVsbCBn cHUgcmVzZXQgKGk5MTVfd2VkZ2VkKSBzaG93ZWQgdGhhdCB3ZSBjb3VsZCBzb21ldGltZXMgaGl0 IHRoaXMgYWZ0ZXIKc2V2ZXJhbCB0aG91c2FuZCBpdGVyYXRpb25zIGJ1dCBzb21ldGltZXMgdGVz dHMgcmFuIGV2ZW4gbG9uZ2VyIHdpdGhvdXQgYW55Cmlzc3Vlcy4gUmVzZXQgYW5kIHJlbG9hZCBt ZWNoYW5pc20gcHJvdmVkIGhlbHBmdWwgd2hlbiB3ZSBpbmRlZWQgaGl0IGZ3CmxvYWQgZmFpbHVy ZSBzbyBpdCBpcyBiZXR0ZXIgdG8gaW5jbHVkZSB0aGlzIHRvIGltcHJvdmUgZHJpdmVyIHN0YWJp bGl0eS4KClRoaXMgY2hhbmdlIGltcGxlbWVudHMgdGhlIGZvbGxvd2luZyBXQSwKCldhRW5hYmxl dUtlcm5lbEhlYWRlclZhbGlkRml4OnNrbCxieHQKV2FFbmFibGVHdUNCb290SGFzaENoZWNrTm90 U2V0OnNrbCxieHQKClNpZ25lZC1vZmYtYnk6IEFydW4gU2lsdXZlcnkgPGFydW4uc2lsdXZlcnlA bGludXguaW50ZWwuY29tPgpTaWduZWQtb2ZmLWJ5OiBEYXZlIEdvcmRvbiA8ZGF2aWQucy5nb3Jk b25AaW50ZWwuY29tPgpSZXZpZXdlZC1ieTogQWxleCBEYWkgPHl1LmRhaUBpbnRlbC5jb20+Ci0t LQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAgICAgIHwgIDEgKwogZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9ndWNfcmVnLmggICAgIHwgIDEgKwogZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9yZWcuaCAgICAgICAgIHwgIDEgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfZ3VjX2xvYWRlci5jIHwgNDkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tCiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91bmNvcmUuYyAgICAgfCAxOSArKysrKysrKysrKysr CiA1IGZpbGVzIGNoYW5nZWQsIDY5IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggOWQyOWFiMC4uODM4MGZlMCAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oCkBAIC0yNzQwLDYgKzI3NDAsNyBAQCBleHRlcm4gbG9uZyBpOTE1X2NvbXBhdF9p b2N0bChzdHJ1Y3QgZmlsZSAqZmlscCwgdW5zaWduZWQgaW50IGNtZCwKIGV4dGVybiBpbnQgaW50 ZWxfZ3B1X3Jlc2V0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHUzMiBlbmdpbmVfbWFzayk7CiBl eHRlcm4gYm9vbCBpbnRlbF9oYXNfZ3B1X3Jlc2V0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwog ZXh0ZXJuIGludCBpOTE1X3Jlc2V0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOworZXh0ZXJuIGlu dCBpbnRlbF9ndWNfcmVzZXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKIGV4 dGVybiB2b2lkIGludGVsX2VuZ2luZV9pbml0X2hhbmdjaGVjayhzdHJ1Y3QgaW50ZWxfZW5naW5l X2NzICplbmdpbmUpOwogZXh0ZXJuIHVuc2lnbmVkIGxvbmcgaTkxNV9jaGlwc2V0X3ZhbChzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwogZXh0ZXJuIHVuc2lnbmVkIGxvbmcgaTkx NV9tY2hfdmFsKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7CmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2d1Y19yZWcuaCBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ3VjX3JlZy5oCmluZGV4IGU0YmE1ODIuLjk0Y2VlZTUgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ3VjX3JlZy5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ3VjX3JlZy5oCkBAIC0yNyw2ICsyNyw3IEBACiAvKiBEZWZpbml0aW9ucyBvZiBH dUMgSC9XIHJlZ2lzdGVycywgYml0cywgZXRjICovCiAKICNkZWZpbmUgR1VDX1NUQVRVUwkJCV9N TUlPKDB4YzAwMCkKKyNkZWZpbmUgICBHU19NSUFfSU5fUkVTRVQJCSgxIDw8IDApCiAjZGVmaW5l ICAgR1NfQk9PVFJPTV9TSElGVAkJMQogI2RlZmluZSAgIEdTX0JPT1RST01fTUFTSwkJICAoMHg3 RiA8PCBHU19CT09UUk9NX1NISUZUKQogI2RlZmluZSAgIEdTX0JPT1RST01fUlNBX0ZBSUxFRAkJ ICAoMHg1MCA8PCBHU19CT09UUk9NX1NISUZUKQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9yZWcuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKaW5kZXgg ZjNiYTQzYy4uZWQwNTMxYWMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf cmVnLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaApAQCAtMTY1LDYgKzE2 NSw3IEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBpOTE1X21taW9fcmVnX3ZhbGlkKGk5MTVfcmVnX3Qg cmVnKQogI2RlZmluZSAgR0VONl9HUkRPTV9NRURJQQkJKDEgPDwgMikKICNkZWZpbmUgIEdFTjZf R1JET01fQkxUCQkJKDEgPDwgMykKICNkZWZpbmUgIEdFTjZfR1JET01fVkVDUwkJKDEgPDwgNCkK KyNkZWZpbmUgIEdFTjlfR1JET01fR1VDCQkJKDEgPDwgNSkKICNkZWZpbmUgIEdFTjhfR1JET01f TUVESUEyCQkoMSA8PCA3KQogCiAjZGVmaW5lIFJJTkdfUFBfRElSX0JBU0UocmluZykJCV9NTUlP KChyaW5nKS0+bW1pb19iYXNlKzB4MjI4KQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZ3VjX2xvYWRlci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZ3VjX2xv YWRlci5jCmluZGV4IGUxYWZmNjIuLmEwN2MyMjggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2d1Y19sb2FkZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9ndWNfbG9hZGVyLmMKQEAgLTM1Myw2ICszNTMsMjQgQEAgc3RhdGljIGludCBndWNfdWNvZGVf eGZlcihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAJcmV0dXJuIHJldDsKIH0K IAorc3RhdGljIGludCBpOTE1X3Jlc2V0X2d1YyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYpCit7CisJaW50IHJldDsKKwl1MzIgZ3VjX3N0YXR1czsKKworCXJldCA9IGludGVsX2d1 Y19yZXNldChkZXZfcHJpdik7CisJaWYgKHJldCkgeworCQlEUk1fRVJST1IoIkd1QyByZXNldCBm YWlsZWQsIHJldCA9ICVkXG4iLCByZXQpOworCQlyZXR1cm4gcmV0OworCX0KKworCWd1Y19zdGF0 dXMgPSBJOTE1X1JFQUQoR1VDX1NUQVRVUyk7CisJV0FSTighKGd1Y19zdGF0dXMgJiBHU19NSUFf SU5fUkVTRVQpLAorCSAgICAgIkd1QyBzdGF0dXM6IDB4JXgsIE1JQSBjb3JlIGV4cGVjdGVkIHRv IGJlIGluIHJlc2V0XG4iLCBndWNfc3RhdHVzKTsKKworCXJldHVybiByZXQ7Cit9CisKIC8qKgog ICogaW50ZWxfZ3VjX3Vjb2RlX2xvYWQoKSAtIGxvYWQgR3VDIHVDb2RlIGludG8gdGhlIGRldmlj ZQogICogQGRldjoJZHJtIGRldmljZQpAQCAtNDE3LDkgKzQzNSwzNiBAQCBpbnQgaW50ZWxfZ3Vj X3Vjb2RlX2xvYWQoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAlpZiAoZXJyKQogCQlnb3RvIGZh aWw7CiAKKwkvKgorCSAqIFdhRW5hYmxldUtlcm5lbEhlYWRlclZhbGlkRml4OnNrbCxieHQKKwkg KiBGb3IgQlhULCB0aGlzIGlzIG9ubHkgdXB0byBCMCBidXQgYmVsb3cgV0EgaXMgcmVxdWlyZWQg Zm9yIGxhdGVyCisJICogc3RlcHBpbmdzIGFsc28gc28gdGhpcyBpcyBleHRlbmRlZCBhcyB3ZWxs LgorCSAqLworCS8qIFdhRW5hYmxlR3VDQm9vdEhhc2hDaGVja05vdFNldDpza2wsYnh0ICovCiAJ ZXJyID0gZ3VjX3Vjb2RlX3hmZXIoZGV2X3ByaXYpOwotCWlmIChlcnIpCi0JCWdvdG8gZmFpbDsK KwlpZiAoZXJyKSB7CisJCWludCByZXRyaWVzID0gMzsKKworCQlEUk1fRVJST1IoIkd1QyBmdyBs b2FkIGZhaWxlZCwgZXJyPSVkLCBhdHRlbXB0aW5nIHJlc2V0IGFuZCByZXRyeVxuIiwgZXJyKTsK KworCQl3aGlsZSAocmV0cmllcy0tKSB7CisJCQllcnIgPSBpOTE1X3Jlc2V0X2d1YyhkZXZfcHJp dik7CisJCQlpZiAoZXJyKQorCQkJCWJyZWFrOworCisJCQllcnIgPSBndWNfdWNvZGVfeGZlcihk ZXZfcHJpdik7CisJCQlpZiAoIWVycikgeworCQkJCURSTV9ERUJVR19EUklWRVIoIkd1QyBmdyBy ZWxvYWQgc3VjY2VlZGVkIGFmdGVyIHJlc2V0XG4iKTsKKwkJCQlicmVhazsKKwkJCX0KKwkJCURS TV9ERUJVR19EUklWRVIoIkd1QyBmdyByZWxvYWQgcmV0cmllcyBsZWZ0OiAlZFxuIiwgcmV0cmll cyk7CisJCX0KKworCQlpZiAoZXJyKSB7CisJCQlEUk1fRVJST1IoIkd1QyBmdyByZWxvYWQgYXR0 ZW1wdCBmYWlsZWQsIHJldD0lZFxuIiwgZXJyKTsKKwkJCWdvdG8gZmFpbDsKKwkJfQorCX0KIAog CWd1Y19mdy0+Z3VjX2Z3X2xvYWRfc3RhdHVzID0gR1VDX0ZJUk1XQVJFX1NVQ0NFU1M7CiAKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3VuY29yZS5jIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfdW5jb3JlLmMKaW5kZXggNTEyYjdmYS4uZDQ0ZTA3ZSAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdW5jb3JlLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfdW5jb3JlLmMKQEAgLTE2NzMsNiArMTY3MywyNSBAQCBib29sIGlu dGVsX2hhc19ncHVfcmVzZXQoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAlyZXR1cm4gaW50ZWxf Z2V0X2dwdV9yZXNldChkZXYpICE9IE5VTEw7CiB9CiAKK2ludCBpbnRlbF9ndWNfcmVzZXQoc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQoreworCWludCByZXQ7CisJdW5zaWduZWQg bG9uZyBpcnFmbGFnczsKKworCWlmICghaTkxNS5lbmFibGVfZ3VjX3N1Ym1pc3Npb24pCisJCXJl dHVybiAtRUlOVkFMOworCisJaW50ZWxfdW5jb3JlX2ZvcmNld2FrZV9nZXQoZGV2X3ByaXYsIEZP UkNFV0FLRV9BTEwpOworCXNwaW5fbG9ja19pcnFzYXZlKCZkZXZfcHJpdi0+dW5jb3JlLmxvY2ss IGlycWZsYWdzKTsKKworCXJldCA9IGdlbjZfaHdfZG9tYWluX3Jlc2V0KGRldl9wcml2LCBHRU45 X0dSRE9NX0dVQyk7CisKKwlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZkZXZfcHJpdi0+dW5jb3Jl LmxvY2ssIGlycWZsYWdzKTsKKwlpbnRlbF91bmNvcmVfZm9yY2V3YWtlX3B1dChkZXZfcHJpdiwg Rk9SQ0VXQUtFX0FMTCk7CisKKwlyZXR1cm4gcmV0OworfQorCiBib29sIGludGVsX3VuY29yZV91 bmNsYWltZWRfbW1pbyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiB7CiAJcmV0 dXJuIGNoZWNrX2Zvcl91bmNsYWltZWRfbW1pbyhkZXZfcHJpdik7Ci0tIAoxLjkuMQoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxp bmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==