From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ramalingam C Subject: [PATCH 32/43] drm/i915: Implement HDCP2.2 link integrity check Date: Wed, 14 Feb 2018 19:43:47 +0530 Message-ID: <1518617638-21684-33-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 361EE6E42E for ; Wed, 14 Feb 2018 14:21:02 +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 SW1wbGVtZW50cyB0aGUgbGluayBpbnRlZ3JpdHkgY2hlY2sgb25jZSBpbiA1MDBtU2VjLgoKT25j ZSBlbmNyeXB0aW9uIGlzIGVuYWJsZWQsIGFuIG9uZ29pbmcgTGluayBJbnRlZ3JpdHkgQ2hlY2sg aXMKcGVyZm9ybWVkIGJ5IHRoZSBIRENQIFJlY2VpdmVyIHRvIGNoZWNrIHRoYXQgY2lwaGVyIHN5 bmNocm9uaXphdGlvbgppcyBtYWludGFpbmVkIGJldHdlZW4gdGhlIEhEQ1AgVHJhbnNtaXR0ZXIg YW5kIHRoZSBIRENQIFJlY2VpdmVyLgoKT24gdGhlIGRldGVjdGlvbiBvZiBzeW5jaHJvbml6YXRp b24gbG9zdCwgdGhlIEhEQ1AgUmVjZWl2ZXIgbXVzdCBhc3NlcnQKdGhlIGNvcnJlc3BvbmRpbmcg Yml0cyBvZiB0aGUgUnhTdGF0dXMgcmVnaXN0ZXIuIFRoZSBUcmFuc21pdHRlciBwb2xscwp0aGUg UnhTdGF0dXMgcmVnaXN0ZXIgYW5kIGl0IG1heSBpbml0aWF0ZSByZS1hdXRoZW50aWNhdGlvbi4K ClNpZ25lZC1vZmYtYnk6IFJhbWFsaW5nYW0gQyA8cmFtYWxpbmdhbS5jQGludGVsLmNvbT4KLS0t CiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZGNwLmMgfCA4MCArKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKy0KIGluY2x1ZGUvZHJtL2RybV9oZGNwLmggICAgICAgICAg ICB8ICA4ICsrKysKIDIgZmlsZXMgY2hhbmdlZCwgODcgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlv bigtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkY3AuYyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkY3AuYwppbmRleCA4YmYzMDUxMzcxM2EuLjA3NmEw YjBkMmFlOSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRjcC5jCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkY3AuYwpAQCAtMjQsNiArMjQsOCBAQAog CiBzdGF0aWMgaW50IF9pbnRlbF9oZGNwMl9lbmFibGUoc3RydWN0IGludGVsX2hkY3AgKmhkY3Ap Owogc3RhdGljIGludCBfaW50ZWxfaGRjcDJfZGlzYWJsZShzdHJ1Y3QgaW50ZWxfaGRjcCAqaGRj cCk7CitzdGF0aWMgdm9pZCBpbnRlbF9oZGNwMl9jaGVja193b3JrKHN0cnVjdCB3b3JrX3N0cnVj dCAqd29yayk7CitzdGF0aWMgaW50IGludGVsX2hkY3AyX2NoZWNrX2xpbmsoc3RydWN0IGludGVs X2hkY3AgKmhkY3ApOwogCiBzdGF0aWMgaW50IGludGVsX2hkY3BfcG9sbF9rc3ZfZmlmbyhzdHJ1 Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRlbF9kaWdfcG9ydCwKIAkJCQkgICAgY29uc3Qgc3Ry dWN0IGludGVsX2hkY3Bfc2hpbSAqc2hpbSkKQEAgLTE0NTMsNiArMTQ1NSw4MiBAQCBzdGF0aWMg aW50IF9pbnRlbF9oZGNwMl9lbmFibGUoc3RydWN0IGludGVsX2hkY3AgKmhkY3ApCiAKIAloZGNw LT5oZGNwX3ZhbHVlID0gRFJNX01PREVfQ09OVEVOVF9QUk9URUNUSU9OX0VOQUJMRUQ7CiAJc2No ZWR1bGVfd29yaygmaGRjcC0+aGRjcF9wcm9wX3dvcmspOwotCisJc2NoZWR1bGVfZGVsYXllZF93 b3JrKCZoZGNwLT5oZGNwMl9jaGVja193b3JrLAorCQkJICAgICAgRFJNX0hEQ1AyX0NIRUNLX1BF UklPRF9NUyk7CiAJcmV0dXJuIDA7CiB9CisKK3N0YXRpYyB2b2lkIGludGVsX2hkY3AyX2NoZWNr X3dvcmsoc3RydWN0IHdvcmtfc3RydWN0ICp3b3JrKQoreworCXN0cnVjdCBpbnRlbF9oZGNwICpo ZGNwID0gY29udGFpbmVyX29mKHRvX2RlbGF5ZWRfd29yayh3b3JrKSwKKwkJCQkJCXN0cnVjdCBp bnRlbF9oZGNwLAorCQkJCQkJaGRjcDJfY2hlY2tfd29yayk7CisKKwlpZiAoIWludGVsX2hkY3Ay X2NoZWNrX2xpbmsoaGRjcCkpCisJCXNjaGVkdWxlX2RlbGF5ZWRfd29yaygmaGRjcC0+aGRjcDJf Y2hlY2tfd29yaywKKwkJCQkgICAgICBEUk1fSERDUDJfQ0hFQ0tfUEVSSU9EX01TKTsKK30KKwor c3RhdGljIGludCBpbnRlbF9oZGNwMl9jaGVja19saW5rKHN0cnVjdCBpbnRlbF9oZGNwICpoZGNw KQoreworCXN0cnVjdCBpbnRlbF9kaWdpdGFsX3BvcnQgKmludGVsX2RpZ19wb3J0ID0KKwkJCQkJ Y29ubl90b19kaWdfcG9ydChoZGNwLT5jb25uZWN0b3IpOworCXN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoaGRjcC0+Y29ubmVjdG9yLT5iYXNlLmRldik7CisJZW51 bSBwb3J0IHBvcnQgPSBoZGNwLT5jb25uZWN0b3ItPmVuY29kZXItPnBvcnQ7CisJaW50IHJldCA9 IDA7CisKKwlpZiAoIWhkY3AtPmhkY3Bfc2hpbSkKKwkJcmV0dXJuIC1FTk9FTlQ7CisKKwltdXRl eF9sb2NrKCZoZGNwLT5oZGNwX211dGV4KTsKKworCWlmIChoZGNwLT5oZGNwX3ZhbHVlID09IERS TV9NT0RFX0NPTlRFTlRfUFJPVEVDVElPTl9VTkRFU0lSRUQpCisJCWdvdG8gb3V0OworCisJaWYg KCEoSTkxNV9SRUFEKEhEQ1AyX1NUQVRVU19EREkocG9ydCkpICYgTElOS19FTkNSWVBUSU9OX1NU QVRVUykpIHsKKwkJRFJNX0VSUk9SKCJIRENQIGNoZWNrIGZhaWxlZDogbGluayBpcyBub3QgZW5j cnlwdGVkLCAleFxuIiwKKwkJCSAgIEk5MTVfUkVBRChIRENQMl9TVEFUVVNfRERJKHBvcnQpKSk7 CisJCXJldCA9IC1FTlhJTzsKKwkJaGRjcC0+aGRjcF92YWx1ZSA9IERSTV9NT0RFX0NPTlRFTlRf UFJPVEVDVElPTl9ERVNJUkVEOworCQlzY2hlZHVsZV93b3JrKCZoZGNwLT5oZGNwX3Byb3Bfd29y ayk7CisJCWdvdG8gb3V0OworCX0KKworCXJldCA9IGhkY3AtPmhkY3AyX3NoaW0tPmNoZWNrX2xp bmsoaW50ZWxfZGlnX3BvcnQpOworCWlmICghcmV0KSB7CisJCWlmIChoZGNwLT5oZGNwX3ZhbHVl ICE9IERSTV9NT0RFX0NPTlRFTlRfUFJPVEVDVElPTl9VTkRFU0lSRUQpIHsKKwkJCWhkY3AtPmhk Y3BfdmFsdWUgPSBEUk1fTU9ERV9DT05URU5UX1BST1RFQ1RJT05fRU5BQkxFRDsKKwkJCXNjaGVk dWxlX3dvcmsoJmhkY3AtPmhkY3BfcHJvcF93b3JrKTsKKwkJfQorCQlnb3RvIG91dDsKKwl9CisK KwlEUk1fSU5GTygiWyVzOiVkXSBIRENQMi4yIGxpbmsgZmFpbGVkLCByZXRyeWluZyBhdXRoZW50 aWNhdGlvblxuIiwKKwkJIGhkY3AtPmNvbm5lY3Rvci0+YmFzZS5uYW1lLCBoZGNwLT5jb25uZWN0 b3ItPmJhc2UuYmFzZS5pZCk7CisKKwlyZXQgPSBfaW50ZWxfaGRjcDJfZGlzYWJsZShoZGNwKTsK KwlpZiAocmV0KSB7CisJCURSTV9FUlJPUigiWyVzOiVkXSBGYWlsZWQgdG8gZGlzYWJsZSBoZGNw Mi4yICglZClcbiIsCisJCQkgIGhkY3AtPmNvbm5lY3Rvci0+YmFzZS5uYW1lLAorCQkJICBoZGNw LT5jb25uZWN0b3ItPmJhc2UuYmFzZS5pZCwgcmV0KTsKKworCQloZGNwLT5oZGNwX3ZhbHVlID0g RFJNX01PREVfQ09OVEVOVF9QUk9URUNUSU9OX0RFU0lSRUQ7CisJCXNjaGVkdWxlX3dvcmsoJmhk Y3AtPmhkY3BfcHJvcF93b3JrKTsKKwkJZ290byBvdXQ7CisJfQorCisJcmV0ID0gX2ludGVsX2hk Y3AyX2VuYWJsZShoZGNwKTsKKwlpZiAocmV0KSB7CisJCURSTV9FUlJPUigiWyVzOiVkXSBGYWls ZWQgdG8gZW5hYmxlIGhkY3AyLjIgKCVkKVxuIiwKKwkJCSAgaGRjcC0+Y29ubmVjdG9yLT5iYXNl Lm5hbWUsCisJCQkgIGhkY3AtPmNvbm5lY3Rvci0+YmFzZS5iYXNlLmlkLCByZXQpOworCisJCWhk Y3AtPmhkY3BfdmFsdWUgPSBEUk1fTU9ERV9DT05URU5UX1BST1RFQ1RJT05fREVTSVJFRDsKKwkJ c2NoZWR1bGVfd29yaygmaGRjcC0+aGRjcF9wcm9wX3dvcmspOworCQlnb3RvIG91dDsKKwl9CisK K291dDoKKwltdXRleF91bmxvY2soJmhkY3AtPmhkY3BfbXV0ZXgpOworCXJldHVybiByZXQ7Cit9 CmRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1faGRjcC5oIGIvaW5jbHVkZS9kcm0vZHJtX2hk Y3AuaAppbmRleCBjNWYzNmIxYTAwNGIuLjhjMWZjYTU5ZWEzNSAxMDA2NDQKLS0tIGEvaW5jbHVk ZS9kcm0vZHJtX2hkY3AuaAorKysgYi9pbmNsdWRlL2RybS9kcm1faGRjcC5oCkBAIC0xMSw2ICsx MSwxNCBAQAogCiAvKiBQZXJpb2Qgb2YgaGRjcCBjaGVja3MgKHRvIGVuc3VyZSB3ZSdyZSBzdGls bCBhdXRoZW50aWNhdGVkKSAqLwogI2RlZmluZSBEUk1fSERDUF9DSEVDS19QRVJJT0RfTVMJCSgx MjggKiAxNikKKyNkZWZpbmUgRFJNX0hEQ1AyX0NIRUNLX1BFUklPRF9NUwkJNTAwCisKK2VudW0g Y2hlY2tfbGlua19yZXNwb25zZSB7CisJRFJNX0hEQ1BfTElOS19QUk9URUNURUQJPSAwLAorCURS TV9IRENQX1RPUE9MT0dZX0NIQU5HRSwKKwlEUk1fSERDUF9MSU5LX0lOVEVHUklUWV9GQUlMVVJF LAorCURSTV9IRENQX1JFQVVUSF9SRVFVRVNUCit9OwogCiAvKiBTaGFyZWQgbGVuZ3Rocy9tYXNr cyBiZXR3ZWVuIEhETUkvRFZJL0Rpc3BsYXlQb3J0ICovCiAjZGVmaW5lIERSTV9IRENQX0FOX0xF TgkJCQk4Ci0tIAoyLjcuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50 ZWwtZ2Z4Cg==