From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sharat Masetty Subject: [PATCH 3/3] drm/msm: re-factor devfreq code Date: Fri, 25 May 2018 16:00:46 +0530 Message-ID: <1527244246-10519-4-git-send-email-smasetty@codeaurora.org> References: <1527244246-10519-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: <1527244246-10519-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 ZGV2ZnJlcSBmcmFtZXdvcmsgcmVxdWlyZXMgdGhlIGRyaXZlcnMgdG8gcHJvdmlkZSBidXN5IHRp bWUgZXN0aW1hdGlvbnMuClRoZSBHUFUgZHJpdmVyIHJlbGllcyBvbiB0aGUgaGFyZHdhcmUgcGVy Zm9ybWFuY2UgY291bnRlcnMgZm9yIHRoZSBidXN5IHRpbWUKZXN0aW1hdGlvbnMsIGJ1dCBkaWZm ZXJlbnQgaGFyZHdhcmUgcmV2aXNpb25zIGhhdmUgY291bnRlcnMgd2hpY2ggY2FuIGJlCnNvdXJj ZWQgZnJvbSBkaWZmZXJlbnQgY2xvY2tzLiBTbyB0aGUgYnVzeSB0aW1lIGVzdGltYXRpb24gd2ls bCBiZSB0YXJnZXQKZGVwZW5kZW50LiAgQWRkaXRpb25hbGx5IG9uIHRhcmdldHMgd2hlcmUgdGhl IGNsb2NrcyBhcmUgY29tcGxldGVseSBjb250cm9sbGVkCmJ5IHRoZSBvbiBjaGlwIG1pY3JvY29u dHJvbGxlciwgZmV0Y2hpbmcgYW5kIHNldHRpbmcgdGhlIGN1cnJlbnQgR1BVIGZyZXF1ZW5jeQp3 aWxsIGJlIGRpZmZlcmVudC4gVGhpcyBwYXRjaCBhaW1zIHRvIGVtYnJhY2UgdGhlc2UgZGlmZmVy ZW5jZXMgYnkgcmUtZmFjdG9yaW5nCnRoZSBkZXZmcmVxIGNvZGUgYSBiaXQuCgpTaWduZWQtb2Zm LWJ5OiBTaGFyYXQgTWFzZXR0eSA8c21hc2V0dHlAY29kZWF1cm9yYS5vcmc+Ci0tLQogZHJpdmVy cy9ncHUvZHJtL21zbS9hZHJlbm8vYTV4eF9ncHUuYyB8IDE1ICsrKysrKysrKysrLS0tLQogZHJp dmVycy9ncHUvZHJtL21zbS9tc21fZ3B1LmMgICAgICAgICB8IDIzICsrKysrKysrKysrKysrLS0t LS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuaCAgICAgICAgIHwgIDQgKysrLQog MyBmaWxlcyBjaGFuZ2VkLCAyOCBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNXh4X2dwdS5jIGIvZHJpdmVycy9n cHUvZHJtL21zbS9hZHJlbm8vYTV4eF9ncHUuYwppbmRleCBkMzk0MDBlLi5hMzVhODQwIDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNXh4X2dwdS5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9tc20vYWRyZW5vL2E1eHhfZ3B1LmMKQEAgLTEyMTksMTIgKzEyMTksMTkgQEAg c3RhdGljIHN0cnVjdCBtc21fcmluZ2J1ZmZlciAqYTV4eF9hY3RpdmVfcmluZyhzdHJ1Y3QgbXNt X2dwdSAqZ3B1KQogCXJldHVybiBhNXh4X2dwdS0+Y3VyX3Jpbmc7CiB9CiAKLXN0YXRpYyBpbnQg YTV4eF9ncHVfYnVzeShzdHJ1Y3QgbXNtX2dwdSAqZ3B1LCB1aW50NjRfdCAqdmFsdWUpCitzdGF0 aWMgdTY0IGE1eHhfZ3B1X2J1c3koc3RydWN0IG1zbV9ncHUgKmdwdSkKIHsKLQkqdmFsdWUgPSBn cHVfcmVhZDY0KGdwdSwgUkVHX0E1WFhfUkJCTV9QRVJGQ1RSX1JCQk1fMF9MTywKLQkJUkVHX0E1 WFhfUkJCTV9QRVJGQ1RSX1JCQk1fMF9ISSk7CisJdTY0IGJ1c3lfY3ljbGVzLCBidXN5X3RpbWU7 CiAKLQlyZXR1cm4gMDsKKwlidXN5X2N5Y2xlcyA9IGdwdV9yZWFkNjQoZ3B1LCBSRUdfQTVYWF9S QkJNX1BFUkZDVFJfUkJCTV8wX0xPLAorCQkJUkVHX0E1WFhfUkJCTV9QRVJGQ1RSX1JCQk1fMF9I SSk7CisKKwlidXN5X3RpbWUgPSAoYnVzeV9jeWNsZXMgLSBncHUtPmRldmZyZXEuYnVzeV9jeWNs ZXMpIC8KKwkJKGNsa19nZXRfcmF0ZShncHUtPmNvcmVfY2xrKSAvIDEwMDAwMDApOworCisJZ3B1 LT5kZXZmcmVxLmJ1c3lfY3ljbGVzID0gYnVzeV9jeWNsZXM7CisKKwlyZXR1cm4gYnVzeV90aW1l OwogfQogCiBzdGF0aWMgY29uc3Qgc3RydWN0IGFkcmVub19ncHVfZnVuY3MgZnVuY3MgPSB7CmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9tc20vbXNtX2dwdS5jCmluZGV4IGQ4ZDRmYzkuLmY0MzdlZTggMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9tc20vbXNtX2dwdS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2dw dS5jCkBAIC00MCw3ICs0MCwxMSBAQCBzdGF0aWMgaW50IG1zbV9kZXZmcmVxX3RhcmdldChzdHJ1 Y3QgZGV2aWNlICpkZXYsIHVuc2lnbmVkIGxvbmcgKmZyZXEsCiAJaWYgKElTX0VSUihvcHApKQog CQlyZXR1cm4gUFRSX0VSUihvcHApOwogCi0JY2xrX3NldF9yYXRlKGdwdS0+Y29yZV9jbGssICpm cmVxKTsKKwlpZiAoZ3B1LT5mdW5jcy0+Z3B1X3NldF9mcmVxKQorCQlncHUtPmZ1bmNzLT5ncHVf c2V0X2ZyZXEoZ3B1LCAodTY0KSpmcmVxKTsKKwllbHNlCisJCWNsa19zZXRfcmF0ZShncHUtPmNv cmVfY2xrLCAqZnJlcSk7CisKIAlkZXZfcG1fb3BwX3B1dChvcHApOwogCiAJcmV0dXJuIDA7CkBA IC01MCwxNiArNTQsMTQgQEAgc3RhdGljIGludCBtc21fZGV2ZnJlcV9nZXRfZGV2X3N0YXR1cyhz dHJ1Y3QgZGV2aWNlICpkZXYsCiAJCXN0cnVjdCBkZXZmcmVxX2Rldl9zdGF0dXMgKnN0YXR1cykK IHsKIAlzdHJ1Y3QgbXNtX2dwdSAqZ3B1ID0gcGxhdGZvcm1fZ2V0X2RydmRhdGEodG9fcGxhdGZv cm1fZGV2aWNlKGRldikpOwotCXU2NCBjeWNsZXM7Ci0JdTMyIGZyZXEgPSAoKHUzMikgc3RhdHVz LT5jdXJyZW50X2ZyZXF1ZW5jeSkgLyAxMDAwMDAwOwogCWt0aW1lX3QgdGltZTsKIAotCXN0YXR1 cy0+Y3VycmVudF9mcmVxdWVuY3kgPSAodW5zaWduZWQgbG9uZykgY2xrX2dldF9yYXRlKGdwdS0+ Y29yZV9jbGspOwotCWdwdS0+ZnVuY3MtPmdwdV9idXN5KGdwdSwgJmN5Y2xlcyk7Ci0KLQlzdGF0 dXMtPmJ1c3lfdGltZSA9ICgodTMyKSAoY3ljbGVzIC0gZ3B1LT5kZXZmcmVxLmJ1c3lfY3ljbGVz KSkgLyBmcmVxOworCWlmIChncHUtPmZ1bmNzLT5ncHVfZ2V0X2ZyZXEpCisJCXN0YXR1cy0+Y3Vy cmVudF9mcmVxdWVuY3kgPSBncHUtPmZ1bmNzLT5ncHVfZ2V0X2ZyZXEoZ3B1KTsKKwllbHNlCisJ CXN0YXR1cy0+Y3VycmVudF9mcmVxdWVuY3kgPSBjbGtfZ2V0X3JhdGUoZ3B1LT5jb3JlX2Nsayk7 CiAKLQlncHUtPmRldmZyZXEuYnVzeV9jeWNsZXMgPSBjeWNsZXM7CisJc3RhdHVzLT5idXN5X3Rp bWUgPSBncHUtPmZ1bmNzLT5ncHVfYnVzeShncHUpOwogCiAJdGltZSA9IGt0aW1lX2dldCgpOwog CXN0YXR1cy0+dG90YWxfdGltZSA9IGt0aW1lX3VzX2RlbHRhKHRpbWUsIGdwdS0+ZGV2ZnJlcS50 aW1lKTsKQEAgLTcyLDcgKzc0LDEwIEBAIHN0YXRpYyBpbnQgbXNtX2RldmZyZXFfZ2V0X2N1cl9m cmVxKHN0cnVjdCBkZXZpY2UgKmRldiwgdW5zaWduZWQgbG9uZyAqZnJlcSkKIHsKIAlzdHJ1Y3Qg bXNtX2dwdSAqZ3B1ID0gcGxhdGZvcm1fZ2V0X2RydmRhdGEodG9fcGxhdGZvcm1fZGV2aWNlKGRl dikpOwogCi0JKmZyZXEgPSAodW5zaWduZWQgbG9uZykgY2xrX2dldF9yYXRlKGdwdS0+Y29yZV9j bGspOworCWlmIChncHUtPmZ1bmNzLT5ncHVfZ2V0X2ZyZXEpCisJCSpmcmVxID0gZ3B1LT5mdW5j cy0+Z3B1X2dldF9mcmVxKGdwdSk7CisJZWxzZQorCQkqZnJlcSA9IGNsa19nZXRfcmF0ZShncHUt PmNvcmVfY2xrKTsKIAogCXJldHVybiAwOwogfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L21zbS9tc21fZ3B1LmggYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuaAppbmRleCAxODc2 YjgxLi5kM2YwMmU3IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuaAor KysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuaApAQCAtNjgsNyArNjgsOSBAQCBzdHJ1 Y3QgbXNtX2dwdV9mdW5jcyB7CiAJLyogZm9yIGdlbmVyYXRpb24gc3BlY2lmaWMgZGVidWdmczog Ki8KIAlpbnQgKCpkZWJ1Z2ZzX2luaXQpKHN0cnVjdCBtc21fZ3B1ICpncHUsIHN0cnVjdCBkcm1f bWlub3IgKm1pbm9yKTsKICNlbmRpZgotCWludCAoKmdwdV9idXN5KShzdHJ1Y3QgbXNtX2dwdSAq Z3B1LCB1aW50NjRfdCAqdmFsdWUpOworCXU2NCAoKmdwdV9idXN5KShzdHJ1Y3QgbXNtX2dwdSAq Z3B1KTsKKwl1NjQgKCpncHVfZ2V0X2ZyZXEpKHN0cnVjdCBtc21fZ3B1ICpncHUpOworCWludCAo KmdwdV9zZXRfZnJlcSkoc3RydWN0IG1zbV9ncHUgKmdwdSwgdTY0IGZyZXEpOwogfTsKIAogc3Ry dWN0IG1zbV9ncHUgewotLSAKMS45LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2RyaS1kZXZlbAo=