From mboxrd@z Thu Jan 1 00:00:00 1970 From: Francisco Jerez Subject: [PATCH 8/9] OPTIONAL: cpufreq/intel_pstate: Expose LP controller parameters via debugfs. Date: Tue, 27 Mar 2018 23:38:44 -0700 Message-ID: <20180328063845.4884-9-currojerez@riseup.net> References: <20180328063845.4884-1-currojerez@riseup.net> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180328063845.4884-1-currojerez@riseup.net> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: linux-pm@vger.kernel.org, intel-gfx@lists.freedesktop.org, Srinivas Pandruvada Cc: Eero Tamminen , "Rafael J. Wysocki" List-Id: linux-pm@vger.kernel.org VGhpcyBpcyBub3QgcmVxdWlyZWQgZm9yIHRoZSBjb250cm9sbGVyIHRvIHdvcmsgYnV0IGhhcyBw cm92ZW4gdmVyeQp1c2VmdWwgZm9yIGRlYnVnZ2luZyBhbmQgdGVzdGluZyBvZiBhbHRlcm5hdGl2 ZSBoZXVyaXN0aWMgcGFyYW1ldGVycywKd2hpY2ggbWF5IG9mZmVyIGEgYmV0dGVyIHRyYWRlLW9m ZiBiZXR3ZWVuIGVuZXJneSBlZmZpY2llbmN5IGFuZApsYXRlbmN5IC0tIFRoZSBkZWZhdWx0IHBh cmFtZXRlcnMgYXJlIHJhdGhlciBhZ2dyZXNzaXZlbHkKbGF0ZW5jeS1taW5pbWl6aW5nIGluIG9y ZGVyIHRvIGtlZXAgdXAgd2l0aCB0aGUgYmlnLWNvcmUgY29udHJvbGxlcgphbmQgYXZvaWQgcmVn cmVzc2lvbnMgaW4gbGF0ZW5jeS1zZW5zaXRpdmUgYXBwbGljYXRpb25zLCBob3dldmVyIGEKbW9y ZSBlbmVyZ3ktZWZmaWNpZW50IHRyYWRlLW9mZiBtYXkgYmUgcHJlZmVyYWJsZSBpbiBwcmFjdGlj ZS4gIEUuZy46Cgp7CiAgIC5zYW1wbGVfaW50ZXJ2YWxfbXMgPSAxMCwKICAgLnNldHBvaW50X3Bt bCA9IDcwMCwKICAgLnBfYmFzZV9hdmdfaHogPSAzLAogICAuaW9fYWN0aXZlX3RocmVzaG9sZF9w bWwgPSA5NTAsCiAgIC5pb19hY3RpdmVfYXZnX2h6ID0gMTAKfQoKQSB3YXJuaW5nIGlzIHByaW50 ZWQgb3V0IHdoaWNoIHNob3VsZCB0YWludCB0aGUga2VybmVsIGZvciB0aGUKbm9uLXN0YW5kYXJk IGNhbGlicmF0aW9uIG9mIHRoZSBoZXVyaXN0aWMgdG8gYmUgb2J2aW91cyBpbiBidWcKcmVwb3J0 cy4KClNpZ25lZC1vZmYtYnk6IEZyYW5jaXNjbyBKZXJleiA8Y3Vycm9qZXJlekByaXNldXAubmV0 PgotLS0KIGRyaXZlcnMvY3B1ZnJlcS9pbnRlbF9wc3RhdGUuYyB8IDkwICsrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMSBmaWxlIGNoYW5nZWQsIDkwIGluc2VydGlv bnMoKykKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2NwdWZyZXEvaW50ZWxfcHN0YXRlLmMgYi9kcml2 ZXJzL2NwdWZyZXEvaW50ZWxfcHN0YXRlLmMKaW5kZXggZDBlMjEyMzg3NzU1Li43YjE2NjZjMzQy NzMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvY3B1ZnJlcS9pbnRlbF9wc3RhdGUuYworKysgYi9kcml2 ZXJzL2NwdWZyZXEvaW50ZWxfcHN0YXRlLmMKQEAgLTg2Miw2ICs4NjIsOTIgQEAgc3RhdGljIHZv aWQgaW50ZWxfcHN0YXRlX3VwZGF0ZV9wb2xpY2llcyh2b2lkKQogCQljcHVmcmVxX3VwZGF0ZV9w b2xpY3koY3B1KTsKIH0KIAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqIGRlYnVnZnMgYmVn aW4gKioqKioqKioqKioqKioqKioqKioqKioqLworc3RhdGljIHZvaWQgaW50ZWxfcHN0YXRlX2xw X3Jlc2V0KHN0cnVjdCBjcHVkYXRhICpjcHUpOworCitzdGF0aWMgaW50IGxwX3BhcmFtX3NldCh2 b2lkICpkYXRhLCB1NjQgdmFsKQoreworCXVuc2lnbmVkIGludCBjcHU7CisKKwkqKHUzMiAqKWRh dGEgPSB2YWw7CisJZm9yX2VhY2hfcG9zc2libGVfY3B1KGNwdSkgeworCQlpZiAoYWxsX2NwdV9k YXRhW2NwdV0pCisJCQlpbnRlbF9wc3RhdGVfbHBfcmVzZXQoYWxsX2NwdV9kYXRhW2NwdV0pOwor CX0KKworCVdBUk5fT05DRSgxLCAiVW5zdXBwb3J0ZWQgUC1zdGF0ZSBMUCBwYXJhbWV0ZXIgdXBk YXRlIHZpYSBkZWJ1Z2dpbmcgaW50ZXJmYWNlIik7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGlj IGludCBscF9wYXJhbV9nZXQodm9pZCAqZGF0YSwgdTY0ICp2YWwpCit7CisJKnZhbCA9ICoodTMy ICopZGF0YTsKKwlyZXR1cm4gMDsKK30KK0RFRklORV9TSU1QTEVfQVRUUklCVVRFKGZvcHNfbHBf cGFyYW0sIGxwX3BhcmFtX2dldCwgbHBfcGFyYW1fc2V0LCAiJWxsdVxuIik7CisKK3N0YXRpYyBz dHJ1Y3QgZGVudHJ5ICpkZWJ1Z2ZzX3BhcmVudDsKKworc3RydWN0IGxwX3BhcmFtIHsKKwljaGFy ICpuYW1lOworCXZvaWQgKnZhbHVlOworCXN0cnVjdCBkZW50cnkgKmRlbnRyeTsKK307CisKK3N0 YXRpYyBzdHJ1Y3QgbHBfcGFyYW0gbHBfZmlsZXNbXSA9IHsKKwl7ImxwX3NhbXBsZV9pbnRlcnZh bF9tcyIsICZscF9wYXJhbXMuc2FtcGxlX2ludGVydmFsX21zLCB9LAorCXsibHBfc2V0cG9pbnRf cG1sIiwgJmxwX3BhcmFtcy5zZXRwb2ludF9wbWwsIH0sCisJeyJscF9wX2Jhc2VfYXZnX2h6Iiwg JmxwX3BhcmFtcy5wX2Jhc2VfYXZnX2h6LCB9LAorCXsibHBfaW9fYWN0aXZlX3RocmVzaG9sZF9w bWwiLCAmbHBfcGFyYW1zLmlvX2FjdGl2ZV90aHJlc2hvbGRfcG1sLCB9LAorCXsibHBfaW9fYWN0 aXZlX2F2Z19oeiIsICZscF9wYXJhbXMuaW9fYWN0aXZlX2F2Z19oeiwgfSwKKwl7TlVMTCwgTlVM TCwgfQorfTsKKworc3RhdGljIHZvaWQgaW50ZWxfcHN0YXRlX3VwZGF0ZV91dGlsX2xwKHN0cnVj dCB1cGRhdGVfdXRpbF9kYXRhICpkYXRhLAorCQkJCQl1NjQgdGltZSwgdW5zaWduZWQgaW50IGZs YWdzKTsKKworc3RhdGljIHZvaWQgaW50ZWxfcHN0YXRlX2RlYnVnX2V4cG9zZV9wYXJhbXModm9p ZCkKK3sKKwlpbnQgaTsKKworCWlmIChod3BfYWN0aXZlIHx8CisJICAgIHBzdGF0ZV9mdW5jcy51 cGRhdGVfdXRpbCAhPSBpbnRlbF9wc3RhdGVfdXBkYXRlX3V0aWxfbHApCisJCXJldHVybjsKKwor CWRlYnVnZnNfcGFyZW50ID0gZGVidWdmc19jcmVhdGVfZGlyKCJwc3RhdGVfc25iIiwgTlVMTCk7 CisJaWYgKElTX0VSUl9PUl9OVUxMKGRlYnVnZnNfcGFyZW50KSkKKwkJcmV0dXJuOworCisJZm9y IChpID0gMDsgbHBfZmlsZXNbaV0ubmFtZTsgaSsrKSB7CisJCXN0cnVjdCBkZW50cnkgKmRlbnRy eTsKKworCQlkZW50cnkgPSBkZWJ1Z2ZzX2NyZWF0ZV9maWxlKGxwX2ZpbGVzW2ldLm5hbWUsIDA2 NjAsCisJCQkJCSAgICAgZGVidWdmc19wYXJlbnQsIGxwX2ZpbGVzW2ldLnZhbHVlLAorCQkJCQkg ICAgICZmb3BzX2xwX3BhcmFtKTsKKwkJaWYgKCFJU19FUlIoZGVudHJ5KSkKKwkJCWxwX2ZpbGVz W2ldLmRlbnRyeSA9IGRlbnRyeTsKKwl9Cit9CisKK3N0YXRpYyB2b2lkIGludGVsX3BzdGF0ZV9k ZWJ1Z19oaWRlX3BhcmFtcyh2b2lkKQoreworCWludCBpOworCisJaWYgKElTX0VSUl9PUl9OVUxM KGRlYnVnZnNfcGFyZW50KSkKKwkJcmV0dXJuOworCisJZm9yIChpID0gMDsgbHBfZmlsZXNbaV0u bmFtZTsgaSsrKSB7CisJCWRlYnVnZnNfcmVtb3ZlKGxwX2ZpbGVzW2ldLmRlbnRyeSk7CisJCWxw X2ZpbGVzW2ldLmRlbnRyeSA9IE5VTEw7CisJfQorCisJZGVidWdmc19yZW1vdmUoZGVidWdmc19w YXJlbnQpOworCWRlYnVnZnNfcGFyZW50ID0gTlVMTDsKK30KKworLyoqKioqKioqKioqKioqKioq KioqKioqKioqIGRlYnVnZnMgZW5kICoqKioqKioqKioqKioqKioqKioqKioqKi8KKwogLyoqKioq KioqKioqKioqKioqKioqKioqKioqIHN5c2ZzIGJlZ2luICoqKioqKioqKioqKioqKioqKioqKioq Ki8KICNkZWZpbmUgc2hvd19vbmUoZmlsZV9uYW1lLCBvYmplY3QpCQkJCQlcCiAJc3RhdGljIHNz aXplX3Qgc2hvd18jI2ZpbGVfbmFtZQkJCQkJXApAQCAtMjQyMyw2ICsyNTA5LDggQEAgc3RhdGlj IGludCBpbnRlbF9wc3RhdGVfcmVnaXN0ZXJfZHJpdmVyKHN0cnVjdCBjcHVmcmVxX2RyaXZlciAq ZHJpdmVyKQogCiAJZ2xvYmFsLm1pbl9wZXJmX3BjdCA9IG1pbl9wZXJmX3BjdF9taW4oKTsKIAor CWludGVsX3BzdGF0ZV9kZWJ1Z19leHBvc2VfcGFyYW1zKCk7CisKIAlyZXR1cm4gMDsKIH0KIApA QCAtMjQzMSw2ICsyNTE5LDggQEAgc3RhdGljIGludCBpbnRlbF9wc3RhdGVfdW5yZWdpc3Rlcl9k cml2ZXIodm9pZCkKIAlpZiAoaHdwX2FjdGl2ZSkKIAkJcmV0dXJuIC1FQlVTWTsKIAorCWludGVs X3BzdGF0ZV9kZWJ1Z19oaWRlX3BhcmFtcygpOworCiAJY3B1ZnJlcV91bnJlZ2lzdGVyX2RyaXZl cihpbnRlbF9wc3RhdGVfZHJpdmVyKTsKIAlpbnRlbF9wc3RhdGVfZHJpdmVyX2NsZWFudXAoKTsK IAotLSAKMi4xNi4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5v cmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1n ZngK