From mboxrd@z Thu Jan 1 00:00:00 1970 From: Puthikorn Voravootivat Subject: [PATCH v10 1/3] drm/i915: Add heuristic to determine better way to adjust brightness Date: Fri, 26 May 2017 18:42:07 -0700 Message-ID: <20170527014209.186331-2-puthik@chromium.org> References: <20170527014209.186331-1-puthik@chromium.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170527014209.186331-1-puthik@chromium.org> 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, Dhinakaran Pandiyan , Jani Nikula , Daniel Vetter Cc: Puthikorn Voravootivat , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org QWRkIGhldXJpc3RpYyB0byBkZWNpZGUgdGhhdCBBVVggb3IgUFdNIHBpbiBzaG91bGQgdXNlIGZv cgpiYWNrbGlnaHQgYnJpZ2h0bmVzcyBhZGp1c3RtZW50IGFuZCBtb2RpZnkgaTkxNSBwYXJhbSBk ZXNjcmlwdGlvbgp0byBoYXZlIGF1dG8sIGZvcmNlIGRpc2FibGUsIGFuZCBmb3JjZSBlbmFibGUu CgpUaGUgaGV1cmlzdGljIHRvIGRldGVybWluZSB0aGF0IHVzaW5nIEFVWCBwaW4gaXMgYmV0dGVy IHRoYW4gdXNpbmcKUFdNIHBpbiBpcyB0aGF0IHRoZSBwYW5lbCBzdXBwb3J0IGFueSBvZiB0aGUg ZmVhdHVyZSBsaXN0IGhlcmUuCi0gUmVnaW9uYWwgYmFja2xpZ2h0IGJyaWdodG5lc3MgYWRqdXN0 bWVudAotIEJhY2tsaWdodCBQV00gZnJlcXVlbmN5IHNldAotIE1vcmUgdGhhbiA4IGJpdHMgcmVz b2x1dGlvbiBvZiBicmlnaHRuZXNzIGxldmVsCi0gQmFja2xpZ2h0IGVuYWJsZW1lbnQgdmlhIEFV WCBhbmQgbm90IGJ5IEJMX0VOQUJMRSBwaW4KClNpZ25lZC1vZmYtYnk6IFB1dGhpa29ybiBWb3Jh dm9vdGl2YXQgPHB1dGhpa0BjaHJvbWl1bS5vcmc+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9wYXJhbXMuYyAgICAgICAgICAgIHwgIDcgKy0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X3BhcmFtcy5oICAgICAgICAgICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfZHBfYXV4X2JhY2tsaWdodC5jIHwgNjQgKysrKysrKysrKysrKysrKysrKysrKysrKy0tCiAz IGZpbGVzIGNoYW5nZWQsIDY2IGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9wYXJhbXMuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfcGFyYW1zLmMKaW5kZXggYjZhN2UzNjNkMDc2Li4zNzU4YWUxZjExYjQgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGFyYW1zLmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9wYXJhbXMuYwpAQCAtNjMsNyArNjMsNyBAQCBzdHJ1Y3QgaTkx NV9wYXJhbXMgaTkxNSBfX3JlYWRfbW9zdGx5ID0gewogCS5odWNfZmlybXdhcmVfcGF0aCA9IE5V TEwsCiAJLmVuYWJsZV9kcF9tc3QgPSB0cnVlLAogCS5pbmplY3RfbG9hZF9mYWlsdXJlID0gMCwK LQkuZW5hYmxlX2RwY2RfYmFja2xpZ2h0ID0gZmFsc2UsCisJLmVuYWJsZV9kcGNkX2JhY2tsaWdo dCA9IC0xLAogCS5lbmFibGVfZ3Z0ID0gZmFsc2UsCiB9OwogCkBAIC0yNDYsOSArMjQ2LDEwIEBA IE1PRFVMRV9QQVJNX0RFU0MoZW5hYmxlX2RwX21zdCwKIG1vZHVsZV9wYXJhbV9uYW1lZF91bnNh ZmUoaW5qZWN0X2xvYWRfZmFpbHVyZSwgaTkxNS5pbmplY3RfbG9hZF9mYWlsdXJlLCB1aW50LCAw NDAwKTsKIE1PRFVMRV9QQVJNX0RFU0MoaW5qZWN0X2xvYWRfZmFpbHVyZSwKIAkiRm9yY2UgYW4g ZXJyb3IgYWZ0ZXIgYSBudW1iZXIgb2YgZmFpbHVyZSBjaGVjayBwb2ludHMgKDA6ZGlzYWJsZWQg KGRlZmF1bHQpLCBOOmZvcmNlIGZhaWx1cmUgYXQgdGhlIE50aCBmYWlsdXJlIGNoZWNrIHBvaW50 KSIpOwotbW9kdWxlX3BhcmFtX25hbWVkKGVuYWJsZV9kcGNkX2JhY2tsaWdodCwgaTkxNS5lbmFi bGVfZHBjZF9iYWNrbGlnaHQsIGJvb2wsIDA2MDApOworbW9kdWxlX3BhcmFtX25hbWVkX3Vuc2Fm ZShlbmFibGVfZHBjZF9iYWNrbGlnaHQsIGk5MTUuZW5hYmxlX2RwY2RfYmFja2xpZ2h0LCBpbnQs IDA2MDApOwogTU9EVUxFX1BBUk1fREVTQyhlbmFibGVfZHBjZF9iYWNrbGlnaHQsCi0JIkVuYWJs ZSBzdXBwb3J0IGZvciBEUENEIGJhY2tsaWdodCBjb250cm9sIChkZWZhdWx0OmZhbHNlKSIpOwor CSJFbmFibGUgc3VwcG9ydCBmb3IgRFBDRCBiYWNrbGlnaHQgY29udHJvbCAiCisJIigtMTphdXRv IChkZWZhdWx0KSwgMDpmb3JjZSBkaXNhYmxlLCAxOmZvcmNlIGVuYWJsZWQgaWYgc3VwcG9ydGVk Iik7CiAKIG1vZHVsZV9wYXJhbV9uYW1lZChlbmFibGVfZ3Z0LCBpOTE1LmVuYWJsZV9ndnQsIGJv b2wsIDA0MDApOwogTU9EVUxFX1BBUk1fREVTQyhlbmFibGVfZ3Z0LApkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9wYXJhbXMuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfcGFyYW1zLmgKaW5kZXggMzQxNDhjYzg2MzdjLi5hYzAyZWZjZTZlMjIgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGFyYW1zLmgKKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9wYXJhbXMuaApAQCAtNjYsNyArNjYsNyBAQAogCWZ1bmMoYm9vbCwgdmVyYm9z ZV9zdGF0ZV9jaGVja3MpOyBcCiAJZnVuYyhib29sLCBudWNsZWFyX3BhZ2VmbGlwKTsgXAogCWZ1 bmMoYm9vbCwgZW5hYmxlX2RwX21zdCk7IFwKLQlmdW5jKGJvb2wsIGVuYWJsZV9kcGNkX2JhY2ts aWdodCk7IFwKKwlmdW5jKGludCwgZW5hYmxlX2RwY2RfYmFja2xpZ2h0KTsgXAogCWZ1bmMoYm9v bCwgZW5hYmxlX2d2dCkKIAogI2RlZmluZSBNRU1CRVIoVCwgbWVtYmVyKSBUIG1lbWJlcgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHBfYXV4X2JhY2tsaWdodC5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHBfYXV4X2JhY2tsaWdodC5jCmluZGV4IGEwOTk1 YzAwZmM4NC4uYzg5YWFlODA0NjU5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kcF9hdXhfYmFja2xpZ2h0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZHBfYXV4X2JhY2tsaWdodC5jCkBAIC00Myw2ICs0Myw5IEBAIHN0YXRpYyB2b2lkIHNldF9hdXhf YmFja2xpZ2h0X2VuYWJsZShzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwLCBib29sIGVuYWJsZSkK IAllbHNlCiAJCXJlZ192YWwgJj0gfihEUF9FRFBfQkFDS0xJR0hUX0VOQUJMRSk7CiAKKwkvKiBU T0RPOiBJZiB0aGUgcGFuZWwgYWxzbyBzdXBwb3J0IGVuYWJsaW5nIGJhY2tsaWdodCB2aWEgQkxf RU5BQkxFIHBpbiwKKwkgKiB0aGUgYmFja2xpZ2h0IHdpbGwgYmUgZW5hYmxlZCBhZ2FpbiBpbiBf aW50ZWxfZWRwX2JhY2tsaWdodF9vbigpCisJICovCiAJaWYgKGRybV9kcF9kcGNkX3dyaXRlYigm aW50ZWxfZHAtPmF1eCwgRFBfRURQX0RJU1BMQVlfQ09OVFJPTF9SRUdJU1RFUiwKIAkJCSAgICAg ICByZWdfdmFsKSAhPSAxKSB7CiAJCURSTV9ERUJVR19LTVMoIkZhaWxlZCB0byAlcyBhdXggYmFj a2xpZ2h0XG4iLApAQCAtMTY4LDE1ICsxNzEsNjYgQEAgaW50ZWxfZHBfYXV4X2Rpc3BsYXlfY29u dHJvbF9jYXBhYmxlKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvcikKIAkvKiBDaGVj ayB0aGUgIGVEUCBEaXNwbGF5IGNvbnRyb2wgY2FwYWJpbGl0aWVzIHJlZ2lzdGVycyB0byBkZXRl cm1pbmUgaWYKIAkgKiB0aGUgcGFuZWwgY2FuIHN1cHBvcnQgYmFja2xpZ2h0IGNvbnRyb2wgb3Zl ciB0aGUgYXV4IGNoYW5uZWwKIAkgKi8KLQlpZiAoaW50ZWxfZHAtPmVkcF9kcGNkWzFdICYgRFBf RURQX1RDT05fQkFDS0xJR0hUX0FESlVTVE1FTlRfQ0FQICYmCi0JICAgIChpbnRlbF9kcC0+ZWRw X2RwY2RbMl0gJiBEUF9FRFBfQkFDS0xJR0hUX0JSSUdIVE5FU1NfQVVYX1NFVF9DQVApICYmCi0J ICAgICEoaW50ZWxfZHAtPmVkcF9kcGNkWzJdICYgRFBfRURQX0JBQ0tMSUdIVF9CUklHSFRORVNT X1BXTV9QSU5fQ0FQKSkgeworCWlmICgoaW50ZWxfZHAtPmVkcF9kcGNkWzFdICYgRFBfRURQX1RD T05fQkFDS0xJR0hUX0FESlVTVE1FTlRfQ0FQKSAmJgorCSAgICAoaW50ZWxfZHAtPmVkcF9kcGNk WzJdICYgRFBfRURQX0JBQ0tMSUdIVF9CUklHSFRORVNTX0FVWF9TRVRfQ0FQKSkgewogCQlEUk1f REVCVUdfS01TKCJBVVggQmFja2xpZ2h0IENvbnRyb2wgU3VwcG9ydGVkIVxuIik7CiAJCXJldHVy biB0cnVlOwogCX0KIAlyZXR1cm4gZmFsc2U7CiB9CiAKKy8qCisgKiBIZXVyaXN0aWMgZnVuY3Rp b24gd2hldGhlciB3ZSBzaG91bGQgdXNlIEFVWCBmb3IgYmFja2xpZ2h0IGFkanVzdG1lbnQgb3Ig bm90LgorICoKKyAqIFdlIHNob3VsZCB1c2UgQVVYIGZvciBiYWNrbGlnaHQgYnJpZ2h0bmVzcyBh ZGp1c3RtZW50IGlmIHBhbmVsIGRvZXNuJ3QgdGhpcworICogdmlhIFBXTSBwaW4gb3IgdXNpbmcg QVVYIGlzIGJldHRlciB0aGFuIHVzaW5nIFBXTSBwaW4uCisgKgorICogVGhlIGhldXJpc3RpYyB0 byBkZXRlcm1pbmUgdGhhdCB1c2luZyBBVVggcGluIGlzIGJldHRlciB0aGFuIHVzaW5nIFBXTSBw aW4gaXMKKyAqIHRoYXQgdGhlIHBhbmVsIHN1cHBvcnQgYW55IG9mIHRoZSBmZWF0dXJlIGxpc3Qg aGVyZS4KKyAqIC0gUmVnaW9uYWwgYmFja2xpZ2h0IGJyaWdodG5lc3MgYWRqdXN0bWVudAorICog LSBCYWNrbGlnaHQgUFdNIGZyZXF1ZW5jeSBzZXQKKyAqIC0gTW9yZSB0aGFuIDggYml0cyByZXNv bHV0aW9uIG9mIGJyaWdodG5lc3MgbGV2ZWwKKyAqIC0gQmFja2xpZ2h0IGVuYWJsZW1lbnQgdmlh IEFVWCBhbmQgbm90IGJ5IEJMX0VOQUJMRSBwaW4KKyAqCisgKiBJZiBhbGwgYWJvdmUgYXJlIG5v dCB0cnVlLCBhc3N1bWUgdGhhdCB1c2luZyBQV00gcGluIGlzIGJldHRlci4KKyAqLworc3RhdGlj IGJvb2wKK2ludGVsX2RwX2F1eF9kaXNwbGF5X2NvbnRyb2xfaGV1cmlzdGljKHN0cnVjdCBpbnRl bF9jb25uZWN0b3IgKmNvbm5lY3RvcikKK3sKKwlzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwID0g ZW5jX3RvX2ludGVsX2RwKCZjb25uZWN0b3ItPmVuY29kZXItPmJhc2UpOworCXVpbnQ4X3QgcmVn X3ZhbDsKKworCS8qIFBhbmVsIGRvZXNuJ3Qgc3VwcG9ydCBhZGp1c3RpbmcgYmFja2xpZ2h0IGJy aWdodG5lc3MgdmlhIFBXTiBwaW4gKi8KKwlpZiAoIShpbnRlbF9kcC0+ZWRwX2RwY2RbMV0gJiBE UF9FRFBfQkFDS0xJR0hUX0JSSUdIVE5FU1NfUFdNX1BJTl9DQVApKQorCQlyZXR1cm4gdHJ1ZTsK KworCS8qIFBhbmVsIHN1cHBvcnRzIHJlZ2lvbmFsIGJhY2tsaWdodCBicmlnaHRuZXNzIGFkanVz dG1lbnQgKi8KKwlpZiAoZHJtX2RwX2RwY2RfcmVhZGIoJmludGVsX2RwLT5hdXgsIERQX0VEUF9H RU5FUkFMX0NBUF8zLAorCQkJICAgICAgJnJlZ192YWwpICE9IDEpIHsKKwkJRFJNX0RFQlVHX0tN UygiRmFpbGVkIHRvIHJlYWQgRFBDRCByZWdpc3RlciAweCV4XG4iLAorCQkJICAgICAgIERQX0VE UF9HRU5FUkFMX0NBUF8zKTsKKwkJcmV0dXJuIGZhbHNlOworCX0KKwlpZiAocmVnX3ZhbCA+IDAp CisJCXJldHVybiB0cnVlOworCisJLyogUGFuZWwgc3VwcG9ydHMgYmFja2xpZ2h0IFBXTSBmcmVx dWVuY3kgc2V0ICovCisJaWYgKGludGVsX2RwLT5lZHBfZHBjZFsyXSAmIERQX0VEUF9CQUNLTElH SFRfRlJFUV9BVVhfU0VUX0NBUCkKKwkJcmV0dXJuIHRydWU7CisKKwkvKiBQYW5lbCBzdXBwb3J0 cyBtb3JlIHRoYW4gOCBiaXRzIHJlc29sdXRpb24gb2YgYnJpZ2h0bmVzcyBsZXZlbCAqLworCWlm IChpbnRlbF9kcC0+ZWRwX2RwY2RbMl0gJiBEUF9FRFBfQkFDS0xJR0hUX0JSSUdIVE5FU1NfQllU RV9DT1VOVCkKKwkJcmV0dXJuIHRydWU7CisKKwkvKiBQYW5lbCBzdXBwb3J0cyBlbmFibGluZyBi YWNrbGlnaHQgdmlhIEFVWCBidXQgbm90IGJ5IEJMX0VOQUJMRSBwaW4gKi8KKwlpZiAoKGludGVs X2RwLT5lZHBfZHBjZFsxXSAmIERQX0VEUF9CQUNLTElHSFRfQVVYX0VOQUJMRV9DQVApICYmCisJ ICAgICEoaW50ZWxfZHAtPmVkcF9kcGNkWzFdICYgRFBfRURQX0JBQ0tMSUdIVF9QSU5fRU5BQkxF X0NBUCkpCisJCXJldHVybiB0cnVlOworCisJcmV0dXJuIGZhbHNlOworCit9CisKIGludCBpbnRl bF9kcF9hdXhfaW5pdF9iYWNrbGlnaHRfZnVuY3Moc3RydWN0IGludGVsX2Nvbm5lY3RvciAqaW50 ZWxfY29ubmVjdG9yKQogewogCXN0cnVjdCBpbnRlbF9wYW5lbCAqcGFuZWwgPSAmaW50ZWxfY29u bmVjdG9yLT5wYW5lbDsKQEAgLTE4Nyw2ICsyNDEsMTAgQEAgaW50IGludGVsX2RwX2F1eF9pbml0 X2JhY2tsaWdodF9mdW5jcyhzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICppbnRlbF9jb25uZWN0b3Ip CiAJaWYgKCFpbnRlbF9kcF9hdXhfZGlzcGxheV9jb250cm9sX2NhcGFibGUoaW50ZWxfY29ubmVj dG9yKSkKIAkJcmV0dXJuIC1FTk9ERVY7CiAKKwlpZiAoaTkxNS5lbmFibGVfZHBjZF9iYWNrbGln aHQgPT0gLTEgJiYKKwkgICAgIWludGVsX2RwX2F1eF9kaXNwbGF5X2NvbnRyb2xfaGV1cmlzdGlj KGludGVsX2Nvbm5lY3RvcikpCisJCXJldHVybiAtRU5PREVWOworCiAJcGFuZWwtPmJhY2tsaWdo dC5zZXR1cCA9IGludGVsX2RwX2F1eF9zZXR1cF9iYWNrbGlnaHQ7CiAJcGFuZWwtPmJhY2tsaWdo dC5lbmFibGUgPSBpbnRlbF9kcF9hdXhfZW5hYmxlX2JhY2tsaWdodDsKIAlwYW5lbC0+YmFja2xp Z2h0LmRpc2FibGUgPSBpbnRlbF9kcF9hdXhfZGlzYWJsZV9iYWNrbGlnaHQ7Ci0tIAoyLjEzLjAu MjE5LmdkYjY1YWNjODgyLWdvb2cKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2ludGVsLWdmeAo=