From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ramalingam C Subject: [PATCH v9 08/39] drm/i915: hdcp1.4 CP_IRQ handling and SW encryption tracking Date: Thu, 13 Dec 2018 09:31:10 +0530 Message-ID: <1544673701-6353-9-git-send-email-ramalingam.c@intel.com> References: <1544673701-6353-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: <1544673701-6353-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, daniel.vetter@ffwll.ch, tomas.winkler@intel.com, uma.shankar@intel.com List-Id: dri-devel@lists.freedesktop.org ImhkY3BfZW5jcnlwdGVkIiBmbGFnIGlzIGRlZmluZWQgdG8gZGVub3RlIHRoZSBIRENQMS40IGVu Y3J5cHRpb24gc3RhdHVzLgpUaGlzIFNXIHRyYWNraW5nIGlzIHVzZWQgdG8gZGV0ZXJtaW5lIHRo ZSBuZWVkIGZvciByZWFsIGhkY3AxLjQgZGlzYWJsZQphbmQgaGRjcF9jaGVja19saW5rIHVwb24g Q1BfSVJRLgoKT24gQ1BfSVJRIHdlIGZpbHRlciB0aGUgQ1BfSVJRIHJlbGF0ZWQgdG8gdGhlIHN0 YXRlcyBsaWtlIExpbmsgZmFpbHVyZQphbmQgcmVhdXRoZW50aWNhdGlvbiByZXEgZXRjIGFuZCBo YW5kbGUgdGhlbSBpbiBoZGNwX2NoZWNrX2xpbmsuCkNQX0lSUSBjb3JyZXNwb25kaW5nIHRvIHRo ZSBhdXRoZW50aWNhdGlvbiBtc2cgYXZhaWxhYmlsaXR5IGFyZSBpZ25vcmVkLgoKV0FSTl9PTiBp cyBhZGRlZCBmb3IgdGhlIGFicnVwdCBzdG9wIG9mIEhEQ1AgZW5jcnlwdGlvbiBvZiBhIHBvcnQu CgpTaWduZWQtb2ZmLWJ5OiBSYW1hbGluZ2FtIEMgPHJhbWFsaW5nYW0uY0BpbnRlbC5jb20+Ci0t LQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYyAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rydi5oICB8ICA1ICsrLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfaGRjcC5jIHwgODkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tCiAz IGZpbGVzIGNoYW5nZWQsIDc0IGluc2VydGlvbnMoKyksIDIyIGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kcC5jCmluZGV4IGFiYTg4NGM2NDg3OS4uODkzMTVlMTVmYjM0IDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2RwLmMKQEAgLTQ3NTgsNyArNDc1OCw3IEBAIHN0YXRpYyB2b2lkIGludGVs X2RwX2NoZWNrX3NlcnZpY2VfaXJxKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApCiAJCWludGVs X2RwX2hhbmRsZV90ZXN0X3JlcXVlc3QoaW50ZWxfZHApOwogCiAJaWYgKHZhbCAmIERQX0NQX0lS USkKLQkJaW50ZWxfaGRjcF9jaGVja19saW5rKGludGVsX2RwLT5hdHRhY2hlZF9jb25uZWN0b3Ip OworCQlpbnRlbF9oZGNwX2hhbmRsZV9jcF9pcnEoaW50ZWxfZHAtPmF0dGFjaGVkX2Nvbm5lY3Rv cik7CiAKIAlpZiAodmFsICYgRFBfU0lOS19TUEVDSUZJQ19JUlEpCiAJCURSTV9ERUJVR19EUklW RVIoIlNpbmsgc3BlY2lmaWMgaXJxIHVuaGFuZGxlZFxuIik7CmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Ry di5oCmluZGV4IDE5MWI2ZTBmMDg2Yy4uZGVjZDAzNDZjNmE3IDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kcnYuaApAQCAtMzkzLDYgKzM5Myw5IEBAIHN0cnVjdCBpbnRlbF9oZGNwIHsKIAlzdHJ1Y3Qg ZGVsYXllZF93b3JrIGNoZWNrX3dvcms7CiAJc3RydWN0IHdvcmtfc3RydWN0IHByb3Bfd29yazsK IAorCS8qIEhEQ1AxLjQgRW5jcnlwdGlvbiBzdGF0dXMgKi8KKwl1OCBoZGNwX2VuY3J5cHRlZDsK KwogCS8qIEhEQ1AyLjIgcmVsYXRlZCBkZWZpbml0aW9ucyAqLwogCS8qIEZsYWcgaW5kaWNhdGVz IHdoZXRoZXIgdGhpcyBjb25uZWN0b3Igc3VwcG9ydHMgSERDUDIuMiBvciBub3QuICovCiAJdTgg aGRjcDJfc3VwcG9ydGVkOwpAQCAtMjA1OCwxMCArMjA2MSwxMCBAQCBpbnQgaW50ZWxfaGRjcF9p bml0KHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvciwKIAkJICAgIGJvb2wgaGRjcDJf c3VwcG9ydGVkKTsKIGludCBpbnRlbF9oZGNwX2VuYWJsZShzdHJ1Y3QgaW50ZWxfY29ubmVjdG9y ICpjb25uZWN0b3IpOwogaW50IGludGVsX2hkY3BfZGlzYWJsZShzdHJ1Y3QgaW50ZWxfY29ubmVj dG9yICpjb25uZWN0b3IpOwotaW50IGludGVsX2hkY3BfY2hlY2tfbGluayhzdHJ1Y3QgaW50ZWxf Y29ubmVjdG9yICpjb25uZWN0b3IpOwogYm9vbCBpc19oZGNwX3N1cHBvcnRlZChzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGVudW0gcG9ydCBwb3J0KTsKIGJvb2wgaW50ZWxfaGRj cF9jYXBhYmxlKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3Rvcik7CiBib29sIGlzX2hk Y3AyX3N1cHBvcnRlZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwordm9pZCBp bnRlbF9oZGNwX2hhbmRsZV9jcF9pcnEoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9y KTsKIAogLyogaW50ZWxfcHNyLmMgKi8KICNkZWZpbmUgQ0FOX1BTUihkZXZfcHJpdikgKEhBU19Q U1IoZGV2X3ByaXYpICYmIGRldl9wcml2LT5wc3Iuc2lua19zdXBwb3J0KQpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRjcC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfaGRjcC5jCmluZGV4IDk0MDVmY2UwN2I5My4uMmI3ODE0YTZmMTJiIDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZGNwLmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfaGRjcC5jCkBAIC03NSw2ICs3NSwxNiBAQCBib29sIGludGVsX2hkY3BfY2Fw YWJsZShzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IpCiAJcmV0dXJuIGNhcGFibGU7 CiB9CiAKK3N0YXRpYyBpbmxpbmUgYm9vbCBpbnRlbF9oZGNwX2luX3VzZShzdHJ1Y3QgaW50ZWxf Y29ubmVjdG9yICpjb25uZWN0b3IpCit7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2ID0gdG9faTkxNShjb25uZWN0b3ItPmJhc2UuZGV2KTsKKwllbnVtIHBvcnQgcG9ydCA9IGNv bm5lY3Rvci0+ZW5jb2Rlci0+cG9ydDsKKwl1MzIgcmVnOworCisJcmVnID0gSTkxNV9SRUFEKFBP UlRfSERDUF9TVEFUVVMocG9ydCkpOworCXJldHVybiByZWcgJiBIRENQX1NUQVRVU19FTkM7Cit9 CisKIHN0YXRpYyBpbnQgaW50ZWxfaGRjcF9wb2xsX2tzdl9maWZvKHN0cnVjdCBpbnRlbF9kaWdp dGFsX3BvcnQgKmludGVsX2RpZ19wb3J0LAogCQkJCSAgICBjb25zdCBzdHJ1Y3QgaW50ZWxfaGRj cF9zaGltICpzaGltKQogewpAQCAtNjY5LDYgKzY3OSw3IEBAIHN0YXRpYyBpbnQgX2ludGVsX2hk Y3BfZGlzYWJsZShzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IpCiAJRFJNX0RFQlVH X0tNUygiWyVzOiVkXSBIRENQIGlzIGJlaW5nIGRpc2FibGVkLi4uXG4iLAogCQkgICAgICBjb25u ZWN0b3ItPmJhc2UubmFtZSwgY29ubmVjdG9yLT5iYXNlLmJhc2UuaWQpOwogCisJaGRjcC0+aGRj cF9lbmNyeXB0ZWQgPSAwOwogCUk5MTVfV1JJVEUoUE9SVF9IRENQX0NPTkYocG9ydCksIDApOwog CWlmIChpbnRlbF93YWl0X2Zvcl9yZWdpc3RlcihkZXZfcHJpdiwgUE9SVF9IRENQX1NUQVRVUyhw b3J0KSwgfjAsIDAsCiAJCQkJICAgIEVOQ1JZUFRfU1RBVFVTX0NIQU5HRV9USU1FT1VUX01TKSkg ewpAQCAtNzE0LDggKzcyNSwxMCBAQCBzdGF0aWMgaW50IF9pbnRlbF9oZGNwX2VuYWJsZShzdHJ1 Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IpCiAJLyogSW5jYXNlIG9mIGF1dGhlbnRpY2F0 aW9uIGZhaWx1cmVzLCBIRENQIHNwZWMgZXhwZWN0cyByZWF1dGguICovCiAJZm9yIChpID0gMDsg aSA8IHRyaWVzOyBpKyspIHsKIAkJcmV0ID0gaW50ZWxfaGRjcF9hdXRoKGNvbm5fdG9fZGlnX3Bv cnQoY29ubmVjdG9yKSwgaGRjcC0+c2hpbSk7Ci0JCWlmICghcmV0KQorCQlpZiAoIXJldCkgewor CQkJaGRjcC0+aGRjcF9lbmNyeXB0ZWQgPSAxOwogCQkJcmV0dXJuIDA7CisJCX0KIAogCQlEUk1f REVCVUdfS01TKCJIRENQIEF1dGggZmFpbHVyZSAoJWQpXG4iLCByZXQpOwogCkBAIC03NDIsMTYg Kzc1NSwxNyBAQCBpbnQgaW50ZWxfaGRjcF9jaGVja19saW5rKHN0cnVjdCBpbnRlbF9jb25uZWN0 b3IgKmNvbm5lY3RvcikKIAllbnVtIHBvcnQgcG9ydCA9IGludGVsX2RpZ19wb3J0LT5iYXNlLnBv cnQ7CiAJaW50IHJldCA9IDA7CiAKLQlpZiAoIWhkY3AtPnNoaW0pCi0JCXJldHVybiAtRU5PRU5U OwotCiAJbXV0ZXhfbG9jaygmaGRjcC0+bXV0ZXgpOwogCi0JaWYgKGhkY3AtPnZhbHVlID09IERS TV9NT0RFX0NPTlRFTlRfUFJPVEVDVElPTl9VTkRFU0lSRUQpCisJLyogQ2hlY2tfbGluayB2YWxp ZCBvbmx5IHdoZW4gSERDUDEuNCBpcyBlbmFibGVkICovCisJaWYgKGhkY3AtPnZhbHVlICE9IERS TV9NT0RFX0NPTlRFTlRfUFJPVEVDVElPTl9FTkFCTEVEIHx8CisJICAgICFoZGNwLT5oZGNwX2Vu Y3J5cHRlZCkgeworCQlyZXQgPSAtRUlOVkFMOwogCQlnb3RvIG91dDsKKwl9CiAKLQlpZiAoIShJ OTE1X1JFQUQoUE9SVF9IRENQX1NUQVRVUyhwb3J0KSkgJiBIRENQX1NUQVRVU19FTkMpKSB7Ci0J CURSTV9FUlJPUigiJXM6JWQgSERDUCBjaGVjayBmYWlsZWQ6IGxpbmsgaXMgbm90IGVuY3J5cHRl ZCwleFxuIiwKKwlpZiAoV0FSTl9PTighaW50ZWxfaGRjcF9pbl91c2UoY29ubmVjdG9yKSkpIHsK KwkJRFJNX0VSUk9SKCIlczolZCBIRENQIGxpbmsgc3RvcHBlZCBlbmNyeXB0aW9uLCV4XG4iLAog CQkJICBjb25uZWN0b3ItPmJhc2UubmFtZSwgY29ubmVjdG9yLT5iYXNlLmJhc2UuaWQsCiAJCQkg IEk5MTVfUkVBRChQT1JUX0hEQ1BfU1RBVFVTKHBvcnQpKSk7CiAJCXJldCA9IC1FTlhJTzsKQEAg LTc5MiwxOCArODA2LDYgQEAgaW50IGludGVsX2hkY3BfY2hlY2tfbGluayhzdHJ1Y3QgaW50ZWxf Y29ubmVjdG9yICpjb25uZWN0b3IpCiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIHZvaWQgaW50 ZWxfaGRjcF9jaGVja193b3JrKHN0cnVjdCB3b3JrX3N0cnVjdCAqd29yaykKLXsKLQlzdHJ1Y3Qg aW50ZWxfaGRjcCAqaGRjcCA9IGNvbnRhaW5lcl9vZih0b19kZWxheWVkX3dvcmsod29yayksCi0J CQkJCSAgICAgICBzdHJ1Y3QgaW50ZWxfaGRjcCwKLQkJCQkJICAgICAgIGNoZWNrX3dvcmspOwot CXN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvciA9IGludGVsX2hkY3BfdG9fY29ubmVj dG9yKGhkY3ApOwotCi0JaWYgKCFpbnRlbF9oZGNwX2NoZWNrX2xpbmsoY29ubmVjdG9yKSkKLQkJ c2NoZWR1bGVfZGVsYXllZF93b3JrKCZoZGNwLT5jaGVja193b3JrLAotCQkJCSAgICAgIERSTV9I RENQX0NIRUNLX1BFUklPRF9NUyk7Ci19Ci0KIHN0YXRpYyB2b2lkIGludGVsX2hkY3BfcHJvcF93 b3JrKHN0cnVjdCB3b3JrX3N0cnVjdCAqd29yaykKIHsKIAlzdHJ1Y3QgaW50ZWxfaGRjcCAqaGRj cCA9IGNvbnRhaW5lcl9vZih3b3JrLCBzdHJ1Y3QgaW50ZWxfaGRjcCwKQEAgLTEwMjgsNiArMTAz MCwyNSBAQCBpbnQgaGRjcDJfZGVhdXRoZW50aWNhdGVfcG9ydChzdHJ1Y3QgaW50ZWxfY29ubmVj dG9yICpjb25uZWN0b3IpCiAJcmV0dXJuIGhkY3AyX2Nsb3NlX21laV9zZXNzaW9uKGNvbm5lY3Rv cik7CiB9CiAKK3N0YXRpYyBpbmxpbmUgdm9pZCBfaW50ZWxfaGRjcF9jaGVja193b3JrKHN0cnVj dCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvcikKK3sKKwlzdHJ1Y3QgaW50ZWxfaGRjcCAqaGRj cCA9ICZjb25uZWN0b3ItPmhkY3A7CisKKwlpZiAoIWludGVsX2hkY3BfY2hlY2tfbGluayhjb25u ZWN0b3IpKQorCQlzY2hlZHVsZV9kZWxheWVkX3dvcmsoJmhkY3AtPmNoZWNrX3dvcmssCisJCQkJ ICAgICAgRFJNX0hEQ1BfQ0hFQ0tfUEVSSU9EX01TKTsKK30KKworc3RhdGljIHZvaWQgaW50ZWxf aGRjcF9jaGVja193b3JrKHN0cnVjdCB3b3JrX3N0cnVjdCAqd29yaykKK3sKKwlzdHJ1Y3QgaW50 ZWxfaGRjcCAqaGRjcCA9IGNvbnRhaW5lcl9vZih0b19kZWxheWVkX3dvcmsod29yayksCisJCQkJ CSAgICAgICBzdHJ1Y3QgaW50ZWxfaGRjcCwKKwkJCQkJICAgICAgIGNoZWNrX3dvcmspOworCXN0 cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvciA9IGludGVsX2hkY3BfdG9fY29ubmVjdG9y KGhkY3ApOworCisJX2ludGVsX2hkY3BfY2hlY2tfd29yayhjb25uZWN0b3IpOworfQorCiBzdGF0 aWMgaW50IGk5MTVfaGRjcF9jb21wb25lbnRfbWF0Y2goc3RydWN0IGRldmljZSAqZGV2LCB2b2lk ICpkYXRhKQogewogCXJldHVybiAhc3RyY21wKGRldi0+ZHJpdmVyLT5uYW1lLCAibWVpX2hkY3Ai KTsKQEAgLTExNTYsNyArMTE3Nyw4IEBAIGludCBpbnRlbF9oZGNwX2Rpc2FibGUoc3RydWN0IGlu dGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQogCiAJaWYgKGhkY3AtPnZhbHVlICE9IERSTV9NT0RF X0NPTlRFTlRfUFJPVEVDVElPTl9VTkRFU0lSRUQpIHsKIAkJaGRjcC0+dmFsdWUgPSBEUk1fTU9E RV9DT05URU5UX1BST1RFQ1RJT05fVU5ERVNJUkVEOwotCQlyZXQgPSBfaW50ZWxfaGRjcF9kaXNh YmxlKGNvbm5lY3Rvcik7CisJCWlmIChoZGNwLT5oZGNwX2VuY3J5cHRlZCkKKwkJCXJldCA9IF9p bnRlbF9oZGNwX2Rpc2FibGUoY29ubmVjdG9yKTsKIAl9CiAKIAltdXRleF91bmxvY2soJmhkY3At Pm11dGV4KTsKQEAgLTExOTYsMyArMTIxOCwzMCBAQCB2b2lkIGludGVsX2hkY3BfYXRvbWljX2No ZWNrKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCiAJCQkJCQkgICBuZXdfc3RhdGUt PmNydGMpOwogCWNydGNfc3RhdGUtPm1vZGVfY2hhbmdlZCA9IHRydWU7CiB9CisKKy8qIEhhbmRs ZXMgdGhlIENQX0lSUSByYWlzZWQgZnJvbSB0aGUgRFAgSERDUCBzaW5rICovCit2b2lkIGludGVs X2hkY3BfaGFuZGxlX2NwX2lycShzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IpCit7 CisJc3RydWN0IGludGVsX2hkY3AgKmhkY3AgPSAmY29ubmVjdG9yLT5oZGNwOworCisJaWYgKCFo ZGNwLT5zaGltKQorCQlyZXR1cm47CisKKwkvKgorCSAqIEFzIG9mIG5vdyB3ZSB3YW50IHRvIGhh bmRsZSBDUF9JUlEgdHJpZ2dlcmVkIHdoaWxlIGVuY3J5cHRpb24gaXMKKwkgKiBlbmFibGVkLiBU aGlzIGluY2x1ZGVzIHRoZSBub3RpZmljYXRpb24gZm9yIFRvcG9sb2d5IGNoYW5nZSwKKwkgKiBM aW5rIGZhaWx1cmUsIHJlYXV0aCByZXF1ZXN0IGV0Yy4KKwkgKiBBdXRoIG1zZyBhdmFpbGFiaWxp dHkgbm90aWZpY2F0aW9ucyBhcmUgaWdub3JlZCB3aXRoIG11dGV4X3RyeWxvY2sKKwkgKiBhcyBh dXRoZW50aWNhdGlvbiBob2xkcyB0aGUgbG9jay4gTG9jayBtaWdodCBiZSB0YWtlbiBmb3IgbGlu ayBjaGVjaworCSAqIG9yIGhkY3BfZGlzYWJsZSB0b28uIEluIGVpdGhlciBvZiBzdGF0ZSB3ZSBu ZWVkIG5vdCBoYW5kbGUgdGhlCisJICogQ1BfSVJRLCBmb3Iga25vd24gcmVhc29ucy4KKwkgKi8K KwlpZiAoIW11dGV4X3RyeWxvY2soJmhkY3AtPm11dGV4KSkKKwkJcmV0dXJuOworCisJaWYgKCFo ZGNwLT5oZGNwX2VuY3J5cHRlZCkKKwkJcmV0dXJuOworCisJbXV0ZXhfdW5sb2NrKCZoZGNwLT5t dXRleCk7CisJX2ludGVsX2hkY3BfY2hlY2tfd29yayhjb25uZWN0b3IpOworfQotLSAKMi43LjQK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdm eCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=