From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ramalingam C Subject: [RFC v1 12/20] drm/hdcp: Atomic set and get property for hdcp Date: Wed, 12 Jul 2017 13:58:56 +0530 Message-ID: <1499848144-8456-13-git-send-email-ramalingam.c@intel.com> References: <1499848144-8456-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: <1499848144-8456-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: dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, daniel.vetter@intel.com Cc: Ramalingam C , uma.shankar@intel.com List-Id: dri-devel@lists.freedesktop.org QXRvbWljIGlvY3RsIHJlcXVlc3QgaXMgcHJ1bmVkIGJhc2VkIG9uIHRoZSBwbGF0Zm9ybQphbmQg cGFuZWwncyBIRENQIGNhcGFiaWxpdGllcyBhbG9uZyB3aXRoIGN1cnJlbnQgc3RhdGUgb2YgSERD UApwcm90ZWN0aW9uIG9uIHRoZSBjb25uZWN0b3IuCgpWYWxpZCBlbmFibGUgYW5kIGRpc2FibGUg cmVxdWVzdHMgYXJlIHBhc3NlZCBvbiB0byB0aGUKSERDUCBzdGFjay4KCmdldF9wcm9wZXJ0eSBh bHNvIHVwZGF0ZWQgd2l0aCBjdXJyZW50IHN0YXRlIG9mIHRoZSBIRENQIG9uCmNvbm5lY3Rvci4K ClNpZ25lZC1vZmYtYnk6IFJhbWFsaW5nYW0gQyA8cmFtYWxpbmdhbS5jQGludGVsLmNvbT4KLS0t CiBkcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5jIHwgIDUgKysrKysKIGRyaXZlcnMvZ3B1L2Ry bS9kcm1faGRjcC5jICAgfCA1MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKwogaW5jbHVkZS9kcm0vZHJtX2hkY3AuaCAgICAgICB8ICAxICsKIDMgZmlsZXMgY2hh bmdlZCwgNTkgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1f YXRvbWljLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5jCmluZGV4IDA5Y2E2NjIuLjlk NGFmM2IgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2RybV9hdG9taWMuYwpAQCAtMzAsNiArMzAsNyBAQAogI2luY2x1ZGUgPGRy bS9kcm1fYXRvbWljLmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9tb2RlLmg+CiAjaW5jbHVkZSA8ZHJt L2RybV9wcmludC5oPgorI2luY2x1ZGUgPGRybS9kcm1faGRjcC5oPgogI2luY2x1ZGUgPGxpbnV4 L3N5bmNfZmlsZS5oPgogCiAjaW5jbHVkZSAiZHJtX2NydGNfaW50ZXJuYWwuaCIKQEAgLTExODgs NiArMTE4OSw4IEBAIGludCBkcm1fYXRvbWljX2Nvbm5lY3Rvcl9zZXRfcHJvcGVydHkoc3RydWN0 IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKIAkJICovCiAJCWlmIChzdGF0ZS0+bGlua19zdGF0 dXMgIT0gRFJNX0xJTktfU1RBVFVTX0dPT0QpCiAJCQlzdGF0ZS0+bGlua19zdGF0dXMgPSB2YWw7 CisJfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBjb25maWctPmhkY3BfcHJvcGVydHkpIHsKKwkJcmV0 dXJuIGRybV9oZGNwX3NldF9wcm9wZXJ0eShjb25uZWN0b3IsIHZhbCk7CiAJfSBlbHNlIGlmIChw cm9wZXJ0eSA9PSBjb25maWctPmFzcGVjdF9yYXRpb19wcm9wZXJ0eSkgewogCQlzdGF0ZS0+cGlj dHVyZV9hc3BlY3RfcmF0aW8gPSB2YWw7CiAJfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBjb25uZWN0 b3ItPnNjYWxpbmdfbW9kZV9wcm9wZXJ0eSkgewpAQCAtMTI2OCw2ICsxMjcxLDggQEAgZHJtX2F0 b21pY19jb25uZWN0b3JfZ2V0X3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0 b3IsCiAJCSp2YWwgPSBzdGF0ZS0+dHYuaHVlOwogCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gY29u ZmlnLT5saW5rX3N0YXR1c19wcm9wZXJ0eSkgewogCQkqdmFsID0gc3RhdGUtPmxpbmtfc3RhdHVz OworCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gY29uZmlnLT5oZGNwX3Byb3BlcnR5KSB7CisJCSp2 YWwgPSBjb25uZWN0b3ItPmhkY3Bfc3RhdGU7CiAJfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBjb25m aWctPmFzcGVjdF9yYXRpb19wcm9wZXJ0eSkgewogCQkqdmFsID0gc3RhdGUtPnBpY3R1cmVfYXNw ZWN0X3JhdGlvOwogCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gY29ubmVjdG9yLT5zY2FsaW5nX21v ZGVfcHJvcGVydHkpIHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1faGRjcC5jIGIv ZHJpdmVycy9ncHUvZHJtL2RybV9oZGNwLmMKaW5kZXggODljN2M1ZS4uOWIzYmY5MiAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9oZGNwLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2Ry bV9oZGNwLmMKQEAgLTY5LDYgKzY5LDU5IEBAIGludCBkcm1faGRjcF9kaXNhYmxlKHN0cnVjdCBk cm1fY29ubmVjdG9yICpjb25uZWN0b3IpCiAJcmV0dXJuIDA7CiB9CiAKKworLyoqCisgKiBAZHJt X2hkY3Bfc2V0X3Byb3BlcnR5OgorICoKKyAqIEVudHJ5IGZ1bmN0aW9uIGZvciBoZGNwX2VuYWJs ZSBhbmQgaGRjcF9kaXNhYmxlLgorICovCitpbnQgZHJtX2hkY3Bfc2V0X3Byb3BlcnR5KHN0cnVj dCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCisJCQkJCQl1aW50NjRfdCByZXFfc3RhdGUpCit7 CisJc3RydWN0IGRybV9oZGNwICpoZGNwID0gY29ubmVjdG9yLT5oZGNwOworCXVpbnQ2NF90IGN1 cl9zdGF0ZSA9IGNvbm5lY3Rvci0+aGRjcF9zdGF0ZTsKKwl1aW50OF90IHN0cmVhbV90eXBlOwor CisJaWYgKGNvbm5lY3Rvci0+c3RhdHVzICE9IGNvbm5lY3Rvcl9zdGF0dXNfY29ubmVjdGVkKQor CQlyZXR1cm4gLUVJTlZBTDsKKworCWlmICghaGRjcCkKKwkJcmV0dXJuIC1FSU5WQUw7CisKKwlE Uk1fREVCVUcoIlByb3BfdmFsOiBDdXJyZW50IDogMHglbGx4LCBSZXF1ZXN0OiAweCVsbHhcbiIs CisJCQkJCQljdXJfc3RhdGUsIHJlcV9zdGF0ZSk7CisKKwlpZiAoIShjdXJfc3RhdGUgJiBEUk1f SERDUF9WRVJfU1VQUE9SVF9NQVNLKSkgeworCQlEUk1fRVJST1IoIk5vbmUgb2YgdGhlIEhEQ1Ag VmVyIGlzIHN1cHBvcnRlZFxuIik7CisJCXJldHVybiAtRUlOVkFMOworCX0KKworCWlmICgoY3Vy X3N0YXRlICYgRFJNX0hEQ1BfRU5BQkxFKSA9PQorCQkJCShyZXFfc3RhdGUgJiBEUk1fSERDUF9F TkFCTEUpKSB7CisJCURSTV9ERUJVRygiUmVxIGZvciBjdXJyZW50IHN0YXRlIGlzIHJlZHVuZGFu dFxuIik7CisJCXJldHVybiAtRUlOVkFMOworCX0KKworCWlmICghKGN1cl9zdGF0ZSAmIERSTV9I RENQMl9TVVBQT1JURUQpICYmCisJCQkJcmVxX3N0YXRlICYgRFJNX0hEQ1BfVFlQRV9CSVQwKSB7 CisJCURSTV9FUlJPUigiVHlwZSAxIEhEQ1AgaXMgbm90IGF2YWlsYWJsZVxuIik7CisJCXJldHVy biAtRUlOVkFMOworCX0KKworCWlmIChjdXJfc3RhdGUgJiBEUk1fSERDUF9XSVApCisJCXJldHVy biAtRUJVU1k7CisKKwlpZiAocmVxX3N0YXRlICYgRFJNX0hEQ1BfRU5BQkxFKSB7CisJCXN0cmVh bV90eXBlID0gKHJlcV9zdGF0ZSAmIERSTV9IRENQX1RZUEVfTUFTSykgPj4KKwkJCQkJRFJNX0hE Q1BfVFlQRV9TSElGVDsKKwkJcmV0dXJuIGRybV9oZGNwX2VuYWJsZShjb25uZWN0b3IsIHN0cmVh bV90eXBlKTsKKwl9IGVsc2UgeworCQlkcm1faGRjcF9kaXNhYmxlKGNvbm5lY3Rvcik7CisJfQor CisJcmV0dXJuIDA7Cit9CisKIHZvaWQgZHJtX2hkY3BfbGF0ZV9pbml0KHN0cnVjdCBkcm1fY29u bmVjdG9yICpjb25uZWN0b3IpCiB7CiAJc3RydWN0IGRybV9oZGNwICpoZGNwID0gY29ubmVjdG9y LT5oZGNwOwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2hkY3AuaCBiL2luY2x1ZGUvZHJt L2RybV9oZGNwLmgKaW5kZXggODk4NzlmZi4uZWI3MTQ5YiAxMDA2NDQKLS0tIGEvaW5jbHVkZS9k cm0vZHJtX2hkY3AuaAorKysgYi9pbmNsdWRlL2RybS9kcm1faGRjcC5oCkBAIC0xNjksNSArMTY5 LDYgQEAgZXh0ZXJuIGludCBkcm1faGRjcF9pbml0KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25u ZWN0b3IsCiAJCQkJCXVpbnQ4X3Qgc3BlY19zdXBwb3J0ZWQpOwogZXh0ZXJuIHZvaWQgZHJtX2hk Y3BfY29ubmVjdG9yX3N0YXRlX2NoYW5nZV9oYW5kbGVyKAogCQkJCXN0cnVjdCBkcm1fY29ubmVj dG9yICpjb25uZWN0b3IpOworaW50IGRybV9oZGNwX3NldF9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nv bm5lY3RvciAqY29ubmVjdG9yLCB1aW50NjRfdCB2YWwpOwogCiAjZW5kaWYJLyogX19EUk1fSERD UF9IX18gKi8KLS0gCjIuNy40CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9k cmktZGV2ZWwK