From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paulo Zanoni Subject: [PATCH 28/24] drm/i915/icl: implement DVFS for ICL Date: Thu, 24 May 2018 16:42:39 -0700 Message-ID: <20180524234241.3665-4-paulo.r.zanoni@intel.com> References: <20180522002558.29262-1-paulo.r.zanoni@intel.com> <20180524234241.3665-1-paulo.r.zanoni@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9EB396E6FD for ; Thu, 24 May 2018 23:42:46 +0000 (UTC) In-Reply-To: <20180524234241.3665-1-paulo.r.zanoni@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org Cc: Paulo Zanoni List-Id: intel-gfx@lists.freedesktop.org SUNMIERWRlMgaXMgYWxtb3N0IHRoZSBzYW1lIGFzIENOTCwgZXhjZXB0IGZvciB0aGUgQ0RDTEsv RERJQ0xLCnRhYmxlLiBJbXBsZW1lbnQgaXQganVzdCBsaWtlIENOTCBkb2VzLgoKUmVmZXJlbmNl czogY29tbWl0IDQ4NDY5ZWNlZDI4MiAoImRybS9pOTE1OiBVc2UgY2RjbGtfc3RhdGUtPnZvbHRh Z2UKIG9uIENOTCIpClJlZmVyZW5jZXM6IGNvbW1pdCA1M2U5YmY1ZTgxNTkgKCJkcm0vaTkxNTog QWRqdXN0IHN5c3RlbSBhZ2VudAogdm9sdGFnZSBvbiBDTkwgaWYgcmVxdWlyZWQgYnkgRERJIHBv cnRzIikKQ2M6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+ ClNpZ25lZC1vZmYtYnk6IFBhdWxvIFphbm9uaSA8cGF1bG8uci56YW5vbmlAaW50ZWwuY29tPgot LS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2NkY2xrLmMgfCA0NiArKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKy0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRp LmMgICB8ICAyICsrCiAyIGZpbGVzIGNoYW5nZWQsIDQ1IGluc2VydGlvbnMoKyksIDMgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY2RjbGsuYyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2NkY2xrLmMKaW5kZXggNzA0ZGRiNGQzY2E3Li42 NDJmMWU1NDJhNjIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2NkY2xr LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY2RjbGsuYwpAQCAtMTg2MSwxMSAr MTg2MSwzNSBAQCBzdGF0aWMgdm9pZCBpY2xfc2V0X2NkY2xrKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiwKIAkJCSAgICAgIHNrbF9jZGNsa19kZWNpbWFsKGNkY2xrKSk7CiAKIAlt dXRleF9sb2NrKCZkZXZfcHJpdi0+cGN1X2xvY2spOwotCS8qIFRPRE86IGFkZCBwcm9wZXIgRFZG UyBzdXBwb3J0LiAqLwotCXNhbmR5YnJpZGdlX3Bjb2RlX3dyaXRlKGRldl9wcml2LCBTS0xfUENP REVfQ0RDTEtfQ09OVFJPTCwgMik7CisJc2FuZHlicmlkZ2VfcGNvZGVfd3JpdGUoZGV2X3ByaXYs IFNLTF9QQ09ERV9DRENMS19DT05UUk9MLAorCQkJCWNkY2xrX3N0YXRlLT52b2x0YWdlX2xldmVs KTsKIAltdXRleF91bmxvY2soJmRldl9wcml2LT5wY3VfbG9jayk7CiAKIAlpbnRlbF91cGRhdGVf Y2RjbGsoZGV2X3ByaXYpOworCisJLyoKKwkgKiBDYW4ndCByZWFkIG91dCB0aGUgdm9sdGFnZSBs ZXZlbCA6KAorCSAqIExldCdzIGp1c3QgYXNzdW1lIGV2ZXJ5dGhpbmcgaXMgYXMgZXhwZWN0ZWQu CisJICovCisJZGV2X3ByaXYtPmNkY2xrLmh3LnZvbHRhZ2VfbGV2ZWwgPSBjZGNsa19zdGF0ZS0+ dm9sdGFnZV9sZXZlbDsKK30KKworc3RhdGljIHU4IGljbF9jYWxjX3ZvbHRhZ2VfbGV2ZWwoaW50 IGNkY2xrKQoreworCXN3aXRjaCAoY2RjbGspIHsKKwljYXNlIDUwMDAwOgorCWNhc2UgMzA3MjAw OgorCWNhc2UgMzEyMDAwOgorCQlyZXR1cm4gMDsKKwljYXNlIDU1NjgwMDoKKwljYXNlIDU1MjAw MDoKKwkJcmV0dXJuIDE7CisJZGVmYXVsdDoKKwkJTUlTU0lOR19DQVNFKGNkY2xrKTsKKwljYXNl IDY1MjgwMDoKKwljYXNlIDY0ODAwMDoKKwkJcmV0dXJuIDI7CisJfQogfQogCiBzdGF0aWMgdm9p ZCBpY2xfZ2V0X2NkY2xrKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKQEAgLTE4 OTksNyArMTkyMyw3IEBAIHN0YXRpYyB2b2lkIGljbF9nZXRfY2RjbGsoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2LAogCQkgKi8KIAkJY2RjbGtfc3RhdGUtPnZjbyA9IDA7CiAJCWNk Y2xrX3N0YXRlLT5jZGNsayA9IGNkY2xrX3N0YXRlLT5ieXBhc3M7Ci0JCXJldHVybjsKKwkJZ290 byBvdXQ7CiAJfQogCiAJY2RjbGtfc3RhdGUtPnZjbyA9ICh2YWwgJiBCWFRfREVfUExMX1JBVElP X01BU0spICogY2RjbGtfc3RhdGUtPnJlZjsKQEAgLTE5MDgsNiArMTkzMiwxNCBAQCBzdGF0aWMg dm9pZCBpY2xfZ2V0X2NkY2xrKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAlX QVJOX09OKCh2YWwgJiBCWFRfQ0RDTEtfQ0QyWF9ESVZfU0VMX01BU0spICE9IDApOwogCiAJY2Rj bGtfc3RhdGUtPmNkY2xrID0gY2RjbGtfc3RhdGUtPnZjbyAvIDI7CisKK291dDoKKwkvKgorCSAq IENhbid0IHJlYWQgdGhpcyBvdXQgOiggTGV0J3MgYXNzdW1lIGl0J3MKKwkgKiBhdCBsZWFzdCB3 aGF0IHRoZSBDRENMSyBmcmVxdWVuY3kgcmVxdWlyZXMuCisJICovCisJY2RjbGtfc3RhdGUtPnZv bHRhZ2VfbGV2ZWwgPQorCQlpY2xfY2FsY192b2x0YWdlX2xldmVsKGNkY2xrX3N0YXRlLT5jZGNs ayk7CiB9CiAKIC8qKgpAQCAtMTk1MCw2ICsxOTgyLDggQEAgdm9pZCBpY2xfaW5pdF9jZGNsayhz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAJc2FuaXRpemVkX3N0YXRlLmNkY2xr ID0gaWNsX2NhbGNfY2RjbGsoMCwgc2FuaXRpemVkX3N0YXRlLnJlZik7CiAJc2FuaXRpemVkX3N0 YXRlLnZjbyA9IGljbF9jYWxjX2NkY2xrX3BsbF92Y28oZGV2X3ByaXYsCiAJCQkJCQkgICAgIHNh bml0aXplZF9zdGF0ZS5jZGNsayk7CisJc2FuaXRpemVkX3N0YXRlLnZvbHRhZ2VfbGV2ZWwgPQor CQkJCWljbF9jYWxjX3ZvbHRhZ2VfbGV2ZWwoc2FuaXRpemVkX3N0YXRlLmNkY2xrKTsKIAogCWlj bF9zZXRfY2RjbGsoZGV2X3ByaXYsICZzYW5pdGl6ZWRfc3RhdGUpOwogfQpAQCAtMTk2Nyw2ICsy MDAxLDcgQEAgdm9pZCBpY2xfdW5pbml0X2NkY2xrKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdikKIAogCWNkY2xrX3N0YXRlLmNkY2xrID0gY2RjbGtfc3RhdGUuYnlwYXNzOwogCWNk Y2xrX3N0YXRlLnZjbyA9IDA7CisJY2RjbGtfc3RhdGUudm9sdGFnZV9sZXZlbCA9IGljbF9jYWxj X3ZvbHRhZ2VfbGV2ZWwoY2RjbGtfc3RhdGUuY2RjbGspOwogCiAJaWNsX3NldF9jZGNsayhkZXZf cHJpdiwgJmNkY2xrX3N0YXRlKTsKIH0KQEAgLTI0NzAsNiArMjUwNSw5IEBAIHN0YXRpYyBpbnQg aWNsX21vZGVzZXRfY2FsY19jZGNsayhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCiAK IAlpbnRlbF9zdGF0ZS0+Y2RjbGsubG9naWNhbC52Y28gPSB2Y287CiAJaW50ZWxfc3RhdGUtPmNk Y2xrLmxvZ2ljYWwuY2RjbGsgPSBjZGNsazsKKwlpbnRlbF9zdGF0ZS0+Y2RjbGsubG9naWNhbC52 b2x0YWdlX2xldmVsID0KKwkJbWF4KGljbF9jYWxjX3ZvbHRhZ2VfbGV2ZWwoY2RjbGspLAorCQkg ICAgY25sX2NvbXB1dGVfbWluX3ZvbHRhZ2VfbGV2ZWwoaW50ZWxfc3RhdGUpKTsKIAogCWlmICgh aW50ZWxfc3RhdGUtPmFjdGl2ZV9jcnRjcykgewogCQljZGNsayA9IGljbF9jYWxjX2NkY2xrKDAs IHJlZik7CkBAIC0yNDc3LDYgKzI1MTUsOCBAQCBzdGF0aWMgaW50IGljbF9tb2Rlc2V0X2NhbGNf Y2RjbGsoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKQogCiAJCWludGVsX3N0YXRlLT5j ZGNsay5hY3R1YWwudmNvID0gdmNvOwogCQlpbnRlbF9zdGF0ZS0+Y2RjbGsuYWN0dWFsLmNkY2xr ID0gY2RjbGs7CisJCWludGVsX3N0YXRlLT5jZGNsay5hY3R1YWwudm9sdGFnZV9sZXZlbCA9CisJ CQlpY2xfY2FsY192b2x0YWdlX2xldmVsKGNkY2xrKTsKIAl9IGVsc2UgewogCQlpbnRlbF9zdGF0 ZS0+Y2RjbGsuYWN0dWFsID0gaW50ZWxfc3RhdGUtPmNkY2xrLmxvZ2ljYWw7CiAJfQpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kZGkuYwppbmRleCA2MTBjMmQ3ZDQ5OWMuLjZjZGNiZjliZjA5OCAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZGRpLmMKQEAgLTMwNzMsNiArMzA3Myw4IEBAIHZvaWQgaW50ZWxfZGRp X2NvbXB1dGVfbWluX3ZvbHRhZ2VfbGV2ZWwoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2LAogewogCWlmIChJU19DQU5OT05MQUtFKGRldl9wcml2KSAmJiBjcnRjX3N0YXRlLT5wb3J0 X2Nsb2NrID4gNTk0MDAwKQogCQljcnRjX3N0YXRlLT5taW5fdm9sdGFnZV9sZXZlbCA9IDI7CisJ ZWxzZSBpZiAoSVNfSUNFTEFLRShkZXZfcHJpdikgJiYgY3J0Y19zdGF0ZS0+cG9ydF9jbG9jayA+ IDU5NDAwMCkKKwkJY3J0Y19zdGF0ZS0+bWluX3ZvbHRhZ2VfbGV2ZWwgPSAxOwogfQogCiB2b2lk IGludGVsX2RkaV9nZXRfY29uZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAotLSAK Mi4xNC4zCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJ bnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK