From mboxrd@z Thu Jan 1 00:00:00 1970 From: Antti Koskipaa Subject: [PATCH] drm/i915: Per-DDI I_boost override Date: Thu, 18 Jun 2015 14:23:37 +0300 Message-ID: <1434626617-26549-1-git-send-email-antti.koskipaa@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id 0006A6E62F for ; Thu, 18 Jun 2015 04:23:38 -0700 (PDT) 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 QW4gT0VNIG1heSByZXF1ZXN0IGluY3JlYXNlZCBJX2Jvb3N0IGJleW9uZCB0aGUgcmVjb21tZW5k ZWQgdmFsdWVzCmJ5IHNwZWNpZnlpbmcgYW4gSV9ib29zdCB2YWx1ZSB0byBiZSBhcHBsaWVkIHRv IGFsbCBzd2luZyBlbnRyaWVzIGZvcgphIHBvcnQuIFRoZXNlIG92ZXJyaWRlIHZhbHVlcyBhcmUg c3BlY2lmaWVkIGluIFZCVC4KCklzc3VlOiBWSVotNTY3NgpTaWduZWQtb2ZmLWJ5OiBBbnR0aSBL b3NraXBhYSA8YW50dGkua29za2lwYWFAbGludXguaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZHJ2LmggICB8ICAzICsrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfYmlvcy5jIHwgMjEgKysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9iaW9zLmggfCAgOSArKysrKysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2RkaS5jICB8IDM5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLQogNCBm aWxlcyBjaGFuZ2VkLCA2NCBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2Rydi5oCmluZGV4IDA5YTU3YTUuLmUxN2ZkNTYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9k cnYuaApAQCAtMTQwMiw2ICsxNDAyLDkgQEAgc3RydWN0IGRkaV92YnRfcG9ydF9pbmZvIHsKIAl1 aW50OF90IHN1cHBvcnRzX2R2aToxOwogCXVpbnQ4X3Qgc3VwcG9ydHNfaGRtaToxOwogCXVpbnQ4 X3Qgc3VwcG9ydHNfZHA6MTsKKworCXVpbnQ4X3QgZHBfYm9vc3RfbGV2ZWw7CisJdWludDhfdCBo ZG1pX2Jvb3N0X2xldmVsOwogfTsKIAogZW51bSBwc3JfbGluZXNfdG9fd2FpdCB7CmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9iaW9zLmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9iaW9zLmMKaW5kZXggMTk4ZmMzYy4uMDZiNWRjMyAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYmlvcy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2Jpb3MuYwpAQCAtOTQ2LDYgKzk0NiwxNyBAQCBlcnI6CiAJbWVtc2V0KGRldl9wcml2 LT52YnQuZHNpLnNlcXVlbmNlLCAwLCBzaXplb2YoZGV2X3ByaXYtPnZidC5kc2kuc2VxdWVuY2Up KTsKIH0KIAorc3RhdGljIHU4IHRyYW5zbGF0ZV9pYm9vc3QodTggdmFsKQoreworCXN0YXRpYyBj b25zdCB1OCBtYXBwaW5nW10gPSB7IDEsIDMsIDcgfTsgLyogU2VlIFZCVCBzcGVjICovCisKKwlp ZiAodmFsID49IEFSUkFZX1NJWkUobWFwcGluZykpIHsKKwkJRFJNX0RFQlVHX0tNUygiVW5zdXBw b3J0ZWQgSV9ib29zdCB2YWx1ZSBmb3VuZCBpbiBWQlQgKCVkKSwgZGlzcGxheSBtYXkgbm90IHdv cmsgcHJvcGVybHlcbiIsIHZhbCk7CisJCXJldHVybiAwOworCX0KKwlyZXR1cm4gbWFwcGluZ1t2 YWxdOworfQorCiBzdGF0aWMgdm9pZCBwYXJzZV9kZGlfcG9ydChzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYsIGVudW0gcG9ydCBwb3J0LAogCQkJICAgY29uc3Qgc3RydWN0IGJkYl9o ZWFkZXIgKmJkYikKIHsKQEAgLTEwNDYsNiArMTA1NywxNiBAQCBzdGF0aWMgdm9pZCBwYXJzZV9k ZGlfcG9ydChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGVudW0gcG9ydCBwb3J0 LAogCQkJICAgICAgaGRtaV9sZXZlbF9zaGlmdCk7CiAJCWluZm8tPmhkbWlfbGV2ZWxfc2hpZnQg PSBoZG1pX2xldmVsX3NoaWZ0OwogCX0KKworCS8qIFBhcnNlIHRoZSBJX2Jvb3N0IGNvbmZpZyBm b3IgU0tMIGFuZCBhYm92ZSAqLworCWlmIChiZGItPnZlcnNpb24gPj0gMTk2ICYmIChjaGlsZC0+ Y29tbW9uLmZsYWdzXzEgJiBJQk9PU1RfRU5BQkxFKSkgeworCQlpbmZvLT5kcF9ib29zdF9sZXZl bCA9IHRyYW5zbGF0ZV9pYm9vc3QoY2hpbGQtPmNvbW1vbi5pYm9vc3RfbGV2ZWwgJiAweEYpOwor CQlEUk1fREVCVUdfS01TKCJWQlQgKGUpRFAgYm9vc3QgbGV2ZWwgZm9yIHBvcnQgJWM6ICVkXG4i LAorCQkJICAgICAgcG9ydF9uYW1lKHBvcnQpLCBpbmZvLT5kcF9ib29zdF9sZXZlbCk7CisJCWlu Zm8tPmhkbWlfYm9vc3RfbGV2ZWwgPSB0cmFuc2xhdGVfaWJvb3N0KGNoaWxkLT5jb21tb24uaWJv b3N0X2xldmVsID4+IDQpOworCQlEUk1fREVCVUdfS01TKCJWQlQgSERNSSBib29zdCBsZXZlbCBm b3IgcG9ydCAlYzogJWRcbiIsCisJCQkgICAgICBwb3J0X25hbWUocG9ydCksIGluZm8tPmhkbWlf Ym9vc3RfbGV2ZWwpOworCX0KIH0KIAogc3RhdGljIHZvaWQgcGFyc2VfZGRpX3BvcnRzKHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Jpb3MuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Jpb3MuaApp bmRleCBhZjBiNDc2Li44ZWRkNzVjIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9iaW9zLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYmlvcy5oCkBAIC0y MzEsNiArMjMxLDEwIEBAIHN0cnVjdCBvbGRfY2hpbGRfZGV2X2NvbmZpZyB7CiAvKiBUaGlzIG9u ZSBjb250YWlucyBmaWVsZCBvZmZzZXRzIHRoYXQgYXJlIGtub3duIHRvIGJlIGNvbW1vbiBmb3Ig YWxsIEJEQgogICogdmVyc2lvbnMuIE5vdGljZSB0aGF0IHRoZSBtZWFuaW5nIG9mIHRoZSBjb250 ZW50cyBjb250ZW50cyBtYXkgc3RpbGwgY2hhbmdlLAogICogYnV0IGF0IGxlYXN0IHRoZSBvZmZz ZXRzIGFyZSBjb25zaXN0ZW50LiAqLworCisvKiBEZWZpbml0aW9ucyBmb3IgZmxhZ3NfMSAqLwor I2RlZmluZSBJQk9PU1RfRU5BQkxFICgxPDwzKQorCiBzdHJ1Y3QgY29tbW9uX2NoaWxkX2Rldl9j b25maWcgewogCXUxNiBoYW5kbGU7CiAJdTE2IGRldmljZV90eXBlOwpAQCAtMjM5LDggKzI0Mywx MyBAQCBzdHJ1Y3QgY29tbW9uX2NoaWxkX2Rldl9jb25maWcgewogCXU4IG5vdF9jb21tb24yWzJd OwogCXU4IGRkY19waW47CiAJdTE2IGVkaWRfcHRyOworCXU4IG9ic29sZXRlOworCXU4IGZsYWdz XzE7CisJdTggbm90X2NvbW1vbjNbMTNdOworCXU4IGlib29zdF9sZXZlbDsKIH0gX19wYWNrZWQ7 CiAKKwogLyogVGhpcyBmaWVsZCBjaGFuZ2VzIGRlcGVuZGluZyBvbiB0aGUgQkRCIHZlcnNpb24s IHNvIHRoZSBtb3N0IHJlbGlhYmxlIHdheSB0bwogICogcmVhZCBpdCBpcyBieSBjaGVja2luZyB0 aGUgQkRCIHZlcnNpb24gYW5kIHJlYWRpbmcgdGhlIHJhdyBwb2ludGVyLiAqLwogdW5pb24gY2hp bGRfZGV2aWNlX2NvbmZpZyB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kZGkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCmluZGV4IDNhYmNiNDMu LjhlNWU5NGMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCkBAIC00MzQsNiArNDM0LDcgQEAg c3RhdGljIHZvaWQgaW50ZWxfcHJlcGFyZV9kZGlfYnVmZmVycyhzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2LCBlbnVtIHBvcnQgcG9ydCwKIHsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYgPSBkZXYtPmRldl9wcml2YXRlOwogCXUzMiByZWc7CisJdTMyIGlib29zdF9iaXQgPSAwOwog CWludCBpLCBuX2hkbWlfZW50cmllcywgbl9kcF9lbnRyaWVzLCBuX2VkcF9lbnRyaWVzLCBoZG1p X2RlZmF1bHRfZW50cnksCiAJICAgIHNpemU7CiAJaW50IGhkbWlfbGV2ZWwgPSBkZXZfcHJpdi0+ dmJ0LmRkaV9wb3J0X2luZm9bcG9ydF0uaGRtaV9sZXZlbF9zaGlmdDsKQEAgLTQ1OSw2ICs0NjAs MTAgQEAgc3RhdGljIHZvaWQgaW50ZWxfcHJlcGFyZV9kZGlfYnVmZmVycyhzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2LCBlbnVtIHBvcnQgcG9ydCwKIAkJZGRpX3RyYW5zbGF0aW9uc19oZG1pID0KIAkJ CQlza2xfZ2V0X2J1Zl90cmFuc19oZG1pKGRldiwgJm5faGRtaV9lbnRyaWVzKTsKIAkJaGRtaV9k ZWZhdWx0X2VudHJ5ID0gODsKKwkJLyogSWYgd2UncmUgYm9vc3RpbmcgdGhlIGN1cnJlbnQsIHNl dCBiaXQgMzEgb2YgdHJhbnMxICovCisJCWlmIChkZXZfcHJpdi0+dmJ0LmRkaV9wb3J0X2luZm9b cG9ydF0uaGRtaV9ib29zdF9sZXZlbCB8fAorCQkgICAgZGV2X3ByaXYtPnZidC5kZGlfcG9ydF9p bmZvW3BvcnRdLmRwX2Jvb3N0X2xldmVsKQorCQkJaWJvb3N0X2JpdCA9IDE8PDMxOwogCX0gZWxz ZSBpZiAoSVNfQlJPQURXRUxMKGRldikpIHsKIAkJZGRpX3RyYW5zbGF0aW9uc19mZGkgPSBiZHdf ZGRpX3RyYW5zbGF0aW9uc19mZGk7CiAJCWRkaV90cmFuc2xhdGlvbnNfZHAgPSBiZHdfZGRpX3Ry YW5zbGF0aW9uc19kcDsKQEAgLTUxOSw3ICs1MjQsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9wcmVw YXJlX2RkaV9idWZmZXJzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGVudW0gcG9ydCBwb3J0LAog CX0KIAogCWZvciAoaSA9IDAsIHJlZyA9IERESV9CVUZfVFJBTlMocG9ydCk7IGkgPCBzaXplOyBp KyspIHsKLQkJSTkxNV9XUklURShyZWcsIGRkaV90cmFuc2xhdGlvbnNbaV0udHJhbnMxKTsKKwkJ STkxNV9XUklURShyZWcsIGRkaV90cmFuc2xhdGlvbnNbaV0udHJhbnMxIHwgaWJvb3N0X2JpdCk7 CiAJCXJlZyArPSA0OwogCQlJOTE1X1dSSVRFKHJlZywgZGRpX3RyYW5zbGF0aW9uc1tpXS50cmFu czIpOwogCQlyZWcgKz0gNDsKQEAgLTUzNCw3ICs1MzksNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9w cmVwYXJlX2RkaV9idWZmZXJzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGVudW0gcG9ydCBwb3J0 LAogCQloZG1pX2xldmVsID0gaGRtaV9kZWZhdWx0X2VudHJ5OwogCiAJLyogRW50cnkgOSBpcyBm b3IgSERNSTogKi8KLQlJOTE1X1dSSVRFKHJlZywgZGRpX3RyYW5zbGF0aW9uc19oZG1pW2hkbWlf bGV2ZWxdLnRyYW5zMSk7CisJSTkxNV9XUklURShyZWcsIGRkaV90cmFuc2xhdGlvbnNfaGRtaVto ZG1pX2xldmVsXS50cmFuczEgfCBpYm9vc3RfYml0KTsKIAlyZWcgKz0gNDsKIAlJOTE1X1dSSVRF KHJlZywgZGRpX3RyYW5zbGF0aW9uc19oZG1pW2hkbWlfbGV2ZWxdLnRyYW5zMik7CiAJcmVnICs9 IDQ7CkBAIC0xOTc4LDE4ICsxOTgzLDM2IEBAIHZvaWQgc2tsX2RkaV9zZXRfaWJvb3N0KHN0cnVj dCBkcm1fZGV2aWNlICpkZXYsIHUzMiBsZXZlbCwKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwogCWNvbnN0IHN0cnVjdCBkZGlfYnVmX3RyYW5z ICpkZGlfdHJhbnNsYXRpb25zOwogCXVpbnQ4X3QgaWJvb3N0OworCXVpbnQ4X3QgZHBfaWJvb3N0 LCBoZG1pX2lib29zdDsKIAlpbnQgbl9lbnRyaWVzOwogCXUzMiByZWc7CisJdTMyIGlib29zdF9i aXQgPSAwOworCisJLyogVkJUIG1heSBvdmVycmlkZSBzdGFuZGFyZCBib29zdCB2YWx1ZXMgKi8K KwlkcF9pYm9vc3QgPSBkZXZfcHJpdi0+dmJ0LmRkaV9wb3J0X2luZm9bcG9ydF0uZHBfYm9vc3Rf bGV2ZWw7CisJaGRtaV9pYm9vc3QgPSBkZXZfcHJpdi0+dmJ0LmRkaV9wb3J0X2luZm9bcG9ydF0u aGRtaV9ib29zdF9sZXZlbDsKIAogCWlmICh0eXBlID09IElOVEVMX09VVFBVVF9ESVNQTEFZUE9S VCkgewotCQlkZGlfdHJhbnNsYXRpb25zID0gc2tsX2dldF9idWZfdHJhbnNfZHAoZGV2LCAmbl9l bnRyaWVzKTsKLQkJaWJvb3N0ID0gZGRpX3RyYW5zbGF0aW9uc1twb3J0XS5pX2Jvb3N0OworCQlp ZiAoZHBfaWJvb3N0KSB7CisJCQlpYm9vc3QgPSBkcF9pYm9vc3Q7CisJCX0gZWxzZSB7CisJCQlk ZGlfdHJhbnNsYXRpb25zID0gc2tsX2dldF9idWZfdHJhbnNfZHAoZGV2LCAmbl9lbnRyaWVzKTsK KwkJCWlib29zdCA9IGRkaV90cmFuc2xhdGlvbnNbcG9ydF0uaV9ib29zdDsKKwkJfQogCX0gZWxz ZSBpZiAodHlwZSA9PSBJTlRFTF9PVVRQVVRfRURQKSB7Ci0JCWRkaV90cmFuc2xhdGlvbnMgPSBz a2xfZ2V0X2J1Zl90cmFuc19lZHAoZGV2LCAmbl9lbnRyaWVzKTsKLQkJaWJvb3N0ID0gZGRpX3Ry YW5zbGF0aW9uc1twb3J0XS5pX2Jvb3N0OworCQlpZiAoZHBfaWJvb3N0KSB7CisJCQlpYm9vc3Qg PSBkcF9pYm9vc3Q7CisJCX0gZWxzZSB7CisJCQlkZGlfdHJhbnNsYXRpb25zID0gc2tsX2dldF9i dWZfdHJhbnNfZWRwKGRldiwgJm5fZW50cmllcyk7CisJCQlpYm9vc3QgPSBkZGlfdHJhbnNsYXRp b25zW3BvcnRdLmlfYm9vc3Q7CisJCX0KIAl9IGVsc2UgaWYgKHR5cGUgPT0gSU5URUxfT1VUUFVU X0hETUkpIHsKLQkJZGRpX3RyYW5zbGF0aW9ucyA9IHNrbF9nZXRfYnVmX3RyYW5zX2hkbWkoZGV2 LCAmbl9lbnRyaWVzKTsKLQkJaWJvb3N0ID0gZGRpX3RyYW5zbGF0aW9uc1twb3J0XS5pX2Jvb3N0 OworCQlpZiAoaGRtaV9pYm9vc3QpIHsKKwkJCWlib29zdCA9IGhkbWlfaWJvb3N0OworCQl9IGVs c2UgeworCQkJZGRpX3RyYW5zbGF0aW9ucyA9IHNrbF9nZXRfYnVmX3RyYW5zX2hkbWkoZGV2LCAm bl9lbnRyaWVzKTsKKwkJCWlib29zdCA9IGRkaV90cmFuc2xhdGlvbnNbcG9ydF0uaV9ib29zdDsK KwkJfQogCX0gZWxzZSB7CiAJCXJldHVybjsKIAl9Ci0tIAoxLjguMy4yCgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0 CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=