From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ramalingam C Subject: [PATCH v2 16/42] misc/mei/hdcp: Prepare Session Key Date: Thu, 8 Mar 2018 17:28:43 +0530 Message-ID: <1520510349-8385-17-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: dri-devel@lists.freedesktop.org UmVxdWVzdCB0byBNRSB0byBwcmVwYXJlIHRoZSBlbmNyeXB0ZWQgc2Vzc2lvbiBrZXkuCgpPbiBT dWNjZXNzLCBNRSBwcm92aWRlcyBFbmNyeXB0ZWQgc2Vzc2lvbiBrZXkuIEZ1bmN0aW9ucyBwb3B1 bGF0ZXMKdGhlIEhEQ1AyLjIgYXV0aGVudGljYXRpb24gbXNnIFNLRV9TZW5kX0Vrcy4KCnYyOgog IFJlYmFzZWQuCgpTaWduZWQtb2ZmLWJ5OiBSYW1hbGluZ2FtIEMgPHJhbWFsaW5nYW0uY0BpbnRl bC5jb20+Ci0tLQogZHJpdmVycy9taXNjL21laS9oZGNwL21laV9oZGNwLmMgfCA2NyArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBpbmNsdWRlL2xpbnV4L21laV9oZGNw LmggICAgICAgICB8ICA4ICsrKysrCiAyIGZpbGVzIGNoYW5nZWQsIDc1IGluc2VydGlvbnMoKykK CmRpZmYgLS1naXQgYS9kcml2ZXJzL21pc2MvbWVpL2hkY3AvbWVpX2hkY3AuYyBiL2RyaXZlcnMv bWlzYy9tZWkvaGRjcC9tZWlfaGRjcC5jCmluZGV4IGMzYzhiOWEyODQ5OC4uZmJiODhhNTZlMTBj IDEwMDY0NAotLS0gYS9kcml2ZXJzL21pc2MvbWVpL2hkY3AvbWVpX2hkY3AuYworKysgYi9kcml2 ZXJzL21pc2MvbWVpL2hkY3AvbWVpX2hkY3AuYwpAQCAtNDY4LDYgKzQ2OCw3MyBAQCBpbnQgbWVp X3ZlcmlmeV9scHJpbWUoc3RydWN0IG1laV9oZGNwX2RhdGEgKmRhdGEsCiB9CiBFWFBPUlRfU1lN Qk9MKG1laV92ZXJpZnlfbHByaW1lKTsKIAorLyoqCisgKiBtZWlfZ2V0X3Nlc3Npb25fa2V5Ogor ICoJRnVuY3Rpb24gdG8gcHJlcGFyZSBTS0VfU2VuZF9Fa3MuCisgKgorICogQGRhdGEJCTogSW50 ZWwgSFcgc3BlY2lmaWMgRGF0YQorICogQHNrZV9kYXRhCQk6IFBvaW50ZXIgZm9yIFNLRV9TZW5k X0Vrcy4KKyAqCisgKiBSZXR1cm5zIDAgb24gU3VjY2VzcywgPDAgb24gRmFpbHVyZQorICovCitp bnQgbWVpX2dldF9zZXNzaW9uX2tleShzdHJ1Y3QgbWVpX2hkY3BfZGF0YSAqZGF0YSwKKwkJCXN0 cnVjdCBoZGNwMl9za2Vfc2VuZF9la3MgKnNrZV9kYXRhKQoreworCXN0cnVjdCB3aXJlZF9jbWRf Z2V0X3Nlc3Npb25fa2V5X2luIGdldF9za2V5X2luID0geyB7IDAgfSB9OworCXN0cnVjdCB3aXJl ZF9jbWRfZ2V0X3Nlc3Npb25fa2V5X291dCBnZXRfc2tleV9vdXQgPSB7IHsgMCB9IH07CisJZW51 bSBtZV9oZGNwX3N0YXR1cyBzdGF0dXM7CisJc3RydWN0IGRldmljZSAqZGV2OworCXNzaXplX3Qg Ynl0ZTsKKworCWlmICghZGF0YSB8fCAhc2tlX2RhdGEpCisJCXJldHVybiAtRUlOVkFMOworCisJ LyogY2hlY2sgZm9yIHRoZSBtZWlfZGV2aWNlIGVuYWJsZWQgb3Igbm90ICovCisJaWYgKCFtZWlf Y2xkZXZfYWN0aXZlX2FuZF9lbmFibGVkKGRhdGEtPmNsZGV2KSkKKwkJcmV0dXJuIC1FTk9ERVY7 CisKKwlkZXYgPSAmZGF0YS0+Y2xkZXYtPmRldjsKKworCWdldF9za2V5X2luLmhlYWRlci5hcGlf dmVyc2lvbiA9IEhEQ1BfQVBJX1ZFUlNJT047CisJZ2V0X3NrZXlfaW4uaGVhZGVyLmNvbW1hbmRf aWQgPSBXSVJFRF9HRVRfU0VTU0lPTl9LRVk7CisJZ2V0X3NrZXlfaW4uaGVhZGVyLnN0YXR1cyA9 IE1FX0hEQ1BfU1RBVFVTX1NVQ0NFU1M7CisJZ2V0X3NrZXlfaW4uaGVhZGVyLmJ1ZmZlcl9sZW4g PSBXSVJFRF9DTURfQlVGX0xFTl9HRVRfU0VTU0lPTl9LRVlfSU47CisKKwlnZXRfc2tleV9pbi5w b3J0LmludGVncmF0ZWRfcG9ydF90eXBlID0gZGF0YS0+cG9ydF90eXBlOworCWdldF9za2V5X2lu LnBvcnQucGh5c2ljYWxfcG9ydCA9IGRhdGEtPnBvcnQ7CisKKwkvKiBSZXF1ZXN0IHRvIE1FICov CisJYnl0ZSA9IG1laV9jbGRldl9zZW5kKGRhdGEtPmNsZGV2LCAodTggKikmZ2V0X3NrZXlfaW4s CisJCQkgICAgICBzaXplb2YoZ2V0X3NrZXlfaW4pKTsKKwlpZiAoYnl0ZSA8IDApIHsKKwkJZGV2 X2VycihkZXYsICJtZWlfY2xkZXZfc2VuZCBmYWlsZWQuICVkXG4iLCAoaW50KWJ5dGUpOworCQly ZXR1cm4gYnl0ZTsKKwl9CisKKwkvKiBSZXNwb25zZSBmcm9tIE1FICovCisJYnl0ZSA9IG1laV9j bGRldl9yZWN2KGRhdGEtPmNsZGV2LCAodTggKikmZ2V0X3NrZXlfb3V0LAorCQkJICAgICAgc2l6 ZW9mKGdldF9za2V5X291dCkpOworCisJaWYgKGJ5dGUgPCAwKSB7CisJCWRldl9lcnIoZGV2LCAi bWVpX2NsZGV2X3JlY3YgZmFpbGVkLiAlZFxuIiwgKGludClieXRlKTsKKwkJcmV0dXJuIGJ5dGU7 CisJfQorCisJc3RhdHVzID0gKGVudW0gbWVfaGRjcF9zdGF0dXMpZ2V0X3NrZXlfb3V0LmhlYWRl ci5zdGF0dXM7CisJaWYgKHN0YXR1cyAhPSBNRV9IRENQX1NUQVRVU19TVUNDRVNTKSB7CisJCWRl dl9lcnIoZGV2LCAiTUUgY21kIDB4JTA4WCBmYWlsZWQuIHN0YXR1czogMHglWFxuIiwKKwkJCVdJ UkVEX0dFVF9TRVNTSU9OX0tFWSwgc3RhdHVzKTsKKwkJcmV0dXJuIC0xOworCX0KKworCXNrZV9k YXRhLT5tc2dfaWQgPSBIRENQXzJfMl9TS0VfU0VORF9FS1M7CisJbWVtY3B5KHNrZV9kYXRhLT5l X2RrZXlfa3MsIGdldF9za2V5X291dC5lX2RrZXlfa3MsCisJICAgICAgIEhEQ1BfMl8yX0VfREtF WV9LU19MRU4pOworCW1lbWNweShza2VfZGF0YS0+cml2LCBnZXRfc2tleV9vdXQucl9pdiwgSERD UF8yXzJfUklWX0xFTik7CisJcmV0dXJuIDA7Cit9CitFWFBPUlRfU1lNQk9MKG1laV9nZXRfc2Vz c2lvbl9rZXkpOworCiBzdGF0aWMgaW50IG1laV9oZGNwX3Byb2JlKHN0cnVjdCBtZWlfY2xfZGV2 aWNlICpjbGRldiwKIAkJCSAgY29uc3Qgc3RydWN0IG1laV9jbF9kZXZpY2VfaWQgKmlkKQogewpk aWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9tZWlfaGRjcC5oIGIvaW5jbHVkZS9saW51eC9tZWlf aGRjcC5oCmluZGV4IGQ4YzJiNDQwY2Q4MS4uMTkzZjIzYmE4ZmJjIDEwMDY0NAotLS0gYS9pbmNs dWRlL2xpbnV4L21laV9oZGNwLmgKKysrIGIvaW5jbHVkZS9saW51eC9tZWlfaGRjcC5oCkBAIC0x MTksNiArMTE5LDggQEAgaW50IG1laV9pbml0aWF0ZV9sb2NhbGl0eV9jaGVjayhzdHJ1Y3QgbWVp X2hkY3BfZGF0YSAqZGF0YSwKIAkJCQlzdHJ1Y3QgaGRjcDJfbGNfaW5pdCAqbGNfaW5pdF9kYXRh KTsKIGludCBtZWlfdmVyaWZ5X2xwcmltZShzdHJ1Y3QgbWVpX2hkY3BfZGF0YSAqZGF0YSwKIAkJ ICAgICAgc3RydWN0IGhkY3AyX2xjX3NlbmRfbHByaW1lICpyeF9scHJpbWUpOworaW50IG1laV9n ZXRfc2Vzc2lvbl9rZXkoc3RydWN0IG1laV9oZGNwX2RhdGEgKmRhdGEsCisJCQlzdHJ1Y3QgaGRj cDJfc2tlX3NlbmRfZWtzICpza2VfZGF0YSk7CiAjZWxzZQogc3RhdGljIGlubGluZQogaW50IG1l aV9oZGNwX2NsZGV2X2dldF9yZWZlcmVuY2Uodm9pZCAqY2xpZW50X2RhdGEsCkBAIC0xNzIsNSAr MTc0LDExIEBAIGludCBtZWlfdmVyaWZ5X2xwcmltZShzdHJ1Y3QgbWVpX2hkY3BfZGF0YSAqZGF0 YSwKIHsKIAlyZXR1cm4gLUVOT0RFVjsKIH0KK3N0YXRpYyBpbmxpbmUKK2ludCBtZWlfZ2V0X3Nl c3Npb25fa2V5KHN0cnVjdCBtZWlfaGRjcF9kYXRhICpkYXRhLAorCQkJc3RydWN0IGhkY3AyX3Nr ZV9zZW5kX2VrcyAqc2tlX2RhdGEpCit7CisJcmV0dXJuIC1FTk9ERVY7Cit9CiAjZW5kaWYgLyog ZGVmaW5lZCAoQ09ORklHX0lOVEVMX01FSV9IRENQKSAqLwogI2VuZGlmIC8qIGRlZmluZWQgKF9M SU5VWF9NRUlfSERDUF9IKSAqLwotLSAKMi43LjQKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2ludGVsLWdmeAo=