From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sharat Masetty Subject: [v4 3/4] drm/msm: re-factor devfreq code Date: Thu, 4 Oct 2018 15:11:42 +0530 Message-ID: <1538646103-27445-4-git-send-email-smasetty@codeaurora.org> References: <1538646103-27445-1-git-send-email-smasetty@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1538646103-27445-1-git-send-email-smasetty@codeaurora.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: freedreno@lists.freedesktop.org Cc: linux-arm-msm@vger.kernel.org, Sharat Masetty , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org VGhlIGRldmZyZXEgZnJhbWV3b3JrIHJlcXVpcmVzIHRoZSBkcml2ZXJzIHRvIHByb3ZpZGUgYnVz eSB0aW1lIGVzdGltYXRpb25zLgpUaGUgR1BVIGRyaXZlciByZWxpZXMgb24gdGhlIGhhcmR3YXJl IHBlcmZvcm1hbmNlIGNvdW50ZXJlcyBmb3IgdGhlIGJ1c3kgdGltZQplc3RpbWF0aW9ucywgYnV0 IGRpZmZlcmVudCBoYXJkd2FyZSByZXZpc2lvbnMgaGF2ZSBjb3VudGVycyB3aGljaCBjYW4gYmUK c291cmNlZCBmcm9tIGRpZmZlcmVudCBjbG9ja3MuIFNvIHRoZSBidXN5IHRpbWUgZXN0aW1hdGlv biB3aWxsIGJlIHRhcmdldApkZXBlbmRlbnQuICBBZGRpdGlvbmFsbHkgb24gdGFyZ2V0cyB3aGVy ZSB0aGUgY2xvY2tzIGFyZSBjb21wbGV0ZWx5IGNvbnRyb2xsZWQKYnkgdGhlIG9uIGNoaXAgbWlj cm9jb250cm9sbGVyLCBmZXRjaGluZyBhbmQgc2V0dGluZyB0aGUgY3VycmVudCBHUFUgZnJlcXVl bmN5CndpbGwgYmUgZGlmZmVyZW50LiBUaGlzIHBhdGNoIGFpbXMgdG8gZW1icmFjZSB0aGVzZSBk aWZmZXJlbmNlcyBieSByZS1mYWN0b3JpbmcKdGhlIGRldmZyZXEgY29kZSBhIGJpdC4KClNpZ25l ZC1vZmYtYnk6IFNoYXJhdCBNYXNldHR5IDxzbWFzZXR0eUBjb2RlYXVyb3JhLm9yZz4KLS0tCiBk cml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNXh4X2dwdS5jIHwgMTYgKysrKysrKysrLS0tLQog ZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZ3B1LmMgICAgICAgICB8IDQzICsrKysrKysrKysrKysr KysrKysrLS0tLS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuaCAgICAg ICAgIHwgIDUgKysrLQogMyBmaWxlcyBjaGFuZ2VkLCA0MSBpbnNlcnRpb25zKCspLCAyMyBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNXh4X2dw dS5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYTV4eF9ncHUuYwppbmRleCA2YTY4NDkz Li40MGI0ZjhhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNXh4X2dw dS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2E1eHhfZ3B1LmMKQEAgLTE0MzYs MTIgKzE0MzYsMjAgQEAgc3RhdGljIHN0cnVjdCBtc21fcmluZ2J1ZmZlciAqYTV4eF9hY3RpdmVf cmluZyhzdHJ1Y3QgbXNtX2dwdSAqZ3B1KQogCXJldHVybiBhNXh4X2dwdS0+Y3VyX3Jpbmc7CiB9 CiAKLXN0YXRpYyBpbnQgYTV4eF9ncHVfYnVzeShzdHJ1Y3QgbXNtX2dwdSAqZ3B1LCB1aW50NjRf dCAqdmFsdWUpCitzdGF0aWMgdW5zaWduZWQgbG9uZyBhNXh4X2dwdV9idXN5KHN0cnVjdCBtc21f Z3B1ICpncHUpCiB7Ci0JKnZhbHVlID0gZ3B1X3JlYWQ2NChncHUsIFJFR19BNVhYX1JCQk1fUEVS RkNUUl9SQkJNXzBfTE8sCi0JCVJFR19BNVhYX1JCQk1fUEVSRkNUUl9SQkJNXzBfSEkpOworCXU2 NCBidXN5X2N5Y2xlczsKKwl1bnNpZ25lZCBsb25nIGJ1c3lfdGltZTsKIAotCXJldHVybiAwOwor CWJ1c3lfY3ljbGVzID0gZ3B1X3JlYWQ2NChncHUsIFJFR19BNVhYX1JCQk1fUEVSRkNUUl9SQkJN XzBfTE8sCisJCQlSRUdfQTVYWF9SQkJNX1BFUkZDVFJfUkJCTV8wX0hJKTsKKworCWJ1c3lfdGlt ZSA9IChidXN5X2N5Y2xlcyAtIGdwdS0+ZGV2ZnJlcS5idXN5X2N5Y2xlcykgLworCQkoY2xrX2dl dF9yYXRlKGdwdS0+Y29yZV9jbGspIC8gMTAwMDAwMCk7CisKKwlncHUtPmRldmZyZXEuYnVzeV9j eWNsZXMgPSBidXN5X2N5Y2xlczsKKworCXJldHVybiBidXN5X3RpbWU7CiB9CiAKIHN0YXRpYyBj b25zdCBzdHJ1Y3QgYWRyZW5vX2dwdV9mdW5jcyBmdW5jcyA9IHsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9tc20vbXNtX2dwdS5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZ3B1LmMK aW5kZXggMzM3OGE5ZC4uMTFhYWM4MyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9t c21fZ3B1LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZ3B1LmMKQEAgLTQxLDcgKzQx LDExIEBAIHN0YXRpYyBpbnQgbXNtX2RldmZyZXFfdGFyZ2V0KHN0cnVjdCBkZXZpY2UgKmRldiwg dW5zaWduZWQgbG9uZyAqZnJlcSwKIAlpZiAoSVNfRVJSKG9wcCkpCiAJCXJldHVybiBQVFJfRVJS KG9wcCk7CiAKLQljbGtfc2V0X3JhdGUoZ3B1LT5jb3JlX2NsaywgKmZyZXEpOworCWlmIChncHUt PmZ1bmNzLT5ncHVfc2V0X2ZyZXEpCisJCWdwdS0+ZnVuY3MtPmdwdV9zZXRfZnJlcShncHUsICh1 NjQpKmZyZXEpOworCWVsc2UKKwkJY2xrX3NldF9yYXRlKGdwdS0+Y29yZV9jbGssICpmcmVxKTsK KwogCWRldl9wbV9vcHBfcHV0KG9wcCk7CiAKIAlyZXR1cm4gMDsKQEAgLTUxLDE2ICs1NSwxNCBA QCBzdGF0aWMgaW50IG1zbV9kZXZmcmVxX2dldF9kZXZfc3RhdHVzKHN0cnVjdCBkZXZpY2UgKmRl diwKIAkJc3RydWN0IGRldmZyZXFfZGV2X3N0YXR1cyAqc3RhdHVzKQogewogCXN0cnVjdCBtc21f Z3B1ICpncHUgPSBwbGF0Zm9ybV9nZXRfZHJ2ZGF0YSh0b19wbGF0Zm9ybV9kZXZpY2UoZGV2KSk7 Ci0JdTY0IGN5Y2xlczsKLQl1MzIgZnJlcSA9ICgodTMyKSBzdGF0dXMtPmN1cnJlbnRfZnJlcXVl bmN5KSAvIDEwMDAwMDA7CiAJa3RpbWVfdCB0aW1lOwogCi0Jc3RhdHVzLT5jdXJyZW50X2ZyZXF1 ZW5jeSA9ICh1bnNpZ25lZCBsb25nKSBjbGtfZ2V0X3JhdGUoZ3B1LT5jb3JlX2Nsayk7Ci0JZ3B1 LT5mdW5jcy0+Z3B1X2J1c3koZ3B1LCAmY3ljbGVzKTsKLQotCXN0YXR1cy0+YnVzeV90aW1lID0g KCh1MzIpIChjeWNsZXMgLSBncHUtPmRldmZyZXEuYnVzeV9jeWNsZXMpKSAvIGZyZXE7CisJaWYg KGdwdS0+ZnVuY3MtPmdwdV9nZXRfZnJlcSkKKwkJc3RhdHVzLT5jdXJyZW50X2ZyZXF1ZW5jeSA9 IGdwdS0+ZnVuY3MtPmdwdV9nZXRfZnJlcShncHUpOworCWVsc2UKKwkJc3RhdHVzLT5jdXJyZW50 X2ZyZXF1ZW5jeSA9IGNsa19nZXRfcmF0ZShncHUtPmNvcmVfY2xrKTsKIAotCWdwdS0+ZGV2ZnJl cS5idXN5X2N5Y2xlcyA9IGN5Y2xlczsKKwlzdGF0dXMtPmJ1c3lfdGltZSA9IGdwdS0+ZnVuY3Mt PmdwdV9idXN5KGdwdSk7CiAKIAl0aW1lID0ga3RpbWVfZ2V0KCk7CiAJc3RhdHVzLT50b3RhbF90 aW1lID0ga3RpbWVfdXNfZGVsdGEodGltZSwgZ3B1LT5kZXZmcmVxLnRpbWUpOwpAQCAtNzMsNyAr NzUsMTAgQEAgc3RhdGljIGludCBtc21fZGV2ZnJlcV9nZXRfY3VyX2ZyZXEoc3RydWN0IGRldmlj ZSAqZGV2LCB1bnNpZ25lZCBsb25nICpmcmVxKQogewogCXN0cnVjdCBtc21fZ3B1ICpncHUgPSBw bGF0Zm9ybV9nZXRfZHJ2ZGF0YSh0b19wbGF0Zm9ybV9kZXZpY2UoZGV2KSk7CiAKLQkqZnJlcSA9 ICh1bnNpZ25lZCBsb25nKSBjbGtfZ2V0X3JhdGUoZ3B1LT5jb3JlX2Nsayk7CisJaWYgKGdwdS0+ ZnVuY3MtPmdwdV9nZXRfZnJlcSkKKwkJKmZyZXEgPSBncHUtPmZ1bmNzLT5ncHVfZ2V0X2ZyZXEo Z3B1KTsKKwllbHNlCisJCSpmcmVxID0gY2xrX2dldF9yYXRlKGdwdS0+Y29yZV9jbGspOwogCiAJ cmV0dXJuIDA7CiB9CkBAIC04OCw3ICs5Myw3IEBAIHN0YXRpYyBpbnQgbXNtX2RldmZyZXFfZ2V0 X2N1cl9mcmVxKHN0cnVjdCBkZXZpY2UgKmRldiwgdW5zaWduZWQgbG9uZyAqZnJlcSkKIHN0YXRp YyB2b2lkIG1zbV9kZXZmcmVxX2luaXQoc3RydWN0IG1zbV9ncHUgKmdwdSkKIHsKIAkvKiBXZSBu ZWVkIHRhcmdldCBzdXBwb3J0IHRvIGRvIGRldmZyZXEgKi8KLQlpZiAoIWdwdS0+ZnVuY3MtPmdw dV9idXN5IHx8ICFncHUtPmNvcmVfY2xrKQorCWlmICghZ3B1LT5mdW5jcy0+Z3B1X2J1c3kpCiAJ CXJldHVybjsKIAogCW1zbV9kZXZmcmVxX3Byb2ZpbGUuaW5pdGlhbF9mcmVxID0gZ3B1LT5mYXN0 X3JhdGU7CkBAIC0xODYsNiArMTkxLDE0IEBAIHN0YXRpYyBpbnQgZGlzYWJsZV9heGkoc3RydWN0 IG1zbV9ncHUgKmdwdSkKIAlyZXR1cm4gMDsKIH0KIAordm9pZCBtc21fZ3B1X3Jlc3VtZV9kZXZm cmVxKHN0cnVjdCBtc21fZ3B1ICpncHUpCit7CisJZ3B1LT5kZXZmcmVxLmJ1c3lfY3ljbGVzID0g MDsKKwlncHUtPmRldmZyZXEudGltZSA9IGt0aW1lX2dldCgpOworCisJZGV2ZnJlcV9yZXN1bWVf ZGV2aWNlKGdwdS0+ZGV2ZnJlcS5kZXZmcmVxKTsKK30KKwogaW50IG1zbV9ncHVfcG1fcmVzdW1l KHN0cnVjdCBtc21fZ3B1ICpncHUpCiB7CiAJaW50IHJldDsKQEAgLTIwNCwxMiArMjE3LDcgQEAg aW50IG1zbV9ncHVfcG1fcmVzdW1lKHN0cnVjdCBtc21fZ3B1ICpncHUpCiAJaWYgKHJldCkKIAkJ cmV0dXJuIHJldDsKIAotCWlmIChncHUtPmRldmZyZXEuZGV2ZnJlcSkgewotCQlncHUtPmRldmZy ZXEuYnVzeV9jeWNsZXMgPSAwOwotCQlncHUtPmRldmZyZXEudGltZSA9IGt0aW1lX2dldCgpOwot Ci0JCWRldmZyZXFfcmVzdW1lX2RldmljZShncHUtPmRldmZyZXEuZGV2ZnJlcSk7Ci0JfQorCW1z bV9ncHVfcmVzdW1lX2RldmZyZXEoZ3B1KTsKIAogCWdwdS0+bmVlZHNfaHdfaW5pdCA9IHRydWU7 CiAKQEAgLTIyMiw4ICsyMzAsNyBAQCBpbnQgbXNtX2dwdV9wbV9zdXNwZW5kKHN0cnVjdCBtc21f Z3B1ICpncHUpCiAKIAlEQkcoIiVzIiwgZ3B1LT5uYW1lKTsKIAotCWlmIChncHUtPmRldmZyZXEu ZGV2ZnJlcSkKLQkJZGV2ZnJlcV9zdXNwZW5kX2RldmljZShncHUtPmRldmZyZXEuZGV2ZnJlcSk7 CisJZGV2ZnJlcV9zdXNwZW5kX2RldmljZShncHUtPmRldmZyZXEuZGV2ZnJlcSk7CiAKIAlyZXQg PSBkaXNhYmxlX2F4aShncHUpOwogCWlmIChyZXQpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vbXNtL21zbV9ncHUuaCBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2dwdS5oCmluZGV4IDkx MjJlZTYuLmY4MmJhYzAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2dwdS5o CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2dwdS5oCkBAIC03MCw5ICs3MCwxMSBAQCBz dHJ1Y3QgbXNtX2dwdV9mdW5jcyB7CiAJLyogZm9yIGdlbmVyYXRpb24gc3BlY2lmaWMgZGVidWdm czogKi8KIAlpbnQgKCpkZWJ1Z2ZzX2luaXQpKHN0cnVjdCBtc21fZ3B1ICpncHUsIHN0cnVjdCBk cm1fbWlub3IgKm1pbm9yKTsKICNlbmRpZgotCWludCAoKmdwdV9idXN5KShzdHJ1Y3QgbXNtX2dw dSAqZ3B1LCB1aW50NjRfdCAqdmFsdWUpOworCXVuc2lnbmVkIGxvbmcgKCpncHVfYnVzeSkoc3Ry dWN0IG1zbV9ncHUgKmdwdSk7CiAJc3RydWN0IG1zbV9ncHVfc3RhdGUgKigqZ3B1X3N0YXRlX2dl dCkoc3RydWN0IG1zbV9ncHUgKmdwdSk7CiAJaW50ICgqZ3B1X3N0YXRlX3B1dCkoc3RydWN0IG1z bV9ncHVfc3RhdGUgKnN0YXRlKTsKKwl1bnNpZ25lZCBsb25nICgqZ3B1X2dldF9mcmVxKShzdHJ1 Y3QgbXNtX2dwdSAqZ3B1KTsKKwl2b2lkICgqZ3B1X3NldF9mcmVxKShzdHJ1Y3QgbXNtX2dwdSAq Z3B1LCB1bnNpZ25lZCBsb25nIGZyZXEpOwogfTsKIAogc3RydWN0IG1zbV9ncHUgewpAQCAtMjY0 LDYgKzI2Niw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBncHVfd3JpdGU2NChzdHJ1Y3QgbXNtX2dw dSAqZ3B1LCB1MzIgbG8sIHUzMiBoaSwgdTY0IHZhbCkKIAogaW50IG1zbV9ncHVfcG1fc3VzcGVu ZChzdHJ1Y3QgbXNtX2dwdSAqZ3B1KTsKIGludCBtc21fZ3B1X3BtX3Jlc3VtZShzdHJ1Y3QgbXNt X2dwdSAqZ3B1KTsKK3ZvaWQgbXNtX2dwdV9yZXN1bWVfZGV2ZnJlcShzdHJ1Y3QgbXNtX2dwdSAq Z3B1KTsKIAogaW50IG1zbV9ncHVfaHdfaW5pdChzdHJ1Y3QgbXNtX2dwdSAqZ3B1KTsKIAotLSAK MS45LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRy aS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRw czovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=