From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lucas Stach Subject: [PATCH] gpu: ipu-v3: prg: switch to runtime PM Date: Fri, 10 Nov 2017 17:06:05 +0100 Message-ID: <20171110160605.22713-1-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 [IPv6:2001:67c:670:201:290:27ff:fe1d:cc33]) by gabe.freedesktop.org (Postfix) with ESMTPS id F1A286EAB3 for ; Fri, 10 Nov 2017 16:06:07 +0000 (UTC) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Philipp Zabel Cc: kernel@pengutronix.de, dri-devel@lists.freedesktop.org, patchwork-lst@pengutronix.de List-Id: dri-devel@lists.freedesktop.org SW5zdGVhZCBvZiBvcGVuLWNvZGluZyB0aGUgY2xrIGVuYWJsZS9kaXNhYmxlIGluIGFsbCBvZiB0 aGUgY2FsbGVycwptb3ZlIHRoaXMgdG8gdGhlIFJQTSBzdXNwZW5kL3Jlc3VtZSBmdW5jdGlvbnMu CgpTaWduZWQtb2ZmLWJ5OiBMdWNhcyBTdGFjaCA8bC5zdGFjaEBwZW5ndXRyb25peC5kZT4KU2ln bmVkLW9mZi1ieTogUGhpbGlwcCBaYWJlbCA8cC56YWJlbEBwZW5ndXRyb25peC5kZT4KLS0tCiBk cml2ZXJzL2dwdS9pcHUtdjMvaXB1LXByZy5jIHwgNzEgKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKy0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA1MCBpbnNlcnRpb25zKCspLCAy MSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9pcHUtdjMvaXB1LXByZy5j IGIvZHJpdmVycy9ncHUvaXB1LXYzL2lwdS1wcmcuYwppbmRleCAwMDEzY2E5ZjcyYzguLmZkOThm NDhlOGEwOCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvaXB1LXYzL2lwdS1wcmcuYworKysgYi9k cml2ZXJzL2dwdS9pcHUtdjMvaXB1LXByZy5jCkBAIC0yMCw2ICsyMCw3IEBACiAjaW5jbHVkZSA8 bGludXgvbW9kdWxlLmg+CiAjaW5jbHVkZSA8bGludXgvb2YuaD4KICNpbmNsdWRlIDxsaW51eC9w bGF0Zm9ybV9kZXZpY2UuaD4KKyNpbmNsdWRlIDxsaW51eC9wbV9ydW50aW1lLmg+CiAjaW5jbHVk ZSA8bGludXgvcmVnbWFwLmg+CiAjaW5jbHVkZSA8dmlkZW8vaW14LWlwdS12My5oPgogCkBAIC0x MzksMjEgKzE0MCwxMSBAQCBFWFBPUlRfU1lNQk9MX0dQTChpcHVfcHJnX2Zvcm1hdF9zdXBwb3J0 ZWQpOwogaW50IGlwdV9wcmdfZW5hYmxlKHN0cnVjdCBpcHVfc29jICppcHUpCiB7CiAJc3RydWN0 IGlwdV9wcmcgKnByZyA9IGlwdS0+cHJnX3ByaXY7Ci0JaW50IHJldDsKIAogCWlmICghcHJnKQog CQlyZXR1cm4gMDsKIAotCXJldCA9IGNsa19wcmVwYXJlX2VuYWJsZShwcmctPmNsa19heGkpOwot CWlmIChyZXQpCi0JCWdvdG8gZmFpbF9kaXNhYmxlX2lwZzsKLQotCXJldHVybiAwOwotCi1mYWls X2Rpc2FibGVfaXBnOgotCWNsa19kaXNhYmxlX3VucHJlcGFyZShwcmctPmNsa19pcGcpOwotCi0J cmV0dXJuIHJldDsKKwlyZXR1cm4gcG1fcnVudGltZV9nZXRfc3luYyhwcmctPmRldik7CiB9CiBF WFBPUlRfU1lNQk9MX0dQTChpcHVfcHJnX2VuYWJsZSk7CiAKQEAgLTE2NCw3ICsxNTUsNyBAQCB2 b2lkIGlwdV9wcmdfZGlzYWJsZShzdHJ1Y3QgaXB1X3NvYyAqaXB1KQogCWlmICghcHJnKQogCQly ZXR1cm47CiAKLQljbGtfZGlzYWJsZV91bnByZXBhcmUocHJnLT5jbGtfYXhpKTsKKwlwbV9ydW50 aW1lX3B1dChwcmctPmRldik7CiB9CiBFWFBPUlRfU1lNQk9MX0dQTChpcHVfcHJnX2Rpc2FibGUp OwogCkBAIC0yNTUsNyArMjQ2LDcgQEAgdm9pZCBpcHVfcHJnX2NoYW5uZWxfZGlzYWJsZShzdHJ1 Y3QgaXB1djNfY2hhbm5lbCAqaXB1X2NoYW4pCiAJaWYgKCFjaGFuLT5lbmFibGVkIHx8IHByZ19j aGFuIDwgMCkKIAkJcmV0dXJuOwogCi0JY2xrX3ByZXBhcmVfZW5hYmxlKHByZy0+Y2xrX2lwZyk7 CisJcG1fcnVudGltZV9nZXRfc3luYyhwcmctPmRldik7CiAKIAl2YWwgPSByZWFkbChwcmctPnJl Z3MgKyBJUFVfUFJHX0NUTCk7CiAJdmFsIHw9IElQVV9QUkdfQ1RMX0JZUEFTUyhwcmdfY2hhbik7 CkBAIC0yNjQsNyArMjU1LDcgQEAgdm9pZCBpcHVfcHJnX2NoYW5uZWxfZGlzYWJsZShzdHJ1Y3Qg aXB1djNfY2hhbm5lbCAqaXB1X2NoYW4pCiAJdmFsID0gSVBVX1BSR19SRUdfVVBEQVRFX1JFR19V UERBVEU7CiAJd3JpdGVsKHZhbCwgcHJnLT5yZWdzICsgSVBVX1BSR19SRUdfVVBEQVRFKTsKIAot CWNsa19kaXNhYmxlX3VucHJlcGFyZShwcmctPmNsa19pcGcpOworCXBtX3J1bnRpbWVfcHV0KHBy Zy0+ZGV2KTsKIAogCWlwdV9wcmdfcHV0X3ByZShwcmcsIHByZ19jaGFuKTsKIApAQCAtMjk5LDEx ICsyOTAsNyBAQCBpbnQgaXB1X3ByZ19jaGFubmVsX2NvbmZpZ3VyZShzdHJ1Y3QgaXB1djNfY2hh bm5lbCAqaXB1X2NoYW4sCiAJCQkgIHdpZHRoLCBoZWlnaHQsIHN0cmlkZSwgZm9ybWF0LCAqZWJh KTsKIAogCi0JcmV0ID0gY2xrX3ByZXBhcmVfZW5hYmxlKHByZy0+Y2xrX2lwZyk7Ci0JaWYgKHJl dCkgewotCQlpcHVfcHJnX3B1dF9wcmUocHJnLCBwcmdfY2hhbik7Ci0JCXJldHVybiByZXQ7Ci0J fQorCXBtX3J1bnRpbWVfZ2V0X3N5bmMocHJnLT5kZXYpOwogCiAJdmFsID0gKHN0cmlkZSAtIDEp ICYgSVBVX1BSR19TVFJJREVfU1RSSURFX01BU0s7CiAJd3JpdGVsKHZhbCwgcHJnLT5yZWdzICsg SVBVX1BSR19TVFJJREUocHJnX2NoYW4pKTsKQEAgLTMzNiw3ICszMjMsNyBAQCBpbnQgaXB1X3By Z19jaGFubmVsX2NvbmZpZ3VyZShzdHJ1Y3QgaXB1djNfY2hhbm5lbCAqaXB1X2NoYW4sCiAJCQkg ICAodmFsICYgSVBVX1BSR19TVEFUVVNfQlVGRkVSMV9SRUFEWShwcmdfY2hhbikpLAogCQkJICAg NSwgMTAwMCk7CiAKLQljbGtfZGlzYWJsZV91bnByZXBhcmUocHJnLT5jbGtfaXBnKTsKKwlwbV9y dW50aW1lX3B1dChwcmctPmRldik7CiAKIAljaGFuLT5lbmFibGVkID0gdHJ1ZTsKIAlyZXR1cm4g MDsKQEAgLTM4NCw2ICszNzEsMTIgQEAgc3RhdGljIGludCBpcHVfcHJnX3Byb2JlKHN0cnVjdCBw bGF0Zm9ybV9kZXZpY2UgKnBkZXYpCiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIAorCXJldCA9 IGNsa19wcmVwYXJlX2VuYWJsZShwcmctPmNsa19heGkpOworCWlmIChyZXQpIHsKKwkJY2xrX2Rp c2FibGVfdW5wcmVwYXJlKHByZy0+Y2xrX2lwZyk7CisJCXJldHVybiByZXQ7CisJfQorCiAJLyog aW5pdCB0byBmcmVlIHJ1bm5pbmcgbW9kZSAqLwogCXZhbCA9IHJlYWRsKHByZy0+cmVncyArIElQ VV9QUkdfQ1RMKTsKIAl2YWwgfD0gSVBVX1BSR19DVExfU0hBRE9XX0VOOwpAQCAtMzkyLDcgKzM4 NSw4IEBAIHN0YXRpYyBpbnQgaXB1X3ByZ19wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpw ZGV2KQogCS8qIGRpc2FibGUgYWRkcmVzcyB0aHJlc2hvbGQgKi8KIAl3cml0ZWwoMHhmZmZmZmZm ZiwgcHJnLT5yZWdzICsgSVBVX1BSR19USEQpOwogCi0JY2xrX2Rpc2FibGVfdW5wcmVwYXJlKHBy Zy0+Y2xrX2lwZyk7CisJcG1fcnVudGltZV9zZXRfYWN0aXZlKGRldik7CisJcG1fcnVudGltZV9l bmFibGUoZGV2KTsKIAogCXByZy0+ZGV2ID0gZGV2OwogCXBsYXRmb3JtX3NldF9kcnZkYXRhKHBk ZXYsIHByZyk7CkBAIC00MTQsNiArNDA4LDQwIEBAIHN0YXRpYyBpbnQgaXB1X3ByZ19yZW1vdmUo c3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKIAlyZXR1cm4gMDsKIH0KIAorI2lmZGVmIENP TkZJR19QTQorc3RhdGljIGludCBwcmdfc3VzcGVuZChzdHJ1Y3QgZGV2aWNlICpkZXYpCit7CisJ c3RydWN0IGlwdV9wcmcgKnByZyA9IGRldl9nZXRfZHJ2ZGF0YShkZXYpOworCisJY2xrX2Rpc2Fi bGVfdW5wcmVwYXJlKHByZy0+Y2xrX2F4aSk7CisJY2xrX2Rpc2FibGVfdW5wcmVwYXJlKHByZy0+ Y2xrX2lwZyk7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBwcmdfcmVzdW1lKHN0cnVj dCBkZXZpY2UgKmRldikKK3sKKwlzdHJ1Y3QgaXB1X3ByZyAqcHJnID0gZGV2X2dldF9kcnZkYXRh KGRldik7CisJaW50IHJldDsKKworCXJldCA9IGNsa19wcmVwYXJlX2VuYWJsZShwcmctPmNsa19p cGcpOworCWlmIChyZXQpCisJCXJldHVybiByZXQ7CisKKwlyZXQgPSBjbGtfcHJlcGFyZV9lbmFi bGUocHJnLT5jbGtfYXhpKTsKKwlpZiAocmV0KSB7CisJCWNsa19kaXNhYmxlX3VucHJlcGFyZShw cmctPmNsa19pcGcpOworCQlyZXR1cm4gcmV0OworCX0KKworCXJldHVybiAwOworfQorI2VuZGlm CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgZGV2X3BtX29wcyBwcmdfcG1fb3BzID0geworCVNFVF9S VU5USU1FX1BNX09QUyhwcmdfc3VzcGVuZCwgcHJnX3Jlc3VtZSwgTlVMTCkKK307CisKIHN0YXRp YyBjb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNlX2lkIGlwdV9wcmdfZHRfaWRzW10gPSB7CiAJeyAuY29t cGF0aWJsZSA9ICJmc2wsaW14NnFwLXByZyIsIH0sCiAJeyAvKiBzZW50aW5lbCAqLyB9LApAQCAt NDI0LDYgKzQ1Miw3IEBAIHN0cnVjdCBwbGF0Zm9ybV9kcml2ZXIgaXB1X3ByZ19kcnYgPSB7CiAJ LnJlbW92ZQkJPSBpcHVfcHJnX3JlbW92ZSwKIAkuZHJpdmVyCQk9IHsKIAkJLm5hbWUJPSAiaW14 LWlwdS1wcmciLAorCQkucG0JPSAmcHJnX3BtX29wcywKIAkJLm9mX21hdGNoX3RhYmxlID0gaXB1 X3ByZ19kdF9pZHMsCiAJfSwKIH07Ci0tIAoyLjExLjAKCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVs QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWls bWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=