From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anusha Srivatsa Subject: [PATCH] drm/i915/cnp: Backlight support for CNP. Date: Wed, 3 May 2017 16:30:00 -0700 Message-ID: <1493854200-22828-1-git-send-email-anusha.srivatsa@intel.com> References: <87d1c9vqfg.fsf@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 66EB16E001 for ; Wed, 3 May 2017 23:31:13 +0000 (UTC) In-Reply-To: <87d1c9vqfg.fsf@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 Cc: Jani Nikula , Rodrigo Vivi List-Id: intel-gfx@lists.freedesktop.org RnJvbTogUm9kcmlnbyBWaXZpIDxyb2RyaWdvLnZpdmlAaW50ZWwuY29tPgoKU3BsaXQgb3V0IEJY VCBhbmQgQ05QJ3Mgc2V0dXBfYmFja2xpZ2h0KCksZW5hYmxlX2JhY2tsaWdodCgpLApkaXNhYmxl X2JhY2tsaWdodCgpIGFuZCBoel90b19wd20oKSBpbnRvCnR3byBzZXBhcmF0ZSBmdW5jdGlvbnMg aW5zdGVhZCBvZiByZXVzaW5nIEJYVCBmdW5jdGlvbi4KClJldXNlIHNldF9iYWNrbGlnaHQoKSBh bmQgZ2V0X2JhY2tsaWdodCgpIHNpbmNlIHRoZXkgaGF2ZQpubyByZWZlcmVuY2UgdG8gdGhlIHV0 aWxpdHkgcGluLgoKdjI6IFJldXNlIEJYVCBmdW5jdGlvbnMgd2l0aCBjb250cm9sbGVyIDAgaW5z dGVhZCBvZgogICAgcmVkZWZpbmluZyBpdC4gKEphbmkpLgogICAgVXNlIGRldl9wcml2LT5yYXdj bGtfZnJlcSBpbnN0ZWFkIG9mIGdldHRpbmcgdGhlIHZhbHVlCiAgICBmcm9tIFNGVVNFX1NUUkFQ Lgp2MzogQXZvaWQgc2V0dXAgYmFja2xpZ2ggY29udHJvbGxlciBhbG9uZyB3aXRoIGhvb2tzIGFu ZAogICAgZnVsbHkgcmV1c2UgaG9va3Mgc2V0dXAgYXMgc3VnZ2VzdGVkIGJ5IEphbmkuCnY0OiBD bGVhbiB1cCBjb21taXQgbWVzc2FnZS4KdjU6IEltcGxlbWVudCBwZXIgUENIIGluc3RlYWQgcGVy IHBsYXRmb3JtLgoKdjY6IEludHJvZHVjZSBhIG5ldyBmdW5jdGlvbiBmb3IgQ05QLihKYW5pIGFu ZCBWaWxsZSkKCnY3OiBTcXVhc2ggdGhlIGFsbCBDTlAgQmFja2xpZ2h0IHN1cHBvcnQgcGF0Y2hl cyBpbnRvIGEKc2luZ2xlIHBhdGNoLiAoSmFuaSkKCnY4OiBDb3JyZWN0IGluZGVudGF0aW9uLCBy ZW1vdmUgdW5uZWVkZWQgYmxhbmsgbGluZXMgYW5kCmNvcnJlY3QgbWFpbCBhZGRyZXNzIChKYW5p KS4KClN1Z2dlc3RlZC1ieTogSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGludGVsLmNvbT4KU3Vn Z2VzdGVkLWJ5OiBWaWxsZSBTeXJqYWxhIDx2aWxsZS5zeXJqYWxhQGludGVsLmNvbT4KQ2M6IFZp bGxlIFN5cmphbGEgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgpDYzogSmFuaSBOaWt1 bGEgPGphbmkubmlrdWxhQGludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogQW51c2hhIFNyaXZhdHNh IDxhbnVzaGEuc3JpdmF0c2FAaW50ZWwuY29tPgpTaWduZWQtb2ZmLWJ5OiBSb2RyaWdvIFZpdmkg PHJvZHJpZ28udml2aUBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf cGFuZWwuYyB8IDg4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tCiAxIGZp bGUgY2hhbmdlZCwgODMgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wYW5lbC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfcGFuZWwuYwppbmRleCAxOTc4YmVjLi44ZWU2MWMxIDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wYW5lbC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3BhbmVsLmMKQEAgLTc5Niw2ICs3OTYsMTkgQEAgc3RhdGljIHZvaWQgYnh0X2Rpc2Fi bGVfYmFja2xpZ2h0KHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvcikKIAl9CiB9CiAK K3N0YXRpYyB2b2lkIGNucF9kaXNhYmxlX2JhY2tsaWdodChzdHJ1Y3QgaW50ZWxfY29ubmVjdG9y ICpjb25uZWN0b3IpCit7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9f aTkxNShjb25uZWN0b3ItPmJhc2UuZGV2KTsKKwlzdHJ1Y3QgaW50ZWxfcGFuZWwgKnBhbmVsID0g JmNvbm5lY3Rvci0+cGFuZWw7CisJdTMyIHRtcCwgdmFsOworCisJaW50ZWxfcGFuZWxfYWN0dWFs bHlfc2V0X2JhY2tsaWdodChjb25uZWN0b3IsIDApOworCisJdG1wID0gSTkxNV9SRUFEKEJYVF9C TENfUFdNX0NUTChwYW5lbC0+YmFja2xpZ2h0LmNvbnRyb2xsZXIpKTsKKwlJOTE1X1dSSVRFKEJY VF9CTENfUFdNX0NUTChwYW5lbC0+YmFja2xpZ2h0LmNvbnRyb2xsZXIpLAorCQkgICB0bXAgJiB+ QlhUX0JMQ19QV01fRU5BQkxFKTsKK30KKwogc3RhdGljIHZvaWQgcHdtX2Rpc2FibGVfYmFja2xp Z2h0KHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvcikKIHsKIAlzdHJ1Y3QgaW50ZWxf cGFuZWwgKnBhbmVsID0gJmNvbm5lY3Rvci0+cGFuZWw7CkBAIC0xMDc2LDYgKzEwODksMzYgQEAg c3RhdGljIHZvaWQgYnh0X2VuYWJsZV9iYWNrbGlnaHQoc3RydWN0IGludGVsX2Nvbm5lY3RvciAq Y29ubmVjdG9yKQogCQkJcHdtX2N0bCB8IEJYVF9CTENfUFdNX0VOQUJMRSk7CiB9CiAKK3N0YXRp YyB2b2lkIGNucF9lbmFibGVfYmFja2xpZ2h0KHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5l Y3RvcikKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNv bm5lY3Rvci0+YmFzZS5kZXYpOworCXN0cnVjdCBpbnRlbF9wYW5lbCAqcGFuZWwgPSAmY29ubmVj dG9yLT5wYW5lbDsKKwllbnVtIHBpcGUgcGlwZSA9IGludGVsX2dldF9waXBlX2Zyb21fY29ubmVj dG9yKGNvbm5lY3Rvcik7CisJdTMyIHB3bV9jdGwsIHZhbDsKKworCXB3bV9jdGwgPSBJOTE1X1JF QUQoQlhUX0JMQ19QV01fQ1RMKHBhbmVsLT5iYWNrbGlnaHQuY29udHJvbGxlcikpOworCWlmIChw d21fY3RsICYgQlhUX0JMQ19QV01fRU5BQkxFKSB7CisJCURSTV9ERUJVR19LTVMoImJhY2tsaWdo dCBhbHJlYWR5IGVuYWJsZWRcbiIpOworCQlwd21fY3RsICY9IH5CWFRfQkxDX1BXTV9FTkFCTEU7 CisJCUk5MTVfV1JJVEUoQlhUX0JMQ19QV01fQ1RMKHBhbmVsLT5iYWNrbGlnaHQuY29udHJvbGxl ciksCisJCQkgICBwd21fY3RsKTsKKwl9CisKKwlJOTE1X1dSSVRFKEJYVF9CTENfUFdNX0ZSRVEo cGFuZWwtPmJhY2tsaWdodC5jb250cm9sbGVyKSwKKwkJICAgcGFuZWwtPmJhY2tsaWdodC5tYXgp OworCisJaW50ZWxfcGFuZWxfYWN0dWFsbHlfc2V0X2JhY2tsaWdodChjb25uZWN0b3IsIHBhbmVs LT5iYWNrbGlnaHQubGV2ZWwpOworCisJcHdtX2N0bCA9IDA7CisJaWYgKHBhbmVsLT5iYWNrbGln aHQuYWN0aXZlX2xvd19wd20pCisJCXB3bV9jdGwgfD0gQlhUX0JMQ19QV01fUE9MQVJJVFk7CisK KwlJOTE1X1dSSVRFKEJYVF9CTENfUFdNX0NUTChwYW5lbC0+YmFja2xpZ2h0LmNvbnRyb2xsZXIp LCBwd21fY3RsKTsKKwlQT1NUSU5HX1JFQUQoQlhUX0JMQ19QV01fQ1RMKHBhbmVsLT5iYWNrbGln aHQuY29udHJvbGxlcikpOworCUk5MTVfV1JJVEUoQlhUX0JMQ19QV01fQ1RMKHBhbmVsLT5iYWNr bGlnaHQuY29udHJvbGxlciksCisJCSAgIHB3bV9jdGwgfCBCWFRfQkxDX1BXTV9FTkFCTEUpOwor fQorCiBzdGF0aWMgdm9pZCBwd21fZW5hYmxlX2JhY2tsaWdodChzdHJ1Y3QgaW50ZWxfY29ubmVj dG9yICpjb25uZWN0b3IpCiB7CiAJc3RydWN0IGludGVsX3BhbmVsICpwYW5lbCA9ICZjb25uZWN0 b3ItPnBhbmVsOwpAQCAtMTY0NSw2ICsxNjg4LDM3IEBAIGJ4dF9zZXR1cF9iYWNrbGlnaHQoc3Ry dWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBlbnVtIHBpcGUgdW51c2VkKQogCXJldHVy biAwOwogfQogCitzdGF0aWMgaW50CitjbnBfc2V0dXBfYmFja2xpZ2h0KHN0cnVjdCBpbnRlbF9j b25uZWN0b3IgKmNvbm5lY3RvciwgZW51bSBwaXBlIHVudXNlZCkKK3sKKwlzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNvbm5lY3Rvci0+YmFzZS5kZXYpOworCXN0 cnVjdCBpbnRlbF9wYW5lbCAqcGFuZWwgPSAmY29ubmVjdG9yLT5wYW5lbDsKKwl1MzIgcHdtX2N0 bCwgdmFsOworCisJcGFuZWwtPmJhY2tsaWdodC5jb250cm9sbGVyID0gZGV2X3ByaXYtPnZidC5i YWNrbGlnaHQuY29udHJvbGxlcjsKKworCXB3bV9jdGwgPSBJOTE1X1JFQUQoQlhUX0JMQ19QV01f Q1RMKHBhbmVsLT5iYWNrbGlnaHQuY29udHJvbGxlcikpOworCisJcGFuZWwtPmJhY2tsaWdodC5h Y3RpdmVfbG93X3B3bSA9IHB3bV9jdGwgJiBCWFRfQkxDX1BXTV9QT0xBUklUWTsKKwlwYW5lbC0+ YmFja2xpZ2h0Lm1heCA9CisJCUk5MTVfUkVBRChCWFRfQkxDX1BXTV9GUkVRKHBhbmVsLT5iYWNr bGlnaHQuY29udHJvbGxlcikpOworCisJaWYgKCFwYW5lbC0+YmFja2xpZ2h0Lm1heCkKKwkJcGFu ZWwtPmJhY2tsaWdodC5tYXggPSBnZXRfYmFja2xpZ2h0X21heF92YnQoY29ubmVjdG9yKTsKKwor CWlmICghcGFuZWwtPmJhY2tsaWdodC5tYXgpCisJCXJldHVybiAtRU5PREVWOworCisJdmFsID0g Ynh0X2dldF9iYWNrbGlnaHQoY29ubmVjdG9yKTsKKwl2YWwgPSBpbnRlbF9wYW5lbF9jb21wdXRl X2JyaWdodG5lc3MoY29ubmVjdG9yLCB2YWwpOworCXBhbmVsLT5iYWNrbGlnaHQubGV2ZWwgPSBj bGFtcCh2YWwsIHBhbmVsLT5iYWNrbGlnaHQubWluLAorCQkJCSAgICAgICBwYW5lbC0+YmFja2xp Z2h0Lm1heCk7CisKKwlwYW5lbC0+YmFja2xpZ2h0LmVuYWJsZWQgPSBwd21fY3RsICYgQlhUX0JM Q19QV01fRU5BQkxFOworCisJcmV0dXJuIDA7Cit9CisKIHN0YXRpYyBpbnQgcHdtX3NldHVwX2Jh Y2tsaWdodChzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IsCiAJCQkgICAgICAgZW51 bSBwaXBlIHBpcGUpCiB7CkBAIC0xNzU0LDE2ICsxODI4LDIwIEBAIGludGVsX3BhbmVsX2luaXRf YmFja2xpZ2h0X2Z1bmNzKHN0cnVjdCBpbnRlbF9wYW5lbCAqcGFuZWwpCiAJICAgIGludGVsX2Rz aV9kY3NfaW5pdF9iYWNrbGlnaHRfZnVuY3MoY29ubmVjdG9yKSA9PSAwKQogCQlyZXR1cm47CiAK LQlpZiAoSVNfR0VOOV9MUChkZXZfcHJpdikgfHwgSEFTX1BDSF9DTlAoZGV2X3ByaXYpKSB7CisJ aWYgKElTX0dFTjlfTFAoZGV2X3ByaXYpKSB7CiAJCXBhbmVsLT5iYWNrbGlnaHQuc2V0dXAgPSBi eHRfc2V0dXBfYmFja2xpZ2h0OwogCQlwYW5lbC0+YmFja2xpZ2h0LmVuYWJsZSA9IGJ4dF9lbmFi bGVfYmFja2xpZ2h0OwogCQlwYW5lbC0+YmFja2xpZ2h0LmRpc2FibGUgPSBieHRfZGlzYWJsZV9i YWNrbGlnaHQ7CiAJCXBhbmVsLT5iYWNrbGlnaHQuc2V0ID0gYnh0X3NldF9iYWNrbGlnaHQ7CiAJ CXBhbmVsLT5iYWNrbGlnaHQuZ2V0ID0gYnh0X2dldF9iYWNrbGlnaHQ7Ci0JCWlmIChJU19HRU45 X0xQKGRldl9wcml2KSkKLQkJCXBhbmVsLT5iYWNrbGlnaHQuaHpfdG9fcHdtID0gYnh0X2h6X3Rv X3B3bTsKLQkJZWxzZQotCQkJcGFuZWwtPmJhY2tsaWdodC5oel90b19wd20gPSBjbnBfaHpfdG9f cHdtOworCQlwYW5lbC0+YmFja2xpZ2h0Lmh6X3RvX3B3bSA9IGJ4dF9oel90b19wd207CisJfSBl bHNlIGlmIChIQVNfUENIX0NOUChkZXZfcHJpdikpIHsKKwkJcGFuZWwtPmJhY2tsaWdodC5zZXR1 cCA9IGNucF9zZXR1cF9iYWNrbGlnaHQ7CisJCXBhbmVsLT5iYWNrbGlnaHQuZW5hYmxlID0gY25w X2VuYWJsZV9iYWNrbGlnaHQ7CisJCXBhbmVsLT5iYWNrbGlnaHQuZGlzYWJsZSA9IGNucF9kaXNh YmxlX2JhY2tsaWdodDsKKwkJcGFuZWwtPmJhY2tsaWdodC5zZXQgPSBieHRfc2V0X2JhY2tsaWdo dDsKKwkJcGFuZWwtPmJhY2tsaWdodC5nZXQgPSBieHRfZ2V0X2JhY2tsaWdodDsKKwkJcGFuZWwt PmJhY2tsaWdodC5oel90b19wd20gPSBjbnBfaHpfdG9fcHdtOwogCX0gZWxzZSBpZiAoSEFTX1BD SF9MUFQoZGV2X3ByaXYpIHx8IEhBU19QQ0hfU1BUKGRldl9wcml2KSB8fAogCQkgICBIQVNfUENI X0tCUChkZXZfcHJpdikpIHsKIAkJcGFuZWwtPmJhY2tsaWdodC5zZXR1cCA9IGxwdF9zZXR1cF9i YWNrbGlnaHQ7Ci0tIAoyLjcuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRl c2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v aW50ZWwtZ2Z4Cg==