From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ramalingam C Subject: [PATCH v15 15/16] misc/mei/hdcp: Component framework for I915 Interface Date: Thu, 21 Feb 2019 23:42:09 +0530 Message-ID: <1550772730-23280-16-git-send-email-ramalingam.c@intel.com> References: <1550772730-23280-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: <1550772730-23280-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, daniel.vetter@ffwll.ch, tomas.winkler@intel.com, uma.shankar@intel.com List-Id: dri-devel@lists.freedesktop.org TWVpIGhkY3AgZHJpdmVyIGlzIGRlc2lnbmVkIGFzIGNvbXBvbmVudCBzbGF2ZSBmb3IgdGhlIEk5 MTUgY29tcG9uZW50Cm1hc3Rlci4KCnYyOiBSZWJhc2VkLgp2MzoKICBOb3RpZmllciBjaGFpbiBp cyBhZG9wdGVkIGZvciBjbGRldiBzdGF0ZSB1cGRhdGUgW1RvbWFzXQp2NDoKICBNYWRlIHN0YXRp YyBkdW1teSBmdW5jdGlvbnMgYXMgaW5saW5lIGluIG1laV9oZGNwLmgKICBBUEkgZm9yIHBvbGxp bmcgY2xpZW50IGRldmljZSBzdGF0dXMKICBJU19FTkFCTEVEIHVzZWQgaW4gaGVhZGVyLCBmb3Ig Y29uZmlnIHN0YXR1cyBmb3IgbWVpX2hkY3AuCnY1OgogIFJlcGxhY2luZyB0aGUgbm90aWZpZXIg d2l0aCBjb21wb25lbnQgZnJhbWV3b3JrLiBbRGFuaWVsXQp2NjoKICBSZWJhc2VkIG9uIHRoZSBJ OTE1IGNvbXAgbWFzdGVyIHJlZGVzaWduLgp2NzoKICBtZWlfaGRjcF9jb21wb25lbnRfcmVnaXN0 ZXJlZCBpcyBtYWRlIHN0YXRpYyBbVW1hXQogIE5lZWQgZm9yIGdsb2JhbCBzdGF0aWMgdmFyaWFi bGUgbWVpX2NsZGV2IGlzIHJlbW92ZWQuCnY4OgogIG1hc3RlciBjb21wIGlzIGFkZGVkIHRvIGJl IG1hdGNoZWQgd2l0aCBpOTE1IHN1YmNvbXBvbmVudCBbZGFuaWVsXQp2OToKICBvbmx5IGNvbXBf bWFzdGVyIGlzIHNldCBhbmQgcmV0cmlldmVkIGFzIGRyaXZlcl9kYXRhIFtEYW5pZWxdCiAgUmV2 aWV3ZWQtYnkgRGFuaWVsLgp2MTA6CiAgc21hbGwgY29ycmVjdGlvbnMgYXQgcHJvYmUgW1RvbWFz XQp2MTE6CiAgYmluZCBhbmQgdW5iaW5kIGxvZ3MgYXJlIG1hZGUgYXMgZGVidWcgbG9ncyBbVG9t YXNdCiAgY2xkZXZfZW5hYmxlIGZhaWx1cmUgaXMgaGFuZGxlZCBbVG9tYXNdCgpTaWduZWQtb2Zm LWJ5OiBSYW1hbGluZ2FtIEMgPHJhbWFsaW5nYW0uY0BpbnRlbC5jb20+ClJldmlld2VkLWJ5OiBE YW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNoPgotLS0KIGRyaXZlcnMvbWlzYy9t ZWkvaGRjcC9tZWlfaGRjcC5jIHwgODYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKystLQogMSBmaWxlIGNoYW5nZWQsIDgzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9taXNjL21laS9oZGNwL21laV9oZGNwLmMgYi9kcml2ZXJz L21pc2MvbWVpL2hkY3AvbWVpX2hkY3AuYwppbmRleCBkZWI1NzlhZDE1ZTguLjkwYjZhZThlOWRh ZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9taXNjL21laS9oZGNwL21laV9oZGNwLmMKKysrIGIvZHJp dmVycy9taXNjL21laS9oZGNwL21laV9oZGNwLmMKQEAgLTIzLDYgKzIzLDcgQEAKICNpbmNsdWRl IDxsaW51eC9zbGFiLmg+CiAjaW5jbHVkZSA8bGludXgvdXVpZC5oPgogI2luY2x1ZGUgPGxpbnV4 L21laV9jbF9idXMuaD4KKyNpbmNsdWRlIDxsaW51eC9jb21wb25lbnQuaD4KICNpbmNsdWRlIDxk cm0vZHJtX2Nvbm5lY3Rvci5oPgogI2luY2x1ZGUgPGRybS9pOTE1X2NvbXBvbmVudC5oPgogI2lu Y2x1ZGUgPGRybS9pOTE1X21laV9oZGNwX2ludGVyZmFjZS5oPgpAQCAtNzExLDggKzcxMiw3IEBA IG1laV9oZGNwX2Nsb3NlX3Nlc3Npb24oc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgaGRjcF9w b3J0X2RhdGEgKmRhdGEpCiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBjb25zdCBfX2F0dHJpYnV0 ZV9fKCh1bnVzZWQpKQotc3RydWN0IGk5MTVfaGRjcF9jb21wb25lbnRfb3BzIG1laV9oZGNwX29w cyA9IHsKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgaTkxNV9oZGNwX2NvbXBvbmVudF9vcHMgbWVpX2hk Y3Bfb3BzID0gewogCS5vd25lciA9IFRISVNfTU9EVUxFLAogCS5pbml0aWF0ZV9oZGNwMl9zZXNz aW9uID0gbWVpX2hkY3BfaW5pdGlhdGVfc2Vzc2lvbiwKIAkudmVyaWZ5X3JlY2VpdmVyX2NlcnRf cHJlcGFyZV9rbSA9CkBAIC03MjksMjAgKzcyOSwxMDAgQEAgc3RydWN0IGk5MTVfaGRjcF9jb21w b25lbnRfb3BzIG1laV9oZGNwX29wcyA9IHsKIAkuY2xvc2VfaGRjcF9zZXNzaW9uID0gbWVpX2hk Y3BfY2xvc2Vfc2Vzc2lvbiwKIH07CiAKK3N0YXRpYyBpbnQgbWVpX2NvbXBvbmVudF9tYXN0ZXJf YmluZChzdHJ1Y3QgZGV2aWNlICpkZXYpCit7CisJc3RydWN0IG1laV9jbF9kZXZpY2UgKmNsZGV2 ID0gdG9fbWVpX2NsX2RldmljZShkZXYpOworCXN0cnVjdCBpOTE1X2hkY3BfY29tcF9tYXN0ZXIg KmNvbXBfbWFzdGVyID0KKwkJCQkJCW1laV9jbGRldl9nZXRfZHJ2ZGF0YShjbGRldik7CisJaW50 IHJldDsKKworCWRldl9kYmcoZGV2LCAiJXNcbiIsIF9fZnVuY19fKTsKKwljb21wX21hc3Rlci0+ b3BzID0gJm1laV9oZGNwX29wczsKKwljb21wX21hc3Rlci0+bWVpX2RldiA9IGRldjsKKwlyZXQg PSBjb21wb25lbnRfYmluZF9hbGwoZGV2LCBjb21wX21hc3Rlcik7CisJaWYgKHJldCA8IDApCisJ CXJldHVybiByZXQ7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIHZvaWQgbWVpX2NvbXBvbmVu dF9tYXN0ZXJfdW5iaW5kKHN0cnVjdCBkZXZpY2UgKmRldikKK3sKKwlzdHJ1Y3QgbWVpX2NsX2Rl dmljZSAqY2xkZXYgPSB0b19tZWlfY2xfZGV2aWNlKGRldik7CisJc3RydWN0IGk5MTVfaGRjcF9j b21wX21hc3RlciAqY29tcF9tYXN0ZXIgPQorCQkJCQkJbWVpX2NsZGV2X2dldF9kcnZkYXRhKGNs ZGV2KTsKKworCWRldl9kYmcoZGV2LCAiJXNcbiIsIF9fZnVuY19fKTsKKwljb21wb25lbnRfdW5i aW5kX2FsbChkZXYsIGNvbXBfbWFzdGVyKTsKK30KKworc3RhdGljIGNvbnN0IHN0cnVjdCBjb21w b25lbnRfbWFzdGVyX29wcyBtZWlfY29tcG9uZW50X21hc3Rlcl9vcHMgPSB7CisJLmJpbmQgPSBt ZWlfY29tcG9uZW50X21hc3Rlcl9iaW5kLAorCS51bmJpbmQgPSBtZWlfY29tcG9uZW50X21hc3Rl cl91bmJpbmQsCit9OworCitzdGF0aWMgaW50IG1laV9oZGNwX2NvbXBvbmVudF9tYXRjaChzdHJ1 Y3QgZGV2aWNlICpkZXYsIGludCBzdWJjb21wb25lbnQsCisJCQkJICAgIHZvaWQgKmRhdGEpCit7 CisJcmV0dXJuICFzdHJjbXAoZGV2LT5kcml2ZXItPm5hbWUsICJpOTE1IikgJiYKKwkgICAgICAg c3ViY29tcG9uZW50ID09IEk5MTVfQ09NUE9ORU5UX0hEQ1A7Cit9CisKIHN0YXRpYyBpbnQgbWVp X2hkY3BfcHJvYmUoc3RydWN0IG1laV9jbF9kZXZpY2UgKmNsZGV2LAogCQkJICBjb25zdCBzdHJ1 Y3QgbWVpX2NsX2RldmljZV9pZCAqaWQpCiB7CisJc3RydWN0IGk5MTVfaGRjcF9jb21wX21hc3Rl ciAqY29tcF9tYXN0ZXI7CisJc3RydWN0IGNvbXBvbmVudF9tYXRjaCAqbWFzdGVyX21hdGNoOwog CWludCByZXQ7CiAKIAlyZXQgPSBtZWlfY2xkZXZfZW5hYmxlKGNsZGV2KTsKLQlpZiAocmV0IDwg MCkKKwlpZiAocmV0IDwgMCkgewogCQlkZXZfZXJyKCZjbGRldi0+ZGV2LCAibWVpX2NsZGV2X2Vu YWJsZSBGYWlsZWQuICVkXG4iLCByZXQpOworCQlnb3RvIGVuYWJsZV9lcnJfZXhpdDsKKwl9CisK Kwljb21wX21hc3RlciA9IGt6YWxsb2Moc2l6ZW9mKCpjb21wX21hc3RlciksIEdGUF9LRVJORUwp OworCWlmICghY29tcF9tYXN0ZXIpIHsKKwkJcmV0ID0gLUVOT01FTTsKKwkJZ290byBlcnJfZXhp dDsKKwl9CisKKwltYXN0ZXJfbWF0Y2ggPSBOVUxMOworCWNvbXBvbmVudF9tYXRjaF9hZGRfdHlw ZWQoJmNsZGV2LT5kZXYsICZtYXN0ZXJfbWF0Y2gsCisJCQkJICBtZWlfaGRjcF9jb21wb25lbnRf bWF0Y2gsIGNvbXBfbWFzdGVyKTsKKwlpZiAoSVNfRVJSX09SX05VTEwobWFzdGVyX21hdGNoKSkg eworCQlyZXQgPSAtRU5PTUVNOworCQlnb3RvIGVycl9leGl0OworCX0KKworCW1laV9jbGRldl9z ZXRfZHJ2ZGF0YShjbGRldiwgY29tcF9tYXN0ZXIpOworCXJldCA9IGNvbXBvbmVudF9tYXN0ZXJf YWRkX3dpdGhfbWF0Y2goJmNsZGV2LT5kZXYsCisJCQkJCSAgICAgICZtZWlfY29tcG9uZW50X21h c3Rlcl9vcHMsCisJCQkJCSAgICAgIG1hc3Rlcl9tYXRjaCk7CisJaWYgKHJldCA8IDApIHsKKwkJ ZGV2X2VycigmY2xkZXYtPmRldiwgIk1hc3RlciBjb21wIGFkZCBmYWlsZWQgJWRcbiIsIHJldCk7 CisJCWdvdG8gZXJyX2V4aXQ7CisJfQogCisJcmV0dXJuIDA7CisKK2Vycl9leGl0OgorCW1laV9j bGRldl9zZXRfZHJ2ZGF0YShjbGRldiwgTlVMTCk7CisJa2ZyZWUoY29tcF9tYXN0ZXIpOworCW1l aV9jbGRldl9kaXNhYmxlKGNsZGV2KTsKK2VuYWJsZV9lcnJfZXhpdDoKIAlyZXR1cm4gcmV0Owog fQogCiBzdGF0aWMgaW50IG1laV9oZGNwX3JlbW92ZShzdHJ1Y3QgbWVpX2NsX2RldmljZSAqY2xk ZXYpCiB7CisJc3RydWN0IGk5MTVfaGRjcF9jb21wX21hc3RlciAqY29tcF9tYXN0ZXIgPQorCQkJ CQkJbWVpX2NsZGV2X2dldF9kcnZkYXRhKGNsZGV2KTsKKworCWNvbXBvbmVudF9tYXN0ZXJfZGVs KCZjbGRldi0+ZGV2LCAmbWVpX2NvbXBvbmVudF9tYXN0ZXJfb3BzKTsKKwlrZnJlZShjb21wX21h c3Rlcik7CisJbWVpX2NsZGV2X3NldF9kcnZkYXRhKGNsZGV2LCBOVUxMKTsKKwogCXJldHVybiBt ZWlfY2xkZXZfZGlzYWJsZShjbGRldik7CiB9CiAKLS0gCjIuNy40CgpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0Cklu dGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5v cmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=