From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ramalingam C Subject: [PATCH v2 29/42] drm/i915: Implement HDCP2.2 link integrity check Date: Thu, 8 Mar 2018 17:28:56 +0530 Message-ID: <1520510349-8385-30-git-send-email-ramalingam.c@intel.com> References: <1520510349-8385-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: In-Reply-To: <1520510349-8385-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: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, seanpaul@chromium.org, chris@chris-wilson.co.uk, tomas.winkler@intel.com, jani.nikula@linux.intel.com Cc: rodrigo.vivi@intel.com List-Id: intel-gfx@lists.freedesktop.org SW1wbGVtZW50cyB0aGUgbGluayBpbnRlZ3JpdHkgY2hlY2sgb25jZSBpbiA1MDBtU2VjLgoKT25j ZSBlbmNyeXB0aW9uIGlzIGVuYWJsZWQsIGFuIG9uZ29pbmcgTGluayBJbnRlZ3JpdHkgQ2hlY2sg aXMKcGVyZm9ybWVkIGJ5IHRoZSBIRENQIFJlY2VpdmVyIHRvIGNoZWNrIHRoYXQgY2lwaGVyIHN5 bmNocm9uaXphdGlvbgppcyBtYWludGFpbmVkIGJldHdlZW4gdGhlIEhEQ1AgVHJhbnNtaXR0ZXIg YW5kIHRoZSBIRENQIFJlY2VpdmVyLgoKT24gdGhlIGRldGVjdGlvbiBvZiBzeW5jaHJvbml6YXRp b24gbG9zdCwgdGhlIEhEQ1AgUmVjZWl2ZXIgbXVzdCBhc3NlcnQKdGhlIGNvcnJlc3BvbmRpbmcg Yml0cyBvZiB0aGUgUnhTdGF0dXMgcmVnaXN0ZXIuIFRoZSBUcmFuc21pdHRlciBwb2xscwp0aGUg UnhTdGF0dXMgcmVnaXN0ZXIgYW5kIGl0IG1heSBpbml0aWF0ZSByZS1hdXRoZW50aWNhdGlvbi4K CnYyOgogIFJlYmFzZWQuCgpTaWduZWQtb2ZmLWJ5OiBSYW1hbGluZ2FtIEMgPHJhbWFsaW5nYW0u Y0BpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRjcC5jIHwgODEg KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCiBpbmNsdWRlL2RybS9kcm1f aGRjcC5oICAgICAgICAgICAgfCAgOCArKysrCiAyIGZpbGVzIGNoYW5nZWQsIDg4IGluc2VydGlv bnMoKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9oZGNwLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZGNwLmMKaW5kZXggNDE5 MTVkNjI2ZDIwLi4yYmM5NTJiODI4YjIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2hkY3AuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZGNwLmMKQEAg LTIzLDYgKzIzLDggQEAKIAogc3RhdGljIGludCBfaW50ZWxfaGRjcDJfZW5hYmxlKHN0cnVjdCBp bnRlbF9jb25uZWN0b3IgKmNvbm5lY3Rvcik7CiBzdGF0aWMgaW50IF9pbnRlbF9oZGNwMl9kaXNh YmxlKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3Rvcik7CitzdGF0aWMgdm9pZCBpbnRl bF9oZGNwMl9jaGVja193b3JrKHN0cnVjdCB3b3JrX3N0cnVjdCAqd29yayk7CitzdGF0aWMgaW50 IGludGVsX2hkY3AyX2NoZWNrX2xpbmsoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9y KTsKIAogc3RhdGljIGludCBpbnRlbF9oZGNwX3BvbGxfa3N2X2ZpZm8oc3RydWN0IGludGVsX2Rp Z2l0YWxfcG9ydCAqaW50ZWxfZGlnX3BvcnQsCiAJCQkJICAgIGNvbnN0IHN0cnVjdCBpbnRlbF9o ZGNwX3NoaW0gKnNoaW0pCkBAIC0xNDU2LDYgKzE0NTgsODMgQEAgc3RhdGljIGludCBfaW50ZWxf aGRjcDJfZW5hYmxlKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvcikKIAogCWhkY3At PmhkY3BfdmFsdWUgPSBEUk1fTU9ERV9DT05URU5UX1BST1RFQ1RJT05fRU5BQkxFRDsKIAlzY2hl ZHVsZV93b3JrKCZoZGNwLT5oZGNwX3Byb3Bfd29yayk7Ci0KKwlzY2hlZHVsZV9kZWxheWVkX3dv cmsoJmhkY3AtPmhkY3AyX2NoZWNrX3dvcmssCisJCQkgICAgICBEUk1fSERDUDJfQ0hFQ0tfUEVS SU9EX01TKTsKIAlyZXR1cm4gMDsKIH0KKworc3RhdGljIGludCBpbnRlbF9oZGNwMl9jaGVja19s aW5rKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvcikKK3sKKwlzdHJ1Y3QgaW50ZWxf ZGlnaXRhbF9wb3J0ICppbnRlbF9kaWdfcG9ydCA9IGNvbm5fdG9fZGlnX3BvcnQoY29ubmVjdG9y KTsKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNvbm5lY3Rv ci0+YmFzZS5kZXYpOworCXN0cnVjdCBpbnRlbF9oZGNwICpoZGNwID0gJmNvbm5lY3Rvci0+aGRj cDsKKwllbnVtIHBvcnQgcG9ydCA9IGNvbm5lY3Rvci0+ZW5jb2Rlci0+cG9ydDsKKwlpbnQgcmV0 ID0gMDsKKworCWlmICghaGRjcC0+aGRjcF9zaGltKQorCQlyZXR1cm4gLUVOT0VOVDsKKworCW11 dGV4X2xvY2soJmhkY3AtPmhkY3BfbXV0ZXgpOworCisJaWYgKGhkY3AtPmhkY3BfdmFsdWUgPT0g RFJNX01PREVfQ09OVEVOVF9QUk9URUNUSU9OX1VOREVTSVJFRCkKKwkJZ290byBvdXQ7CisKKwlp ZiAoIShJOTE1X1JFQUQoSERDUDJfU1RBVFVTX0RESShwb3J0KSkgJiBMSU5LX0VOQ1JZUFRJT05f U1RBVFVTKSkgeworCQlEUk1fRVJST1IoIkhEQ1AgY2hlY2sgZmFpbGVkOiBsaW5rIGlzIG5vdCBl bmNyeXB0ZWQsICV4XG4iLAorCQkJICAgSTkxNV9SRUFEKEhEQ1AyX1NUQVRVU19EREkocG9ydCkp KTsKKwkJcmV0ID0gLUVOWElPOworCQloZGNwLT5oZGNwX3ZhbHVlID0gRFJNX01PREVfQ09OVEVO VF9QUk9URUNUSU9OX0RFU0lSRUQ7CisJCXNjaGVkdWxlX3dvcmsoJmhkY3AtPmhkY3BfcHJvcF93 b3JrKTsKKwkJZ290byBvdXQ7CisJfQorCisJcmV0ID0gaGRjcC0+aGRjcF9zaGltLT5jaGVja18y XzJfbGluayhpbnRlbF9kaWdfcG9ydCk7CisJaWYgKCFyZXQpIHsKKwkJaWYgKGhkY3AtPmhkY3Bf dmFsdWUgIT0gRFJNX01PREVfQ09OVEVOVF9QUk9URUNUSU9OX1VOREVTSVJFRCkgeworCQkJaGRj cC0+aGRjcF92YWx1ZSA9IERSTV9NT0RFX0NPTlRFTlRfUFJPVEVDVElPTl9FTkFCTEVEOworCQkJ c2NoZWR1bGVfd29yaygmaGRjcC0+aGRjcF9wcm9wX3dvcmspOworCQl9CisJCWdvdG8gb3V0Owor CX0KKworCURSTV9JTkZPKCJbJXM6JWRdIEhEQ1AyLjIgbGluayBmYWlsZWQsIHJldHJ5aW5nIGF1 dGhlbnRpY2F0aW9uXG4iLAorCQkgY29ubmVjdG9yLT5iYXNlLm5hbWUsIGNvbm5lY3Rvci0+YmFz ZS5iYXNlLmlkKTsKKworCXJldCA9IF9pbnRlbF9oZGNwMl9kaXNhYmxlKGNvbm5lY3Rvcik7CisJ aWYgKHJldCkgeworCQlEUk1fRVJST1IoIlslczolZF0gRmFpbGVkIHRvIGRpc2FibGUgaGRjcDIu MiAoJWQpXG4iLAorCQkJICBjb25uZWN0b3ItPmJhc2UubmFtZSwgY29ubmVjdG9yLT5iYXNlLmJh c2UuaWQsIHJldCk7CisKKwkJaGRjcC0+aGRjcF92YWx1ZSA9IERSTV9NT0RFX0NPTlRFTlRfUFJP VEVDVElPTl9ERVNJUkVEOworCQlzY2hlZHVsZV93b3JrKCZoZGNwLT5oZGNwX3Byb3Bfd29yayk7 CisJCWdvdG8gb3V0OworCX0KKworCXJldCA9IF9pbnRlbF9oZGNwMl9lbmFibGUoY29ubmVjdG9y KTsKKwlpZiAocmV0KSB7CisJCURSTV9FUlJPUigiWyVzOiVkXSBGYWlsZWQgdG8gZW5hYmxlIGhk Y3AyLjIgKCVkKVxuIiwKKwkJCSAgY29ubmVjdG9yLT5iYXNlLm5hbWUsIGNvbm5lY3Rvci0+YmFz ZS5iYXNlLmlkLCByZXQpOworCisJCWhkY3AtPmhkY3BfdmFsdWUgPSBEUk1fTU9ERV9DT05URU5U X1BST1RFQ1RJT05fREVTSVJFRDsKKwkJc2NoZWR1bGVfd29yaygmaGRjcC0+aGRjcF9wcm9wX3dv cmspOworCQlnb3RvIG91dDsKKwl9CisKK291dDoKKwltdXRleF91bmxvY2soJmhkY3AtPmhkY3Bf bXV0ZXgpOworCXJldHVybiByZXQ7Cit9CisKK3N0YXRpYyB2b2lkIGludGVsX2hkY3AyX2NoZWNr X3dvcmsoc3RydWN0IHdvcmtfc3RydWN0ICp3b3JrKQoreworCXN0cnVjdCBpbnRlbF9oZGNwICpo ZGNwID0gY29udGFpbmVyX29mKHRvX2RlbGF5ZWRfd29yayh3b3JrKSwKKwkJCQkJCXN0cnVjdCBp bnRlbF9oZGNwLAorCQkJCQkJaGRjcDJfY2hlY2tfd29yayk7CisJc3RydWN0IGludGVsX2Nvbm5l Y3RvciAqY29ubmVjdG9yID0gY29udGFpbmVyX29mKGhkY3AsCisJCQkJCQlzdHJ1Y3QgaW50ZWxf Y29ubmVjdG9yLAorCQkJCQkJaGRjcCk7CisKKwlpZiAoIWludGVsX2hkY3AyX2NoZWNrX2xpbmso Y29ubmVjdG9yKSkKKwkJc2NoZWR1bGVfZGVsYXllZF93b3JrKCZoZGNwLT5oZGNwMl9jaGVja193 b3JrLAorCQkJCSAgICAgIERSTV9IRENQMl9DSEVDS19QRVJJT0RfTVMpOworfQpkaWZmIC0tZ2l0 IGEvaW5jbHVkZS9kcm0vZHJtX2hkY3AuaCBiL2luY2x1ZGUvZHJtL2RybV9oZGNwLmgKaW5kZXgg ZjNmMjg0MTRiMTg5Li5iMDYwMTIxNWM3OTggMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV9o ZGNwLmgKKysrIGIvaW5jbHVkZS9kcm0vZHJtX2hkY3AuaApAQCAtMTEsNiArMTEsMTQgQEAKIAog LyogUGVyaW9kIG9mIGhkY3AgY2hlY2tzICh0byBlbnN1cmUgd2UncmUgc3RpbGwgYXV0aGVudGlj YXRlZCkgKi8KICNkZWZpbmUgRFJNX0hEQ1BfQ0hFQ0tfUEVSSU9EX01TCQkoMTI4ICogMTYpCisj ZGVmaW5lIERSTV9IRENQMl9DSEVDS19QRVJJT0RfTVMJCTUwMAorCitlbnVtIGNoZWNrX2xpbmtf cmVzcG9uc2UgeworCURSTV9IRENQX0xJTktfUFJPVEVDVEVECT0gMCwKKwlEUk1fSERDUF9UT1BP TE9HWV9DSEFOR0UsCisJRFJNX0hEQ1BfTElOS19JTlRFR1JJVFlfRkFJTFVSRSwKKwlEUk1fSERD UF9SRUFVVEhfUkVRVUVTVAorfTsKIAogLyogU2hhcmVkIGxlbmd0aHMvbWFza3MgYmV0d2VlbiBI RE1JL0RWSS9EaXNwbGF5UG9ydCAqLwogI2RlZmluZSBEUk1fSERDUF9BTl9MRU4JCQkJOAotLSAK Mi43LjQKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCklu dGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRw czovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=