From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ramalingam C Subject: [PATCH v11 34/42] misc/mei/hdcp: Prepare Session Key Date: Thu, 7 Feb 2019 02:34:23 +0530 Message-ID: <1549487071-15343-35-git-send-email-ramalingam.c@intel.com> References: <1549487071-15343-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: <1549487071-15343-1-git-send-email-ramalingam.c@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, daniel.vetter@ffwll.ch, tomas.winkler@intel.com, uma.shankar@intel.com List-Id: dri-devel@lists.freedesktop.org UmVxdWVzdCB0byBNRSB0byBwcmVwYXJlIHRoZSBlbmNyeXB0ZWQgc2Vzc2lvbiBrZXkuCgpPbiBT dWNjZXNzLCBNRSBwcm92aWRlcyBFbmNyeXB0ZWQgc2Vzc2lvbiBrZXkuIEZ1bmN0aW9uIHBvcHVs YXRlcwp0aGUgSERDUDIuMiBhdXRoZW50aWNhdGlvbiBtc2cgU0tFX1NlbmRfRWtzLgoKdjI6IFJl YmFzZWQuCnYzOgogIGNsZGV2IGlzIHBhc3NlZCBhcyBmaXJzdCBwYXJhbWV0ZXIgW1RvbWFzXQog IFJlZHVuZGFudCBjb21tZW50cyBhbmQgY2FzdCBhcmUgcmVtb3ZlZCBbVG9tYXNdCnY0OgogICV6 ZCBmb3Igc3NpemVfdCBbQWxleGFuZGVyXQogICVzL3JldHVybiAtMS9yZXR1cm4gLUVJTyBbQWxl eGFuZGVyXQogIFN0eWxlIGZpeGVkIFtVbWFdCnY1OiBSZWJhc2VkLgp2NjoKICBDb2xsZWN0ZWQg dGhlIFJiLWVkIGJ5LgogIFJlYmFzaW5nLgp2NzoKICBBZGp1c3QgdG8gdGhlIG5ldyBtZWkgaW50 ZXJmYWNlLgogIEZpeCBmb3IgS2RvYy4Kdjg6CiAgSy1Eb2MgYWRkaXRpb24uIFtUb21hc10Kdjk6 CiAgcmVuYW1lZCBmdW5jIGFzIG1laV9oZGNwXyogW1RvbWFzXQogIElubGluZSBmdW5jdGlvbiBp cyBkZWZpbmVkIGZvciBEREkgaW5kZXggW1RvbWFzXQoKU2lnbmVkLW9mZi1ieTogUmFtYWxpbmdh bSBDIDxyYW1hbGluZ2FtLmNAaW50ZWwuY29tPgpSZXZpZXdlZC1ieTogVW1hIFNoYW5rYXIgPHVt YS5zaGFua2FyQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL21pc2MvbWVpL2hkY3AvbWVpX2hkY3Au YyB8IDU5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KIDEgZmlsZSBj aGFuZ2VkLCA1OCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvZHJp dmVycy9taXNjL21laS9oZGNwL21laV9oZGNwLmMgYi9kcml2ZXJzL21pc2MvbWVpL2hkY3AvbWVp X2hkY3AuYwppbmRleCA4MTRkODcwMzQ3YTAuLmQ4NjY1YjAyZDZkNSAxMDA2NDQKLS0tIGEvZHJp dmVycy9taXNjL21laS9oZGNwL21laV9oZGNwLmMKKysrIGIvZHJpdmVycy9taXNjL21laS9oZGNw L21laV9oZGNwLmMKQEAgLTQwNCw2ICs0MDQsNjMgQEAgbWVpX2hkY3BfdmVyaWZ5X2xwcmltZShz dHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBoZGNwX3BvcnRfZGF0YSAqZGF0YSwKIAlyZXR1cm4g MDsKIH0KIAorLyoqCisgKiBtZWlfaGRjcF9nZXRfc2Vzc2lvbl9rZXkoKSAtIFByZXBhcmUgU0tF X1NlbmRfRWtzLgorICogQGRldjogZGV2aWNlIGNvcnJlc3BvbmRpbmcgdG8gdGhlIG1laV9jbF9k ZXZpY2UKKyAqIEBoZGNwX2RhdGE6IEludGVsIEhXIHNwZWNpZmljIGhkY3AgZGF0YQorICogQHNr ZV9kYXRhOiBTS0VfU2VuZF9Fa3MgbXNnIG91dHB1dCBmcm9tIE1FIEZXLgorICoKKyAqIFJldHVy bjogMCBvbiBTdWNjZXNzLCA8MCBvbiBGYWlsdXJlCisgKi8KK3N0YXRpYyBpbnQgbWVpX2hkY3Bf Z2V0X3Nlc3Npb25fa2V5KHN0cnVjdCBkZXZpY2UgKmRldiwKKwkJCQkgICAgc3RydWN0IGhkY3Bf cG9ydF9kYXRhICpkYXRhLAorCQkJCSAgICBzdHJ1Y3QgaGRjcDJfc2tlX3NlbmRfZWtzICpza2Vf ZGF0YSkKK3sKKwlzdHJ1Y3Qgd2lyZWRfY21kX2dldF9zZXNzaW9uX2tleV9pbiBnZXRfc2tleV9p biA9IHsgeyAwIH0gfTsKKwlzdHJ1Y3Qgd2lyZWRfY21kX2dldF9zZXNzaW9uX2tleV9vdXQgZ2V0 X3NrZXlfb3V0ID0geyB7IDAgfSB9OworCXN0cnVjdCBtZWlfY2xfZGV2aWNlICpjbGRldjsKKwlz c2l6ZV90IGJ5dGU7CisKKwlpZiAoIWRldiB8fCAhZGF0YSB8fCAhc2tlX2RhdGEpCisJCXJldHVy biAtRUlOVkFMOworCisJY2xkZXYgPSB0b19tZWlfY2xfZGV2aWNlKGRldik7CisKKwlnZXRfc2tl eV9pbi5oZWFkZXIuYXBpX3ZlcnNpb24gPSBIRENQX0FQSV9WRVJTSU9OOworCWdldF9za2V5X2lu LmhlYWRlci5jb21tYW5kX2lkID0gV0lSRURfR0VUX1NFU1NJT05fS0VZOworCWdldF9za2V5X2lu LmhlYWRlci5zdGF0dXMgPSBNRV9IRENQX1NUQVRVU19TVUNDRVNTOworCWdldF9za2V5X2luLmhl YWRlci5idWZmZXJfbGVuID0gV0lSRURfQ01EX0JVRl9MRU5fR0VUX1NFU1NJT05fS0VZX0lOOwor CisJZ2V0X3NrZXlfaW4ucG9ydC5pbnRlZ3JhdGVkX3BvcnRfdHlwZSA9IGRhdGEtPnBvcnRfdHlw ZTsKKwlnZXRfc2tleV9pbi5wb3J0LnBoeXNpY2FsX3BvcnQgPSBtZWlfZ2V0X2RkaV9pbmRleChk YXRhLT5wb3J0KTsKKworCWJ5dGUgPSBtZWlfY2xkZXZfc2VuZChjbGRldiwgKHU4ICopJmdldF9z a2V5X2luLCBzaXplb2YoZ2V0X3NrZXlfaW4pKTsKKwlpZiAoYnl0ZSA8IDApIHsKKwkJZGV2X2Ri ZyhkZXYsICJtZWlfY2xkZXZfc2VuZCBmYWlsZWQuICV6ZFxuIiwgYnl0ZSk7CisJCXJldHVybiBi eXRlOworCX0KKworCWJ5dGUgPSBtZWlfY2xkZXZfcmVjdihjbGRldiwgKHU4ICopJmdldF9za2V5 X291dCwgc2l6ZW9mKGdldF9za2V5X291dCkpOworCisJaWYgKGJ5dGUgPCAwKSB7CisJCWRldl9k YmcoZGV2LCAibWVpX2NsZGV2X3JlY3YgZmFpbGVkLiAlemRcbiIsIGJ5dGUpOworCQlyZXR1cm4g Ynl0ZTsKKwl9CisKKwlpZiAoZ2V0X3NrZXlfb3V0LmhlYWRlci5zdGF0dXMgIT0gTUVfSERDUF9T VEFUVVNfU1VDQ0VTUykgeworCQlkZXZfZGJnKGRldiwgIk1FIGNtZCAweCUwOFggZmFpbGVkLiBz dGF0dXM6IDB4JVhcbiIsCisJCQlXSVJFRF9HRVRfU0VTU0lPTl9LRVksIGdldF9za2V5X291dC5o ZWFkZXIuc3RhdHVzKTsKKwkJcmV0dXJuIC1FSU87CisJfQorCisJc2tlX2RhdGEtPm1zZ19pZCA9 IEhEQ1BfMl8yX1NLRV9TRU5EX0VLUzsKKwltZW1jcHkoc2tlX2RhdGEtPmVfZGtleV9rcywgZ2V0 X3NrZXlfb3V0LmVfZGtleV9rcywKKwkgICAgICAgSERDUF8yXzJfRV9ES0VZX0tTX0xFTik7CisJ bWVtY3B5KHNrZV9kYXRhLT5yaXYsIGdldF9za2V5X291dC5yX2l2LCBIRENQXzJfMl9SSVZfTEVO KTsKKworCXJldHVybiAwOworfQorCiBzdGF0aWMgX19hdHRyaWJ1dGVfXygodW51c2VkKSkKIHN0 cnVjdCBpOTE1X2hkY3BfY29tcG9uZW50X29wcyBtZWlfaGRjcF9vcHMgPSB7CiAJLm93bmVyID0g VEhJU19NT0RVTEUsCkBAIC00MTQsNyArNDcxLDcgQEAgc3RydWN0IGk5MTVfaGRjcF9jb21wb25l bnRfb3BzIG1laV9oZGNwX29wcyA9IHsKIAkuc3RvcmVfcGFpcmluZ19pbmZvID0gbWVpX2hkY3Bf c3RvcmVfcGFpcmluZ19pbmZvLAogCS5pbml0aWF0ZV9sb2NhbGl0eV9jaGVjayA9IG1laV9oZGNw X2luaXRpYXRlX2xvY2FsaXR5X2NoZWNrLAogCS52ZXJpZnlfbHByaW1lID0gbWVpX2hkY3BfdmVy aWZ5X2xwcmltZSwKLQkuZ2V0X3Nlc3Npb25fa2V5ID0gTlVMTCwKKwkuZ2V0X3Nlc3Npb25fa2V5 ID0gbWVpX2hkY3BfZ2V0X3Nlc3Npb25fa2V5LAogCS5yZXBlYXRlcl9jaGVja19mbG93X3ByZXBh cmVfYWNrID0gTlVMTCwKIAkudmVyaWZ5X21wcmltZSA9IE5VTEwsCiAJLmVuYWJsZV9oZGNwX2F1 dGhlbnRpY2F0aW9uID0gTlVMTCwKLS0gCjIuNy40CgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9kcmktZGV2ZWwK