From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jordan Crouse Subject: [PATCH 05/16] drm/msm: gpu: Return error on hw_init failure Date: Fri, 4 Nov 2016 16:44:46 -0600 Message-ID: <1478299497-9729-6-git-send-email-jcrouse@codeaurora.org> References: <1478299497-9729-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: <1478299497-9729-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-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org List-Id: linux-arm-msm@vger.kernel.org V2hlbiB0aGUgR1BVIGhhcmR3YXJlIGluaXQgZnVuY3Rpb24gZmFpbHMgKGxpa2Ugc2F5LCBNRV9J TklUIHRpbWVkCm91dCkgcmV0dXJuIGVycm9yIGluc3RlYWQgb2YgYmxpbmRseSBjb250aW51aW5n IG9uLiBUaGlzIGdpdmVzIHVzCmEgc21hbGwgY2hhbmNlIG9mIHNhdmluZyB0aGUgc3lzdGVtIGJl Zm9yZSBpdCBnb2VzIGJvb20uCgpTaWduZWQtb2ZmLWJ5OiBKb3JkYW4gQ3JvdXNlIDxqY3JvdXNl QGNvZGVhdXJvcmEub3JnPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2EzeHhfZ3B1 LmMgICB8IDIxICsrKysrKysrKysrKy0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL21zbS9hZHJl bm8vYTR4eF9ncHUuYyAgIHwgMjAgKysrKysrKysrKystLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2Ry bS9tc20vYWRyZW5vL2FkcmVub19ncHUuYyB8IDExICsrKysrLS0tLS0tCiBkcml2ZXJzL2dwdS9k cm0vbXNtL2FkcmVuby9hZHJlbm9fZ3B1LmggfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL21zbS9t c21fZ3B1LmggICAgICAgICAgIHwgIDIgKy0KIDUgZmlsZXMgY2hhbmdlZCwgMzAgaW5zZXJ0aW9u cygrKSwgMjYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9h ZHJlbm8vYTN4eF9ncHUuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2EzeHhfZ3B1LmMK aW5kZXggNWVkYTg0Ny4uMTM5ODlkOSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9h ZHJlbm8vYTN4eF9ncHUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hM3h4X2dw dS5jCkBAIC00MSw3ICs0MSw3IEBAIGV4dGVybiBib29sIGhhbmdfZGVidWc7CiAKIHN0YXRpYyB2 b2lkIGEzeHhfZHVtcChzdHJ1Y3QgbXNtX2dwdSAqZ3B1KTsKIAotc3RhdGljIHZvaWQgYTN4eF9t ZV9pbml0KHN0cnVjdCBtc21fZ3B1ICpncHUpCitzdGF0aWMgYm9vbCBhM3h4X21lX2luaXQoc3Ry dWN0IG1zbV9ncHUgKmdwdSkKIHsKIAlzdHJ1Y3QgbXNtX3JpbmdidWZmZXIgKnJpbmcgPSBncHUt PnJiOwogCkBAIC02NSw3ICs2NSw3IEBAIHN0YXRpYyB2b2lkIGEzeHhfbWVfaW5pdChzdHJ1Y3Qg bXNtX2dwdSAqZ3B1KQogCU9VVF9SSU5HKHJpbmcsIDB4MDAwMDAwMDApOwogCiAJZ3B1LT5mdW5j cy0+Zmx1c2goZ3B1KTsKLQlncHUtPmZ1bmNzLT5pZGxlKGdwdSk7CisJcmV0dXJuIGdwdS0+ZnVu Y3MtPmlkbGUoZ3B1KTsKIH0KIAogc3RhdGljIGludCBhM3h4X2h3X2luaXQoc3RydWN0IG1zbV9n cHUgKmdwdSkKQEAgLTI5NCw5ICsyOTQsNyBAQCBzdGF0aWMgaW50IGEzeHhfaHdfaW5pdChzdHJ1 Y3QgbXNtX2dwdSAqZ3B1KQogCS8qIGNsZWFyIE1FX0hBTFQgdG8gc3RhcnQgbWljcm8gZW5naW5l ICovCiAJZ3B1X3dyaXRlKGdwdSwgUkVHX0FYWFhfQ1BfTUVfQ05UTCwgMCk7CiAKLQlhM3h4X21l X2luaXQoZ3B1KTsKLQotCXJldHVybiAwOworCXJldHVybiBhM3h4X21lX2luaXQoZ3B1KSA/IDAg OiAtRUlOVkFMOwogfQogCiBzdGF0aWMgdm9pZCBhM3h4X3JlY292ZXIoc3RydWN0IG1zbV9ncHUg KmdwdSkKQEAgLTMzMCwxNyArMzI4LDIyIEBAIHN0YXRpYyB2b2lkIGEzeHhfZGVzdHJveShzdHJ1 Y3QgbXNtX2dwdSAqZ3B1KQogCWtmcmVlKGEzeHhfZ3B1KTsKIH0KIAotc3RhdGljIHZvaWQgYTN4 eF9pZGxlKHN0cnVjdCBtc21fZ3B1ICpncHUpCitzdGF0aWMgYm9vbCBhM3h4X2lkbGUoc3RydWN0 IG1zbV9ncHUgKmdwdSkKIHsKIAkvKiB3YWl0IGZvciByaW5nYnVmZmVyIHRvIGRyYWluOiAqLwot CWFkcmVub19pZGxlKGdwdSk7CisJaWYgKCFhZHJlbm9faWRsZShncHUpKQorCQlyZXR1cm4gZmFs c2U7CiAKIAkvKiB0aGVuIHdhaXQgZm9yIEdQVSB0byBmaW5pc2g6ICovCiAJaWYgKHNwaW5fdW50 aWwoIShncHVfcmVhZChncHUsIFJFR19BM1hYX1JCQk1fU1RBVFVTKSAmCi0JCQlBM1hYX1JCQk1f U1RBVFVTX0dQVV9CVVNZKSkpCisJCQlBM1hYX1JCQk1fU1RBVFVTX0dQVV9CVVNZKSkpIHsKIAkJ RFJNX0VSUk9SKCIlczogdGltZW91dCB3YWl0aW5nIGZvciBHUFUgdG8gaWRsZSFcbiIsIGdwdS0+ bmFtZSk7CiAKLQkvKiBUT0RPIG1heWJlIHdlIG5lZWQgdG8gcmVzZXQgR1BVIGhlcmUgdG8gcmVj b3ZlciBmcm9tIGhhbmc/ICovCisJCS8qIFRPRE8gbWF5YmUgd2UgbmVlZCB0byByZXNldCBHUFUg aGVyZSB0byByZWNvdmVyIGZyb20gaGFuZz8gKi8KKwkJcmV0dXJuIGZhbHNlOworCX0KKworCXJl dHVybiB0cnVlOwogfQogCiBzdGF0aWMgaXJxcmV0dXJuX3QgYTN4eF9pcnEoc3RydWN0IG1zbV9n cHUgKmdwdSkKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2E0eHhfZ3B1 LmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNHh4X2dwdS5jCmluZGV4IDAzNTRiZTIu LmJhMTY1MDcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2E0eHhfZ3B1 LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYTR4eF9ncHUuYwpAQCAtMTEzLDcg KzExMyw3IEBAIHN0YXRpYyB2b2lkIGE0eHhfZW5hYmxlX2h3Y2coc3RydWN0IG1zbV9ncHUgKmdw dSkKIH0KIAogCi1zdGF0aWMgdm9pZCBhNHh4X21lX2luaXQoc3RydWN0IG1zbV9ncHUgKmdwdSkK K3N0YXRpYyBib29sIGE0eHhfbWVfaW5pdChzdHJ1Y3QgbXNtX2dwdSAqZ3B1KQogewogCXN0cnVj dCBtc21fcmluZ2J1ZmZlciAqcmluZyA9IGdwdS0+cmI7CiAKQEAgLTEzNyw3ICsxMzcsNyBAQCBz dGF0aWMgdm9pZCBhNHh4X21lX2luaXQoc3RydWN0IG1zbV9ncHUgKmdwdSkKIAlPVVRfUklORyhy aW5nLCAweDAwMDAwMDAwKTsKIAogCWdwdS0+ZnVuY3MtPmZsdXNoKGdwdSk7Ci0JZ3B1LT5mdW5j cy0+aWRsZShncHUpOworCXJldHVybiBncHUtPmZ1bmNzLT5pZGxlKGdwdSk7CiB9CiAKIHN0YXRp YyBpbnQgYTR4eF9od19pbml0KHN0cnVjdCBtc21fZ3B1ICpncHUpCkBAIC0yOTIsOSArMjkyLDcg QEAgc3RhdGljIGludCBhNHh4X2h3X2luaXQoc3RydWN0IG1zbV9ncHUgKmdwdSkKIAkvKiBjbGVh ciBNRV9IQUxUIHRvIHN0YXJ0IG1pY3JvIGVuZ2luZSAqLwogCWdwdV93cml0ZShncHUsIFJFR19B NFhYX0NQX01FX0NOVEwsIDApOwogCi0JYTR4eF9tZV9pbml0KGdwdSk7Ci0KLQlyZXR1cm4gMDsK KwlyZXR1cm4gYTR4eF9tZV9pbml0KGdwdSkgPyAwIDogLUVJTlZBTDsKIH0KIAogc3RhdGljIHZv aWQgYTR4eF9yZWNvdmVyKHN0cnVjdCBtc21fZ3B1ICpncHUpCkBAIC0zMjgsMTcgKzMyNiwyMSBA QCBzdGF0aWMgdm9pZCBhNHh4X2Rlc3Ryb3koc3RydWN0IG1zbV9ncHUgKmdwdSkKIAlrZnJlZShh NHh4X2dwdSk7CiB9CiAKLXN0YXRpYyB2b2lkIGE0eHhfaWRsZShzdHJ1Y3QgbXNtX2dwdSAqZ3B1 KQorc3RhdGljIGJvb2wgYTR4eF9pZGxlKHN0cnVjdCBtc21fZ3B1ICpncHUpCiB7CiAJLyogd2Fp dCBmb3IgcmluZ2J1ZmZlciB0byBkcmFpbjogKi8KLQlhZHJlbm9faWRsZShncHUpOworCWlmICgh YWRyZW5vX2lkbGUoZ3B1KSkKKwkJcmV0dXJuIGZhbHNlOwogCiAJLyogdGhlbiB3YWl0IGZvciBH UFUgdG8gZmluaXNoOiAqLwogCWlmIChzcGluX3VudGlsKCEoZ3B1X3JlYWQoZ3B1LCBSRUdfQTRY WF9SQkJNX1NUQVRVUykgJgotCQkJCQlBNFhYX1JCQk1fU1RBVFVTX0dQVV9CVVNZKSkpCisJCQkJ CUE0WFhfUkJCTV9TVEFUVVNfR1BVX0JVU1kpKSkgewogCQlEUk1fRVJST1IoIiVzOiB0aW1lb3V0 IHdhaXRpbmcgZm9yIEdQVSB0byBpZGxlIVxuIiwgZ3B1LT5uYW1lKTsKKwkJLyogVE9ETyBtYXli ZSB3ZSBuZWVkIHRvIHJlc2V0IEdQVSBoZXJlIHRvIHJlY292ZXIgZnJvbSBoYW5nPyAqLworCQly ZXR1cm4gZmFsc2U7CisJfQogCi0JLyogVE9ETyBtYXliZSB3ZSBuZWVkIHRvIHJlc2V0IEdQVSBo ZXJlIHRvIHJlY292ZXIgZnJvbSBoYW5nPyAqLworCXJldHVybiB0cnVlOwogfQogCiBzdGF0aWMg aXJxcmV0dXJuX3QgYTR4eF9pcnEoc3RydWN0IG1zbV9ncHUgKmdwdSkKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2FkcmVub19ncHUuYyBiL2RyaXZlcnMvZ3B1L2RybS9t c20vYWRyZW5vL2FkcmVub19ncHUuYwppbmRleCBmMzg2ZjQ2Li44YjIyMDFjIDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hZHJlbm9fZ3B1LmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL21zbS9hZHJlbm8vYWRyZW5vX2dwdS5jCkBAIC0yMTgsMTkgKzIxOCwxOCBAQCB2b2lk IGFkcmVub19mbHVzaChzdHJ1Y3QgbXNtX2dwdSAqZ3B1KQogCWFkcmVub19ncHVfd3JpdGUoYWRy ZW5vX2dwdSwgUkVHX0FEUkVOT19DUF9SQl9XUFRSLCB3cHRyKTsKIH0KIAotdm9pZCBhZHJlbm9f aWRsZShzdHJ1Y3QgbXNtX2dwdSAqZ3B1KQorYm9vbCBhZHJlbm9faWRsZShzdHJ1Y3QgbXNtX2dw dSAqZ3B1KQogewogCXN0cnVjdCBhZHJlbm9fZ3B1ICphZHJlbm9fZ3B1ID0gdG9fYWRyZW5vX2dw dShncHUpOwogCXVpbnQzMl90IHdwdHIgPSBnZXRfd3B0cihncHUtPnJiKTsKLQlpbnQgcmV0Owog CiAJLyogd2FpdCBmb3IgQ1AgdG8gZHJhaW4gcmluZ2J1ZmZlcjogKi8KLQlyZXQgPSBzcGluX3Vu dGlsKGdldF9ycHRyKGFkcmVub19ncHUpID09IHdwdHIpOwotCi0JaWYgKHJldCkKLQkJRFJNX0VS Uk9SKCIlczogdGltZW91dCB3YWl0aW5nIHRvIGRyYWluIHJpbmdidWZmZXIhXG4iLCBncHUtPm5h bWUpOworCWlmICghc3Bpbl91bnRpbChnZXRfcnB0cihhZHJlbm9fZ3B1KSA9PSB3cHRyKSkKKwkJ cmV0dXJuIHRydWU7CiAKIAkvKiBUT0RPIG1heWJlIHdlIG5lZWQgdG8gcmVzZXQgR1BVIGhlcmUg dG8gcmVjb3ZlciBmcm9tIGhhbmc/ICovCisJRFJNX0VSUk9SKCIlczogdGltZW91dCB3YWl0aW5n IHRvIGRyYWluIHJpbmdidWZmZXIhXG4iLCBncHUtPm5hbWUpOworCXJldHVybiBmYWxzZTsKIH0K IAogI2lmZGVmIENPTkZJR19ERUJVR19GUwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21z bS9hZHJlbm8vYWRyZW5vX2dwdS5oIGIvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYWRyZW5v X2dwdS5oCmluZGV4IGZkOTc2ZTguLjMwYzI5NTYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9tc20vYWRyZW5vL2FkcmVub19ncHUuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVu by9hZHJlbm9fZ3B1LmgKQEAgLTE4Miw3ICsxODIsNyBAQCB2b2lkIGFkcmVub19yZWNvdmVyKHN0 cnVjdCBtc21fZ3B1ICpncHUpOwogdm9pZCBhZHJlbm9fc3VibWl0KHN0cnVjdCBtc21fZ3B1ICpn cHUsIHN0cnVjdCBtc21fZ2VtX3N1Ym1pdCAqc3VibWl0LAogCQlzdHJ1Y3QgbXNtX2ZpbGVfcHJp dmF0ZSAqY3R4KTsKIHZvaWQgYWRyZW5vX2ZsdXNoKHN0cnVjdCBtc21fZ3B1ICpncHUpOwotdm9p ZCBhZHJlbm9faWRsZShzdHJ1Y3QgbXNtX2dwdSAqZ3B1KTsKK2Jvb2wgYWRyZW5vX2lkbGUoc3Ry dWN0IG1zbV9ncHUgKmdwdSk7CiAjaWZkZWYgQ09ORklHX0RFQlVHX0ZTCiB2b2lkIGFkcmVub19z aG93KHN0cnVjdCBtc21fZ3B1ICpncHUsIHN0cnVjdCBzZXFfZmlsZSAqbSk7CiAjZW5kaWYKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2dwdS5oIGIvZHJpdmVycy9ncHUvZHJt L21zbS9tc21fZ3B1LmgKaW5kZXggYzkwMjI4My4uNGVlOTVjYSAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL21zbS9tc21fZ3B1LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZ3B1 LmgKQEAgLTUwLDcgKzUwLDcgQEAgc3RydWN0IG1zbV9ncHVfZnVuY3MgewogCXZvaWQgKCpzdWJt aXQpKHN0cnVjdCBtc21fZ3B1ICpncHUsIHN0cnVjdCBtc21fZ2VtX3N1Ym1pdCAqc3VibWl0LAog CQkJc3RydWN0IG1zbV9maWxlX3ByaXZhdGUgKmN0eCk7CiAJdm9pZCAoKmZsdXNoKShzdHJ1Y3Qg bXNtX2dwdSAqZ3B1KTsKLQl2b2lkICgqaWRsZSkoc3RydWN0IG1zbV9ncHUgKmdwdSk7CisJYm9v bCAoKmlkbGUpKHN0cnVjdCBtc21fZ3B1ICpncHUpOwogCWlycXJldHVybl90ICgqaXJxKShzdHJ1 Y3QgbXNtX2dwdSAqaXJxKTsKIAl1aW50MzJfdCAoKmxhc3RfZmVuY2UpKHN0cnVjdCBtc21fZ3B1 ICpncHUpOwogCXZvaWQgKCpyZWNvdmVyKShzdHJ1Y3QgbXNtX2dwdSAqZ3B1KTsKLS0gCjEuOS4x CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpGcmVlZHJl bm8gbWFpbGluZyBsaXN0CkZyZWVkcmVub0BsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9mcmVlZHJlbm8K