From mboxrd@z Thu Jan 1 00:00:00 1970 From: Uma Shankar Subject: [v11 03/12] drm: Parse HDR metadata info from EDID Date: Thu, 16 May 2019 19:40:08 +0530 Message-ID: <1558015817-12025-4-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: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org Cc: dcastagna@chromium.org, jonas@kwiboo.se, seanpaul@chromium.org List-Id: intel-gfx@lists.freedesktop.org SERSIG1ldGFkYXRhIGJsb2NrIGlzIGludHJvZHVjZWQgaW4gQ0VBLTg2MS4zIHNwZWMuClBhcnNp bmcgdGhlIHNhbWUgdG8gZ2V0IHRoZSBwYW5lbCdzIEhEUiBtZXRhZGF0YS4KCnYyOiBSZWJhc2Ug YW5kIGFkZGVkIFZpbGxlJ3MgUE9DIGNoYW5nZXMgdG8gdGhlIHBhdGNoLgoKdjM6IE5vIENoYW5n ZQoKdjQ6IEFkZHJlc3NlZCBTaGFzaGFuaydzIHJldmlldyBjb21tZW50cwoKdjU6IEFkZHJlc3Nl ZCBTaGFzaGFuaydzIGNvbW1lbnQgYW5kIGFkZGVkIGhpcyBSQi4KCnY2OiBBZGRyZXNzZWQgSm9u YXMgS2FybG1hbiByZXZpZXcgY29tbWVudHMuCgp2NzogQWRyZXNzZWQgVmlsbGUncyByZXZpZXcg Y29tbWVudHMgYW5kIGZpeGVkIHRoZSBpc3N1ZQp3aXRoIGxlbmd0aCBoYW5kbGluZy4KCnY4OiBQ dXQgdGhlIGxlbmd0aCBjaGVjayBhcyBwZXIgdGhlIGNvbnZlbnRpb24gZm9sbG93ZWQgaW4KZXhp c3RpbmcgY29kZSwgYXMgc3VnZ2VzdGVkIGJ5IFZpbGxlLgoKU2lnbmVkLW9mZi1ieTogVW1hIFNo YW5rYXIgPHVtYS5zaGFua2FyQGludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IFNoYXNoYW5rIFNoYXJt YSA8c2hhc2hhbmsuc2hhcm1hQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vZHJtX2Vk aWQuYyB8IDUxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysK IDEgZmlsZSBjaGFuZ2VkLCA1MSBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2RybV9lZGlkLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2VkaWQuYwppbmRleCA4NTJi ZGQ4Li5hNWVmOWY0IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2VkaWQuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vZHJtX2VkaWQuYwpAQCAtMjg1Miw2ICsyODUyLDcgQEAgc3RhdGlj IGludCBkcm1fY3Z0X21vZGVzKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCiAjZGVm aW5lIFZJREVPX0JMT0NLICAgICAweDAyCiAjZGVmaW5lIFZFTkRPUl9CTE9DSyAgICAweDAzCiAj ZGVmaW5lIFNQRUFLRVJfQkxPQ0sJMHgwNAorI2RlZmluZSBIRFJfU1RBVElDX01FVEFEQVRBX0JM T0NLCTB4NgogI2RlZmluZSBVU0VfRVhURU5ERURfVEFHIDB4MDcKICNkZWZpbmUgRVhUX1ZJREVP X0NBUEFCSUxJVFlfQkxPQ0sgMHgwMAogI2RlZmluZSBFWFRfVklERU9fREFUQV9CTE9DS180MjAJ MHgwRQpAQCAtMzgzNCw2ICszODM1LDU0IEBAIHN0YXRpYyB2b2lkIGZpeHVwX2RldGFpbGVkX2Nl YV9tb2RlX2Nsb2NrKHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlKQogCW1vZGUtPmNsb2Nr ID0gY2xvY2s7CiB9CiAKK3N0YXRpYyBib29sIGNlYV9kYl9pc19oZG1pX2hkcl9tZXRhZGF0YV9i bG9jayhjb25zdCB1OCAqZGIpCit7CisJaWYgKGNlYV9kYl90YWcoZGIpICE9IFVTRV9FWFRFTkRF RF9UQUcpCisJCXJldHVybiBmYWxzZTsKKworCWlmIChkYlsxXSAhPSBIRFJfU1RBVElDX01FVEFE QVRBX0JMT0NLKQorCQlyZXR1cm4gZmFsc2U7CisKKwlpZiAoY2VhX2RiX3BheWxvYWRfbGVuKGRi KSA8IDMpCisJCXJldHVybiBmYWxzZTsKKworCXJldHVybiB0cnVlOworfQorCitzdGF0aWMgdWlu dDhfdCBlb3RmX3N1cHBvcnRlZChjb25zdCB1OCAqZWRpZF9leHQpCit7CisJcmV0dXJuIGVkaWRf ZXh0WzJdICYKKwkJKEJJVChIRE1JX0VPVEZfVFJBRElUSU9OQUxfR0FNTUFfU0RSKSB8CisJCSBC SVQoSERNSV9FT1RGX1RSQURJVElPTkFMX0dBTU1BX0hEUikgfAorCQkgQklUKEhETUlfRU9URl9T TVBURV9TVDIwODQpKTsKK30KKworc3RhdGljIHVpbnQ4X3QgaGRyX21ldGFkYXRhX3R5cGUoY29u c3QgdTggKmVkaWRfZXh0KQoreworCXJldHVybiBlZGlkX2V4dFszXSAmCisJCUJJVChIRE1JX1NU QVRJQ19NRVRBREFUQV9UWVBFMSk7Cit9CisKK3N0YXRpYyB2b2lkCitkcm1fcGFyc2VfaGRyX21l dGFkYXRhX2Jsb2NrKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsIGNvbnN0IHU4ICpk YikKK3sKKwl1MTYgbGVuOworCisJbGVuID0gY2VhX2RiX3BheWxvYWRfbGVuKGRiKTsKKworCWNv bm5lY3Rvci0+aGRyX3NpbmtfbWV0YWRhdGEuaGRtaV90eXBlMS5lb3RmID0KKwkJCQkJCWVvdGZf c3VwcG9ydGVkKGRiKTsKKwljb25uZWN0b3ItPmhkcl9zaW5rX21ldGFkYXRhLmhkbWlfdHlwZTEu bWV0YWRhdGFfdHlwZSA9CisJCQkJCQloZHJfbWV0YWRhdGFfdHlwZShkYik7CisKKwlpZiAobGVu ID49IDQpCisJCWNvbm5lY3Rvci0+aGRyX3NpbmtfbWV0YWRhdGEuaGRtaV90eXBlMS5tYXhfY2xs ID0gZGJbNF07CisJaWYgKGxlbiA+PSA1KQorCQljb25uZWN0b3ItPmhkcl9zaW5rX21ldGFkYXRh LmhkbWlfdHlwZTEubWF4X2ZhbGwgPSBkYls1XTsKKwlpZiAobGVuID49IDYpCisJCWNvbm5lY3Rv ci0+aGRyX3NpbmtfbWV0YWRhdGEuaGRtaV90eXBlMS5taW5fY2xsID0gZGJbNl07Cit9CisKIHN0 YXRpYyB2b2lkCiBkcm1fcGFyc2VfaGRtaV92c2RiX2F1ZGlvKHN0cnVjdCBkcm1fY29ubmVjdG9y ICpjb25uZWN0b3IsIGNvbnN0IHU4ICpkYikKIHsKQEAgLTQ0NjEsNiArNDUxMCw4IEBAIHN0YXRp YyB2b2lkIGRybV9wYXJzZV9jZWFfZXh0KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3Is CiAJCQlkcm1fcGFyc2VfeTQyMGNtZGJfYml0bWFwKGNvbm5lY3RvciwgZGIpOwogCQlpZiAoY2Vh X2RiX2lzX3ZjZGIoZGIpKQogCQkJZHJtX3BhcnNlX3ZjZGIoY29ubmVjdG9yLCBkYik7CisJCWlm IChjZWFfZGJfaXNfaGRtaV9oZHJfbWV0YWRhdGFfYmxvY2soZGIpKQorCQkJZHJtX3BhcnNlX2hk cl9tZXRhZGF0YV9ibG9jayhjb25uZWN0b3IsIGRiKTsKIAl9CiB9CiAKLS0gCjEuOS4xCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFp bGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=