From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 80C4C6E3F1 for ; Fri, 8 Mar 2019 16:28:46 +0000 (UTC) From: Ramalingam C Date: Fri, 8 Mar 2019 22:00:45 +0530 Message-Id: <20190308163049.9016-2-ramalingam.c@intel.com> In-Reply-To: <20190308163049.9016-1-ramalingam.c@intel.com> References: <20190308163049.9016-1-ramalingam.c@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t v2 1/5] kms_content_protection: Content type support List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: igt-dev@lists.freedesktop.org, daniel.vetter@ffwll.ch List-ID: QWRkcyBhIGNvbm5lY3RvciBwcm9wZXJ0eSBjYWxsZWQgIkNQX0NvbnRlbnRfVHlwZSIKCkNvbnRl bnQgVHlwZSB0YWtlcyB0d28gdmFsdWVzIHdoaWNoIGNsYXNzaWZpZXMgdGhlIGNvbnRlbnQgc3Ry ZWFtOgoJVHlwZSAwOiBTdHJlYW0gdGhhdCBjYW4gYmUgdHJhbm1pdHRlZCBvbiBIRENQMS40L0hE Q1AyLjIKCVR5cGUgMTogU3RyZWFtIHRoYXQgbmVlZHMgSERDUDIuMiBlbmNyeXB0aW9uIG9ubHku CgpTbyB3aGVuIFR5cGUgMSBpcyBzZXQgS01EIGlzIGZvcmNlZCB0byBlbmFibGUgSERDUDIuMiBv bmx5LgoKRm9yIFR5cGUgMCByZXF1ZXN0LCBLZXJuZWwgY2hvb3NlcyB0aGUgaGlnaGVzdCBjYXBh YmxlIEhEQ1AgdmVyc2lvbgoodjIuMikgZmlyc3QuIElmIHRoYXQgZmFpbHMsIHRoZW4gaXQgZmFs bCBiYWNrIHRvIHRoZSBuZXh0IGF2YWlsYmxlCnZlcnNpb24odjEuNCkgYmVmb3JlIGFib25kb25p bmcgSERDUCBhdXRlaG50aWNhdGlvbiBhdHRlbXB0cy4KClBsZWFzZSBub3RlIGNvbnRlbnRfdHlw ZSBpcyBhbGxvd2VkIHRvIGJlIHVwZGF0ZWQgd2hlbiAiQ29udGVudApQcm90ZWN0aW9uIiBpcyBp biBVTkRFU0lSRUQgc3RhdGUuCgp2MjoKICBzL2NwX2NvbnRlbnRfdHlwZS9jb250ZW50X3B0b3Rl Y3Rpb25fdHlwZSBbZGFudmV0XQoKU2lnbmVkLW9mZi1ieTogUmFtYWxpbmdhbSBDIDxyYW1hbGlu Z2FtLmNAaW50ZWwuY29tPgotLS0KIGxpYi9pZ3Rfa21zLmMgICAgICAgICAgICAgICAgICB8ICAx ICsKIGxpYi9pZ3Rfa21zLmggICAgICAgICAgICAgICAgICB8ICAxICsKIHRlc3RzL2ttc19jb250 ZW50X3Byb3RlY3Rpb24uYyB8IDcyICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0K IDMgZmlsZXMgY2hhbmdlZCwgNjEgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvbGliL2lndF9rbXMuYyBiL2xpYi9pZ3Rfa21zLmMKaW5kZXggN2ViYWI0Y2ExODZm Li5kMzA3NDFmNzQ3ZTcgMTAwNjQ0Ci0tLSBhL2xpYi9pZ3Rfa21zLmMKKysrIGIvbGliL2lndF9r bXMuYwpAQCAtMTk5LDYgKzE5OSw3IEBAIGNvbnN0IGNoYXIgKiBjb25zdCBpZ3RfY29ubmVjdG9y X3Byb3BfbmFtZXNbSUdUX05VTV9DT05ORUNUT1JfUFJPUFNdID0gewogCVtJR1RfQ09OTkVDVE9S X0JST0FEQ0FTVF9SR0JdID0gIkJyb2FkY2FzdCBSR0IiLAogCVtJR1RfQ09OTkVDVE9SX0NPTlRF TlRfUFJPVEVDVElPTl0gPSAiQ29udGVudCBQcm90ZWN0aW9uIiwKIAlbSUdUX0NPTk5FQ1RPUl9W UlJfQ0FQQUJMRV0gPSAidnJyX2NhcGFibGUiLAorCVtJR1RfQ09OTkVDVE9SX0NQX0NPTlRFTlRf VFlQRV0gPSAiQ29udGVudF9wcm90ZWN0aW9uX3R5cGUiLAogfTsKIAogLyoKZGlmZiAtLWdpdCBh L2xpYi9pZ3Rfa21zLmggYi9saWIvaWd0X2ttcy5oCmluZGV4IGEyOWFkNzgzNjQ2NS4uNTljZGEz NmVjZDIxIDEwMDY0NAotLS0gYS9saWIvaWd0X2ttcy5oCisrKyBiL2xpYi9pZ3Rfa21zLmgKQEAg LTEyMyw2ICsxMjMsNyBAQCBlbnVtIGlndF9hdG9taWNfY29ubmVjdG9yX3Byb3BlcnRpZXMgewog ICAgICAgIElHVF9DT05ORUNUT1JfQlJPQURDQVNUX1JHQiwKICAgICAgICBJR1RfQ09OTkVDVE9S X0NPTlRFTlRfUFJPVEVDVElPTiwKICAgICAgICBJR1RfQ09OTkVDVE9SX1ZSUl9DQVBBQkxFLAor ICAgICAgIElHVF9DT05ORUNUT1JfQ1BfQ09OVEVOVF9UWVBFLAogICAgICAgIElHVF9OVU1fQ09O TkVDVE9SX1BST1BTCiB9OwogCmRpZmYgLS1naXQgYS90ZXN0cy9rbXNfY29udGVudF9wcm90ZWN0 aW9uLmMgYi90ZXN0cy9rbXNfY29udGVudF9wcm90ZWN0aW9uLmMKaW5kZXggN2ZjODU0MmU3Njlh Li4wMDc4NGUyYTVmMDEgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2ttc19jb250ZW50X3Byb3RlY3Rpb24u YworKysgYi90ZXN0cy9rbXNfY29udGVudF9wcm90ZWN0aW9uLmMKQEAgLTQwLDYgKzQwLDEzIEBA IHN0cnVjdCBkYXRhIHsKICNkZWZpbmUgQ1BfREVTSVJFRAkJCQkxCiAjZGVmaW5lIENQX0VOQUJM RUQJCQkJMgogCisvKgorICogQ1BfVFlQRV8wIGNhbiBiZSBoYW5kbGVkIG9uIGJvdGggSERDUDEu NCBhbmQgSERDUDIuMi4gV2hlcmUgYXMgQ1BfVFlQRV8xCisgKiBjYW4gYmUgaGFuZGxlZCBvbmx5 IHRocm91Z2ggSERDUDIuMi4KKyAqLworI2RlZmluZSBDUF9UWVBFXzAJCQkJMAorI2RlZmluZSBD UF9UWVBFXzEJCQkJMQorCiAjZGVmaW5lIExJQ19QRVJJT0RfTVNFQwkJCQkoNCAqIDEwMDApCiAv KiBLZXJuZWwgcmV0cnkgY291bnQ9MywgTWF4IHRpbWUgcGVyIGF1dGhlbnRpY2F0aW9uIGFsbG93 ZWQgPSA2U2VjICovCiAjZGVmaW5lIEtFUk5FTF9BVVRIX1RJTUVfQUxMT1dFRF9NU0VDCQkoMyAq ICA2ICogMTAwMCkKQEAgLTE1NSw3ICsxNjIsOCBAQCBzdGF0aWMgdm9pZCBtb2Rlc2V0X3dpdGhf ZmIoY29uc3QgZW51bSBwaXBlIHBpcGUsIGlndF9vdXRwdXRfdCAqb3V0cHV0LAogCWNvbW1pdF9k aXNwbGF5X2FuZF93YWl0X2Zvcl9mbGlwKHMpOwogfQogCi1zdGF0aWMgYm9vbCB0ZXN0X2NwX2Vu YWJsZShpZ3Rfb3V0cHV0X3QgKm91dHB1dCwgZW51bSBpZ3RfY29tbWl0X3N0eWxlIHMpCitzdGF0 aWMgYm9vbCB0ZXN0X2NwX2VuYWJsZShpZ3Rfb3V0cHV0X3QgKm91dHB1dCwgZW51bSBpZ3RfY29t bWl0X3N0eWxlIHMsCisJCQkgICBpbnQgY29udGVudF90eXBlKQogewogCWlndF9kaXNwbGF5X3Qg KmRpc3BsYXkgPSAmZGF0YS5kaXNwbGF5OwogCWlndF9wbGFuZV90ICpwcmltYXJ5OwpAQCAtMTY1 LDYgKzE3Myw5IEBAIHN0YXRpYyBib29sIHRlc3RfY3BfZW5hYmxlKGlndF9vdXRwdXRfdCAqb3V0 cHV0LCBlbnVtIGlndF9jb21taXRfc3R5bGUgcykKIAogCWlndF9vdXRwdXRfc2V0X3Byb3BfdmFs dWUob3V0cHV0LAogCQkJCSAgSUdUX0NPTk5FQ1RPUl9DT05URU5UX1BST1RFQ1RJT04sIENQX0RF U0lSRUQpOworCWlmIChvdXRwdXQtPnByb3BzW0lHVF9DT05ORUNUT1JfQ1BfQ09OVEVOVF9UWVBF XSkKKwkJaWd0X291dHB1dF9zZXRfcHJvcF92YWx1ZShvdXRwdXQsIElHVF9DT05ORUNUT1JfQ1Bf Q09OVEVOVF9UWVBFLAorCQkJCQkgIGNvbnRlbnRfdHlwZSk7CiAJaWd0X2Rpc3BsYXlfY29tbWl0 MihkaXNwbGF5LCBzKTsKIAogCXJldCA9IHdhaXRfZm9yX3Byb3BfdmFsdWUob3V0cHV0LCBDUF9F TkFCTEVELApAQCAtMjAxLDEzICsyMTIsMTQgQEAgc3RhdGljIHZvaWQgdGVzdF9jcF9kaXNhYmxl KGlndF9vdXRwdXRfdCAqb3V0cHV0LCBlbnVtIGlndF9jb21taXRfc3R5bGUgcykKIH0KIAogc3Rh dGljIHZvaWQgdGVzdF9jcF9lbmFibGVfd2l0aF9yZXRyeShpZ3Rfb3V0cHV0X3QgKm91dHB1dCwK LQkJCQkgICAgICBlbnVtIGlndF9jb21taXRfc3R5bGUgcywgaW50IHJldHJ5KQorCQkJCSAgICAg IGVudW0gaWd0X2NvbW1pdF9zdHlsZSBzLCBpbnQgcmV0cnksCisJCQkJICAgICAgaW50IGNvbnRl bnRfdHlwZSkKIHsKIAlib29sIHJldDsKIAogCWRvIHsKIAkJdGVzdF9jcF9kaXNhYmxlKG91dHB1 dCwgcyk7Ci0JCXJldCA9IHRlc3RfY3BfZW5hYmxlKG91dHB1dCwgcyk7CisJCXJldCA9IHRlc3Rf Y3BfZW5hYmxlKG91dHB1dCwgcywgY29udGVudF90eXBlKTsKIAogCQlpZiAoIXJldCAmJiAtLXJl dHJ5KQogCQkJaWd0X2RlYnVnKCJSZXRyeSAoJWQvMikgLi4uXG4iLCAzIC0gcmV0cnkpOwpAQCAt MjM3LDcgKzI0OSw3IEBAIHN0YXRpYyB2b2lkIHRlc3RfY3BfbGljKGlndF9vdXRwdXRfdCAqb3V0 cHV0KQogCiBzdGF0aWMgdm9pZCB0ZXN0X2NvbnRlbnRfcHJvdGVjdGlvbl9vbl9vdXRwdXQoaWd0 X291dHB1dF90ICpvdXRwdXQsCiAJCQkJCSAgICAgIGVudW0gaWd0X2NvbW1pdF9zdHlsZSBzLAot CQkJCQkgICAgICBib29sIGRwbXNfdGVzdCkKKwkJCQkJICAgICAgYm9vbCBkcG1zX3Rlc3QsIGlu dCBjb250ZW50X3R5cGUpCiB7CiAJaWd0X2Rpc3BsYXlfdCAqZGlzcGxheSA9ICZkYXRhLmRpc3Bs YXk7CiAJaWd0X3BsYW5lX3QgKnByaW1hcnk7CkBAIC0yNTgsNyArMjcwLDcgQEAgc3RhdGljIHZv aWQgdGVzdF9jb250ZW50X3Byb3RlY3Rpb25fb25fb3V0cHV0KGlndF9vdXRwdXRfdCAqb3V0cHV0 LAogCQkJY29udGludWU7CiAKIAkJbW9kZXNldF93aXRoX2ZiKHBpcGUsIG91dHB1dCwgcyk7Ci0J CXRlc3RfY3BfZW5hYmxlX3dpdGhfcmV0cnkob3V0cHV0LCBzLCAzKTsKKwkJdGVzdF9jcF9lbmFi bGVfd2l0aF9yZXRyeShvdXRwdXQsIHMsIDMsIGNvbnRlbnRfdHlwZSk7CiAJCXRlc3RfY3BfbGlj KG91dHB1dCk7CiAKIAkJaWYgKGRwbXNfdGVzdCkgewpAQCAtMjczLDcgKzI4NSw4IEBAIHN0YXRp YyB2b2lkIHRlc3RfY29udGVudF9wcm90ZWN0aW9uX29uX291dHB1dChpZ3Rfb3V0cHV0X3QgKm91 dHB1dCwKIAkJCXJldCA9IHdhaXRfZm9yX3Byb3BfdmFsdWUob3V0cHV0LCBDUF9FTkFCTEVELAog CQkJCQkJICBLRVJORUxfQVVUSF9USU1FX0FMTE9XRURfTVNFQyk7CiAJCQlpZiAoIXJldCkKLQkJ CQl0ZXN0X2NwX2VuYWJsZV93aXRoX3JldHJ5KG91dHB1dCwgcywgMik7CisJCQkJdGVzdF9jcF9l bmFibGVfd2l0aF9yZXRyeShvdXRwdXQsIHMsCisJCQkJCQkJICAyLCBjb250ZW50X3R5cGUpOwog CQl9CiAKIAkJdGVzdF9jcF9kaXNhYmxlKG91dHB1dCwgcyk7CkBAIC0zMDAsNyArMzEzLDggQEAg c3RhdGljIHZvaWQgX19kZWJ1Z2ZzX3JlYWQoaW50IGZkLCBjb25zdCBjaGFyICpwYXJhbSwgY2hh ciAqYnVmLCBpbnQgbGVuKQogCiAjZGVmaW5lIGRlYnVnZnNfcmVhZChmZCwgcCwgYXJyKSBfX2Rl YnVnZnNfcmVhZChmZCwgcCwgYXJyLCBzaXplb2YoYXJyKSkKIAotI2RlZmluZSBNQVhfU0lOS19I RENQX0NBUF9CVUZfTEVOCTUwMAorI2RlZmluZSBNQVhfU0lOS19IRENQX0NBUF9CVUZfTEVOCTUw MDAKKwogc3RhdGljIGJvb2wgc2lua19oZGNwX2NhcGFibGUoaWd0X291dHB1dF90ICpvdXRwdXQp CiB7CiAJY2hhciBidWZbTUFYX1NJTktfSERDUF9DQVBfQlVGX0xFTl07CkBAIC0zMTgsOSArMzMy LDI2IEBAIHN0YXRpYyBib29sIHNpbmtfaGRjcF9jYXBhYmxlKGlndF9vdXRwdXRfdCAqb3V0cHV0 KQogCXJldHVybiBzdHJzdHIoYnVmLCAiSERDUDEuNCIpOwogfQogCitzdGF0aWMgYm9vbCBzaW5r X2hkY3AyX2NhcGFibGUoaWd0X291dHB1dF90ICpvdXRwdXQpCit7CisJY2hhciBidWZbTUFYX1NJ TktfSERDUF9DQVBfQlVGX0xFTl07CisJaW50IGZkOworCisJZmQgPSBpZ3RfZGVidWdmc19jb25u ZWN0b3JfZGlyKGRhdGEuZHJtX2ZkLCBvdXRwdXQtPm5hbWUsIE9fUkRPTkxZKTsKKwlpZiAoZmQg PCAwKQorCQlyZXR1cm4gZmFsc2U7CisKKwlkZWJ1Z2ZzX3JlYWQoZmQsICJpOTE1X2hkY3Bfc2lu a19jYXBhYmlsaXR5IiwgYnVmKTsKKwljbG9zZShmZCk7CisKKwlpZ3RfZGVidWcoIlNpbmsgY2Fw YWJpbGl0eTogJXNcbiIsIGJ1Zik7CisKKwlyZXR1cm4gc3Ryc3RyKGJ1ZiwgIkhEQ1AyLjIiKTsK K30KIAogc3RhdGljIHZvaWQKLXRlc3RfY29udGVudF9wcm90ZWN0aW9uKGVudW0gaWd0X2NvbW1p dF9zdHlsZSBzLCBib29sIGRwbXNfdGVzdCkKK3Rlc3RfY29udGVudF9wcm90ZWN0aW9uKGVudW0g aWd0X2NvbW1pdF9zdHlsZSBzLCBib29sIGRwbXNfdGVzdCwKKwkJCWludCBjb250ZW50X3R5cGUp CiB7CiAJaWd0X2Rpc3BsYXlfdCAqZGlzcGxheSA9ICZkYXRhLmRpc3BsYXk7CiAJaWd0X291dHB1 dF90ICpvdXRwdXQ7CkBAIC0zMzAsMTQgKzM2MSwyNCBAQCB0ZXN0X2NvbnRlbnRfcHJvdGVjdGlv bihlbnVtIGlndF9jb21taXRfc3R5bGUgcywgYm9vbCBkcG1zX3Rlc3QpCiAJCWlmICghb3V0cHV0 LT5wcm9wc1tJR1RfQ09OTkVDVE9SX0NPTlRFTlRfUFJPVEVDVElPTl0pCiAJCQljb250aW51ZTsK IAorCQlpZiAoIW91dHB1dC0+cHJvcHNbSUdUX0NPTk5FQ1RPUl9DUF9DT05URU5UX1RZUEVdICYm CisJCSAgICBjb250ZW50X3R5cGUpCisJCQljb250aW51ZTsKKwogCQlpZ3RfaW5mbygiQ1AgVGVz dCBleGVjdXRpb24gb24gJXNcbiIsIG91dHB1dC0+bmFtZSk7Ci0JCWlmICghc2lua19oZGNwX2Nh cGFibGUob3V0cHV0KSkgeworCisJCWlmIChjb250ZW50X3R5cGUgJiYgIXNpbmtfaGRjcDJfY2Fw YWJsZShvdXRwdXQpKSB7CisJCQlpZ3RfaW5mbygiXHRTa2lwICVzIChTaW5rIGhhcyBubyBIRENQ Mi4yIHN1cHBvcnQpXG4iLAorCQkJCSBvdXRwdXQtPm5hbWUpOworCQkJY29udGludWU7CisJCX0g ZWxzZSBpZiAoIXNpbmtfaGRjcF9jYXBhYmxlKG91dHB1dCkpIHsKIAkJCWlndF9pbmZvKCJcdFNr aXAgJXMgKFNpbmsgaGFzIG5vIEhEQ1Agc3VwcG9ydClcbiIsCiAJCQkJIG91dHB1dC0+bmFtZSk7 CiAJCQljb250aW51ZTsKIAkJfQogCi0JCXRlc3RfY29udGVudF9wcm90ZWN0aW9uX29uX291dHB1 dChvdXRwdXQsIHMsIGRwbXNfdGVzdCk7CisJCXRlc3RfY29udGVudF9wcm90ZWN0aW9uX29uX291 dHB1dChvdXRwdXQsIHMsIGRwbXNfdGVzdCwKKwkJCQkJCSAgY29udGVudF90eXBlKTsKIAkJdmFs aWRfdGVzdHMrKzsKIAl9CiAKQEAgLTM1NSwxNiArMzk2LDIxIEBAIGlndF9tYWluCiAJfQogCiAJ aWd0X3N1YnRlc3QoImxlZ2FjeSIpCi0JCXRlc3RfY29udGVudF9wcm90ZWN0aW9uKENPTU1JVF9M RUdBQ1ksIGZhbHNlKTsKKwkJdGVzdF9jb250ZW50X3Byb3RlY3Rpb24oQ09NTUlUX0xFR0FDWSwg ZmFsc2UsIENQX1RZUEVfMCk7CiAKIAlpZ3Rfc3VidGVzdCgiYXRvbWljIikgewogCQlpZ3RfcmVx dWlyZShkYXRhLmRpc3BsYXkuaXNfYXRvbWljKTsKLQkJdGVzdF9jb250ZW50X3Byb3RlY3Rpb24o Q09NTUlUX0FUT01JQywgZmFsc2UpOworCQl0ZXN0X2NvbnRlbnRfcHJvdGVjdGlvbihDT01NSVRf QVRPTUlDLCBmYWxzZSwgQ1BfVFlQRV8wKTsKIAl9CiAKIAlpZ3Rfc3VidGVzdCgiYXRvbWljLWRw bXMiKSB7CiAJCWlndF9yZXF1aXJlKGRhdGEuZGlzcGxheS5pc19hdG9taWMpOwotCQl0ZXN0X2Nv bnRlbnRfcHJvdGVjdGlvbihDT01NSVRfQVRPTUlDLCB0cnVlKTsKKwkJdGVzdF9jb250ZW50X3By b3RlY3Rpb24oQ09NTUlUX0FUT01JQywgdHJ1ZSwgQ1BfVFlQRV8wKTsKKwl9CisKKwlpZ3Rfc3Vi dGVzdCgiVHlwZTEiKSB7CisJCWlndF9yZXF1aXJlKGRhdGEuZGlzcGxheS5pc19hdG9taWMpOwor CQl0ZXN0X2NvbnRlbnRfcHJvdGVjdGlvbihDT01NSVRfQVRPTUlDLCBmYWxzZSwgQ1BfVFlQRV8x KTsKIAl9CiAKIAlpZ3RfZml4dHVyZQotLSAKMi4xOS4xCgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwppZ3QtZGV2IG1haWxpbmcgbGlzdAppZ3QtZGV2QGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2lndC1kZXY=