From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ramalingam C Subject: [PATCH 35/43] drm/i915: Enable HDCP version that is best capable Date: Wed, 14 Feb 2018 19:43:50 +0530 Message-ID: <1518617638-21684-36-git-send-email-ramalingam.c@intel.com> References: <1518617638-21684-1-git-send-email-ramalingam.c@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id B51A96E43C for ; Wed, 14 Feb 2018 14:21:09 +0000 (UTC) In-Reply-To: <1518617638-21684-1-git-send-email-ramalingam.c@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: seanpaul@chromium.org, intel-gfx@lists.freedesktop.org, rodrigo.vivi@intel.com, daniel.vetter@ffwll.ch Cc: tomas.winkler@intel.com List-Id: intel-gfx@lists.freedesktop.org aGRjcF9lbmFibGVfd29yayBpcyBleHRlbmRlZCB0byBjaG9vc2UgdGhlIGJldHRlciBoZGNwIHZl cnNpb24gYmFzZWQKb24gdGhlIHN5c3RlbSBhbmQgcGFuZWwgY2FwYWJpbGl0eS4KCkFuZCBpbnRl bF9oZGNwX2Rpc2FibGUgd2lsbCBmaW5kIHRoZSB2ZXJzaW9uIHRoYXQgaXMgaW5mb3JjZSwgaWYg YW55LgpBbmQgY29ycmVzcG9uZGluZyB2ZXJzaW9uIHNwZWNpZmljIGRpc2FibGUgZnVuY3Rpb24g YWxvbmUgY2FsbGVkLgoKU2lnbmVkLW9mZi1ieTogUmFtYWxpbmdhbSBDIDxyYW1hbGluZ2FtLmNA aW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkY3AuYyB8IDExMiAr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDEw MCBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9oZGNwLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZGNw LmMKaW5kZXggNjlhZTQ3ZWFmZjQ5Li4yZmU3M2Y3ZWI2ZGQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2hkY3AuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9oZGNwLmMKQEAgLTI3LDYgKzI3LDQzIEBAIHN0YXRpYyBpbnQgX2ludGVsX2hkY3AyX2Rpc2Fi bGUoc3RydWN0IGludGVsX2hkY3AgKmhkY3ApOwogc3RhdGljIHZvaWQgaW50ZWxfaGRjcDJfY2hl Y2tfd29yayhzdHJ1Y3Qgd29ya19zdHJ1Y3QgKndvcmspOwogc3RhdGljIGludCBpbnRlbF9oZGNw Ml9jaGVja19saW5rKHN0cnVjdCBpbnRlbF9oZGNwICpoZGNwKTsKIAorc3RhdGljIGlubGluZSBi b29sIGludGVsX2hkY3AxX3N1cHBvcnRlZChzdHJ1Y3QgaW50ZWxfaGRjcCAqaGRjcCkKK3sKKwly ZXR1cm4gKGhkY3AtPnBsYXRfY2FwICYgSERDUF9DQVBBQklMSVRZICYmCisJCWhkY3AtPnBhbmVs X2NhcCAmIEhEQ1BfQ0FQQUJJTElUWSk7Cit9CisKK3N0YXRpYyBpbmxpbmUgYm9vbCBpbnRlbF9o ZGNwMl9zdXBwb3J0ZWQoc3RydWN0IGludGVsX2hkY3AgKmhkY3ApCit7CisJcmV0dXJuIChoZGNw LT5wbGF0X2NhcCAmIEhEQ1AyX0NBUEFCSUxJVFkgJiYKKwkJaGRjcC0+cGFuZWxfY2FwICYgSERD UDJfQ0FQQUJJTElUWSk7Cit9CisKK3N0YXRpYyBpbmxpbmUgYm9vbCBpbnRlbF9oZGNwX2luX2Zv cmNlKHN0cnVjdCBpbnRlbF9oZGNwICpoZGNwKQoreworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdiA9IHRvX2k5MTUoaGRjcC0+Y29ubmVjdG9yLT5iYXNlLmRldik7CisJZW51bSBw b3J0IHBvcnQgPSBoZGNwLT5jb25uZWN0b3ItPmVuY29kZXItPnBvcnQ7CisJdTMyIHJlZzsKKwor CXJlZyA9IEk5MTVfUkVBRChQT1JUX0hEQ1BfU1RBVFVTKHBvcnQpKTsKKwlpZiAocmVnICYgSERD UF9TVEFUVVNfQVVUSCB8fCByZWcgJiBIRENQX1NUQVRVU19FTkMpCisJCXJldHVybiB0cnVlOwor CXJldHVybiBmYWxzZTsKKworfQorCitzdGF0aWMgaW5saW5lIGJvb2wgaW50ZWxfaGRjcDJfaW5f Zm9yY2Uoc3RydWN0IGludGVsX2hkY3AgKmhkY3ApCit7CisJc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmRldl9wcml2ID0gdG9faTkxNShoZGNwLT5jb25uZWN0b3ItPmJhc2UuZGV2KTsKKwllbnVt IHBvcnQgcG9ydCA9IGhkY3AtPmNvbm5lY3Rvci0+ZW5jb2Rlci0+cG9ydDsKKwl1MzIgcmVnOwor CisJcmVnID0gSTkxNV9SRUFEKEhEQ1AyX1NUQVRVU19EREkocG9ydCkpOworCWlmIChyZWcgJiBM SU5LX0VOQ1JZUFRJT05fU1RBVFVTIHx8IHJlZyAmIExJTktfQVVUSF9TVEFUVVMpCisJCXJldHVy biB0cnVlOworCXJldHVybiBmYWxzZTsKK30KKwogc3RhdGljIGludCBpbnRlbF9oZGNwX3BvbGxf a3N2X2ZpZm8oc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGlnX3BvcnQsCiAJCQkJ ICAgIGNvbnN0IHN0cnVjdCBpbnRlbF9oZGNwX3NoaW0gKnNoaW0pCiB7CkBAIC02NTAsNyArNjg3 LDExIEBAIHN0YXRpYyB2b2lkIGludGVsX2hkY3BfZW5hYmxlX3dvcmsoc3RydWN0IHdvcmtfc3Ry dWN0ICp3b3JrKQogCQkJCQkgICAgICAgaGRjcF9lbmFibGVfd29yayk7CiAKIAltdXRleF9sb2Nr KCZoZGNwLT5oZGNwX211dGV4KTsKLQlfaW50ZWxfaGRjcF9lbmFibGUoaGRjcCk7CisJaWYgKGlu dGVsX2hkY3AyX3N1cHBvcnRlZChoZGNwKSkKKwkJX2ludGVsX2hkY3AyX2VuYWJsZShoZGNwKTsK KwllbHNlIGlmIChpbnRlbF9oZGNwMV9zdXBwb3J0ZWQoaGRjcCkpCisJCV9pbnRlbF9oZGNwX2Vu YWJsZShoZGNwKTsKKwogCW11dGV4X3VubG9jaygmaGRjcC0+aGRjcF9tdXRleCk7CiB9CiAKQEAg LTcyNywxMyArNzY4LDQ4IEBAIGludCBpbnRlbF9oZGNwX2luaXQoc3RydWN0IGludGVsX2Nvbm5l Y3RvciAqY29ubmVjdG9yLAogCXJldHVybiByZXQ7CiB9CiAKK3N0YXRpYyB2b2lkIGludGVsX2hk Y3BfcHJvYmVfcGFuZWxfY2FwKHN0cnVjdCBpbnRlbF9oZGNwICpoZGNwKQoreworCXN0cnVjdCBp bnRlbF9kaWdpdGFsX3BvcnQgKmludGVsX2RpZ19wb3J0ID0KKwkJCQkJY29ubl90b19kaWdfcG9y dChoZGNwLT5jb25uZWN0b3IpOworCWJvb2wgY2FwYWJsZSA9IGZhbHNlOworCXU4IGJrc3ZbNV07 CisKKwloZGNwLT5wYW5lbF9jYXAgPSAwOworCisJaWYgKGhkY3AtPnBsYXRfY2FwICYgSERDUF9D QVBBQklMSVRZKSB7CisJCWlmIChoZGNwLT5oZGNwX3NoaW0tPmhkY3BfY2FwYWJsZSkgeworCQkJ aGRjcC0+aGRjcF9zaGltLT5oZGNwX2NhcGFibGUoaW50ZWxfZGlnX3BvcnQsICZjYXBhYmxlKTsK KwkJfSBlbHNlIHsKKwkJCWlmICghaW50ZWxfaGRjcF9yZWFkX3ZhbGlkX2Jrc3YoaW50ZWxfZGln X3BvcnQsCisJCQkJCQkJaGRjcC0+aGRjcF9zaGltLCBia3N2KSkKKwkJCQljYXBhYmxlID0gdHJ1 ZTsKKwkJfQorCQlpZiAoY2FwYWJsZSkKKwkJCWhkY3AtPnBhbmVsX2NhcCB8PSBIRENQX0NBUEFC SUxJVFk7CisJfQorCisJaWYgKGhkY3AtPnBsYXRfY2FwICYgSERDUDJfQ0FQQUJJTElUWSkgewor CQloZGNwLT5oZGNwMl9zaGltLT5oZGNwX2NhcGFibGUoaW50ZWxfZGlnX3BvcnQsICZjYXBhYmxl KTsKKwkJaWYgKGNhcGFibGUpCisJCQloZGNwLT5wYW5lbF9jYXAgfD0gSERDUDJfQ0FQQUJJTElU WTsKKwl9CisJRFJNX0RFQlVHX0tNUygicGxhdF9jYXA6IDB4JVgsIHBhbmVsX2NhcDogMHglWFxu IiwKKwkJICAgICAgaGRjcC0+cGxhdF9jYXAsIGhkY3AtPnBhbmVsX2NhcCk7Cit9CisKIGludCBp bnRlbF9oZGNwX2VuYWJsZShzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IpCiB7CiAJ c3RydWN0IGludGVsX2hkY3AgKmhkY3AgPSBjb25uZWN0b3ItPmhkY3A7CiAKLQlpZiAoIWhkY3Ag fHwgIWhkY3AtPmhkY3Bfc2hpbSkKKwlpZiAoIWhkY3ApCiAJCXJldHVybiAtRU5PRU5UOwogCisJ aW50ZWxfaGRjcF9wcm9iZV9wYW5lbF9jYXAoaGRjcCk7CisKKwlpZiAoIWludGVsX2hkY3AxX3N1 cHBvcnRlZChoZGNwKSAmJiAhaW50ZWxfaGRjcDJfc3VwcG9ydGVkKGhkY3ApKQorCQlyZXR1cm4g LUVJTlZBTDsKKwogCW11dGV4X2xvY2soJmhkY3AtPmhkY3BfbXV0ZXgpOwogCXNjaGVkdWxlX3dv cmsoJmhkY3AtPmhkY3BfZW5hYmxlX3dvcmspOwogCW11dGV4X3VubG9jaygmaGRjcC0+aGRjcF9t dXRleCk7CkBAIC03NDQsMjEgKzgyMCwzMyBAQCBpbnQgaW50ZWxfaGRjcF9lbmFibGUoc3RydWN0 IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQogaW50IGludGVsX2hkY3BfZGlzYWJsZShzdHJ1 Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IpCiB7CiAJc3RydWN0IGludGVsX2hkY3AgKmhk Y3AgPSBjb25uZWN0b3ItPmhkY3A7Ci0JaW50IHJldCA9IDA7CiAKLQlpZiAoIWhkY3AgfHwgIWhk Y3AtPmhkY3Bfc2hpbSkKKwlpZiAoIWhkY3ApCiAJCXJldHVybiAtRU5PRU5UOwogCi0JbXV0ZXhf bG9jaygmaGRjcC0+aGRjcF9tdXRleCk7CisJaWYgKGhkY3AtPmhkY3BfdmFsdWUgPT0gRFJNX01P REVfQ09OVEVOVF9QUk9URUNUSU9OX1VOREVTSVJFRCkKKwkJcmV0dXJuIDA7CiAKLQlpZiAoaGRj cC0+aGRjcF92YWx1ZSAhPSBEUk1fTU9ERV9DT05URU5UX1BST1RFQ1RJT05fVU5ERVNJUkVEKSB7 Ci0JCWhkY3AtPmhkY3BfdmFsdWUgPSBEUk1fTU9ERV9DT05URU5UX1BST1RFQ1RJT05fVU5ERVNJ UkVEOwotCQlyZXQgPSBfaW50ZWxfaGRjcF9kaXNhYmxlKGhkY3ApOwotCX0KKwkvKgorCSAqIFNl dHRpbmcgaXQgb3V0IG9mIG11dGV4LCBzbyB0aGF0IG90aGVyIG9uIGdvaW5nIHByb2Nlc3MgbGlr ZSBjaGVjaworCSAqIGxpbmsgYW5kIGF1dGggY2FuIGNoZWNrIGZvciB0aGlzIHN0YXRlIGNoYW5n ZSBhbmQgdGVybWluYXRlIHRoZW1zZWxmLgorCSAqLworCWhkY3AtPmhkY3BfdmFsdWUgPSBEUk1f TU9ERV9DT05URU5UX1BST1RFQ1RJT05fVU5ERVNJUkVEOworCWNhbmNlbF93b3JrX3N5bmMoJmhk Y3AtPmhkY3BfZW5hYmxlX3dvcmspOwogCi0JbXV0ZXhfdW5sb2NrKCZoZGNwLT5oZGNwX211dGV4 KTsKIAljYW5jZWxfZGVsYXllZF93b3JrX3N5bmMoJmhkY3AtPmhkY3BfY2hlY2tfd29yayk7Ci0J cmV0dXJuIHJldDsKKwljYW5jZWxfZGVsYXllZF93b3JrX3N5bmMoJmhkY3AtPmhkY3AyX2NoZWNr X3dvcmspOworCisJbXV0ZXhfbG9jaygmaGRjcC0+aGRjcF9tdXRleCk7CisJaWYgKGhkY3AtPnBs YXRfY2FwICYgSERDUF9DQVBBQklMSVRZKQorCQlpZiAoaW50ZWxfaGRjcF9pbl9mb3JjZShoZGNw KSkKKwkJCV9pbnRlbF9oZGNwX2Rpc2FibGUoaGRjcCk7CisJaWYgKGhkY3AtPnBsYXRfY2FwICYg SERDUDJfQ0FQQUJJTElUWSkKKwkJaWYgKGludGVsX2hkY3AyX2luX2ZvcmNlKGhkY3ApKQorCQkJ X2ludGVsX2hkY3AyX2Rpc2FibGUoaGRjcCk7CisJbXV0ZXhfdW5sb2NrKCZoZGNwLT5oZGNwX211 dGV4KTsKKworCXJldHVybiAwOwogfQogCiB2b2lkIGludGVsX2hkY3BfYXRvbWljX2NoZWNrKHN0 cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCkBAIC0xNDM3LDcgKzE1MjUsNyBAQCBzdGF0 aWMgaW50IF9pbnRlbF9oZGNwMl9kaXNhYmxlKHN0cnVjdCBpbnRlbF9oZGNwICpoZGNwKQogewog CWludCByZXQ7CiAKLQlEUk1fRVJST1IoIlslczolZF0gSERDUDIuMiBpcyBiZWluZyBEaXNhYmxl ZFxuIiwKKwlEUk1fSU5GTygiWyVzOiVkXSBIRENQMi4yIGlzIGJlaW5nIERpc2FibGVkXG4iLAog CQkgIGhkY3AtPmNvbm5lY3Rvci0+YmFzZS5uYW1lLCBoZGNwLT5jb25uZWN0b3ItPmJhc2UuYmFz ZS5pZCk7CiAKIAlyZXQgPSBoZGNwMl9kaXNhYmxlX2VuY3J5cHRpb24oaGRjcCk7Ci0tIAoyLjcu NAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwt Z2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==