From mboxrd@z Thu Jan 1 00:00:00 1970 From: ville.syrjala@linux.intel.com Subject: [PATCH 3/9] drm/i915: Program iboost settings for HDMI/DVI on SKL Date: Tue, 12 Jul 2016 15:59:30 +0300 Message-ID: <1468328376-6380-4-git-send-email-ville.syrjala@linux.intel.com> References: <1468328376-6380-1-git-send-email-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id 4837C6E239 for ; Tue, 12 Jul 2016 12:59:50 +0000 (UTC) In-Reply-To: <1468328376-6380-1-git-send-email-ville.syrjala@linux.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 RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KCkN1 cnJlbnRseSB3ZSBmYWlsIHRvIHByb2dyYW0gdGhlIGlib29zdCBzdHVmZiBmb3IgSERNSS9EVkku IExldCdzIHJlbWVkeQp0aGF0LgoKQ2M6IERhdmlkIFdlaW5laGFsbCA8ZGF2aWQud2VpbmVoYWxs QGxpbnV4LmludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5z eXJqYWxhQGxpbnV4LmludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k ZGkuYyB8IDUxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0KIDEgZmls ZSBjaGFuZ2VkLCA0MCBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2RkaS5jCmluZGV4IDc4ZTFmZGFlYzg2ZC4uMDlmZTU4MGRmZDQ5IDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kZGkuYwpAQCAtMzg4LDYgKzM4OCw0MCBAQCBza2xfZ2V0X2J1Zl90cmFuc19o ZG1pKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgaW50ICpuX2VudHJpZXMpCiAJ fQogfQogCitzdGF0aWMgaW50IGludGVsX2RkaV9oZG1pX2xldmVsKHN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdiwgZW51bSBwb3J0IHBvcnQpCit7CisJaW50IG5faGRtaV9lbnRyaWVz OworCWludCBoZG1pX2xldmVsOworCWludCBoZG1pX2RlZmF1bHRfZW50cnk7CisKKwloZG1pX2xl dmVsID0gZGV2X3ByaXYtPnZidC5kZGlfcG9ydF9pbmZvW3BvcnRdLmhkbWlfbGV2ZWxfc2hpZnQ7 CisKKwlpZiAoSVNfQlJPWFRPTihkZXZfcHJpdikpCisJCXJldHVybiBoZG1pX2xldmVsOworCisJ aWYgKElTX1NLWUxBS0UoZGV2X3ByaXYpIHx8IElTX0tBQllMQUtFKGRldl9wcml2KSkgeworCQlz a2xfZ2V0X2J1Zl90cmFuc19oZG1pKGRldl9wcml2LCAmbl9oZG1pX2VudHJpZXMpOworCQloZG1p X2RlZmF1bHRfZW50cnkgPSA4OworCX0gZWxzZSBpZiAoSVNfQlJPQURXRUxMKGRldl9wcml2KSkg eworCQluX2hkbWlfZW50cmllcyA9IEFSUkFZX1NJWkUoYmR3X2RkaV90cmFuc2xhdGlvbnNfaGRt aSk7CisJCWhkbWlfZGVmYXVsdF9lbnRyeSA9IDc7CisJfSBlbHNlIGlmIChJU19IQVNXRUxMKGRl dl9wcml2KSkgeworCQluX2hkbWlfZW50cmllcyA9IEFSUkFZX1NJWkUoaHN3X2RkaV90cmFuc2xh dGlvbnNfaGRtaSk7CisJCWhkbWlfZGVmYXVsdF9lbnRyeSA9IDY7CisJfSBlbHNlIHsKKwkJV0FS TigxLCAiZGRpIHRyYW5zbGF0aW9uIHRhYmxlIG1pc3NpbmdcbiIpOworCQluX2hkbWlfZW50cmll cyA9IEFSUkFZX1NJWkUoYmR3X2RkaV90cmFuc2xhdGlvbnNfaGRtaSk7CisJCWhkbWlfZGVmYXVs dF9lbnRyeSA9IDc7CisJfQorCisJLyogQ2hvb3NlIGEgZ29vZCBkZWZhdWx0IGlmIFZCVCBpcyBi YWRseSBwb3B1bGF0ZWQgKi8KKwlpZiAoaGRtaV9sZXZlbCA9PSBIRE1JX0xFVkVMX1NISUZUX1VO S05PV04gfHwKKwkgICAgaGRtaV9sZXZlbCA+PSBuX2hkbWlfZW50cmllcykKKwkJaGRtaV9sZXZl bCA9IGhkbWlfZGVmYXVsdF9lbnRyeTsKKworCXJldHVybiBoZG1pX2xldmVsOworfQorCiAvKgog ICogU3RhcnRpbmcgd2l0aCBIYXN3ZWxsLCBEREkgcG9ydCBidWZmZXJzIG11c3QgYmUgcHJvZ3Jh bW1lZCB3aXRoIGNvcnJlY3QKICAqIHZhbHVlcyBpbiBhZHZhbmNlLiBUaGUgYnVmZmVyIHZhbHVl cyBhcmUgZGlmZmVyZW50IGZvciBGREkgYW5kIERQIG1vZGVzLApAQCAtMzk5LDcgKzQzMyw3IEBA IHZvaWQgaW50ZWxfcHJlcGFyZV9kZGlfYnVmZmVyKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNv ZGVyKQogewogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZW5j b2Rlci0+YmFzZS5kZXYpOwogCXUzMiBpYm9vc3RfYml0ID0gMDsKLQlpbnQgaSwgbl9oZG1pX2Vu dHJpZXMsIG5fZHBfZW50cmllcywgbl9lZHBfZW50cmllcywgaGRtaV9kZWZhdWx0X2VudHJ5LAor CWludCBpLCBuX2hkbWlfZW50cmllcywgbl9kcF9lbnRyaWVzLCBuX2VkcF9lbnRyaWVzLAogCSAg ICBzaXplOwogCWludCBoZG1pX2xldmVsOwogCWVudW0gcG9ydCBwb3J0OwpAQCAtNDEwLDcgKzQ0 NCw3IEBAIHZvaWQgaW50ZWxfcHJlcGFyZV9kZGlfYnVmZmVyKHN0cnVjdCBpbnRlbF9lbmNvZGVy ICplbmNvZGVyKQogCWNvbnN0IHN0cnVjdCBkZGlfYnVmX3RyYW5zICpkZGlfdHJhbnNsYXRpb25z OwogCiAJcG9ydCA9IGludGVsX2RkaV9nZXRfZW5jb2Rlcl9wb3J0KGVuY29kZXIpOwotCWhkbWlf bGV2ZWwgPSBkZXZfcHJpdi0+dmJ0LmRkaV9wb3J0X2luZm9bcG9ydF0uaGRtaV9sZXZlbF9zaGlm dDsKKwloZG1pX2xldmVsID0gaW50ZWxfZGRpX2hkbWlfbGV2ZWwoZGV2X3ByaXYsIHBvcnQpOwog CiAJaWYgKElTX0JST1hUT04oZGV2X3ByaXYpKSB7CiAJCWlmIChlbmNvZGVyLT50eXBlICE9IElO VEVMX09VVFBVVF9IRE1JKQpAQCAtNDMwLDcgKzQ2NCw2IEBAIHZvaWQgaW50ZWxfcHJlcGFyZV9k ZGlfYnVmZmVyKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyKQogCQkJCXNrbF9nZXRfYnVm X3RyYW5zX2VkcChkZXZfcHJpdiwgJm5fZWRwX2VudHJpZXMpOwogCQlkZGlfdHJhbnNsYXRpb25z X2hkbWkgPQogCQkJCXNrbF9nZXRfYnVmX3RyYW5zX2hkbWkoZGV2X3ByaXYsICZuX2hkbWlfZW50 cmllcyk7Ci0JCWhkbWlfZGVmYXVsdF9lbnRyeSA9IDg7CiAJCS8qIElmIHdlJ3JlIGJvb3N0aW5n IHRoZSBjdXJyZW50LCBzZXQgYml0IDMxIG9mIHRyYW5zMSAqLwogCQlpZiAoZGV2X3ByaXYtPnZi dC5kZGlfcG9ydF9pbmZvW3BvcnRdLmhkbWlfYm9vc3RfbGV2ZWwgfHwKIAkJICAgIGRldl9wcml2 LT52YnQuZGRpX3BvcnRfaW5mb1twb3J0XS5kcF9ib29zdF9sZXZlbCkKQEAgLTQ1Niw3ICs0ODks NiBAQCB2b2lkIGludGVsX3ByZXBhcmVfZGRpX2J1ZmZlcihzdHJ1Y3QgaW50ZWxfZW5jb2RlciAq ZW5jb2RlcikKIAogCQluX2RwX2VudHJpZXMgPSBBUlJBWV9TSVpFKGJkd19kZGlfdHJhbnNsYXRp b25zX2RwKTsKIAkJbl9oZG1pX2VudHJpZXMgPSBBUlJBWV9TSVpFKGJkd19kZGlfdHJhbnNsYXRp b25zX2hkbWkpOwotCQloZG1pX2RlZmF1bHRfZW50cnkgPSA3OwogCX0gZWxzZSBpZiAoSVNfSEFT V0VMTChkZXZfcHJpdikpIHsKIAkJZGRpX3RyYW5zbGF0aW9uc19mZGkgPSBoc3dfZGRpX3RyYW5z bGF0aW9uc19mZGk7CiAJCWRkaV90cmFuc2xhdGlvbnNfZHAgPSBoc3dfZGRpX3RyYW5zbGF0aW9u c19kcDsKQEAgLTQ2NCw3ICs0OTYsNiBAQCB2b2lkIGludGVsX3ByZXBhcmVfZGRpX2J1ZmZlcihz dHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlcikKIAkJZGRpX3RyYW5zbGF0aW9uc19oZG1pID0g aHN3X2RkaV90cmFuc2xhdGlvbnNfaGRtaTsKIAkJbl9kcF9lbnRyaWVzID0gbl9lZHBfZW50cmll cyA9IEFSUkFZX1NJWkUoaHN3X2RkaV90cmFuc2xhdGlvbnNfZHApOwogCQluX2hkbWlfZW50cmll cyA9IEFSUkFZX1NJWkUoaHN3X2RkaV90cmFuc2xhdGlvbnNfaGRtaSk7Ci0JCWhkbWlfZGVmYXVs dF9lbnRyeSA9IDY7CiAJfSBlbHNlIHsKIAkJV0FSTigxLCAiZGRpIHRyYW5zbGF0aW9uIHRhYmxl IG1pc3NpbmdcbiIpOwogCQlkZGlfdHJhbnNsYXRpb25zX2VkcCA9IGJkd19kZGlfdHJhbnNsYXRp b25zX2RwOwpAQCAtNDc0LDcgKzUwNSw2IEBAIHZvaWQgaW50ZWxfcHJlcGFyZV9kZGlfYnVmZmVy KHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyKQogCQluX2VkcF9lbnRyaWVzID0gQVJSQVlf U0laRShiZHdfZGRpX3RyYW5zbGF0aW9uc19lZHApOwogCQluX2RwX2VudHJpZXMgPSBBUlJBWV9T SVpFKGJkd19kZGlfdHJhbnNsYXRpb25zX2RwKTsKIAkJbl9oZG1pX2VudHJpZXMgPSBBUlJBWV9T SVpFKGJkd19kZGlfdHJhbnNsYXRpb25zX2hkbWkpOwotCQloZG1pX2RlZmF1bHRfZW50cnkgPSA3 OwogCX0KIAogCXN3aXRjaCAoZW5jb2Rlci0+dHlwZSkgewpAQCAtNTA1LDExICs1MzUsNiBAQCB2 b2lkIGludGVsX3ByZXBhcmVfZGRpX2J1ZmZlcihzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2Rl cikKIAlpZiAoZW5jb2Rlci0+dHlwZSAhPSBJTlRFTF9PVVRQVVRfSERNSSkKIAkJcmV0dXJuOwog Ci0JLyogQ2hvb3NlIGEgZ29vZCBkZWZhdWx0IGlmIFZCVCBpcyBiYWRseSBwb3B1bGF0ZWQgKi8K LQlpZiAoaGRtaV9sZXZlbCA9PSBIRE1JX0xFVkVMX1NISUZUX1VOS05PV04gfHwKLQkgICAgaGRt aV9sZXZlbCA+PSBuX2hkbWlfZW50cmllcykKLQkJaGRtaV9sZXZlbCA9IGhkbWlfZGVmYXVsdF9l bnRyeTsKLQogCS8qIEVudHJ5IDkgaXMgZm9yIEhETUk6ICovCiAJSTkxNV9XUklURShERElfQlVG X1RSQU5TX0xPKHBvcnQsIGkpLAogCQkgICBkZGlfdHJhbnNsYXRpb25zX2hkbWlbaGRtaV9sZXZl bF0udHJhbnMxIHwgaWJvb3N0X2JpdCk7CkBAIC0xNjQ3LDYgKzE2NzIsMTAgQEAgc3RhdGljIHZv aWQgaW50ZWxfZGRpX3ByZV9lbmFibGUoc3RydWN0IGludGVsX2VuY29kZXIgKmludGVsX2VuY29k ZXIpCiAJCQlpbnRlbF9kcF9zdG9wX2xpbmtfdHJhaW4oaW50ZWxfZHApOwogCX0gZWxzZSBpZiAo dHlwZSA9PSBJTlRFTF9PVVRQVVRfSERNSSkgewogCQlzdHJ1Y3QgaW50ZWxfaGRtaSAqaW50ZWxf aGRtaSA9IGVuY190b19pbnRlbF9oZG1pKGVuY29kZXIpOworCQlpbnQgbGV2ZWwgPSBpbnRlbF9k ZGlfaGRtaV9sZXZlbChkZXZfcHJpdiwgcG9ydCk7CisKKwkJaWYgKElTX1NLWUxBS0UoZGV2X3By aXYpIHx8IElTX0tBQllMQUtFKGRldl9wcml2KSkKKwkJCXNrbF9kZGlfc2V0X2lib29zdChpbnRl bF9lbmNvZGVyLCBsZXZlbCk7CiAKIAkJaW50ZWxfaGRtaS0+c2V0X2luZm9mcmFtZXMoZW5jb2Rl ciwKIAkJCQkJICAgY3J0Yy0+Y29uZmlnLT5oYXNfaGRtaV9zaW5rLAotLSAKMi43LjQKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWls aW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZy ZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=