From mboxrd@z Thu Jan 1 00:00:00 1970 From: Antti Koskipaa Subject: [PATCH v2] drm/i915: Per-DDI I_boost override Date: Fri, 3 Jul 2015 14:28:55 +0300 Message-ID: <1435922935-834-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 smtp.nebula.fi (smtp-68.nebula.fi [83.145.220.68]) by gabe.freedesktop.org (Postfix) with ESMTPS id AC3994A06D for ; Fri, 3 Jul 2015 04:36:31 -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 c3BlY2lmaWVkIGluIFZCVC4KCnYyOiByZWJhc2UgYW5kIHJlbW92ZSB1bnVzZWQgaWJvb3N0X2Jp dCB2YXJpYWJsZQoKSXNzdWU6IFZJWi01Njc2ClNpZ25lZC1vZmYtYnk6IEFudHRpIEtvc2tpcGFh IDxhbnR0aS5rb3NraXBhYUBsaW51eC5pbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kcnYuaCAgIHwgIDMgKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9iaW9z LmMgfCAyMSArKysrKysrKysrKysrKysrKysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2Jpb3MuaCB8ICA5ICsrKysrKysrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMg IHwgMzggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0KIDQgZmlsZXMgY2hh bmdlZCwgNjMgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9k cnYuaAppbmRleCAxZGJkOTU3Li42YWE4MDgzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAg LTE0MTAsNiArMTQxMCw5IEBAIHN0cnVjdCBkZGlfdmJ0X3BvcnRfaW5mbyB7CiAJdWludDhfdCBz dXBwb3J0c19kdmk6MTsKIAl1aW50OF90IHN1cHBvcnRzX2hkbWk6MTsKIAl1aW50OF90IHN1cHBv cnRzX2RwOjE7CisKKwl1aW50OF90IGRwX2Jvb3N0X2xldmVsOworCXVpbnQ4X3QgaGRtaV9ib29z dF9sZXZlbDsKIH07CiAKIGVudW0gcHNyX2xpbmVzX3RvX3dhaXQgewpkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYmlvcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfYmlvcy5jCmluZGV4IDJmZjllYjAuLjc2ZTEyZjUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Jpb3MuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9i aW9zLmMKQEAgLTg4Niw2ICs4ODYsMTcgQEAgZXJyOgogCW1lbXNldChkZXZfcHJpdi0+dmJ0LmRz aS5zZXF1ZW5jZSwgMCwgc2l6ZW9mKGRldl9wcml2LT52YnQuZHNpLnNlcXVlbmNlKSk7CiB9CiAK K3N0YXRpYyB1OCB0cmFuc2xhdGVfaWJvb3N0KHU4IHZhbCkKK3sKKwlzdGF0aWMgY29uc3QgdTgg bWFwcGluZ1tdID0geyAxLCAzLCA3IH07IC8qIFNlZSBWQlQgc3BlYyAqLworCisJaWYgKHZhbCA+ PSBBUlJBWV9TSVpFKG1hcHBpbmcpKSB7CisJCURSTV9ERUJVR19LTVMoIlVuc3VwcG9ydGVkIElf Ym9vc3QgdmFsdWUgZm91bmQgaW4gVkJUICglZCksIGRpc3BsYXkgbWF5IG5vdCB3b3JrIHByb3Bl cmx5XG4iLCB2YWwpOworCQlyZXR1cm4gMDsKKwl9CisJcmV0dXJuIG1hcHBpbmdbdmFsXTsKK30K Kwogc3RhdGljIHZvaWQgcGFyc2VfZGRpX3BvcnQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2LCBlbnVtIHBvcnQgcG9ydCwKIAkJCSAgIGNvbnN0IHN0cnVjdCBiZGJfaGVhZGVyICpi ZGIpCiB7CkBAIC05ODYsNiArOTk3LDE2IEBAIHN0YXRpYyB2b2lkIHBhcnNlX2RkaV9wb3J0KHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgZW51bSBwb3J0IHBvcnQsCiAJCQkgICAg ICBoZG1pX2xldmVsX3NoaWZ0KTsKIAkJaW5mby0+aGRtaV9sZXZlbF9zaGlmdCA9IGhkbWlfbGV2 ZWxfc2hpZnQ7CiAJfQorCisJLyogUGFyc2UgdGhlIElfYm9vc3QgY29uZmlnIGZvciBTS0wgYW5k IGFib3ZlICovCisJaWYgKGJkYi0+dmVyc2lvbiA+PSAxOTYgJiYgKGNoaWxkLT5jb21tb24uZmxh Z3NfMSAmIElCT09TVF9FTkFCTEUpKSB7CisJCWluZm8tPmRwX2Jvb3N0X2xldmVsID0gdHJhbnNs YXRlX2lib29zdChjaGlsZC0+Y29tbW9uLmlib29zdF9sZXZlbCAmIDB4Rik7CisJCURSTV9ERUJV R19LTVMoIlZCVCAoZSlEUCBib29zdCBsZXZlbCBmb3IgcG9ydCAlYzogJWRcbiIsCisJCQkgICAg ICBwb3J0X25hbWUocG9ydCksIGluZm8tPmRwX2Jvb3N0X2xldmVsKTsKKwkJaW5mby0+aGRtaV9i b29zdF9sZXZlbCA9IHRyYW5zbGF0ZV9pYm9vc3QoY2hpbGQtPmNvbW1vbi5pYm9vc3RfbGV2ZWwg Pj4gNCk7CisJCURSTV9ERUJVR19LTVMoIlZCVCBIRE1JIGJvb3N0IGxldmVsIGZvciBwb3J0ICVj OiAlZFxuIiwKKwkJCSAgICAgIHBvcnRfbmFtZShwb3J0KSwgaW5mby0+aGRtaV9ib29zdF9sZXZl bCk7CisJfQogfQogCiBzdGF0aWMgdm9pZCBwYXJzZV9kZGlfcG9ydHMoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2LApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfYmlvcy5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYmlvcy5oCmluZGV4IGFmMGI0 NzYuLjhlZGQ3NWMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Jpb3Mu aAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9iaW9zLmgKQEAgLTIzMSw2ICsyMzEs MTAgQEAgc3RydWN0IG9sZF9jaGlsZF9kZXZfY29uZmlnIHsKIC8qIFRoaXMgb25lIGNvbnRhaW5z IGZpZWxkIG9mZnNldHMgdGhhdCBhcmUga25vd24gdG8gYmUgY29tbW9uIGZvciBhbGwgQkRCCiAg KiB2ZXJzaW9ucy4gTm90aWNlIHRoYXQgdGhlIG1lYW5pbmcgb2YgdGhlIGNvbnRlbnRzIGNvbnRl bnRzIG1heSBzdGlsbCBjaGFuZ2UsCiAgKiBidXQgYXQgbGVhc3QgdGhlIG9mZnNldHMgYXJlIGNv bnNpc3RlbnQuICovCisKKy8qIERlZmluaXRpb25zIGZvciBmbGFnc18xICovCisjZGVmaW5lIElC T09TVF9FTkFCTEUgKDE8PDMpCisKIHN0cnVjdCBjb21tb25fY2hpbGRfZGV2X2NvbmZpZyB7CiAJ dTE2IGhhbmRsZTsKIAl1MTYgZGV2aWNlX3R5cGU7CkBAIC0yMzksOCArMjQzLDEzIEBAIHN0cnVj dCBjb21tb25fY2hpbGRfZGV2X2NvbmZpZyB7CiAJdTggbm90X2NvbW1vbjJbMl07CiAJdTggZGRj X3BpbjsKIAl1MTYgZWRpZF9wdHI7CisJdTggb2Jzb2xldGU7CisJdTggZmxhZ3NfMTsKKwl1OCBu b3RfY29tbW9uM1sxM107CisJdTggaWJvb3N0X2xldmVsOwogfSBfX3BhY2tlZDsKIAorCiAvKiBU aGlzIGZpZWxkIGNoYW5nZXMgZGVwZW5kaW5nIG9uIHRoZSBCREIgdmVyc2lvbiwgc28gdGhlIG1v c3QgcmVsaWFibGUgd2F5IHRvCiAgKiByZWFkIGl0IGlzIGJ5IGNoZWNraW5nIHRoZSBCREIgdmVy c2lvbiBhbmQgcmVhZGluZyB0aGUgcmF3IHBvaW50ZXIuICovCiB1bmlvbiBjaGlsZF9kZXZpY2Vf Y29uZmlnIHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMKaW5kZXggMTVmYzY2YS4uYzgzZjE1ZiAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMKQEAgLTQ0MCw2ICs0NDAsNyBAQCBzdGF0aWMgdm9p ZCBpbnRlbF9wcmVwYXJlX2RkaV9idWZmZXJzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGVudW0g cG9ydCBwb3J0LAogewogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ ZGV2X3ByaXZhdGU7CiAJdTMyIHJlZzsKKwl1MzIgaWJvb3N0X2JpdCA9IDA7CiAJaW50IGksIG5f aGRtaV9lbnRyaWVzLCBuX2RwX2VudHJpZXMsIG5fZWRwX2VudHJpZXMsIGhkbWlfZGVmYXVsdF9l bnRyeSwKIAkgICAgc2l6ZTsKIAlpbnQgaGRtaV9sZXZlbCA9IGRldl9wcml2LT52YnQuZGRpX3Bv cnRfaW5mb1twb3J0XS5oZG1pX2xldmVsX3NoaWZ0OwpAQCAtNDY1LDYgKzQ2NiwxMCBAQCBzdGF0 aWMgdm9pZCBpbnRlbF9wcmVwYXJlX2RkaV9idWZmZXJzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYs IGVudW0gcG9ydCBwb3J0LAogCQlkZGlfdHJhbnNsYXRpb25zX2hkbWkgPQogCQkJCXNrbF9nZXRf YnVmX3RyYW5zX2hkbWkoZGV2LCAmbl9oZG1pX2VudHJpZXMpOwogCQloZG1pX2RlZmF1bHRfZW50 cnkgPSA4OworCQkvKiBJZiB3ZSdyZSBib29zdGluZyB0aGUgY3VycmVudCwgc2V0IGJpdCAzMSBv ZiB0cmFuczEgKi8KKwkJaWYgKGRldl9wcml2LT52YnQuZGRpX3BvcnRfaW5mb1twb3J0XS5oZG1p X2Jvb3N0X2xldmVsIHx8CisJCSAgICBkZXZfcHJpdi0+dmJ0LmRkaV9wb3J0X2luZm9bcG9ydF0u ZHBfYm9vc3RfbGV2ZWwpCisJCQlpYm9vc3RfYml0ID0gMTw8MzE7CiAJfSBlbHNlIGlmIChJU19C Uk9BRFdFTEwoZGV2KSkgewogCQlkZGlfdHJhbnNsYXRpb25zX2ZkaSA9IGJkd19kZGlfdHJhbnNs YXRpb25zX2ZkaTsKIAkJZGRpX3RyYW5zbGF0aW9uc19kcCA9IGJkd19kZGlfdHJhbnNsYXRpb25z X2RwOwpAQCAtNTI1LDcgKzUzMCw3IEBAIHN0YXRpYyB2b2lkIGludGVsX3ByZXBhcmVfZGRpX2J1 ZmZlcnMoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgZW51bSBwb3J0IHBvcnQsCiAJfQogCiAJZm9y IChpID0gMCwgcmVnID0gRERJX0JVRl9UUkFOUyhwb3J0KTsgaSA8IHNpemU7IGkrKykgewotCQlJ OTE1X1dSSVRFKHJlZywgZGRpX3RyYW5zbGF0aW9uc1tpXS50cmFuczEpOworCQlJOTE1X1dSSVRF KHJlZywgZGRpX3RyYW5zbGF0aW9uc1tpXS50cmFuczEgfCBpYm9vc3RfYml0KTsKIAkJcmVnICs9 IDQ7CiAJCUk5MTVfV1JJVEUocmVnLCBkZGlfdHJhbnNsYXRpb25zW2ldLnRyYW5zMik7CiAJCXJl ZyArPSA0OwpAQCAtNTQwLDcgKzU0NSw3IEBAIHN0YXRpYyB2b2lkIGludGVsX3ByZXBhcmVfZGRp X2J1ZmZlcnMoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgZW51bSBwb3J0IHBvcnQsCiAJCWhkbWlf bGV2ZWwgPSBoZG1pX2RlZmF1bHRfZW50cnk7CiAKIAkvKiBFbnRyeSA5IGlzIGZvciBIRE1JOiAq LwotCUk5MTVfV1JJVEUocmVnLCBkZGlfdHJhbnNsYXRpb25zX2hkbWlbaGRtaV9sZXZlbF0udHJh bnMxKTsKKwlJOTE1X1dSSVRFKHJlZywgZGRpX3RyYW5zbGF0aW9uc19oZG1pW2hkbWlfbGV2ZWxd LnRyYW5zMSB8IGlib29zdF9iaXQpOwogCXJlZyArPSA0OwogCUk5MTVfV1JJVEUocmVnLCBkZGlf dHJhbnNsYXRpb25zX2hkbWlbaGRtaV9sZXZlbF0udHJhbnMyKTsKIAlyZWcgKz0gNDsKQEAgLTIw ODMsMTggKzIwODgsMzUgQEAgc3RhdGljIHZvaWQgc2tsX2RkaV9zZXRfaWJvb3N0KHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsIHUzMiBsZXZlbCwKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwogCWNvbnN0IHN0cnVjdCBkZGlfYnVmX3RyYW5zICpk ZGlfdHJhbnNsYXRpb25zOwogCXVpbnQ4X3QgaWJvb3N0OworCXVpbnQ4X3QgZHBfaWJvb3N0LCBo ZG1pX2lib29zdDsKIAlpbnQgbl9lbnRyaWVzOwogCXUzMiByZWc7CiAKKwkvKiBWQlQgbWF5IG92 ZXJyaWRlIHN0YW5kYXJkIGJvb3N0IHZhbHVlcyAqLworCWRwX2lib29zdCA9IGRldl9wcml2LT52 YnQuZGRpX3BvcnRfaW5mb1twb3J0XS5kcF9ib29zdF9sZXZlbDsKKwloZG1pX2lib29zdCA9IGRl dl9wcml2LT52YnQuZGRpX3BvcnRfaW5mb1twb3J0XS5oZG1pX2Jvb3N0X2xldmVsOworCiAJaWYg KHR5cGUgPT0gSU5URUxfT1VUUFVUX0RJU1BMQVlQT1JUKSB7Ci0JCWRkaV90cmFuc2xhdGlvbnMg PSBza2xfZ2V0X2J1Zl90cmFuc19kcChkZXYsICZuX2VudHJpZXMpOwotCQlpYm9vc3QgPSBkZGlf dHJhbnNsYXRpb25zW3BvcnRdLmlfYm9vc3Q7CisJCWlmIChkcF9pYm9vc3QpIHsKKwkJCWlib29z dCA9IGRwX2lib29zdDsKKwkJfSBlbHNlIHsKKwkJCWRkaV90cmFuc2xhdGlvbnMgPSBza2xfZ2V0 X2J1Zl90cmFuc19kcChkZXYsICZuX2VudHJpZXMpOworCQkJaWJvb3N0ID0gZGRpX3RyYW5zbGF0 aW9uc1twb3J0XS5pX2Jvb3N0OworCQl9CiAJfSBlbHNlIGlmICh0eXBlID09IElOVEVMX09VVFBV VF9FRFApIHsKLQkJZGRpX3RyYW5zbGF0aW9ucyA9IHNrbF9nZXRfYnVmX3RyYW5zX2VkcChkZXYs ICZuX2VudHJpZXMpOwotCQlpYm9vc3QgPSBkZGlfdHJhbnNsYXRpb25zW3BvcnRdLmlfYm9vc3Q7 CisJCWlmIChkcF9pYm9vc3QpIHsKKwkJCWlib29zdCA9IGRwX2lib29zdDsKKwkJfSBlbHNlIHsK KwkJCWRkaV90cmFuc2xhdGlvbnMgPSBza2xfZ2V0X2J1Zl90cmFuc19lZHAoZGV2LCAmbl9lbnRy aWVzKTsKKwkJCWlib29zdCA9IGRkaV90cmFuc2xhdGlvbnNbcG9ydF0uaV9ib29zdDsKKwkJfQog CX0gZWxzZSBpZiAodHlwZSA9PSBJTlRFTF9PVVRQVVRfSERNSSkgewotCQlkZGlfdHJhbnNsYXRp b25zID0gc2tsX2dldF9idWZfdHJhbnNfaGRtaShkZXYsICZuX2VudHJpZXMpOwotCQlpYm9vc3Qg PSBkZGlfdHJhbnNsYXRpb25zW3BvcnRdLmlfYm9vc3Q7CisJCWlmIChoZG1pX2lib29zdCkgewor CQkJaWJvb3N0ID0gaGRtaV9pYm9vc3Q7CisJCX0gZWxzZSB7CisJCQlkZGlfdHJhbnNsYXRpb25z ID0gc2tsX2dldF9idWZfdHJhbnNfaGRtaShkZXYsICZuX2VudHJpZXMpOworCQkJaWJvb3N0ID0g ZGRpX3RyYW5zbGF0aW9uc1twb3J0XS5pX2Jvb3N0OworCQl9CiAJfSBlbHNlIHsKIAkJcmV0dXJu OwogCX0KLS0gCjEuOC4xLjUKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNr dG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50 ZWwtZ2Z4Cg==