From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jackie Li Subject: [RFC] drm/i915: cpufreq based dynamic ring freqency table on Gen9 Date: Tue, 30 Jan 2018 10:44:46 -0800 Message-ID: <1517337886-6164-1-git-send-email-yaodong.li@intel.com> References: <6d9d0e76-1899-dac0-0c95-5724d8d09ad3@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by gabe.freedesktop.org (Postfix) with ESMTPS id DC3446E4FD for ; Tue, 30 Jan 2018 18:46:46 +0000 (UTC) In-Reply-To: <6d9d0e76-1899-dac0-0c95-5724d8d09ad3@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 List-Id: intel-gfx@lists.freedesktop.org QSBrbm93biBpc3N1ZSB0aGF0IHJpbmcgZnJlcXVlbmN5IHRyYW5zaXRpb24gd291bGQgbGVhZCB0 bwphIGZ1bGwgc3lzdGVtIHN0YWxsIGhhZCBpbXBhY3RlZCB0aGUgbWVkaWEgcGVyZm9ybWFuY2Ug d2hlbgp0aGUgR1QgZnJlcXVlbmN5IGlzIGxvd2VyIHRoYW4gSUEgZnJlcWVuY3kgYW5kIHRoZXJl J3MgaGVhdnkKR1Qgd29ya2xvYWQgd2hpbGUgaGF2aW5nIGxvdyBJQSB3b3JrbG9hZC4gSW4gdGhp cyBjYXNlLCB0aGUKcmluZyBmcmVxdWVuY3kgd2lsbCBiZSB0b2dnbGVkIGJldHdlZW4gR1QgYW5k IElBIGZyZXF1ZW5jeS4KVGhlIHNvbHV0aW9uIGlzIHRvIGtlZXAgdGhlIHJpbmcgZnJlcXVlbmN5 IGhpZ2hlciB0aGFuIG9yCmVxdWFsIHRvIGN1cnJlbnQgSUEgZnJlcXVlbmN5IHNvIHRoYXQgd2Ug Y2FuIGF2b2lkIHRoZSB0b2dnbGluZwpiZXR3ZWVuIGRpZmZlcmVudCBmcmVxdWVuY2llcyBpc3N1 ZS4KClRoaXMgcGF0Y2ggbW9uaXRvcnMgdGhlIGNwdWZyZXEgZnJlcXVlbmN5IG5vdGlmaWNhdGlv bnMgKGZyZXFlbmN5CnRyYW5zaXRpb24gbm90aWZpY2F0aW9uIHdoZW4gZ292ZXJub3JzIGFyZSB1 c2VkLCBvciBuZXcgZnJlcXVlbmN5CnBvbGljeSB3aGVuIGJ5cGFzc2luZyB0aGUgZ292ZXJub3Jz IHN1Y2ggYXMgdGhlIGFjdGl2ZSBtb2RlIG9mCmludGVsX3BzdGF0ZSkgYW5kIHVwZGF0ZXMgdGhl IHJpbmcgZnJlcXVlbmN5IHRhYmxlIGJ5IGNhbGN1bGF0aW5nCnRoZSByaW5nIGZyZXF1ZW5jeSBm b3IgZWFjaCBwb3NzaWJsZSBncHUgZnJlcXVlbmN5IHdpdGggYSBuZXcKZm9ybXVsYSByaW5nX2Zy ZXEgPSBtYXgoY3VycmVudCBJQSBmcmVxLCAyICogZ3B1X2ZyZXEpLiB3aXRoIHRoaXMKd2UgY2Fu IGd1YXJhbnRlZSB0aGF0IHRoZSByaW5nIGZyZXF1ZW5jeSB3b3VsZCBkZXBlbmQgb24gSUEgZnJl cQp3aGVuIHRoZSAyeCBncHUgZnJlcSBpcyBsb3dlciB0aGVuIHRoZSBhY3RpdmUgSUEgZnJlcSwg YW5kIGl0IHdvdWxkCmRlcGVuZCBvbiAyeCBncHUgZnJlcSBvbmNlIHRoZSAyeCBncHUgZnJlcSBp cyBoaWdoZXIgdGhhbiBjdXJyZW50CklBIGZyZXEuCgpQb3RlbnRpYWwgaXNzdWVzIHdpdGggdGhp cyBzb2x1dGlvbjoKMCkgY3VycmVudGx5LCB0aGlzIHBhdGNoIGlzIG5vdyBvbmx5IG1vbml0b3Jp bmcgdGhlIGZyZXF1ZW5jeSBjaGFuZ2UKICAgb2YgQ1BVIDAuIGl0IHdvdWxkIGZhaWwgaWYgYW5v dGhlciBsb2dpYyBDUFUgd2FzIHVzaW5nIGEgaGlnaGVyCiAgIGZyZXF1ZW5jeS4KMSkgdGhlIGxh dGVuY3kgb2YgdGhlIHJpbmcgZnJlcSB0YWJsZSB1cGRhdGUgd2FzIG5vdCBjb25zaWRlcmVkLgog ICBOZWVkIG1vcmUgdW5kZXJzdGFuZGluZyB0byB0aGUgY29zdCBvZiBlYWNoIHJpbmcgZnJlcSB0 YWJsZSB1cGRhdGUuCjIpIE5vdCBzdXJlIHRoZSBpbXBhY3QgZm9yIGxvdyBHVCB3b3JrbG9hZCB3 aGlsZSB0aGUgcmluZyBmcmVxdWVuY3kKICAgaXMgc3RpbGwgc2V0IHRvIGhpZ2hlciBvciBlcXVh bCB0byBJQSBmcmVxdWVuY3kuCgpDYzogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24u Y28udWs+CkNjOiBTYWdhciBBcnVuIEthbWJsZSA8c2FnYXIuYS5rYW1ibGVAaW50ZWwuY29tPgpD YzogRG1pdHJ5IFJvZ296aGtpbiA8ZG1pdHJ5LnYucm9nb3poa2luQGludGVsLmNvbT4KU2lnbmVk LW9mZi1ieTogSmFja2llIExpIDx5YW9kb25nLmxpQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2Rydi5oIHwgICA0ICsrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9wbS5jIHwgMTA2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0KIDIg ZmlsZXMgY2hhbmdlZCwgMTA3IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZHJ2LmgKaW5kZXggYTY4OTM5Ni4uMzkzMTFjZCAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2Rydi5oCkBAIC0yMDQ0LDYgKzIwNDQsMTAgQEAgc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgewog CS8qIGdlbjYrIEdUIFBNIHN0YXRlICovCiAJc3RydWN0IGludGVsX2dlbjZfcG93ZXJfbWdtdCBn dF9wbTsKIAorCS8qIGNwdWZyZXEgbm90aWZpZXJzKi8KKwlzdHJ1Y3Qgbm90aWZpZXJfYmxvY2sg Y3B1ZnJlcV90cmFuc2l0aW9uOworCXN0cnVjdCBub3RpZmllcl9ibG9jayBjcHVmcmVxX3BvbGlj eTsKKwogCS8qIGlsay1vbmx5IGlwcy9ycHMgc3RhdGUuIEV2ZXJ5dGhpbmcgaW4gaGVyZSBpcyBw cm90ZWN0ZWQgYnkgdGhlIGdsb2JhbAogCSAqIG1jaGRldl9sb2NrIGluIGludGVsX3BtLmMgKi8K IAlzdHJ1Y3QgaW50ZWxfaWxrX3Bvd2VyX21nbXQgaXBzOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfcG0uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMK aW5kZXggMWRiNzlhOC4uNmE3ZTQzOSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfcG0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jCkBAIC02ODQ5 LDcgKzY4NDksNyBAQCBzdGF0aWMgdm9pZCBnZW42X3VwZGF0ZV9yaW5nX2ZyZXEoc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCS8qIGNvbnZlcnQgRERSIGZyZXF1ZW5jeSBmcm9t IHVuaXRzIG9mIDI2Ni42TUh6IHRvIGJhbmR3aWR0aCAqLwogCW1pbl9yaW5nX2ZyZXEgPSBtdWx0 X2ZyYWMobWluX3JpbmdfZnJlcSwgOCwgMyk7CiAKLQlpZiAoSVNfR0VOOV9CQyhkZXZfcHJpdikg fHwgSVNfQ0FOTk9OTEFLRShkZXZfcHJpdikpIHsKKwlpZiAoSVNfQ0FOTk9OTEFLRShkZXZfcHJp dikpIHsKIAkJLyogQ29udmVydCBHVCBmcmVxdWVuY3kgdG8gNTAgSFogdW5pdHMgKi8KIAkJbWlu X2dwdV9mcmVxID0gcnBzLT5taW5fZnJlcSAvIEdFTjlfRlJFUV9TQ0FMRVI7CiAJCW1heF9ncHVf ZnJlcSA9IHJwcy0+bWF4X2ZyZXEgLyBHRU45X0ZSRVFfU0NBTEVSOwpAQCAtNjg2Nyw3ICs2ODY3 LDcgQEAgc3RhdGljIHZvaWQgZ2VuNl91cGRhdGVfcmluZ19mcmVxKHN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdikKIAkJaW50IGRpZmYgPSBtYXhfZ3B1X2ZyZXEgLSBncHVfZnJlcTsK IAkJdW5zaWduZWQgaW50IGlhX2ZyZXEgPSAwLCByaW5nX2ZyZXEgPSAwOwogCi0JCWlmIChJU19H RU45X0JDKGRldl9wcml2KSB8fCBJU19DQU5OT05MQUtFKGRldl9wcml2KSkgeworCQlpZiAoSVNf Q0FOTk9OTEFLRShkZXZfcHJpdikpIHsKIAkJCS8qCiAJCQkgKiByaW5nX2ZyZXEgPSAyICogR1Qu IHJpbmdfZnJlcSBpcyBpbiAxMDBNSHogdW5pdHMKIAkJCSAqIE5vIGZsb29yIHJlcXVpcmVkIGZv ciByaW5nIGZyZXF1ZW5jeSBvbiBTS0wuCkBAIC04MDI0LDYgKzgwMjQsMTAzIEBAIHZvaWQgaW50 ZWxfZGlzYWJsZV9ndF9wb3dlcnNhdmUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 KQogCW11dGV4X3VubG9jaygmZGV2X3ByaXYtPnBjdV9sb2NrKTsKIH0KIAorc3RhdGljIHZvaWQg Z2VuOV91cGRhdGVfcmluZ19mcmVxKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwK KwkJCQkgIHVuc2lnbmVkIGludCBjcHVfZnJlcV9taHopCit7CisJc3RydWN0IGludGVsX3JwcyAq cnBzID0gJmRldl9wcml2LT5ndF9wbS5ycHM7CisJdW5zaWduZWQgaW50IG1heF9ncHVfZnJlcSwg bWluX2dwdV9mcmVxOworCXVuc2lnbmVkIGludCBncHVfZnJlcSwgcmluZ19mcmVxOworCXVuc2ln bmVkIGludCBjcHVfZnJlcV81MG1oeiA9IGNwdV9mcmVxX21oeiAvIDUwOworCisJR0VNX0JVR19P TighSVNfR0VOOShkZXZfcHJpdikpOworCisJbXV0ZXhfbG9jaygmZGV2X3ByaXYtPnBjdV9sb2Nr KTsKKworCWlmIChJU19HRU45X0JDKGRldl9wcml2KSkgeworCQkvKiBDb252ZXJ0IEdUIGZyZXF1 ZW5jeSB0byA1ME1IeiB1bml0cyAqLworCQltaW5fZ3B1X2ZyZXEgPSBycHMtPm1pbl9mcmVxIC8g R0VOOV9GUkVRX1NDQUxFUjsKKwkJbWF4X2dwdV9mcmVxID0gcnBzLT5tYXhfZnJlcSAvIEdFTjlf RlJFUV9TQ0FMRVI7CisJfSBlbHNlIHsKKwkJbWluX2dwdV9mcmVxID0gcnBzLT5taW5fZnJlcTsK KwkJbWF4X2dwdV9mcmVxID0gcnBzLT5tYXhfZnJlcTsKKwl9CisKKwlEUk1fSU5GTygiJXM6IGdw dSBmcmVxIGluIDUwTUh6IHVuaXQgKCVkIC0gJWQpLCAoJWQgLSAlZCksIgorCQkgImNwdSBmcmVx IGluIDUwTUh6IHVuaXQgJWRcbiIsCisJCSBfX2Z1bmNfXywKKwkJIG1pbl9ncHVfZnJlcSwgbWF4 X2dwdV9mcmVxLAorCQkgbWluX2dwdV9mcmVxICogNTAsCisJCSBtYXhfZ3B1X2ZyZXEgKiA1MCwK KwkJIGNwdV9mcmVxXzUwbWh6KTsKKworCWZvciAoZ3B1X2ZyZXEgPSBtYXhfZ3B1X2ZyZXE7IGdw dV9mcmVxID49IG1pbl9ncHVfZnJlcTsgZ3B1X2ZyZXEtLSkgeworCQkvKiBSaW5nIGZyZXEgaXMg MTAwTUh6IHVuaXQgKi8KKwkJcmluZ19mcmVxID0gbWF4KGNwdV9mcmVxXzUwbWh6IC8gMiwgZ3B1 X2ZyZXEpOworCisJCXNhbmR5YnJpZGdlX3Bjb2RlX3dyaXRlKAorCQkJZGV2X3ByaXYsCisJCQlH RU42X1BDT0RFX1dSSVRFX01JTl9GUkVRX1RBQkxFLAorCQkJcmluZ19mcmVxIDw8IEdFTjZfUENP REVfRlJFUV9SSU5HX1JBVElPX1NISUZUIHwKKwkJCWdwdV9mcmVxKTsKKwl9CisKKwltdXRleF91 bmxvY2soJmRldl9wcml2LT5wY3VfbG9jayk7Cit9CisKK3N0YXRpYyBpbnQgY3B1ZnJlcV90cmFu c2l0aW9uX2NiKHN0cnVjdCBub3RpZmllcl9ibG9jayAqbmIsIHVuc2lnbmVkIGxvbmcgdmFsLAor CQkJCSB2b2lkICpkYXRhKQoreworCXN0cnVjdCBjcHVmcmVxX2ZyZXFzICpmcmVxID0gZGF0YTsK KwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSA9IGNvbnRhaW5lcl9vZihuYiwKKwkJCQkJ CSAgICAgc3RydWN0IGRybV9pOTE1X3ByaXZhdGUsCisJCQkJCQkgICAgIGNwdWZyZXFfdHJhbnNp dGlvbik7CisKKwlpZiAodmFsICE9IENQVUZSRVFfUE9TVENIQU5HRSkKKwkJcmV0dXJuIDA7CisK KwlpZiAoZnJlcS0+Y3B1ICE9IDApCisJCXJldHVybiAwOworCisJaWYgKGZyZXEtPm5ldyA9PSBm cmVxLT5vbGQpCisJCXJldHVybiAwOworCisJZ2VuOV91cGRhdGVfcmluZ19mcmVxKGk5MTUsIGZy ZXEtPm5ldyAvIDEwMDApOworCisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQgY3B1ZnJlcV9w b2xpY3lfY2Ioc3RydWN0IG5vdGlmaWVyX2Jsb2NrICpuYiwgdW5zaWduZWQgbG9uZyB2YWwsCisJ CQkgICAgIHZvaWQgKmRhdGEpCit7CisJc3RydWN0IGNwdWZyZXFfcG9saWN5ICpwb2xpY3kgPSBk YXRhOworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1ID0gY29udGFpbmVyX29mKG5iLAor CQkJCQkJICAgICBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSwKKwkJCQkJCSAgICAgY3B1ZnJlcV9w b2xpY3kpOworCisJaWYgKHZhbCAhPSBDUFVGUkVRX05PVElGWSkKKwkJcmV0dXJuIDA7CisKKwlp ZiAocG9saWN5LT5jcHUgIT0gMCkKKwkJcmV0dXJuIDA7CisKKwlnZW45X3VwZGF0ZV9yaW5nX2Zy ZXEoaTkxNSwgcG9saWN5LT5tYXggLyAxMDAwKTsKKworCXJldHVybiAwOworfQorCisKK3N0YXRp YyBpbmxpbmUKK3ZvaWQgaW50ZWxfcmVnaXN0ZXJfY3B1ZnJlcV9ub3RpZmllcnMoc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmk5MTUpCit7CisJaTkxNS0+Y3B1ZnJlcV90cmFuc2l0aW9uLm5vdGlm aWVyX2NhbGwgPSBjcHVmcmVxX3RyYW5zaXRpb25fY2I7CisJaTkxNS0+Y3B1ZnJlcV9wb2xpY3ku bm90aWZpZXJfY2FsbCA9IGNwdWZyZXFfcG9saWN5X2NiOworCisJY3B1ZnJlcV9yZWdpc3Rlcl9u b3RpZmllcigmaTkxNS0+Y3B1ZnJlcV90cmFuc2l0aW9uLAorCQkJCSAgQ1BVRlJFUV9UUkFOU0lU SU9OX05PVElGSUVSKTsKKwljcHVmcmVxX3JlZ2lzdGVyX25vdGlmaWVyKCZpOTE1LT5jcHVmcmVx X3BvbGljeSwKKwkJCQkgIENQVUZSRVFfUE9MSUNZX05PVElGSUVSKTsKK30KKwogc3RhdGljIGlu bGluZSB2b2lkIGludGVsX2VuYWJsZV9sbGNfcHN0YXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICppOTE1KQogewogCWxvY2tkZXBfYXNzZXJ0X2hlbGQoJmk5MTUtPnBjdV9sb2NrKTsKQEAgLTgw MzEsNyArODEyOCwxMCBAQCBzdGF0aWMgaW5saW5lIHZvaWQgaW50ZWxfZW5hYmxlX2xsY19wc3Rh dGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpCiAJaWYgKGk5MTUtPmd0X3BtLmxsY19w c3RhdGUuZW5hYmxlZCkKIAkJcmV0dXJuOwogCi0JZ2VuNl91cGRhdGVfcmluZ19mcmVxKGk5MTUp OworCWlmIChJU19HRU45KGk5MTUpKQorCQlpbnRlbF9yZWdpc3Rlcl9jcHVmcmVxX25vdGlmaWVy cyhpOTE1KTsKKwllbHNlCisJCWdlbjZfdXBkYXRlX3JpbmdfZnJlcShpOTE1KTsKIAogCWk5MTUt Pmd0X3BtLmxsY19wc3RhdGUuZW5hYmxlZCA9IHRydWU7CiB9Ci0tIAoyLjcuNAoKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcg bGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==