From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ramalingam C Subject: [PATCH v3 22/40] drm/i915: Wrappers for mei HDCP2.2 services Date: Tue, 3 Apr 2018 19:27:35 +0530 Message-ID: <1522763873-23041-23-git-send-email-ramalingam.c@intel.com> References: <1522763873-23041-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: <1522763873-23041-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@ffwll.ch, chris@chris-wilson.co.uk, jani.nikula@linux.intel.com, tomas.winkler@intel.com, alexander.usyskin@intel.com Cc: rodrigo.vivi@intel.com List-Id: dri-devel@lists.freedesktop.org QWRkcyB0aGUgd3JhcHBlciBmb3IgYWxsIG1laSBoZGNwMi4yIHNlcnZpY2UgZnVuY3Rpb25zLgoK djI6CiAgUmViYXNlZC4KdjM6CiAgY2xkZXYgaXMgbW92ZWQgZnJvbSBtZWlfaGRjcF9kYXRhIHRv IGhkY3AuCgpTaWduZWQtb2ZmLWJ5OiBSYW1hbGluZ2FtIEMgPHJhbWFsaW5nYW0uY0BpbnRlbC5j b20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRjcC5jIHwgMTk0ICsrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiAxIGZpbGUgY2hhbmdlZCwgMTk0IGluc2Vy dGlvbnMoKykKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZGNwLmMg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZGNwLmMKaW5kZXggMWNjYTRmMzQ5MDY0Li5i NGQ1NmIyMWNmOWIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkY3Au YworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZGNwLmMKQEAgLTEwLDEwICsxMCwx MyBAQAogI2luY2x1ZGUgPGRybS9kcm1faGRjcC5oPgogI2luY2x1ZGUgPGxpbnV4L2kyYy5oPgog I2luY2x1ZGUgPGxpbnV4L3JhbmRvbS5oPgorI2luY2x1ZGUgPGxpbnV4L21laV9oZGNwLmg+CiAK ICNpbmNsdWRlICJpbnRlbF9kcnYuaCIKICNpbmNsdWRlICJpOTE1X3JlZy5oIgogCisjZGVmaW5l IEdFVF9NRUlfRERJX0lOREVYKHBvcnQpCQkoKChwb3J0KSA9PSBQT1JUX0EpID8gRERJX0EgOiBc CisJCQkJCSAoZW51bSBoZGNwX3BoeXNpY2FsX3BvcnQpIChwb3J0KSkKICNkZWZpbmUgS0VZX0xP QURfVFJJRVMJNQogCiBzdGF0aWMgaW50IGludGVsX2hkY3BfcG9sbF9rc3ZfZmlmbyhzdHJ1Y3Qg aW50ZWxfZGlnaXRhbF9wb3J0ICppbnRlbF9kaWdfcG9ydCwKQEAgLTgxNywzICs4MjAsMTk0IEBA IGludCBpbnRlbF9oZGNwX2NoZWNrX2xpbmsoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVj dG9yKQogCW11dGV4X3VubG9jaygmaGRjcC0+aGRjcF9tdXRleCk7CiAJcmV0dXJuIHJldDsKIH0K Kworc3RhdGljIGludAoraGRjcDJfcHJlcGFyZV9ha2VfaW5pdChzdHJ1Y3QgaW50ZWxfaGRjcCAq aGRjcCwgc3RydWN0IGhkY3AyX2FrZV9pbml0ICpha2VfZGF0YSkKK3sKKwlzdHJ1Y3QgbWVpX2hk Y3BfZGF0YSAqZGF0YSA9ICZoZGNwLT5tZWlfZGF0YTsKKwlzdHJ1Y3QgaW50ZWxfY29ubmVjdG9y ICpjb25uZWN0b3IgPSBjb250YWluZXJfb2YoaGRjcCwKKwkJCQkJCQkgc3RydWN0IGludGVsX2Nv bm5lY3RvciwKKwkJCQkJCQkgaGRjcCk7CisKKwlpZiAoIWhkY3AtPmNsZGV2KQorCQlyZXR1cm4g LUVJTlZBTDsKKworCWlmIChkYXRhLT5wb3J0ID09IElOVkFMSURfUE9SVCAmJiBjb25uZWN0b3It PmVuY29kZXIpCisJCWRhdGEtPnBvcnQgPSBHRVRfTUVJX0RESV9JTkRFWChjb25uZWN0b3ItPmVu Y29kZXItPnBvcnQpOworCisJLyogQ2xlYXIgTUUgRlcgaW5zdGFuY2UgZm9yIHRoZSBwb3J0LCBq dXN0IGluY2FzZSAqLworCW1laV9jbG9zZV9oZGNwX3Nlc3Npb24oaGRjcC0+Y2xkZXYsIGRhdGEp OworCisJcmV0dXJuIG1laV9pbml0aWF0ZV9oZGNwMl9zZXNzaW9uKGhkY3AtPmNsZGV2LCBkYXRh LCBha2VfZGF0YSk7Cit9CisKK3N0YXRpYyBpbnQgaGRjcDJfY2xvc2VfbWVpX3Nlc3Npb24oc3Ry dWN0IGludGVsX2hkY3AgKmhkY3ApCit7CisJc3RydWN0IG1laV9oZGNwX2RhdGEgKmRhdGEgPSAm aGRjcC0+bWVpX2RhdGE7CisKKwlpZiAoIWhkY3AtPmNsZGV2IHx8IGRhdGEtPnBvcnQgPT0gSU5W QUxJRF9QT1JUKQorCQlyZXR1cm4gLUVJTlZBTDsKKworCXJldHVybiBtZWlfY2xvc2VfaGRjcF9z ZXNzaW9uKGhkY3AtPmNsZGV2LCBkYXRhKTsKK30KKworc3RhdGljIGludAoraGRjcDJfdmVyaWZ5 X3J4X2NlcnRfcHJlcGFyZV9rbShzdHJ1Y3QgaW50ZWxfaGRjcCAqaGRjcCwKKwkJCQlzdHJ1Y3Qg aGRjcDJfYWtlX3NlbmRfY2VydCAqcnhfY2VydCwKKwkJCQlib29sICpwYWlyZWQsCisJCQkJc3Ry dWN0IGhkY3AyX2FrZV9ub19zdG9yZWRfa20gKmVrX3B1Yl9rbSwKKwkJCQlzaXplX3QgKm1zZ19z eikKK3sKKwlzdHJ1Y3QgbWVpX2hkY3BfZGF0YSAqZGF0YSA9ICZoZGNwLT5tZWlfZGF0YTsKKwlp bnQgcmV0OworCisJaWYgKCFoZGNwLT5jbGRldikKKwkJcmV0dXJuIC1FSU5WQUw7CisKKwlyZXQg PSBtZWlfdmVyaWZ5X3JlY2VpdmVyX2NlcnRfcHJlcGFyZV9rbShoZGNwLT5jbGRldiwgZGF0YSwg cnhfY2VydCwKKwkJCQkJCSAgcGFpcmVkLCBla19wdWJfa20sIG1zZ19zeik7CisJaWYgKHJldCA8 IDApCisJCW1laV9jbG9zZV9oZGNwX3Nlc3Npb24oaGRjcC0+Y2xkZXYsIGRhdGEpOworCisJcmV0 dXJuIHJldDsKK30KKworc3RhdGljIGludCBoZGNwMl92ZXJpZnlfaHByaW1lKHN0cnVjdCBpbnRl bF9oZGNwICpoZGNwLAorCQkJICAgICAgIHN0cnVjdCBoZGNwMl9ha2Vfc2VuZF9ocHJpbWUgKnJ4 X2hwcmltZSkKK3sKKwlzdHJ1Y3QgbWVpX2hkY3BfZGF0YSAqZGF0YSA9ICZoZGNwLT5tZWlfZGF0 YTsKKwlpbnQgcmV0OworCisJaWYgKCFoZGNwLT5jbGRldikKKwkJcmV0dXJuIC1FSU5WQUw7CisK KwlyZXQgPSBtZWlfdmVyaWZ5X2hwcmltZShoZGNwLT5jbGRldiwgZGF0YSwgcnhfaHByaW1lKTsK KwlpZiAocmV0IDwgMCkKKwkJbWVpX2Nsb3NlX2hkY3Bfc2Vzc2lvbihoZGNwLT5jbGRldiwgZGF0 YSk7CisKKwlyZXR1cm4gcmV0OworfQorCitzdGF0aWMgaW50CitoZGNwMl9zdG9yZV9wYXJpbmdf aW5mbyhzdHJ1Y3QgaW50ZWxfaGRjcCAqaGRjcCwKKwkJCXN0cnVjdCBoZGNwMl9ha2Vfc2VuZF9w YWlyaW5nX2luZm8gKnBhaXJpbmdfaW5mbykKK3sKKwlzdHJ1Y3QgbWVpX2hkY3BfZGF0YSAqZGF0 YSA9ICZoZGNwLT5tZWlfZGF0YTsKKwlpbnQgcmV0OworCisJaWYgKCFoZGNwLT5jbGRldikKKwkJ cmV0dXJuIC1FSU5WQUw7CisKKwlyZXQgPSBtZWlfc3RvcmVfcGFpcmluZ19pbmZvKGhkY3AtPmNs ZGV2LCBkYXRhLCBwYWlyaW5nX2luZm8pOworCWlmIChyZXQgPCAwKQorCQltZWlfY2xvc2VfaGRj cF9zZXNzaW9uKGhkY3AtPmNsZGV2LCBkYXRhKTsKKworCXJldHVybiByZXQ7Cit9CisKK3N0YXRp YyBpbnQKK2hkY3AyX3ByZXBhcmVfbGNfaW5pdChzdHJ1Y3QgaW50ZWxfaGRjcCAqaGRjcCwgc3Ry dWN0IGhkY3AyX2xjX2luaXQgKmxjX2luaXQpCit7CisJc3RydWN0IG1laV9oZGNwX2RhdGEgKmRh dGEgPSAmaGRjcC0+bWVpX2RhdGE7CisJaW50IHJldDsKKworCWlmICghaGRjcC0+Y2xkZXYpCisJ CXJldHVybiAtRUlOVkFMOworCisJcmV0ID0gbWVpX2luaXRpYXRlX2xvY2FsaXR5X2NoZWNrKGhk Y3AtPmNsZGV2LCBkYXRhLCBsY19pbml0KTsKKwlpZiAocmV0IDwgMCkKKwkJbWVpX2Nsb3NlX2hk Y3Bfc2Vzc2lvbihoZGNwLT5jbGRldiwgZGF0YSk7CisKKwlyZXR1cm4gcmV0OworfQorCitzdGF0 aWMgaW50CitoZGNwMl92ZXJpZnlfbHByaW1lKHN0cnVjdCBpbnRlbF9oZGNwICpoZGNwLAorCQkg ICAgc3RydWN0IGhkY3AyX2xjX3NlbmRfbHByaW1lICpyeF9scHJpbWUpCit7CisJc3RydWN0IG1l aV9oZGNwX2RhdGEgKmRhdGEgPSAmaGRjcC0+bWVpX2RhdGE7CisJaW50IHJldDsKKworCWlmICgh aGRjcC0+Y2xkZXYpCisJCXJldHVybiAtRUlOVkFMOworCisJcmV0ID0gbWVpX3ZlcmlmeV9scHJp bWUoaGRjcC0+Y2xkZXYsIGRhdGEsIHJ4X2xwcmltZSk7CisJaWYgKHJldCA8IDApCisJCW1laV9j bG9zZV9oZGNwX3Nlc3Npb24oaGRjcC0+Y2xkZXYsIGRhdGEpOworCisJcmV0dXJuIHJldDsKK30K Kworc3RhdGljIGludCBoZGNwMl9wcmVwYXJlX3NrZXkoc3RydWN0IGludGVsX2hkY3AgKmhkY3As CisJCQkgICAgICBzdHJ1Y3QgaGRjcDJfc2tlX3NlbmRfZWtzICpza2VfZGF0YSkKK3sKKwlzdHJ1 Y3QgbWVpX2hkY3BfZGF0YSAqZGF0YSA9ICZoZGNwLT5tZWlfZGF0YTsKKwlpbnQgcmV0OworCisJ aWYgKCFoZGNwLT5jbGRldikKKwkJcmV0dXJuIC1FSU5WQUw7CisKKwlyZXQgPSBtZWlfZ2V0X3Nl c3Npb25fa2V5KGhkY3AtPmNsZGV2LCBkYXRhLCBza2VfZGF0YSk7CisJaWYgKHJldCA8IDApCisJ CW1laV9jbG9zZV9oZGNwX3Nlc3Npb24oaGRjcC0+Y2xkZXYsIGRhdGEpOworCisJcmV0dXJuIHJl dDsKK30KKworc3RhdGljIGludAoraGRjcDJfdmVyaWZ5X3JlcF90b3BvbG9neV9wcmVwYXJlX2Fj aygKKwkJCXN0cnVjdCBpbnRlbF9oZGNwICpoZGNwLAorCQkJc3RydWN0IGhkY3AyX3JlcF9zZW5k X3JlY2VpdmVyaWRfbGlzdCAqcmVwX3RvcG9sb2d5LAorCQkJc3RydWN0IGhkY3AyX3JlcF9zZW5k X2FjayAqcmVwX3NlbmRfYWNrKQoreworCXN0cnVjdCBtZWlfaGRjcF9kYXRhICpkYXRhID0gJmhk Y3AtPm1laV9kYXRhOworCWludCByZXQ7CisKKwlpZiAoIWhkY3AtPmNsZGV2KQorCQlyZXR1cm4g LUVJTlZBTDsKKworCXJldCA9IG1laV9yZXBlYXRlcl9jaGVja19mbG93X3ByZXBhcmVfYWNrKGhk Y3AtPmNsZGV2LCBkYXRhLAorCQkJCQkJICByZXBfdG9wb2xvZ3ksIHJlcF9zZW5kX2Fjayk7CisJ aWYgKHJldCA8IDApCisJCW1laV9jbG9zZV9oZGNwX3Nlc3Npb24oaGRjcC0+Y2xkZXYsIGRhdGEp OworCisJcmV0dXJuIHJldDsKK30KKworc3RhdGljIGludAoraGRjcDJfdmVyaWZ5X21wcmltZShz dHJ1Y3QgaW50ZWxfaGRjcCAqaGRjcCwKKwkJICAgIHN0cnVjdCBoZGNwMl9yZXBfc3RyZWFtX3Jl YWR5ICpzdHJlYW1fcmVhZHkpCit7CisJc3RydWN0IG1laV9oZGNwX2RhdGEgKmRhdGEgPSAmaGRj cC0+bWVpX2RhdGE7CisJaW50IHJldDsKKworCWlmICghaGRjcC0+Y2xkZXYpCisJCXJldHVybiAt RUlOVkFMOworCisJcmV0ID0gbWVpX3ZlcmlmeV9tcHJpbWUoaGRjcC0+Y2xkZXYsIGRhdGEsIHN0 cmVhbV9yZWFkeSk7CisJaWYgKHJldCA8IDApCisJCW1laV9jbG9zZV9oZGNwX3Nlc3Npb24oaGRj cC0+Y2xkZXYsIGRhdGEpOworCisJcmV0dXJuIHJldDsKK30KKworCitzdGF0aWMgaW50IGhkY3Ay X2F1dGhlbnRpY2F0ZV9wb3J0KHN0cnVjdCBpbnRlbF9oZGNwICpoZGNwKQoreworCXN0cnVjdCBt ZWlfaGRjcF9kYXRhICpkYXRhID0gJmhkY3AtPm1laV9kYXRhOworCWludCByZXQ7CisKKwlpZiAo IWhkY3AtPmNsZGV2KQorCQlyZXR1cm4gLUVJTlZBTDsKKworCXJldCA9IG1laV9lbmFibGVfaGRj cF9hdXRoZW50aWNhdGlvbihoZGNwLT5jbGRldiwgZGF0YSk7CisJaWYgKHJldCA8IDApCisJCW1l aV9jbG9zZV9oZGNwX3Nlc3Npb24oaGRjcC0+Y2xkZXYsIGRhdGEpOworCisJcmV0dXJuIHJldDsK K30KKworc3RhdGljIGlubGluZSBpbnQgaGRjcDJfZGVhdXRoZW50aWNhdGVfcG9ydChzdHJ1Y3Qg aW50ZWxfaGRjcCAqaGRjcCkKK3sKKwlyZXR1cm4gaGRjcDJfY2xvc2VfbWVpX3Nlc3Npb24oaGRj cCk7Cit9Ci0tIAoyLjcuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50 ZWwtZ2Z4Cg==