From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jordan Crouse Subject: [PATCH v1 5/6] msm/drm/a6xx: Turn off the GMU if resume fails Date: Mon, 4 Feb 2019 09:15:43 -0700 Message-ID: <1549296944-17285-6-git-send-email-jcrouse@codeaurora.org> References: <1549296944-17285-1-git-send-email-jcrouse@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1549296944-17285-1-git-send-email-jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Jonathan Marek , Arnd Bergmann , David Airlie , linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Sharat Masetty , Douglas Anderson , dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, Stephen Boyd , Rob Clark , Sean Paul , Mamta Shukla , Thomas Zimmermann , Andy Gross , Daniel Vetter , Daniel Mack List-Id: linux-arm-msm@vger.kernel.org Q3VycmVudGx5IGlmIHRoZSBHTVUgcmVzdW1lIGZ1bmN0aW9uIGZhaWxzIGFsbCB3ZSB0cnkgdG8g ZG8gaXMgY2xlYXIgdGhlCkJPT1RfU0xVTUJFUiBvb2Igd2hpY2ggdXN1YWxseSB0aW1lcyBvdXQg YW5kIGVuZHMgdXAgaW4gYSBjeWNsZSBvZiBkZWF0aC4KSWYgdGhlIHJlc3VtZSBmdW5jdGlvbiBm YWlscyBhdCBhbnkgcG9pbnQgcmVtb3ZlIGFueSBSUE1oIHZvdGVzIHRoYXQgbWlnaHQKaGF2ZSBi ZWVuIGFkZGVkIGFuZCB0cnkgdG8gc2h1dCBkb3duIHRoZSBHTVUgaGFyZHdhcmUgY2xlYW5seS4K ClNpZ25lZC1vZmYtYnk6IEpvcmRhbiBDcm91c2UgPGpjcm91c2VAY29kZWF1cm9yYS5vcmc+Ci0t LQoKIGRyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2E2eHhfZ211LmMgICAgICB8IDgyICsrKysr KysrKysrKysrKysrKystLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYTZ4 eF9ncHUuYyAgICAgIHwgMjAgKystLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2Fk cmVub19kZXZpY2UuYyB8ICAxICsKIDMgZmlsZXMgY2hhbmdlZCwgNTggaW5zZXJ0aW9ucygrKSwg NDUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8v YTZ4eF9nbXUuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2E2eHhfZ211LmMKaW5kZXgg ZTE2ZDU1ZC4uMmU4OWNhMyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8v YTZ4eF9nbXUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNnh4X2dtdS5jCkBA IC02MzgsMjAgKzYzOCw2IEBAIHN0YXRpYyBpbnQgYTZ4eF9nbXVfZndfc3RhcnQoc3RydWN0IGE2 eHhfZ211ICpnbXUsIHVuc2lnbmVkIGludCBzdGF0ZSkKIAkgQTZYWF9HTVVfQU9fSE9TVF9JTlRF UlJVUFRfU1RBVFVTX0hPU1RfQUhCX0JVU19FUlJPUiB8IFwKIAkgQTZYWF9HTVVfQU9fSE9TVF9J TlRFUlJVUFRfU1RBVFVTX0ZFTkNFX0VSUikKIAotc3RhdGljIHZvaWQgYTZ4eF9nbXVfaXJxX2Vu YWJsZShzdHJ1Y3QgYTZ4eF9nbXUgKmdtdSkKLXsKLQlnbXVfd3JpdGUoZ211LCBSRUdfQTZYWF9H TVVfQU9fSE9TVF9JTlRFUlJVUFRfQ0xSLCB+MCk7Ci0JZ211X3dyaXRlKGdtdSwgUkVHX0E2WFhf R01VX0dNVTJIT1NUX0lOVFJfQ0xSLCB+MCk7Ci0KLQlnbXVfd3JpdGUoZ211LCBSRUdfQTZYWF9H TVVfQU9fSE9TVF9JTlRFUlJVUFRfTUFTSywKLQkJfkE2WFhfR01VX0lSUV9NQVNLKTsKLQlnbXVf d3JpdGUoZ211LCBSRUdfQTZYWF9HTVVfR01VMkhPU1RfSU5UUl9NQVNLLAotCQl+QTZYWF9IRklf SVJRX01BU0spOwotCi0JZW5hYmxlX2lycShnbXUtPmdtdV9pcnEpOwotCWVuYWJsZV9pcnEoZ211 LT5oZmlfaXJxKTsKLX0KLQogc3RhdGljIHZvaWQgYTZ4eF9nbXVfaXJxX2Rpc2FibGUoc3RydWN0 IGE2eHhfZ211ICpnbXUpCiB7CiAJZGlzYWJsZV9pcnEoZ211LT5nbXVfaXJxKTsKQEAgLTY2MSwx MSArNjQ3LDI0IEBAIHN0YXRpYyB2b2lkIGE2eHhfZ211X2lycV9kaXNhYmxlKHN0cnVjdCBhNnh4 X2dtdSAqZ211KQogCWdtdV93cml0ZShnbXUsIFJFR19BNlhYX0dNVV9HTVUySE9TVF9JTlRSX01B U0ssIH4wKTsKIH0KIAotLyogRm9yY2UgdGhlIEdNVSBvZmYgaW4gY2FzZSBpdCBpc24ndCByZXNw b25zaXZlICovCi1zdGF0aWMgdm9pZCBhNnh4X2dtdV9mb3JjZV9vZmYoc3RydWN0IGE2eHhfZ211 ICpnbXUpCitzdGF0aWMgdm9pZCBhNnh4X2dtdV9ycG1oX29mZihzdHJ1Y3QgYTZ4eF9nbXUgKmdt dSkKIHsKIAl1MzIgdmFsOwogCisJLyogTWFrZSBzdXJlIHRoZXJlIGFyZSBubyBvdXRzdGFuZGlu ZyBSUE1oIHZvdGVzICovCisJZ211X3BvbGxfdGltZW91dChnbXUsIFJFR19BNlhYX1JTQ0NfVENT MF9EUlYwX1NUQVRVUywgdmFsLAorCQkodmFsICYgMSksIDEwMCwgMTAwMDApOworCWdtdV9wb2xs X3RpbWVvdXQoZ211LCBSRUdfQTZYWF9SU0NDX1RDUzFfRFJWMF9TVEFUVVMsIHZhbCwKKwkJKHZh bCAmIDEpLCAxMDAsIDEwMDAwKTsKKwlnbXVfcG9sbF90aW1lb3V0KGdtdSwgUkVHX0E2WFhfUlND Q19UQ1MyX0RSVjBfU1RBVFVTLCB2YWwsCisJCSh2YWwgJiAxKSwgMTAwLCAxMDAwMCk7CisJZ211 X3BvbGxfdGltZW91dChnbXUsIFJFR19BNlhYX1JTQ0NfVENTM19EUlYwX1NUQVRVUywgdmFsLAor CQkodmFsICYgMSksIDEwMCwgMTAwMCk7Cit9CisKKy8qIEZvcmNlIHRoZSBHTVUgb2ZmIGluIGNh c2UgaXQgaXNuJ3QgcmVzcG9uc2l2ZSAqLworc3RhdGljIHZvaWQgYTZ4eF9nbXVfZm9yY2Vfb2Zm KHN0cnVjdCBhNnh4X2dtdSAqZ211KQorewogCS8qIEZsdXNoIGFsbCB0aGUgcXVldWVzICovCiAJ YTZ4eF9oZmlfc3RvcChnbXUpOwogCkBAIC02NzYsMTQgKzY3NSw3IEBAIHN0YXRpYyB2b2lkIGE2 eHhfZ211X2ZvcmNlX29mZihzdHJ1Y3QgYTZ4eF9nbXUgKmdtdSkKIAlhNnh4X3NwdHByYWNfZGlz YWJsZShnbXUpOwogCiAJLyogTWFrZSBzdXJlIHRoZXJlIGFyZSBubyBvdXRzdGFuZGluZyBSUE1o IHZvdGVzICovCi0JZ211X3BvbGxfdGltZW91dChnbXUsIFJFR19BNlhYX1JTQ0NfVENTMF9EUlYw X1NUQVRVUywgdmFsLAotCQkodmFsICYgMSksIDEwMCwgMTAwMDApOwotCWdtdV9wb2xsX3RpbWVv dXQoZ211LCBSRUdfQTZYWF9SU0NDX1RDUzFfRFJWMF9TVEFUVVMsIHZhbCwKLQkJKHZhbCAmIDEp LCAxMDAsIDEwMDAwKTsKLQlnbXVfcG9sbF90aW1lb3V0KGdtdSwgUkVHX0E2WFhfUlNDQ19UQ1My X0RSVjBfU1RBVFVTLCB2YWwsCi0JCSh2YWwgJiAxKSwgMTAwLCAxMDAwMCk7Ci0JZ211X3BvbGxf dGltZW91dChnbXUsIFJFR19BNlhYX1JTQ0NfVENTM19EUlYwX1NUQVRVUywgdmFsLAotCQkodmFs ICYgMSksIDEwMCwgMTAwMCk7CisJYTZ4eF9nbXVfcnBtaF9vZmYoZ211KTsKIH0KIAogaW50IGE2 eHhfZ211X3Jlc3VtZShzdHJ1Y3QgYTZ4eF9ncHUgKmE2eHhfZ3B1KQpAQCAtNzAyLDEwICs2OTQs MTUgQEAgaW50IGE2eHhfZ211X3Jlc3VtZShzdHJ1Y3QgYTZ4eF9ncHUgKmE2eHhfZ3B1KQogCS8q IFVzZSBhIGtub3duIHJhdGUgdG8gYnJpbmcgdXAgdGhlIEdNVSAqLwogCWNsa19zZXRfcmF0ZShn bXUtPmNvcmVfY2xrLCAyMDAwMDAwMDApOwogCXJldCA9IGNsa19idWxrX3ByZXBhcmVfZW5hYmxl KGdtdS0+bnJfY2xvY2tzLCBnbXUtPmNsb2Nrcyk7Ci0JaWYgKHJldCkKLQkJZ290byBvdXQ7CisJ aWYgKHJldCkgeworCQlwbV9ydW50aW1lX3B1dChnbXUtPmRldik7CisJCXJldHVybiByZXQ7CisJ fQogCi0JYTZ4eF9nbXVfaXJxX2VuYWJsZShnbXUpOworCS8qIEVuYWJsZSB0aGUgR01VIGludGVy cnVwdCAqLworCWdtdV93cml0ZShnbXUsIFJFR19BNlhYX0dNVV9BT19IT1NUX0lOVEVSUlVQVF9D TFIsIH4wKTsKKwlnbXVfd3JpdGUoZ211LCBSRUdfQTZYWF9HTVVfQU9fSE9TVF9JTlRFUlJVUFRf TUFTSywgfkE2WFhfR01VX0lSUV9NQVNLKTsKKwllbmFibGVfaXJxKGdtdS0+Z211X2lycSk7CiAK IAkvKiBDaGVjayB0byBzZWUgaWYgd2UgYXJlIGRvaW5nIGEgY29sZCBvciB3YXJtIGJvb3QgKi8K IAlzdGF0dXMgPSBnbXVfcmVhZChnbXUsIFJFR19BNlhYX0dNVV9HRU5FUkFMXzcpID09IDEgPwpA QCAtNzE2LDYgKzcxMywxNiBAQCBpbnQgYTZ4eF9nbXVfcmVzdW1lKHN0cnVjdCBhNnh4X2dwdSAq YTZ4eF9ncHUpCiAJCWdvdG8gb3V0OwogCiAJcmV0ID0gYTZ4eF9oZmlfc3RhcnQoZ211LCBzdGF0 dXMpOworCWlmIChyZXQpCisJCWdvdG8gb3V0OworCisJLyoKKwkgKiBUdXJuIG9uIHRoZSBHTVUg ZmlybXdhcmUgZmF1bHQgaW50ZXJydXB0IGFmdGVyIHdlIGtub3cgdGhlIGJvb3QKKwkgKiBzZXF1 ZW5jZSBpcyBzdWNjZXNzZnVsCisJICovCisJZ211X3dyaXRlKGdtdSwgUkVHX0E2WFhfR01VX0dN VTJIT1NUX0lOVFJfQ0xSLCB+MCk7CisJZ211X3dyaXRlKGdtdSwgUkVHX0E2WFhfR01VX0dNVTJI T1NUX0lOVFJfTUFTSywgfkE2WFhfSEZJX0lSUV9NQVNLKTsKKwllbmFibGVfaXJxKGdtdS0+aGZp X2lycSk7CiAKIAkvKiBTZXQgdGhlIEdQVSB0byB0aGUgaGlnaGVzdCBwb3dlciBmcmVxdWVuY3kg Ki8KIAlfX2E2eHhfZ211X3NldF9mcmVxKGdtdSwgZ211LT5ucl9ncHVfZnJlcXMgLSAxKTsKQEAg LTcyOSw5ICs3MzYsMTIgQEAgaW50IGE2eHhfZ211X3Jlc3VtZShzdHJ1Y3QgYTZ4eF9ncHUgKmE2 eHhfZ3B1KQogCQlwbV9ydW50aW1lX2dldChnbXUtPmd4cGQpOwogCiBvdXQ6Ci0JLyogTWFrZSBz dXJlIHRvIHR1cm4gb2ZmIHRoZSBib290IE9PQiByZXF1ZXN0IG9uIGVycm9yICovCi0JaWYgKHJl dCkKLQkJYTZ4eF9nbXVfY2xlYXJfb29iKGdtdSwgR01VX09PQl9CT09UX1NMVU1CRVIpOworCS8q IE9uIGZhaWx1cmUsIHNodXQgZG93biB0aGUgR01VIHRvIGxlYXZlIGl0IGluIGEgZ29vZCBzdGF0 ZSAqLworCWlmIChyZXQpIHsKKwkJZGlzYWJsZV9pcnEoZ211LT5nbXVfaXJxKTsKKwkJYTZ4eF9y cG1oX3N0b3AoZ211KTsKKwkJcG1fcnVudGltZV9wdXQoZ211LT5kZXYpOworCX0KIAogCXJldHVy biByZXQ7CiB9CkBAIC03NTQsNiArNzY0LDkgQEAgYm9vbCBhNnh4X2dtdV9pc2lkbGUoc3RydWN0 IGE2eHhfZ211ICpnbXUpCiAvKiBHcmFjZWZ1bGx5IHRyeSB0byBzaHV0IGRvd24gdGhlIEdNVSBh bmQgYnkgZXh0ZW5zaW9uIHRoZSBHUFUgKi8KIHN0YXRpYyB2b2lkIGE2eHhfZ211X3NodXRkb3du KHN0cnVjdCBhNnh4X2dtdSAqZ211KQogeworCXN0cnVjdCBhNnh4X2dwdSAqYTZ4eF9ncHUgPSBj b250YWluZXJfb2YoZ211LCBzdHJ1Y3QgYTZ4eF9ncHUsIGdtdSk7CisJc3RydWN0IGFkcmVub19n cHUgKmFkcmVub19ncHUgPSAmYTZ4eF9ncHUtPmJhc2U7CisJc3RydWN0IG1zbV9ncHUgKmdwdSA9 ICZhZHJlbm9fZ3B1LT5iYXNlOwogCXUzMiB2YWw7CiAKIAkvKgpAQCAtNzcxLDYgKzc4NCwxMiBA QCBzdGF0aWMgdm9pZCBhNnh4X2dtdV9zaHV0ZG93bihzdHJ1Y3QgYTZ4eF9nbXUgKmdtdSkKIAkJ CXJldHVybjsKIAkJfQogCisJCS8qIENsZWFyIHRoZSBWQklGIHBpcGUgYmVmb3JlIHNodXR0aW5n IGRvd24gKi8KKwkJZ3B1X3dyaXRlKGdwdSwgUkVHX0E2WFhfVkJJRl9YSU5fSEFMVF9DVFJMMCwg MHhmKTsKKwkJc3Bpbl91bnRpbCgoZ3B1X3JlYWQoZ3B1LCBSRUdfQTZYWF9WQklGX1hJTl9IQUxU X0NUUkwxKSAmIDB4ZikKKwkJCT09IDB4Zik7CisJCWdwdV93cml0ZShncHUsIFJFR19BNlhYX1ZC SUZfWElOX0hBTFRfQ1RSTDAsIDApOworCiAJCS8qIHRlbGwgdGhlIEdNVSB3ZSB3YW50IHRvIHNs dW1iZXIgKi8KIAkJYTZ4eF9nbXVfbm90aWZ5X3NsdW1iZXIoZ211KTsKIApAQCAtODA4LDYgKzgy Nyw5IEBAIGludCBhNnh4X2dtdV9zdG9wKHN0cnVjdCBhNnh4X2dwdSAqYTZ4eF9ncHUpCiB7CiAJ c3RydWN0IGE2eHhfZ211ICpnbXUgPSAmYTZ4eF9ncHUtPmdtdTsKIAorCWlmICghcG1fcnVudGlt ZV9hY3RpdmUoZ211LT5kZXYpKQorCQlyZXR1cm4gMDsKKwogCS8qCiAJICogRm9yY2UgdGhlIEdN VSBvZmYgaWYgd2UgZGV0ZWN0ZWQgYSBoYW5nLCBvdGhlcndpc2UgdHJ5IHRvIHNodXQgaXQKIAkg KiBkb3duIGdyYWNlZnVsbHkKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5v L2E2eHhfZ3B1LmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNnh4X2dwdS5jCmluZGV4 IGY3NmQ4Y2QuLjU3NjU1OWEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5v L2E2eHhfZ3B1LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYTZ4eF9ncHUuYwpA QCAtNjc4LDEzICs2NzgsMTUgQEAgc3RhdGljIGludCBhNnh4X3BtX3Jlc3VtZShzdHJ1Y3QgbXNt X2dwdSAqZ3B1KQogCXN0cnVjdCBhNnh4X2dwdSAqYTZ4eF9ncHUgPSB0b19hNnh4X2dwdShhZHJl bm9fZ3B1KTsKIAlpbnQgcmV0OwogCi0JcmV0ID0gYTZ4eF9nbXVfcmVzdW1lKGE2eHhfZ3B1KTsK LQogCWdwdS0+bmVlZHNfaHdfaW5pdCA9IHRydWU7CiAKKwlyZXQgPSBhNnh4X2dtdV9yZXN1bWUo YTZ4eF9ncHUpOworCWlmIChyZXQpCisJCXJldHVybiByZXQ7CisKIAltc21fZ3B1X3Jlc3VtZV9k ZXZmcmVxKGdwdSk7CiAKLQlyZXR1cm4gcmV0OworCXJldHVybiAwOwogfQogCiBzdGF0aWMgaW50 IGE2eHhfcG1fc3VzcGVuZChzdHJ1Y3QgbXNtX2dwdSAqZ3B1KQpAQCAtNjk0LDE4ICs2OTYsNiBA QCBzdGF0aWMgaW50IGE2eHhfcG1fc3VzcGVuZChzdHJ1Y3QgbXNtX2dwdSAqZ3B1KQogCiAJZGV2 ZnJlcV9zdXNwZW5kX2RldmljZShncHUtPmRldmZyZXEuZGV2ZnJlcSk7CiAKLQkvKgotCSAqIE1h a2Ugc3VyZSB0aGUgR01VIGlzIGlkbGUgYmVmb3JlIGNvbnRpbnVpbmcgKGJlY2F1c2Ugc29tZSB0 cmFuc2l0aW9ucwotCSAqIG1heSB1c2UgVkJJRgotCSAqLwotCWE2eHhfZ211X3dhaXRfZm9yX2lk bGUoJmE2eHhfZ3B1LT5nbXUpOwotCi0JLyogQ2xlYXIgdGhlIFZCSUYgcGlwZSBiZWZvcmUgc2h1 dHRpbmcgZG93biAqLwotCS8qIEZJWE1FOiBUaGlzIGFjY2Vzc2VzIHRoZSBHUFUgLSBkbyB3ZSBu ZWVkIHRvIG1ha2Ugc3VyZSBpdCBpcyBvbj8gKi8KLQlncHVfd3JpdGUoZ3B1LCBSRUdfQTZYWF9W QklGX1hJTl9IQUxUX0NUUkwwLCAweGYpOwotCXNwaW5fdW50aWwoKGdwdV9yZWFkKGdwdSwgUkVH X0E2WFhfVkJJRl9YSU5fSEFMVF9DVFJMMSkgJiAweGYpID09IDB4Zik7Ci0JZ3B1X3dyaXRlKGdw dSwgUkVHX0E2WFhfVkJJRl9YSU5fSEFMVF9DVFJMMCwgMCk7Ci0KIAlyZXR1cm4gYTZ4eF9nbXVf c3RvcChhNnh4X2dwdSk7CiB9CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRy ZW5vL2FkcmVub19kZXZpY2UuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2FkcmVub19k ZXZpY2UuYwppbmRleCA3MTRlZDY1Li4wZDg3ZGI3IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vbXNtL2FkcmVuby9hZHJlbm9fZGV2aWNlLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9h ZHJlbm8vYWRyZW5vX2RldmljZS5jCkBAIC0yMjksNiArMjI5LDcgQEAgc3RydWN0IG1zbV9ncHUg KmFkcmVub19sb2FkX2dwdShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCiAJcmV0ID0gcG1fcnVu dGltZV9nZXRfc3luYygmcGRldi0+ZGV2KTsKIAlpZiAocmV0IDwgMCkgeworCQlwbV9ydW50aW1l X3B1dF9zeW5jKCZwZGV2LT5kZXYpOwogCQlEUk1fREVWX0VSUk9SKGRldi0+ZGV2LCAiQ291bGRu J3QgcG93ZXIgdXAgdGhlIEdQVTogJWRcbiIsIHJldCk7CiAJCXJldHVybiBOVUxMOwogCX0KLS0g CjIuNy40CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpG cmVlZHJlbm8gbWFpbGluZyBsaXN0CkZyZWVkcmVub0BsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9mcmVlZHJlbm8K