From mboxrd@z Thu Jan 1 00:00:00 1970 From: Uma Shankar Subject: [v15 1/4] drm: Add HDMI colorspace property Date: Fri, 8 Feb 2019 23:54:53 +0530 Message-ID: <1549650296-28648-2-git-send-email-uma.shankar@intel.com> References: <1549650296-28648-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: <1549650296-28648-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: ville.syrjala@intel.com, emil.l.velikov@gmail.com, Uma Shankar , maarten.lankhorst@intel.com List-Id: dri-devel@lists.freedesktop.org Q3JlYXRlIGEgbmV3IGNvbm5lY3RvciBwcm9wZXJ0eSB0byBwcm9ncmFtIGNvbG9yc3BhY2UgdG8g c2luawpkZXZpY2VzLiBNb2Rlcm4gc2luayBkZXZpY2VzIHN1cHBvcnQgbW9yZSB0aGFuIDEgdHlw ZSBvZgpjb2xvcnNwYWNlIGxpa2UgNjAxLCA3MDksIEJUMjAyMCBldGMuIFRoaXMgaGVscHMgdG8g c3dpdGNoCmJhc2VkIG9uIGNvbnRlbnQgdHlwZSB3aGljaCBpcyB0byBiZSBkaXNwbGF5ZWQuIFRo ZSBkZWNpc2lvbgpsaWVzIHdpdGggY29tcG9zaXRvcnMgYXMgdG8gaW4gd2hpY2ggc2NlbmFyaW9z LCBhIHBhcnRpY3VsYXIKY29sb3JzcGFjZSB3aWxsIGJlIHBpY2tlZC4KClRoaXMgd2lsbCBiZSBo ZWxwZnVsIG1vc3RseSB0byBzd2l0Y2ggdG8gaGlnaGVyIGdhbXV0IGNvbG9yc3BhY2VzCmxpa2Ug QlQyMDIwIHdoZW4gdGhlIG1lZGlhIGNvbnRlbnQgaXMgZW5jb2RlZCBhcyBCVDIwMjAuIFRoZXJl YnkKZ2l2aW5nIGEgZ29vZCB2aXN1YWwgZXhwZXJpZW5jZSB0byB1c2Vycy4KClRoZSBleHBlY3Rh dGlvbiBmcm9tIHVzZXJzcGFjZSBpcyB0aGF0IGl0IHNob3VsZCBwYXJzZSB0aGUgRURJRAphbmQg Z2V0IHN1cHBvcnRlZCBjb2xvcnNwYWNlcy4gVXNlIHRoaXMgcHJvcGVydHkgYW5kIHN3aXRjaCB0 byB0aGUKb25lIHN1cHBvcnRlZC4gU2luayBzdXBwb3J0ZWQgY29sb3JzcGFjZXMgc2hvdWxkIGJl IHJldHJpZXZlZCBieQp1c2Vyc3BhY2UgZnJvbSBFRElEIGFuZCBkcml2ZXIgd2lsbCBub3QgZXhw bGljaXRseSBleHBvc2UgdGhlbS4KCkJhc2ljYWxseSB0aGUgZXhwZWN0YXRpb24gZnJvbSB1c2Vy c3BhY2UgaXM6CiAtIFNldCB1cCBDUlRDIERFR0FNTUEvQ1RNL0dBTU1BIHRvIGNvbnZlcnQgdG8g c29tZSBzaW5rCiAgIGNvbG9yc3BhY2UKIC0gU2V0IHRoaXMgbmV3IHByb3BlcnR5IHRvIGxldCB0 aGUgc2luayBrbm93IHdoYXQgaXQKICAgY29udmVydGVkIHRoZSBDUlRDIG91dHB1dCB0by4KCnYy OiBBZGRyZXNzZWQgTWFhcnRlbiBhbmQgVmlsbGUncyByZXZpZXcgY29tbWVudHMuIEVuaGFuY2Vk CnRoZSBjb2xvcnNwYWNlIGVudW0gdG8gaW5jb3Jwb3JhdGUgYm90aCBIRE1JIGFuZCBEUCBzdXBw b3J0ZWQKY29sb3JzcGFjZXMuIEFsc28sIGFkZGVkIGEgZGVmYXVsdCBvcHRpb24gZm9yIGNvbG9y c3BhY2UuCgp2MzogUmVtb3ZlZCBBZG9iZSByZWZlcmVuY2VzIGZyb20gZW51bSBkZWZpbml0aW9u cyBhcyBwZXIKVmlsbGUsIEhhbnMgVmVya3VpbCBhbmQgSm9uYXMgS2FybG1hbiBzdWdnZXN0aW9u cy4gQ2hhbmdlZApEZWZhdWx0IHRvIGFuIHVuc2V0IHN0YXRlIHdoZXJlIGRyaXZlciB3aWxsIGFz c2lnbiB0aGUgY29sb3JzcGFjZQppcyBub3QgY2hvc2VuIGJ5IHVzZXIsIHN1Z2dlc3RlZCBieSBW aWxsZSBhbmQgTWFhcnRlbi4gQWRkcmVzc2VkCm90aGVyIG1pc2MgcmV2aWV3IGNvbW1lbnRzIGZy b20gTWFhcnRlbi4gU3BsaXQgdGhlIGNoYW5nZXMgdG8KaGF2ZSBzZXBhcmF0ZSBjb2xvcnNwYWNl IHByb3BlcnR5IGZvciBEUCBhbmQgSERNSS4KCnY0OiBBZGRyZXNzZWQgQ2hyaXMgYW5kIFZpbGxl J3MgcmV2aWV3IGNvbW1lbnRzLCBhbmQgY3JlYXRlZCBhCmNvbW1vbiBjb2xvcnNwYWNlIHByb3Bl cnR5IGZvciBEUCBhbmQgSERNSSwgZmlsdGVyZWQgdGhlIGxpc3QKYmFzZWQgb24gdGhlIGNvbG9y c3BhY2VzIHN1cHBvcnRlZCBieSB0aGUgcmVzcGVjdGl2ZSBwcm90b2NvbApzdGFuZGFyZC4KCnY1 OiBNYWRlIHRoZSBwcm9wZXJ0eSBjcmVhdGlvbiBoZWxwZXIgYWNjZXB0IGVudW0gbGlzdCBiYXNl ZCBvbgpwbGF0Zm9ybSBjYXBhYmlsdGllcyBhcyBzdWdnZXN0ZWQgYnkgU2hhc2hhbmsuIENvbnNv bGlkYXRlZCBIRE1JCmFuZCBEUCBwcm9wZXJ0eSBjcmVhdGlvbiBpbiB0aGUgY29tbW9uIGhlbHBl ci4KCnY2OiBBZGRyZXNzZWQgU2hhc2hhbmsncyByZXZpZXcgY29tbWVudHMuCgp2NzogQWRkZWQg ZGVmaW5lcyBpbnN0ZWFkIG9mIGVudW0gaW4gdWFwaSBhcyBwZXIgQnJpYW4gU3RhcmtleSdzCnN1 Z2dlc3Rpb24gaW4gb3JkZXIgdG8gZ28gd2l0aCBzdHJpbmcgbWF0Y2hpbmcgYXQgdXNlcnNwYWNl LiBVcGRhdGVkCnRoZSBjb21taXQgbWVzc2FnZSB0byBhZGQgbW9yZSBkZXRhaWxzIGFzIHdlbGwg a2VybmVsIGRvY3MuCgp2ODogQWRkcmVzc2VkIE1hYXJ0ZW4ncyByZXZpZXcgY29tbWVudHMuCgp2 OTogUmVtb3ZlZCBtYWNybyBkZWZpbmVzIGZyb20gdWFwaSBhcyBwZXIgQnJpYW4gU3RhcmtleSBh bmQgRGFuaWVsClN0b25lJ3MgY29tbWVudHMgYW5kIG1vdmVkIHRvIGRybSBpbmNsdWRlIGZpbGUu IE1vdmVkIGJhY2sgdG8gb2xkZXIKZGVzaWduIHdpdGggZXhwb3NpbmcgYWxsIEhETUkgY29sb3Jz cGFjZXMgdG8gdXNlcnNwYWNlIHNpbmNlIGluZm9mcmFtZQpjYXBhYmlsaXR5IGlzIHRoZXJlIGV2 ZW4gb24gbGVnYWN5IHBsYXRmb3JtcywgYXMgcGVyIFZpbGxlJ3MgcmV2aWV3CmNvbW1lbnRzLgoK djEwOiBGaXhlZCBzcGFyc2Ugd2FybmluZ3MsIHVwZGF0ZWQgdGhlIFJCIGZyb20gTWFhcnRlbiBh bmQgSmFuaSdzIGFjay4KCnYxMTogQWRkcmVzc2VkIFZpbGxlJ3MgcmV2aWV3IGNvbW1lbnRzLiBV cGRhdGVkIHRoZSBNYWNybyBuYW1pbmcgYW5kCmFkZGVkIERDSS1QMyBjb2xvcnNwYWNlIGFzIHdl bGwsIGRlZmluZWQgaW4gQ1RBIDg2MS5HIHNwZWMuCgp2MTI6IEFwcGVuZGVkIEJUNzA5IGFuZCBT TVBURSAxNzBNIHdpdGggWUNDIGluZm9ybWF0aW9uIGFzIHBlciBWaWxsZSdzCnJldmlldyBjb21t ZW50IHRvIGJlIGNsZWFyIGFuZCBub3QgdG8gYmUgY29uZnVzZWQgd2l0aCBSR0IuCgpTaWduZWQt b2ZmLWJ5OiBVbWEgU2hhbmthciA8dW1hLnNoYW5rYXJAaW50ZWwuY29tPgpBY2tlZC1ieTogSmFu aSBOaWt1bGEgPGphbmkubmlrdWxhQGludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IFNoYXNoYW5rIFNo YXJtYSA8c2hhc2hhbmsuc2hhcm1hQGludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IE1hYXJ0ZW4gTGFu a2hvcnN0IDxtYWFydGVuLmxhbmtob3JzdEBsaW51eC5pbnRlbC5jb20+Ci0tLQogZHJpdmVycy9n cHUvZHJtL2RybV9hdG9taWNfdWFwaS5jIHwgIDQgKysKIGRyaXZlcnMvZ3B1L2RybS9kcm1fY29u bmVjdG9yLmMgICB8IDc4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwog aW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oICAgICAgIHwgNDkgKysrKysrKysrKysrKysrKysr KysrKysrCiAzIGZpbGVzIGNoYW5nZWQsIDEzMSBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfdWFwaS5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9h dG9taWNfdWFwaS5jCmluZGV4IDBhYWJkNDAuLjRlYjgxZjEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9kcm1fYXRvbWljX3VhcGkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21p Y191YXBpLmMKQEAgLTc0Niw2ICs3NDYsOCBAQCBzdGF0aWMgaW50IGRybV9hdG9taWNfY29ubmVj dG9yX3NldF9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAogCQkJcmV0 dXJuIC1FSU5WQUw7CiAJCX0KIAkJc3RhdGUtPmNvbnRlbnRfcHJvdGVjdGlvbiA9IHZhbDsKKwl9 IGVsc2UgaWYgKHByb3BlcnR5ID09IGNvbm5lY3Rvci0+Y29sb3JzcGFjZV9wcm9wZXJ0eSkgewor CQlzdGF0ZS0+Y29sb3JzcGFjZSA9IHZhbDsKIAl9IGVsc2UgaWYgKHByb3BlcnR5ID09IGNvbmZp Zy0+d3JpdGViYWNrX2ZiX2lkX3Byb3BlcnR5KSB7CiAJCXN0cnVjdCBkcm1fZnJhbWVidWZmZXIg KmZiID0gZHJtX2ZyYW1lYnVmZmVyX2xvb2t1cChkZXYsIE5VTEwsIHZhbCk7CiAJCWludCByZXQg PSBkcm1fYXRvbWljX3NldF93cml0ZWJhY2tfZmJfZm9yX2Nvbm5lY3RvcihzdGF0ZSwgZmIpOwpA QCAtODE0LDYgKzgxNiw4IEBAIHN0YXRpYyBpbnQgZHJtX2F0b21pY19jb25uZWN0b3Jfc2V0X3By b3BlcnR5KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCiAJCSp2YWwgPSBzdGF0ZS0+ cGljdHVyZV9hc3BlY3RfcmF0aW87CiAJfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBjb25maWctPmNv bnRlbnRfdHlwZV9wcm9wZXJ0eSkgewogCQkqdmFsID0gc3RhdGUtPmNvbnRlbnRfdHlwZTsKKwl9 IGVsc2UgaWYgKHByb3BlcnR5ID09IGNvbm5lY3Rvci0+Y29sb3JzcGFjZV9wcm9wZXJ0eSkgewor CQkqdmFsID0gc3RhdGUtPmNvbG9yc3BhY2U7CiAJfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBjb25u ZWN0b3ItPnNjYWxpbmdfbW9kZV9wcm9wZXJ0eSkgewogCQkqdmFsID0gc3RhdGUtPnNjYWxpbmdf bW9kZTsKIAl9IGVsc2UgaWYgKHByb3BlcnR5ID09IGNvbm5lY3Rvci0+Y29udGVudF9wcm90ZWN0 aW9uX3Byb3BlcnR5KSB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rv ci5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYwppbmRleCBkZDQwZWZmLi5iZmY5 NmEzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9kcm1fY29ubmVjdG9yLmMKQEAgLTgyNiw2ICs4MjYsMzMgQEAgaW50IGRy bV9kaXNwbGF5X2luZm9fc2V0X2J1c19mb3JtYXRzKHN0cnVjdCBkcm1fZGlzcGxheV9pbmZvICpp bmZvLAogfTsKIERSTV9FTlVNX05BTUVfRk4oZHJtX2dldF9jb250ZW50X3Byb3RlY3Rpb25fbmFt ZSwgZHJtX2NwX2VudW1fbGlzdCkKIAorc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fcHJvcF9lbnVt X2xpc3QgaGRtaV9jb2xvcnNwYWNlc1tdID0geworCS8qIEZvciBEZWZhdWx0IGNhc2UsIGRyaXZl ciB3aWxsIHNldCB0aGUgY29sb3JzcGFjZSAqLworCXsgRFJNX01PREVfQ09MT1JJTUVUUllfREVG QVVMVCwgIkRlZmF1bHQiIH0sCisJLyogU3RhbmRhcmQgRGVmaW5pdGlvbiBDb2xvcmltZXRyeSBi YXNlZCBvbiBDRUEgODYxICovCisJeyBEUk1fTU9ERV9DT0xPUklNRVRSWV9TTVBURV8xNzBNX1lD QywgIlNNUFRFXzE3ME1fWUNDIiB9LAorCXsgRFJNX01PREVfQ09MT1JJTUVUUllfQlQ3MDlfWUND LCAiQlQ3MDlfWUNDIiB9LAorCS8qIFN0YW5kYXJkIERlZmluaXRpb24gQ29sb3JpbWV0cnkgYmFz ZWQgb24gSUVDIDYxOTY2LTItNCAqLworCXsgRFJNX01PREVfQ09MT1JJTUVUUllfWFZZQ0NfNjAx LCAiWFZZQ0NfNjAxIiB9LAorCS8qIEhpZ2ggRGVmaW5pdGlvbiBDb2xvcmltZXRyeSBiYXNlZCBv biBJRUMgNjE5NjYtMi00ICovCisJeyBEUk1fTU9ERV9DT0xPUklNRVRSWV9YVllDQ183MDksICJY VllDQ183MDkiIH0sCisJLyogQ29sb3JpbWV0cnkgYmFzZWQgb24gSUVDIDYxOTY2LTItMS9BbWVu ZG1lbnQgMSAqLworCXsgRFJNX01PREVfQ09MT1JJTUVUUllfU1lDQ182MDEsICJTWUNDXzYwMSIg fSwKKwkvKiBDb2xvcmltZXRyeSBiYXNlZCBvbiBJRUMgNjE5NjYtMi01IFszM10gKi8KKwl7IERS TV9NT0RFX0NPTE9SSU1FVFJZX09QWUNDXzYwMSwgIm9wWUNDXzYwMSIgfSwKKwkvKiBDb2xvcmlt ZXRyeSBiYXNlZCBvbiBJRUMgNjE5NjYtMi01ICovCisJeyBEUk1fTU9ERV9DT0xPUklNRVRSWV9P UFJHQiwgIm9wUkdCIiB9LAorCS8qIENvbG9yaW1ldHJ5IGJhc2VkIG9uIElUVS1SIEJULjIwMjAg Ki8KKwl7IERSTV9NT0RFX0NPTE9SSU1FVFJZX0JUMjAyMF9SR0IsICJCVDIwMjBfUkdCIiB9LAor CS8qIENvbG9yaW1ldHJ5IGJhc2VkIG9uIElUVS1SIEJULjIwMjAgKi8KKwl7IERSTV9NT0RFX0NP TE9SSU1FVFJZX0JUMjAyMF9ZQ0MsICJCVDIwMjBfWUNDIiB9LAorCS8qIENvbG9yaW1ldHJ5IGJh c2VkIG9uIElUVS1SIEJULjIwMjAgKi8KKwl7IERSTV9NT0RFX0NPTE9SSU1FVFJZX0JUMjAyMF9D WUNDLCAiQlQyMDIwX0NZQ0MiIH0sCisJLyogQWRkZWQgYXMgcGFydCBvZiBBZGRpdGlvbmFsIENv bG9yaW1ldHJ5IEV4dGVuc2lvbiBpbiA4NjEuRyAqLworCXsgRFJNX01PREVfQ09MT1JJTUVUUllf RENJX1AzX1JHQl9ENjUsICJEQ0ktUDNfUkdCX0Q2NSIgfSwKKwl7IERSTV9NT0RFX0NPTE9SSU1F VFJZX0RDSV9QM19SR0JfVEhFQVRFUiwgIkRDSS1QM19SR0JfVGhlYXRlciIgfSwKK307CisKIC8q KgogICogRE9DOiBzdGFuZGFyZCBjb25uZWN0b3IgcHJvcGVydGllcwogICoKQEAgLTE1NDgsNiAr MTU3NSw1NyBAQCBpbnQgZHJtX21vZGVfY3JlYXRlX2FzcGVjdF9yYXRpb19wcm9wZXJ0eShzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2KQogRVhQT1JUX1NZTUJPTChkcm1fbW9kZV9jcmVhdGVfYXNwZWN0 X3JhdGlvX3Byb3BlcnR5KTsKIAogLyoqCisgKiBET0M6IHN0YW5kYXJkIGNvbm5lY3RvciBwcm9w ZXJ0aWVzCisgKgorICogQ29sb3JzcGFjZToKKyAqICAgICBkcm1fbW9kZV9jcmVhdGVfY29sb3Jz cGFjZV9wcm9wZXJ0eSAtIGNyZWF0ZSBjb2xvcnNwYWNlIHByb3BlcnR5CisgKiAgICAgVGhpcyBw cm9wZXJ0eSBoZWxwcyBzZWxlY3QgYSBzdWl0YWJsZSBjb2xvcnNwYWNlIGJhc2VkIG9uIHRoZSBz aW5rCisgKiAgICAgY2FwYWJpbGl0eS4gTW9kZXJuIHNpbmsgZGV2aWNlcyBzdXBwb3J0IHdpZGVy IGdhbXV0IGxpa2UgQlQyMDIwLgorICogICAgIFRoaXMgaGVscHMgc3dpdGNoIHRvIEJUMjAyMCBt b2RlIGlmIHRoZSBCVDIwMjAgZW5jb2RlZCB2aWRlbyBzdHJlYW0KKyAqICAgICBpcyBiZWluZyBw bGF5ZWQgYnkgdGhlIHVzZXIsIHNhbWUgZm9yIGFueSBvdGhlciBjb2xvcnNwYWNlLiBUaGVyZWJ5 CisgKiAgICAgZ2l2aW5nIGEgZ29vZCB2aXN1YWwgZXhwZXJpZW5jZSB0byB1c2Vycy4KKyAqCisg KiAgICAgVGhlIGV4cGVjdGF0aW9uIGZyb20gdXNlcnNwYWNlIGlzIHRoYXQgaXQgc2hvdWxkIHBh cnNlIHRoZSBFRElECisgKiAgICAgYW5kIGdldCBzdXBwb3J0ZWQgY29sb3JzcGFjZXMuIFVzZSB0 aGlzIHByb3BlcnR5IGFuZCBzd2l0Y2ggdG8gdGhlCisgKiAgICAgb25lIHN1cHBvcnRlZC4gU2lu ayBzdXBwb3J0ZWQgY29sb3JzcGFjZXMgc2hvdWxkIGJlIHJldHJpZXZlZCBieQorICogICAgIHVz ZXJzcGFjZSBmcm9tIEVESUQgYW5kIGRyaXZlciB3aWxsIG5vdCBleHBsaWNpdGx5IGV4cG9zZSB0 aGVtLgorICoKKyAqICAgICBCYXNpY2FsbHkgdGhlIGV4cGVjdGF0aW9uIGZyb20gdXNlcnNwYWNl IGlzOgorICogICAgICAtIFNldCB1cCBDUlRDIERFR0FNTUEvQ1RNL0dBTU1BIHRvIGNvbnZlcnQg dG8gc29tZSBzaW5rCisgKiAgICAgICAgY29sb3JzcGFjZQorICogICAgICAtIFNldCB0aGlzIG5l dyBwcm9wZXJ0eSB0byBsZXQgdGhlIHNpbmsga25vdyB3aGF0IGl0CisgKiAgICAgICAgY29udmVy dGVkIHRoZSBDUlRDIG91dHB1dCB0by4KKyAqICAgICAgLSBUaGlzIHByb3BlcnR5IGlzIGp1c3Qg dG8gaW5mb3JtIHNpbmsgd2hhdCBjb2xvcnNwYWNlCisgKiAgICAgICAgc291cmNlIGlzIHRyeWlu ZyB0byBkcml2ZS4KKyAqCisgKiBDYWxsZWQgYnkgYSBkcml2ZXIgdGhlIGZpcnN0IHRpbWUgaXQn cyBuZWVkZWQsIG11c3QgYmUgYXR0YWNoZWQgdG8gZGVzaXJlZAorICogY29ubmVjdG9ycy4KKyAq LworaW50IGRybV9tb2RlX2NyZWF0ZV9jb2xvcnNwYWNlX3Byb3BlcnR5KHN0cnVjdCBkcm1fY29u bmVjdG9yICpjb25uZWN0b3IpCit7CisJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGNvbm5lY3Rv ci0+ZGV2OworCXN0cnVjdCBkcm1fcHJvcGVydHkgKnByb3A7CisKKwlpZiAoY29ubmVjdG9yLT5j b25uZWN0b3JfdHlwZSA9PSBEUk1fTU9ERV9DT05ORUNUT1JfSERNSUEgfHwKKwkgICAgY29ubmVj dG9yLT5jb25uZWN0b3JfdHlwZSA9PSBEUk1fTU9ERV9DT05ORUNUT1JfSERNSUIpIHsKKwkJcHJv cCA9IGRybV9wcm9wZXJ0eV9jcmVhdGVfZW51bShkZXYsIERSTV9NT0RFX1BST1BfRU5VTSwKKwkJ CQkJCSJDb2xvcnNwYWNlIiwKKwkJCQkJCWhkbWlfY29sb3JzcGFjZXMsCisJCQkJCQlBUlJBWV9T SVpFKGhkbWlfY29sb3JzcGFjZXMpKTsKKwkJaWYgKCFwcm9wKQorCQkJcmV0dXJuIC1FTk9NRU07 CisJfSBlbHNlIHsKKwkJRFJNX0RFQlVHX0tNUygiQ29sb3JzcGFjZSBwcm9wZXJ0eSBub3Qgc3Vw cG9ydGVkXG4iKTsKKwkJcmV0dXJuIDA7CisJfQorCisJY29ubmVjdG9yLT5jb2xvcnNwYWNlX3By b3BlcnR5ID0gcHJvcDsKKworCXJldHVybiAwOworfQorRVhQT1JUX1NZTUJPTChkcm1fbW9kZV9j cmVhdGVfY29sb3JzcGFjZV9wcm9wZXJ0eSk7CisKKy8qKgogICogZHJtX21vZGVfY3JlYXRlX2Nv bnRlbnRfdHlwZV9wcm9wZXJ0eSAtIGNyZWF0ZSBjb250ZW50IHR5cGUgcHJvcGVydHkKICAqIEBk ZXY6IERSTSBkZXZpY2UKICAqCmRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fY29ubmVjdG9y LmggYi9pbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmgKaW5kZXggOGZlMjJhYi4uNGQ5YWEyZiAx MDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCisrKyBiL2luY2x1ZGUvZHJt L2RybV9jb25uZWN0b3IuaApAQCAtMjUzLDYgKzI1Myw0MSBAQCBlbnVtIGRybV9wYW5lbF9vcmll bnRhdGlvbiB7CiAJRFJNX01PREVfUEFORUxfT1JJRU5UQVRJT05fUklHSFRfVVAsCiB9OwogCisv KgorICogVGhpcyBpcyBhIGNvbnNvbGlkYXRlZCBjb2xvcmltZXRyeSBsaXN0IHN1cHBvcnRlZCBi eSBIRE1JIGFuZAorICogRFAgcHJvdG9jb2wgc3RhbmRhcmQuIFRoZSByZXNwZWN0aXZlIGNvbm5l Y3RvcnMgd2lsbCByZWdpc3RlcgorICogYSBwcm9wZXJ0eSB3aXRoIHRoZSBzdWJzZXQgb2YgdGhp cyBsaXN0IChzdXBwb3J0ZWQgYnkgdGhhdAorICogcmVzcGVjdGl2ZSBwcm90b2NvbCkuIFVzZXJz cGFjZSB3aWxsIHNldCB0aGUgY29sb3JzcGFjZSB0aHJvdWdoCisgKiBhIGNvbG9yc3BhY2UgcHJv cGVydHkgd2hpY2ggd2lsbCBiZSBjcmVhdGVkIGFuZCBleHBvc2VkIHRvCisgKiB1c2Vyc3BhY2Uu CisgKi8KKworLyogRm9yIERlZmF1bHQgY2FzZSwgZHJpdmVyIHdpbGwgc2V0IHRoZSBjb2xvcnNw YWNlICovCisjZGVmaW5lIERSTV9NT0RFX0NPTE9SSU1FVFJZX0RFRkFVTFQJCQkwCisvKiBDRUEg ODYxIE5vcm1hbCBDb2xvcmltZXRyeSBvcHRpb25zICovCisjZGVmaW5lIERSTV9NT0RFX0NPTE9S SU1FVFJZX05PX0RBVEEJCQkwCisjZGVmaW5lIERSTV9NT0RFX0NPTE9SSU1FVFJZX1NNUFRFXzE3 ME1fWUNDCQkxCisjZGVmaW5lIERSTV9NT0RFX0NPTE9SSU1FVFJZX0JUNzA5X1lDQwkJCTIKKy8q IENFQSA4NjEgRXh0ZW5kZWQgQ29sb3JpbWV0cnkgT3B0aW9ucyAqLworI2RlZmluZSBEUk1fTU9E RV9DT0xPUklNRVRSWV9YVllDQ182MDEJCQkzCisjZGVmaW5lIERSTV9NT0RFX0NPTE9SSU1FVFJZ X1hWWUNDXzcwOQkJCTQKKyNkZWZpbmUgRFJNX01PREVfQ09MT1JJTUVUUllfU1lDQ182MDEJCQk1 CisjZGVmaW5lIERSTV9NT0RFX0NPTE9SSU1FVFJZX09QWUNDXzYwMQkJCTYKKyNkZWZpbmUgRFJN X01PREVfQ09MT1JJTUVUUllfT1BSR0IJCQk3CisjZGVmaW5lIERSTV9NT0RFX0NPTE9SSU1FVFJZ X0JUMjAyMF9SR0IJCQk4CisjZGVmaW5lIERSTV9NT0RFX0NPTE9SSU1FVFJZX0JUMjAyMF9ZQ0MJ CQk5CisjZGVmaW5lIERSTV9NT0RFX0NPTE9SSU1FVFJZX0JUMjAyMF9DWUNDCQkxMAorLyogQWRk aXRpb25hbCBDb2xvcmltZXRyeSBleHRlbnNpb24gYWRkZWQgYXMgcGFydCBvZiBDVEEgODYxLkcg Ki8KKyNkZWZpbmUgRFJNX01PREVfQ09MT1JJTUVUUllfRENJX1AzX1JHQl9ENjUJCTExCisjZGVm aW5lIERSTV9NT0RFX0NPTE9SSU1FVFJZX0RDSV9QM19SR0JfVEhFQVRFUgkJMTIKKworLyogRFAg TVNBIENvbG9yaW1ldHJ5IE9wdGlvbnMgKi8KKyNkZWZpbmUgRFJNX01PREVfRFBfQ09MT1JJTUVU UllfQlQ2MDFfWUNDCQkxMworI2RlZmluZSBEUk1fTU9ERV9EUF9DT0xPUklNRVRSWV9CVDcwOV9Z Q0MJCTE0CisjZGVmaW5lIERSTV9NT0RFX0RQX0NPTE9SSU1FVFJZX1NSR0IJCQkxNQorI2RlZmlu ZSBEUk1fTU9ERV9EUF9DT0xPUklNRVRSWV9SR0JfV0lERV9HQU1VVAkJMTYKKyNkZWZpbmUgRFJN X01PREVfRFBfQ09MT1JJTUVUUllfU0NSR0IJCQkxNworCiAvKioKICAqIHN0cnVjdCBkcm1fZGlz cGxheV9pbmZvIC0gcnVudGltZSBkYXRhIGFib3V0IHRoZSBjb25uZWN0ZWQgc2luawogICoKQEAg LTUwMyw2ICs1MzgsMTMgQEAgc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgewogCXVuc2lnbmVk IGludCBjb250ZW50X3Byb3RlY3Rpb247CiAKIAkvKioKKwkgKiBAY29sb3JzcGFjZTogU3RhdGUg dmFyaWFibGUgZm9yIENvbm5lY3RvciBwcm9wZXJ0eSB0byByZXF1ZXN0CisJICogY29sb3JzcGFj ZSBjaGFuZ2Ugb24gU2luay4gVGhpcyBpcyBtb3N0IGNvbW1vbmx5IHVzZWQgdG8gc3dpdGNoCisJ ICogdG8gd2lkZXIgY29sb3IgZ2FtdXRzIGxpa2UgQlQyMDIwLgorCSAqLworCXUzMiBjb2xvcnNw YWNlOworCisJLyoqCiAJICogQHdyaXRlYmFja19qb2I6IFdyaXRlYmFjayBqb2IgZm9yIHdyaXRl YmFjayBjb25uZWN0b3JzCiAJICoKIAkgKiBIb2xkcyB0aGUgZnJhbWVidWZmZXIgYW5kIG91dC1m ZW5jZSBmb3IgYSB3cml0ZWJhY2sgY29ubmVjdG9yLiBBcwpAQCAtOTk1LDYgKzEwMzcsMTIgQEAg c3RydWN0IGRybV9jb25uZWN0b3IgewogCXN0cnVjdCBkcm1fcHJvcGVydHkgKmNvbnRlbnRfcHJv dGVjdGlvbl9wcm9wZXJ0eTsKIAogCS8qKgorCSAqIEBjb2xvcnNwYWNlX3Byb3BlcnR5OiBDb25u ZWN0b3IgcHJvcGVydHkgdG8gc2V0IHRoZSBzdWl0YWJsZQorCSAqIGNvbG9yc3BhY2Ugc3VwcG9y dGVkIGJ5IHRoZSBzaW5rLgorCSAqLworCXN0cnVjdCBkcm1fcHJvcGVydHkgKmNvbG9yc3BhY2Vf cHJvcGVydHk7CisKKwkvKioKIAkgKiBAcGF0aF9ibG9iX3B0cjoKIAkgKgogCSAqIERSTSBibG9i IHByb3BlcnR5IGRhdGEgZm9yIHRoZSBEUCBNU1QgcGF0aCBwcm9wZXJ0eS4gVGhpcyBzaG91bGQg b25seQpAQCAtMTI2OSw2ICsxMzE3LDcgQEAgaW50IGRybV9jb25uZWN0b3JfYXR0YWNoX3Zycl9j YXBhYmxlX3Byb3BlcnR5KAogaW50IGRybV9jb25uZWN0b3JfYXR0YWNoX2NvbnRlbnRfcHJvdGVj dGlvbl9wcm9wZXJ0eSgKIAkJc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rvcik7CiBpbnQg ZHJtX21vZGVfY3JlYXRlX2FzcGVjdF9yYXRpb19wcm9wZXJ0eShzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2KTsKK2ludCBkcm1fbW9kZV9jcmVhdGVfY29sb3JzcGFjZV9wcm9wZXJ0eShzdHJ1Y3QgZHJt X2Nvbm5lY3RvciAqY29ubmVjdG9yKTsKIGludCBkcm1fbW9kZV9jcmVhdGVfY29udGVudF90eXBl X3Byb3BlcnR5KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwogdm9pZCBkcm1faGRtaV9hdmlfaW5m b2ZyYW1lX2NvbnRlbnRfdHlwZShzdHJ1Y3QgaGRtaV9hdmlfaW5mb2ZyYW1lICpmcmFtZSwKIAkJ CQkJIGNvbnN0IHN0cnVjdCBkcm1fY29ubmVjdG9yX3N0YXRlICpjb25uX3N0YXRlKTsKLS0gCjEu OS4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmkt ZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6 Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK