From mboxrd@z Thu Jan 1 00:00:00 1970 From: Uma Shankar Subject: [v11 11/12] video/hdmi: Add Unpack function for DRM infoframe Date: Thu, 16 May 2019 19:40:16 +0530 Message-ID: <1558015817-12025-12-git-send-email-uma.shankar@intel.com> References: <1558015817-12025-1-git-send-email-uma.shankar@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1558015817-12025-1-git-send-email-uma.shankar@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 Cc: dcastagna@chromium.org, jonas@kwiboo.se, emil.l.velikov@gmail.com, Uma Shankar , seanpaul@chromium.org List-Id: intel-gfx@lists.freedesktop.org QWRkZWQgdW5wYWNrIGZ1bmN0aW9uIGZvciBEUk0gaW5mb2ZyYW1lIGZvciBkeW5hbWljCnJhbmdl IGFuZCBtYXN0ZXJpbmcgaW5mb2ZyYW1lIHJlYWRvdXQuCgp2MjogQWRkcmVzc2VkIFZpbGxlJ3Mg cmV2aWV3IGNvbW1lbnRzLgoKU3VnZ2VzdGVkLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5 cmphbGFAbGludXguaW50ZWwuY29tPgpTaWduZWQtb2ZmLWJ5OiBVbWEgU2hhbmthciA8dW1hLnNo YW5rYXJAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvdmlkZW8vaGRtaS5jIHwgNjcgKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMSBmaWxlIGNoYW5n ZWQsIDY3IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kcml2ZXJzL3ZpZGVvL2hkbWkuYyBi L2RyaXZlcnMvdmlkZW8vaGRtaS5jCmluZGV4IDQ4MWYwMzYuLmI5OWJhMDEgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvdmlkZW8vaGRtaS5jCisrKyBiL2RyaXZlcnMvdmlkZW8vaGRtaS5jCkBAIC0xODA1 LDYgKzE4MDUsNzAgQEAgc3RhdGljIGludCBoZG1pX2F1ZGlvX2luZm9mcmFtZV91bnBhY2soc3Ry dWN0IGhkbWlfYXVkaW9faW5mb2ZyYW1lICpmcmFtZSwKIH0KIAogLyoqCisgKiBoZG1pX2RybV9p bmZvZnJhbWVfdW5wYWNrKCkgLSB1bnBhY2sgYmluYXJ5IGJ1ZmZlciB0byBhIEhETUkgRFJNIGlu Zm9mcmFtZQorICogQGZyYW1lOiBIRE1JIERSTSBpbmZvZnJhbWUKKyAqIEBidWZmZXI6IHNvdXJj ZSBidWZmZXIKKyAqIEBzaXplOiBzaXplIG9mIGJ1ZmZlcgorICoKKyAqIFVucGFja3MgdGhlIGlu Zm9ybWF0aW9uIGNvbnRhaW5lZCBpbiBiaW5hcnkgQGJ1ZmZlciBpbnRvIGEgc3RydWN0dXJlZAor ICogQGZyYW1lIG9mIHRoZSBIRE1JIER5bmFtaWMgUmFuZ2UgYW5kIE1hc3RlcmluZyAoRFJNKSBp bmZvcm1hdGlvbiBmcmFtZS4KKyAqIEFsc28gdmVyaWZpZXMgdGhlIGNoZWNrc3VtIGFzIHJlcXVp cmVkIGJ5IHNlY3Rpb24gNS4zLjUgb2YgdGhlIEhETUkgMS40CisgKiBzcGVjaWZpY2F0aW9uLgor ICoKKyAqIFJldHVybnMgMCBvbiBzdWNjZXNzIG9yIGEgbmVnYXRpdmUgZXJyb3IgY29kZSBvbiBm YWlsdXJlLgorICovCitzdGF0aWMgaW50IGhkbWlfZHJtX2luZm9mcmFtZV91bnBhY2soc3RydWN0 IGhkbWlfZHJtX2luZm9mcmFtZSAqZnJhbWUsCisJCQkJICAgICBjb25zdCB2b2lkICpidWZmZXIs IHNpemVfdCBzaXplKQoreworCWNvbnN0IHU4ICpwdHIgPSBidWZmZXI7CisJY29uc3QgdTggKnRl bXA7CisJdTggeF9sc2IsIHhfbXNiOworCXU4IHlfbHNiLCB5X21zYjsKKwlpbnQgcmV0OworCWlu dCBpOworCisJaWYgKHNpemUgPCBIRE1JX0lORk9GUkFNRV9TSVpFKERSTSkpCisJCXJldHVybiAt RUlOVkFMOworCisJaWYgKHB0clswXSAhPSBIRE1JX0lORk9GUkFNRV9UWVBFX0RSTSB8fAorCSAg ICBwdHJbMV0gIT0gMSB8fAorCSAgICBwdHJbMl0gIT0gSERNSV9EUk1fSU5GT0ZSQU1FX1NJWkUp CisJCXJldHVybiAtRUlOVkFMOworCisJaWYgKGhkbWlfaW5mb2ZyYW1lX2NoZWNrc3VtKGJ1ZmZl ciwgSERNSV9JTkZPRlJBTUVfU0laRShEUk0pKSAhPSAwKQorCQlyZXR1cm4gLUVJTlZBTDsKKwor CXJldCA9IGhkbWlfZHJtX2luZm9mcmFtZV9pbml0KGZyYW1lKTsKKwlpZiAocmV0KQorCQlyZXR1 cm4gcmV0OworCisJcHRyICs9IEhETUlfSU5GT0ZSQU1FX0hFQURFUl9TSVpFOworCisJZnJhbWUt PmVvdGYgPSBwdHJbMF0gJiAweDc7CisJZnJhbWUtPm1ldGFkYXRhX3R5cGUgPSBwdHJbMV0gJiAw eDc7CisKKwl0ZW1wID0gcHRyICsgMjsKKwlmb3IgKGkgPSAwOyBpIDwgMzsgaSsrKSB7CisJCXhf bHNiID0gKnRlbXArKzsKKwkJeF9tc2IgPSAqdGVtcCsrOworCQlmcmFtZS0+ZGlzcGxheV9wcmlt YXJpZXNbaV0ueCA9ICAoeF9tc2IgPDwgOCkgfCB4X2xzYjsKKwkJeV9sc2IgPSAqdGVtcCsrOwor CQl5X21zYiA9ICp0ZW1wKys7CisJCWZyYW1lLT5kaXNwbGF5X3ByaW1hcmllc1tpXS55ID0gKHlf bXNiIDw8IDgpIHwgeV9sc2I7CisJfQorCisJZnJhbWUtPndoaXRlX3BvaW50LnggPSAocHRyWzE1 XSA8PCA4KSB8IHB0clsxNF07CisJZnJhbWUtPndoaXRlX3BvaW50LnkgPSAocHRyWzE3XSA8PCA4 KSB8IHB0clsxNl07CisKKwlmcmFtZS0+bWF4X2Rpc3BsYXlfbWFzdGVyaW5nX2x1bWluYW5jZSA9 IChwdHJbMTldIDw8IDgpIHwgcHRyWzE4XTsKKwlmcmFtZS0+bWluX2Rpc3BsYXlfbWFzdGVyaW5n X2x1bWluYW5jZSA9IChwdHJbMjFdIDw8IDgpIHwgcHRyWzIwXTsKKwlmcmFtZS0+bWF4X2NsbCA9 IChwdHJbMjNdIDw8IDgpIHwgcHRyWzIyXTsKKwlmcmFtZS0+bWF4X2ZhbGwgPSAocHRyWzI1XSA8 PCA4KSB8IHB0clsyNF07CisKKwlyZXR1cm4gMDsKK30KKworLyoqCiAgKiBoZG1pX2luZm9mcmFt ZV91bnBhY2soKSAtIHVucGFjayBiaW5hcnkgYnVmZmVyIHRvIGEgSERNSSBpbmZvZnJhbWUKICAq IEBmcmFtZTogSERNSSBpbmZvZnJhbWUKICAqIEBidWZmZXI6IHNvdXJjZSBidWZmZXIKQEAgLTE4 MzAsNiArMTg5NCw5IEBAIGludCBoZG1pX2luZm9mcmFtZV91bnBhY2sodW5pb24gaGRtaV9pbmZv ZnJhbWUgKmZyYW1lLAogCWNhc2UgSERNSV9JTkZPRlJBTUVfVFlQRV9BVkk6CiAJCXJldCA9IGhk bWlfYXZpX2luZm9mcmFtZV91bnBhY2soJmZyYW1lLT5hdmksIGJ1ZmZlciwgc2l6ZSk7CiAJCWJy ZWFrOworCWNhc2UgSERNSV9JTkZPRlJBTUVfVFlQRV9EUk06CisJCXJldCA9IGhkbWlfZHJtX2lu Zm9mcmFtZV91bnBhY2soJmZyYW1lLT5kcm0sIGJ1ZmZlciwgc2l6ZSk7CisJCWJyZWFrOwogCWNh c2UgSERNSV9JTkZPRlJBTUVfVFlQRV9TUEQ6CiAJCXJldCA9IGhkbWlfc3BkX2luZm9mcmFtZV91 bnBhY2soJmZyYW1lLT5zcGQsIGJ1ZmZlciwgc2l6ZSk7CiAJCWJyZWFrOwotLSAKMS45LjEKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBt YWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbA==