From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lucas Stach Subject: [PATCH RFC 081/111] staging: etnaviv: move PM calls into bind/unbind callbacks Date: Thu, 2 Apr 2015 17:30:23 +0200 Message-ID: <1427988653-754-82-git-send-email-l.stach@pengutronix.de> References: <1427988653-754-1-git-send-email-l.stach@pengutronix.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from metis.ext.pengutronix.de (metis.ext.pengutronix.de [92.198.50.35]) by gabe.freedesktop.org (Postfix) with ESMTP id BE3C66EA6D for ; Thu, 2 Apr 2015 08:31:00 -0700 (PDT) In-Reply-To: <1427988653-754-1-git-send-email-l.stach@pengutronix.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: Russell King , kernel@pengutronix.de List-Id: dri-devel@lists.freedesktop.org RnJvbTogUnVzc2VsbCBLaW5nIDxybWsra2VybmVsQGFybS5saW51eC5vcmcudWs+CgpQb3dlciBt YW5hZ2VtZW50IG9mIGVhY2ggR1BVIGNvcmUgc2hvdWxkIGJlIGEgbWF0dGVyIGZvciB0aGUgZHJp dmVyIG9mCmVhY2ggR1BVIGNvcmUgaXRzZWxmLiAgTW92ZSB0aGUgYmFzaWMgcG93ZXIgbWFuYWdl bWVudCBjYWxscyBvdXQgb2YKZXRuYXZpdl9kcnYuYyBhbmQgaW50byBldG5hdml2X2dwdS5jIHNv IHRoYXQgd2UgY2FuIGFkZCBydW50aW1lIFBNLgoKU2lnbmVkLW9mZi1ieTogUnVzc2VsbCBLaW5n IDxybWsra2VybmVsQGFybS5saW51eC5vcmcudWs+Ci0tLQogZHJpdmVycy9zdGFnaW5nL2V0bmF2 aXYvZXRuYXZpdl9kcnYuYyB8IDEwIC0tLS0tCiBkcml2ZXJzL3N0YWdpbmcvZXRuYXZpdi9ldG5h dml2X2dwdS5jIHwgNzMgKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KIGRyaXZl cnMvc3RhZ2luZy9ldG5hdml2L2V0bmF2aXZfZ3B1LmggfCAgMiAtCiAzIGZpbGVzIGNoYW5nZWQs IDM5IGluc2VydGlvbnMoKyksIDQ2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMv c3RhZ2luZy9ldG5hdml2L2V0bmF2aXZfZHJ2LmMgYi9kcml2ZXJzL3N0YWdpbmcvZXRuYXZpdi9l dG5hdml2X2Rydi5jCmluZGV4IDJlYjMzZDAwNzRhYS4uODNjYWIzNjE3MGYzIDEwMDY0NAotLS0g YS9kcml2ZXJzL3N0YWdpbmcvZXRuYXZpdi9ldG5hdml2X2Rydi5jCisrKyBiL2RyaXZlcnMvc3Rh Z2luZy9ldG5hdml2L2V0bmF2aXZfZHJ2LmMKQEAgLTg3LDIxICs4NywxMiBAQCB1MzIgZXRuYXZp dl9yZWFkbChjb25zdCB2b2lkIF9faW9tZW0gKmFkZHIpCiBzdGF0aWMgaW50IGV0bmF2aXZfdW5s b2FkKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiB7CiAJc3RydWN0IGV0bmF2aXZfZHJtX3ByaXZh dGUgKnByaXYgPSBkZXYtPmRldl9wcml2YXRlOwotCXVuc2lnbmVkIGludCBpOwogCiAJZmx1c2hf d29ya3F1ZXVlKHByaXYtPndxKTsKIAlkZXN0cm95X3dvcmtxdWV1ZShwcml2LT53cSk7CiAKIAlt dXRleF9sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7Ci0JZm9yIChpID0gMDsgaSA8IEVUTkFfTUFY X1BJUEVTOyBpKyspIHsKLQkJc3RydWN0IGV0bmF2aXZfZ3B1ICpnID0gcHJpdi0+Z3B1W2ldOwot Ci0JCWlmIChnKQotCQkJZXRuYXZpdl9ncHVfcG1fc3VzcGVuZChnKTsKLQl9Ci0KIAljb21wb25l bnRfdW5iaW5kX2FsbChkZXYtPmRldiwgZGV2KTsKLQogCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1 Y3RfbXV0ZXgpOwogCiAJZGV2LT5kZXZfcHJpdmF0ZSA9IE5VTEw7CkBAIC0xMjMsNyArMTE0LDYg QEAgc3RhdGljIHZvaWQgbG9hZF9ncHUoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAkJaWYgKGcp IHsKIAkJCWludCByZXQ7CiAKLQkJCWV0bmF2aXZfZ3B1X3BtX3Jlc3VtZShnKTsKIAkJCXJldCA9 IGV0bmF2aXZfZ3B1X2luaXQoZyk7CiAJCQlpZiAocmV0KSB7CiAJCQkJZGV2X2VycihnLT5kZXYs ICJodyBpbml0IGZhaWxlZDogJWRcbiIsIHJldCk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL3N0YWdp bmcvZXRuYXZpdi9ldG5hdml2X2dwdS5jIGIvZHJpdmVycy9zdGFnaW5nL2V0bmF2aXYvZXRuYXZp dl9ncHUuYwppbmRleCA2NDkyMjE0ODY1YjkuLmRkOGRjNjcwN2NlNCAxMDA2NDQKLS0tIGEvZHJp dmVycy9zdGFnaW5nL2V0bmF2aXYvZXRuYXZpdl9ncHUuYworKysgYi9kcml2ZXJzL3N0YWdpbmcv ZXRuYXZpdi9ldG5hdml2X2dwdS5jCkBAIC02NDMsNDAgKzY0Myw2IEBAIHN0YXRpYyBpbnQgZGlz YWJsZV9heGkoc3RydWN0IGV0bmF2aXZfZ3B1ICpncHUpCiAJcmV0dXJuIDA7CiB9CiAKLWludCBl dG5hdml2X2dwdV9wbV9yZXN1bWUoc3RydWN0IGV0bmF2aXZfZ3B1ICpncHUpCi17Ci0JaW50IHJl dDsKLQotCURCRygiJXMiLCBkZXZfbmFtZShncHUtPmRldikpOwotCi0JcmV0ID0gZW5hYmxlX2Ns ayhncHUpOwotCWlmIChyZXQpCi0JCXJldHVybiByZXQ7Ci0KLQlyZXQgPSBlbmFibGVfYXhpKGdw dSk7Ci0JaWYgKHJldCkKLQkJcmV0dXJuIHJldDsKLQotCXJldHVybiAwOwotfQotCi1pbnQgZXRu YXZpdl9ncHVfcG1fc3VzcGVuZChzdHJ1Y3QgZXRuYXZpdl9ncHUgKmdwdSkKLXsKLQlpbnQgcmV0 OwotCi0JREJHKCIlcyIsIGRldl9uYW1lKGdwdS0+ZGV2KSk7Ci0KLQlyZXQgPSBkaXNhYmxlX2F4 aShncHUpOwotCWlmIChyZXQpCi0JCXJldHVybiByZXQ7Ci0KLQlyZXQgPSBkaXNhYmxlX2Nsayhn cHUpOwotCWlmIChyZXQpCi0JCXJldHVybiByZXQ7Ci0KLQlyZXR1cm4gMDsKLX0KLQogLyoKICAq IEhhbmdjaGVjayBkZXRlY3Rpb24gZm9yIGxvY2tlZCBncHU6CiAgKi8KQEAgLTk0Niw2ICs5MTIs MzggQEAgc3RhdGljIGlycXJldHVybl90IGlycV9oYW5kbGVyKGludCBpcnEsIHZvaWQgKmRhdGEp CiAJcmV0dXJuIHJldDsKIH0KIAorc3RhdGljIGludCBldG5hdml2X2dwdV9yZXN1bWUoc3RydWN0 IGV0bmF2aXZfZ3B1ICpncHUpCit7CisJaW50IHJldDsKKworCXJldCA9IGVuYWJsZV9jbGsoZ3B1 KTsKKwlpZiAocmV0KQorCQlyZXR1cm4gcmV0OworCisJcmV0ID0gZW5hYmxlX2F4aShncHUpOwor CWlmIChyZXQpIHsKKwkJZGlzYWJsZV9jbGsoZ3B1KTsKKwkJcmV0dXJuIHJldDsKKwl9CisKKwly ZXR1cm4gMDsKK30KKworc3RhdGljIGludCBldG5hdml2X2dwdV9zdXNwZW5kKHN0cnVjdCBldG5h dml2X2dwdSAqZ3B1KQoreworCWludCByZXQ7CisKKwlyZXQgPSBkaXNhYmxlX2F4aShncHUpOwor CWlmIChyZXQpCisJCXJldHVybiByZXQ7CisKKwlyZXQgPSBkaXNhYmxlX2NsayhncHUpOworCWlm IChyZXQpCisJCXJldHVybiByZXQ7CisKKwlyZXR1cm4gMDsKK30KKwogc3RhdGljIGludCBldG5h dml2X2dwdV9iaW5kKHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IGRldmljZSAqbWFzdGVyLAog CXZvaWQgKmRhdGEpCiB7CkBAIC05NTMsNiArOTUxLDcgQEAgc3RhdGljIGludCBldG5hdml2X2dw dV9iaW5kKHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IGRldmljZSAqbWFzdGVyLAogCXN0cnVj dCBldG5hdml2X2RybV9wcml2YXRlICpwcml2ID0gZHJtLT5kZXZfcHJpdmF0ZTsKIAlzdHJ1Y3Qg ZXRuYXZpdl9ncHUgKmdwdSA9IGRldl9nZXRfZHJ2ZGF0YShkZXYpOwogCWludCBpZHggPSBncHUt PnBpcGU7CisJaW50IHJldDsKIAogCWRldl9pbmZvKGRldiwgInByZSBncHVbaWR4XTogJXBcbiIs IHByaXYtPmdwdVtpZHhdKTsKIApAQCAtOTY2LDYgKzk2NSwxMCBAQCBzdGF0aWMgaW50IGV0bmF2 aXZfZ3B1X2JpbmQoc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgZGV2aWNlICptYXN0ZXIsCiAK IAlkZXZfaW5mbyhkZXYsICJwb3N0IGdwdVtpZHhdOiAlcFxuIiwgcHJpdi0+Z3B1W2lkeF0pOwog CisJcmV0ID0gZXRuYXZpdl9ncHVfcmVzdW1lKGdwdSk7CisJaWYgKHJldCA8IDApCisJCXJldHVy biByZXQ7CisKIAlncHUtPmRybSA9IGRybTsKIAogCUlOSVRfTElTVF9IRUFEKCZncHUtPmFjdGl2 ZV9saXN0KTsKQEAgLTk5MCw2ICs5OTMsOCBAQCBzdGF0aWMgdm9pZCBldG5hdml2X2dwdV91bmJp bmQoc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgZGV2aWNlICptYXN0ZXIsCiAKIAlXQVJOX09O KCFsaXN0X2VtcHR5KCZncHUtPmFjdGl2ZV9saXN0KSk7CiAKKwlldG5hdml2X2dwdV9zdXNwZW5k KGdwdSk7CisKIAlpZiAoZ3B1LT5idWZmZXIpIHsKIAkJZHJtX2dlbV9vYmplY3RfdW5yZWZlcmVu Y2UoZ3B1LT5idWZmZXIpOwogCQlncHUtPmJ1ZmZlciA9IE5VTEw7CmRpZmYgLS1naXQgYS9kcml2 ZXJzL3N0YWdpbmcvZXRuYXZpdi9ldG5hdml2X2dwdS5oIGIvZHJpdmVycy9zdGFnaW5nL2V0bmF2 aXYvZXRuYXZpdl9ncHUuaAppbmRleCA0ODQ2NDk1MzBjY2MuLmJiYzkxYjZlYThmZSAxMDA2NDQK LS0tIGEvZHJpdmVycy9zdGFnaW5nL2V0bmF2aXYvZXRuYXZpdl9ncHUuaAorKysgYi9kcml2ZXJz L3N0YWdpbmcvZXRuYXZpdi9ldG5hdml2X2dwdS5oCkBAIC0xNDIsOCArMTQyLDYgQEAgaW50IGV0 bmF2aXZfZ3B1X2dldF9wYXJhbShzdHJ1Y3QgZXRuYXZpdl9ncHUgKmdwdSwgdWludDMyX3QgcGFy YW0sCiAJdWludDY0X3QgKnZhbHVlKTsKIAogaW50IGV0bmF2aXZfZ3B1X2luaXQoc3RydWN0IGV0 bmF2aXZfZ3B1ICpncHUpOwotaW50IGV0bmF2aXZfZ3B1X3BtX3N1c3BlbmQoc3RydWN0IGV0bmF2 aXZfZ3B1ICpncHUpOwotaW50IGV0bmF2aXZfZ3B1X3BtX3Jlc3VtZShzdHJ1Y3QgZXRuYXZpdl9n cHUgKmdwdSk7CiAKICNpZmRlZiBDT05GSUdfREVCVUdfRlMKIHZvaWQgZXRuYXZpdl9ncHVfZGVi dWdmcyhzdHJ1Y3QgZXRuYXZpdl9ncHUgKmdwdSwgc3RydWN0IHNlcV9maWxlICptKTsKLS0gCjIu MS40CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmkt ZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=