From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ramalingam C Subject: [PATCH 17/43] misc/mei/hdcp: Prepare Session Key Date: Wed, 14 Feb 2018 19:43:32 +0530 Message-ID: <1518617638-21684-18-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 A8FC36E40A for ; Wed, 14 Feb 2018 14:20:26 +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 UmVxdWVzdCB0byBNRSB0byBwcmVwYXJlIHRoZSBlbmNyeXB0ZWQgc2Vzc2lvbiBrZXkuCgpPbiBT dWNjZXNzLCBNRSBwcm92aWRlcyBFbmNyeXB0ZWQgc2Vzc2lvbiBrZXkuIEZ1bmN0aW9ucyBwb3B1 bGF0ZXMKdGhlIEhEQ1AyLjIgYXV0aGVudGljYXRpb24gbXNnIFNLRV9TZW5kX0Vrcy4KClNpZ25l ZC1vZmYtYnk6IFJhbWFsaW5nYW0gQyA8cmFtYWxpbmdhbS5jQGludGVsLmNvbT4KLS0tCiBkcml2 ZXJzL21pc2MvbWVpL21laV9oZGNwLmMgfCA2OCArKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysKIGluY2x1ZGUvbGludXgvbWVpX2hkY3AuaCAgICB8ICA4ICsrKysr KwogMiBmaWxlcyBjaGFuZ2VkLCA3NiBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9taXNjL21laS9tZWlfaGRjcC5jIGIvZHJpdmVycy9taXNjL21laS9tZWlfaGRjcC5jCmluZGV4 IDgyOGRjY2U1NmI0OS4uZDRkMDA5ZWJhZjk4IDEwMDY0NAotLS0gYS9kcml2ZXJzL21pc2MvbWVp L21laV9oZGNwLmMKKysrIGIvZHJpdmVycy9taXNjL21laS9tZWlfaGRjcC5jCkBAIC00NjgsNiAr NDY4LDc0IEBAIGludCBtZWlfdmVyaWZ5X2xwcmltZShzdHJ1Y3QgbWVpX2hkY3BfZGF0YSAqZGF0 YSwKIH0KIEVYUE9SVF9TWU1CT0wobWVpX3ZlcmlmeV9scHJpbWUpOwogCisvKioKKyAqIG1laV9n ZXRfc2Vzc2lvbl9rZXk6CisgKglGdW5jdGlvbiB0byBwcmVwYXJlIFNLRV9TZW5kX0Vrcy4KKyAq CisgKiBAZGF0YQkJOiBJbnRlbCBIVyBzcGVjaWZpYyBEYXRhCisgKiBAc2tlX2RhdGEJCTogUG9p bnRlciBmb3IgU0tFX1NlbmRfRWtzLgorICoKKyAqIFJldHVybnMgMCBvbiBTdWNjZXNzLCA8MCBv biBGYWlsdXJlCisgKi8KK2ludCBtZWlfZ2V0X3Nlc3Npb25fa2V5KHN0cnVjdCBtZWlfaGRjcF9k YXRhICpkYXRhLAorCQkJc3RydWN0IGhkY3AyX3NrZV9zZW5kX2VrcyAqc2tlX2RhdGEpCit7CisJ c3RydWN0IHdpcmVkX2NtZF9nZXRfc2Vzc2lvbl9rZXlfaW4gZ2V0X3NrZXlfaW4gPSB7IHsgMCB9 IH07CisJc3RydWN0IHdpcmVkX2NtZF9nZXRfc2Vzc2lvbl9rZXlfb3V0IGdldF9za2V5X291dCA9 IHsgeyAwIH0gfTsKKwllbnVtIG1lX3N0YXR1cyBzdGF0dXM7CisJc3RydWN0IGRldmljZSAqZGV2 OworCXNzaXplX3QgYnl0ZTsKKworCWlmICghZGF0YSB8fCAhc2tlX2RhdGEpCisJCXJldHVybiAt RUlOVkFMOworCisJLyogY2hlY2sgZm9yIHRoZSBtZWlfZGV2aWNlIGVuYWJsZWQgb3Igbm90ICov CisJaWYgKCFtZWlfY2xkZXZfYWN0aXZlX2FuZF9lbmFibGVkKGRhdGEtPmNsZGV2KSkKKwkJcmV0 dXJuIC1FTk9ERVY7CisKKwlkZXYgPSAmZGF0YS0+Y2xkZXYtPmRldjsKKworCWdldF9za2V5X2lu LmhlYWRlci5hcGlfdmVyc2lvbiA9IEhEQ1BfQVBJX1ZFUlNJT047CisJZ2V0X3NrZXlfaW4uaGVh ZGVyLmNvbW1hbmRfaWQgPSBXSVJFRF9HRVRfU0VTU0lPTl9LRVk7CisJZ2V0X3NrZXlfaW4uaGVh ZGVyLnN0YXR1cyA9IE1FX0hEQ1BfU1RBVFVTX1NVQ0NFU1M7CisJZ2V0X3NrZXlfaW4uaGVhZGVy LmJ1ZmZlcl9sZW4gPSBXSVJFRF9DTURfQlVGX0xFTl9HRVRfU0VTU0lPTl9LRVlfSU47CisKKwln ZXRfc2tleV9pbi5wb3J0LmludGVncmF0ZWRfcG9ydF90eXBlID0gZGF0YS0+cG9ydF90eXBlOwor CWdldF9za2V5X2luLnBvcnQucGh5c2ljYWxfcG9ydCA9IGRhdGEtPnBvcnQ7CisKKwkvKiBSZXF1 ZXN0IHRvIE1FICovCisJYnl0ZSA9IG1laV9jbGRldl9zZW5kKGRhdGEtPmNsZGV2LCAodTggKikm Z2V0X3NrZXlfaW4sCisJCQkgICAgICBzaXplb2YoZ2V0X3NrZXlfaW4pKTsKKwlpZiAoYnl0ZSA8 IDApIHsKKwkJZGV2X2VycihkZXYsICJtZWlfY2xkZXZfc2VuZCBmYWlsZWQuICVkXG4iLCAoaW50 KWJ5dGUpOworCQlyZXR1cm4gYnl0ZTsKKwl9CisKKwkvKiBSZXNwb25zZSBmcm9tIE1FICovCisJ Ynl0ZSA9IG1laV9jbGRldl9yZWN2KGRhdGEtPmNsZGV2LCAodTggKikmZ2V0X3NrZXlfb3V0LAor CQkJICAgICAgc2l6ZW9mKGdldF9za2V5X291dCkpOworCisJaWYgKGJ5dGUgPCAwKSB7CisJCWRl dl9lcnIoZGV2LCAibWVpX2NsZGV2X3JlY3YgZmFpbGVkLiAlZFxuIiwgKGludClieXRlKTsKKwkJ cmV0dXJuIGJ5dGU7CisJfQorCisJc3RhdHVzID0gKGVudW0gbWVfc3RhdHVzKWdldF9za2V5X291 dC5oZWFkZXIuc3RhdHVzOworCWlmIChzdGF0dXMgIT0gTUVfSERDUF9TVEFUVVNfU1VDQ0VTUykg eworCQlkZXZfZXJyKGRldiwgIk1FIGNtZCAweCUwOFggZmFpbGVkLiBzdGF0dXM6IDB4JVhcbiIs CisJCQlXSVJFRF9HRVRfU0VTU0lPTl9LRVksIHN0YXR1cyk7CisJCXJldHVybiAtMTsKKwl9CisK Kwlza2VfZGF0YS0+bXNnX2lkID0gU0tFX1NFTkRfRUtTOworCW1lbWNweShza2VfZGF0YS0+ZV9k a2V5X2tzLCBnZXRfc2tleV9vdXQuZV9ka2V5X2tzLAorCSAgICAgICBzaXplb2YoZ2V0X3NrZXlf b3V0LmVfZGtleV9rcykpOworCW1lbWNweShza2VfZGF0YS0+cml2LCBnZXRfc2tleV9vdXQucl9p diwKKwkgICAgICAgc2l6ZW9mKGdldF9za2V5X291dC5yX2l2KSk7CisJcmV0dXJuIDA7Cit9CitF WFBPUlRfU1lNQk9MKG1laV9nZXRfc2Vzc2lvbl9rZXkpOworCiBzdGF0aWMgaW50IG1laV9oZGNw X3Byb2JlKHN0cnVjdCBtZWlfY2xfZGV2aWNlICpjbGRldiwKIAkJCSAgY29uc3Qgc3RydWN0IG1l aV9jbF9kZXZpY2VfaWQgKmlkKQogewpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9tZWlfaGRj cC5oIGIvaW5jbHVkZS9saW51eC9tZWlfaGRjcC5oCmluZGV4IGQ4YzJiNDQwY2Q4MS4uMTkzZjIz YmE4ZmJjIDEwMDY0NAotLS0gYS9pbmNsdWRlL2xpbnV4L21laV9oZGNwLmgKKysrIGIvaW5jbHVk ZS9saW51eC9tZWlfaGRjcC5oCkBAIC0xMTksNiArMTE5LDggQEAgaW50IG1laV9pbml0aWF0ZV9s b2NhbGl0eV9jaGVjayhzdHJ1Y3QgbWVpX2hkY3BfZGF0YSAqZGF0YSwKIAkJCQlzdHJ1Y3QgaGRj cDJfbGNfaW5pdCAqbGNfaW5pdF9kYXRhKTsKIGludCBtZWlfdmVyaWZ5X2xwcmltZShzdHJ1Y3Qg bWVpX2hkY3BfZGF0YSAqZGF0YSwKIAkJICAgICAgc3RydWN0IGhkY3AyX2xjX3NlbmRfbHByaW1l ICpyeF9scHJpbWUpOworaW50IG1laV9nZXRfc2Vzc2lvbl9rZXkoc3RydWN0IG1laV9oZGNwX2Rh dGEgKmRhdGEsCisJCQlzdHJ1Y3QgaGRjcDJfc2tlX3NlbmRfZWtzICpza2VfZGF0YSk7CiAjZWxz ZQogc3RhdGljIGlubGluZQogaW50IG1laV9oZGNwX2NsZGV2X2dldF9yZWZlcmVuY2Uodm9pZCAq Y2xpZW50X2RhdGEsCkBAIC0xNzIsNSArMTc0LDExIEBAIGludCBtZWlfdmVyaWZ5X2xwcmltZShz dHJ1Y3QgbWVpX2hkY3BfZGF0YSAqZGF0YSwKIHsKIAlyZXR1cm4gLUVOT0RFVjsKIH0KK3N0YXRp YyBpbmxpbmUKK2ludCBtZWlfZ2V0X3Nlc3Npb25fa2V5KHN0cnVjdCBtZWlfaGRjcF9kYXRhICpk YXRhLAorCQkJc3RydWN0IGhkY3AyX3NrZV9zZW5kX2VrcyAqc2tlX2RhdGEpCit7CisJcmV0dXJu IC1FTk9ERVY7Cit9CiAjZW5kaWYgLyogZGVmaW5lZCAoQ09ORklHX0lOVEVMX01FSV9IRENQKSAq LwogI2VuZGlmIC8qIGRlZmluZWQgKF9MSU5VWF9NRUlfSERDUF9IKSAqLwotLSAKMi43LjQKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBt YWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=