From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: Re: [Intel-gfx] [v7 1/2] drm: Add colorspace connector property Date: Tue, 29 Jan 2019 13:23:33 +0100 Message-ID: <7b350df8-7c33-ebfc-5f4b-0c8f91770ecf@linux.intel.com> References: <1548665053-25210-1-git-send-email-uma.shankar@intel.com> <1548665053-25210-2-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: <1548665053-25210-2-git-send-email-uma.shankar@intel.com> Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Uma Shankar , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org Cc: ville.syrjala@intel.com, maarten.lankhorst@intel.com List-Id: dri-devel@lists.freedesktop.org T3AgMjgtMDEtMjAxOSBvbSAwOTo0NCBzY2hyZWVmIFVtYSBTaGFua2FyOgo+IENyZWF0ZSBhIG5l dyBjb25uZWN0b3IgcHJvcGVydHkgdG8gcHJvZ3JhbSBjb2xvcnNwYWNlIHRvIHNpbmsgZGV2aWNl cy4KPiBNb2Rlcm4gc2luayBkZXZpY2VzIHN1cHBvcnQgbW9yZSB0aGFuIDEgdHlwZSBvZiBjb2xv cnNwYWNlIGxpa2UgNjAxLAo+IDcwOSwgQlQyMDIwIGV0Yy4gVGhpcyBoZWxwcyB0byBzd2l0Y2gg YmFzZWQgb24gY29udGVudCB0eXBlIHdoaWNoIGlzCj4gdG8gYmUgZGlzcGxheWVkLiBUaGUgZGVj aXNpb24gbGllcyB3aXRoIGNvbXBvc2l0b3JzIGFzIHRvIGluIHdoaWNoCj4gc2NlbmFyaW9zLCBh IHBhcnRpY3VsYXIgY29sb3JzcGFjZSB3aWxsIGJlIHBpY2tlZC4KPgo+IFRoaXMgd2lsbCBiZSBo ZWxwZnVsIG1vc3RseSB0byBzd2l0Y2ggdG8gaGlnaGVyIGdhbXV0IGNvbG9yc3BhY2VzCj4gbGlr ZSBCVDIwMjAgd2hlbiB0aGUgbWVkaWEgY29udGVudCBpcyBlbmNvZGVkIGFzIEJUMjAyMC4gVGhl cmVieQo+IGdpdmluZyBhIGdvb2QgdmlzdWFsIGV4cGVyaWVuY2UgdG8gdXNlcnMuCj4KPiBUaGUg ZXhwZWN0YXRpb24gZnJvbSB1c2Vyc3BhY2UgaXMgdGhhdCBpdCBzaG91bGQgcGFyc2UgdGhlIEVE SUQKPiBhbmQgZ2V0IHN1cHBvcnRlZCBjb2xvcnNwYWNlcy4gVXNlIHRoaXMgcHJvcGVydHkgYW5k IHN3aXRjaCB0byB0aGUKPiBvbmUgc3VwcG9ydGVkLiBEcml2ZXIgd2lsbCBleHBvc2UgdGhlIHBs YXRmb3JtIHN1cHBvcnRlZCBjb2xvcnNwYWNlcywKPiBob3dldmVyIHNpbmsgc3VwcG9ydGVkIGNv bG9yc3BhY2VzIHNob3VsZCBiZSByZXRyaWV2ZWQgYnkgdXNlcnNwYWNlCj4gZnJvbSBFRElELgo+ Cj4gQmFzaWNhbGx5IHRoZSBleHBlY3RhdGlvbiBmcm9tIHVzZXJzcGFjZSBpczoKPiAgLSBTZXQg dXAgQ1JUQyBERUdBTU1BL0NUTS9HQU1NQSB0byBjb252ZXJ0IHRvIHNvbWUgc2luawo+ICAgIGNv bG9yc3BhY2UKPiAgLSBTZXQgdGhpcyBuZXcgcHJvcGVydHkgdG8gbGV0IHRoZSBzaW5rIGtub3cg d2hhdCBpdAo+ICAgIGNvbnZlcnRlZCB0aGUgQ1JUQyBvdXRwdXQgdG8uCj4KPiB2MjogQWRkcmVz c2VkIE1hYXJ0ZW4gYW5kIFZpbGxlJ3MgcmV2aWV3IGNvbW1lbnRzLiBFbmhhbmNlZAo+IHRoZSBj b2xvcnNwYWNlIGVudW0gdG8gaW5jb3Jwb3JhdGUgYm90aCBIRE1JIGFuZCBEUCBzdXBwb3J0ZWQK PiBjb2xvcnNwYWNlcy4gQWxzbywgYWRkZWQgYSBkZWZhdWx0IG9wdGlvbiBmb3IgY29sb3JzcGFj ZS4KPgo+IHYzOiBSZW1vdmVkIEFkb2JlIHJlZmVyZW5jZXMgZnJvbSBlbnVtIGRlZmluaXRpb25z IGFzIHBlcgo+IFZpbGxlLCBIYW5zIFZlcmt1aWwgYW5kIEpvbmFzIEthcmxtYW4gc3VnZ2VzdGlv bnMuIENoYW5nZWQKPiBEZWZhdWx0IHRvIGFuIHVuc2V0IHN0YXRlIHdoZXJlIGRyaXZlciB3aWxs IGFzc2lnbiB0aGUgY29sb3JzcGFjZQo+IGlzIG5vdCBjaG9zZW4gYnkgdXNlciwgc3VnZ2VzdGVk IGJ5IFZpbGxlIGFuZCBNYWFydGVuLiBBZGRyZXNzZWQKPiBvdGhlciBtaXNjIHJldmlldyBjb21t ZW50cyBmcm9tIE1hYXJ0ZW4uIFNwbGl0IHRoZSBjaGFuZ2VzIHRvCj4gaGF2ZSBzZXBhcmF0ZSBj b2xvcnNwYWNlIHByb3BlcnR5IGZvciBEUCBhbmQgSERNSS4KPgo+IHY0OiBBZGRyZXNzZWQgQ2hy aXMgYW5kIFZpbGxlJ3MgcmV2aWV3IGNvbW1lbnRzLCBhbmQgY3JlYXRlZCBhCj4gY29tbW9uIGNv bG9yc3BhY2UgcHJvcGVydHkgZm9yIERQIGFuZCBIRE1JLCBmaWx0ZXJlZCB0aGUgbGlzdAo+IGJh c2VkIG9uIHRoZSBjb2xvcnNwYWNlcyBzdXBwb3J0ZWQgYnkgdGhlIHJlc3BlY3RpdmUgcHJvdG9j b2wKPiBzdGFuZGFyZC4KPgo+IHY1OiBNYWRlIHRoZSBwcm9wZXJ0eSBjcmVhdGlvbiBoZWxwZXIg YWNjZXB0IGVudW0gbGlzdCBiYXNlZCBvbgo+IHBsYXRmb3JtIGNhcGFiaWx0aWVzIGFzIHN1Z2dl c3RlZCBieSBTaGFzaGFuay4gQ29uc29saWRhdGVkIEhETUkKPiBhbmQgRFAgcHJvcGVydHkgY3Jl YXRpb24gaW4gdGhlIGNvbW1vbiBoZWxwZXIuCj4KPiB2NjogQWRkcmVzc2VkIFNoYXNoYW5rJ3Mg cmV2aWV3IGNvbW1lbnRzLgo+Cj4gdjc6IEFkZGVkIGRlZmluZXMgaW5zdGVhZCBvZiBlbnVtIGlu IHVhcGkgYXMgcGVyIEJyaWFuIFN0YXJrZXkncwo+IHN1Z2dlc3Rpb24gaW4gb3JkZXIgdG8gZ28g d2l0aCBzdHJpbmcgbWF0Y2hpbmcgYXQgdXNlcnNwYWNlLiBVcGRhdGVkCj4gdGhlIGNvbW1pdCBt ZXNzYWdlIHRvIGFkZCBtb3JlIGRldGFpbHMgYXMgd2VsbCBrZXJuZWwgZG9jcy4KPgo+IFNpZ25l ZC1vZmYtYnk6IFVtYSBTaGFua2FyIDx1bWEuc2hhbmthckBpbnRlbC5jb20+Cj4gUmV2aWV3ZWQt Ynk6IFNoYXNoYW5rIFNoYXJtYSA8c2hhc2hhbmsuc2hhcm1hQGludGVsLmNvbT4KPiAtLS0KPiAg ZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfdWFwaS5jIHwgIDQgKysKPiAgZHJpdmVycy9ncHUv ZHJtL2RybV9jb25uZWN0b3IuYyAgIHwgOTUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrCj4gIGluY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaCAgICAgICB8IDE3ICsrKysr KysKPiAgaW5jbHVkZS91YXBpL2RybS9kcm1fbW9kZS5oICAgICAgIHwgMzIgKysrKysrKysrKysr Kwo+ICA0IGZpbGVzIGNoYW5nZWQsIDE0OCBpbnNlcnRpb25zKCspCj4KPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfdWFwaS5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9h dG9taWNfdWFwaS5jCj4gaW5kZXggOWExZjQxYS4uOWI1ZDQ0ZiAxMDA2NDQKPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vZHJtX2F0b21pY191YXBpLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJt X2F0b21pY191YXBpLmMKPiBAQCAtNzQ2LDYgKzc0Niw4IEBAIHN0YXRpYyBpbnQgZHJtX2F0b21p Y19jb25uZWN0b3Jfc2V0X3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3Is Cj4gIAkJCXJldHVybiAtRUlOVkFMOwo+ICAJCX0KPiAgCQlzdGF0ZS0+Y29udGVudF9wcm90ZWN0 aW9uID0gdmFsOwo+ICsJfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBjb25uZWN0b3ItPmNvbG9yc3Bh Y2VfcHJvcGVydHkpIHsKPiArCQlzdGF0ZS0+Y29sb3JzcGFjZSA9IHZhbDsKPiAgCX0gZWxzZSBp ZiAocHJvcGVydHkgPT0gY29uZmlnLT53cml0ZWJhY2tfZmJfaWRfcHJvcGVydHkpIHsKPiAgCQlz dHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiA9IGRybV9mcmFtZWJ1ZmZlcl9sb29rdXAoZGV2LCBO VUxMLCB2YWwpOwo+ICAJCWludCByZXQgPSBkcm1fYXRvbWljX3NldF93cml0ZWJhY2tfZmJfZm9y X2Nvbm5lY3RvcihzdGF0ZSwgZmIpOwo+IEBAIC04MTQsNiArODE2LDggQEAgc3RhdGljIGludCBk cm1fYXRvbWljX2Nvbm5lY3Rvcl9zZXRfcHJvcGVydHkoc3RydWN0IGRybV9jb25uZWN0b3IgKmNv bm5lY3RvciwKPiAgCQkqdmFsID0gc3RhdGUtPnBpY3R1cmVfYXNwZWN0X3JhdGlvOwo+ICAJfSBl bHNlIGlmIChwcm9wZXJ0eSA9PSBjb25maWctPmNvbnRlbnRfdHlwZV9wcm9wZXJ0eSkgewo+ICAJ CSp2YWwgPSBzdGF0ZS0+Y29udGVudF90eXBlOwo+ICsJfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBj b25uZWN0b3ItPmNvbG9yc3BhY2VfcHJvcGVydHkpIHsKPiArCQkqdmFsID0gc3RhdGUtPmNvbG9y c3BhY2U7Cj4gIAl9IGVsc2UgaWYgKHByb3BlcnR5ID09IGNvbm5lY3Rvci0+c2NhbGluZ19tb2Rl X3Byb3BlcnR5KSB7Cj4gIAkJKnZhbCA9IHN0YXRlLT5zY2FsaW5nX21vZGU7Cj4gIAl9IGVsc2Ug aWYgKHByb3BlcnR5ID09IGNvbm5lY3Rvci0+Y29udGVudF9wcm90ZWN0aW9uX3Byb3BlcnR5KSB7 Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fY29ubmVjdG9yLmMgYi9kcml2ZXJz L2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jCj4gaW5kZXggODQ3NTM5Ni4uZWFmYTY0MyAxMDA2NDQK PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jCj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL2RybV9jb25uZWN0b3IuYwo+IEBAIC04MjYsNiArODI2LDU0IEBAIGludCBkcm1fZGlz cGxheV9pbmZvX3NldF9idXNfZm9ybWF0cyhzdHJ1Y3QgZHJtX2Rpc3BsYXlfaW5mbyAqaW5mbywK PiAgfTsKPiAgRFJNX0VOVU1fTkFNRV9GTihkcm1fZ2V0X2NvbnRlbnRfcHJvdGVjdGlvbl9uYW1l LCBkcm1fY3BfZW51bV9saXN0KQo+ICAKPiArLyogTGlzdCBvZiBIRE1JIENvbG9yc3BhY2VzIHN1 cHBvcnRlZCAqLwo+ICtzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9wcm9wX2VudW1fbGlzdCBoZG1p X2NvbG9yc3BhY2VzW10gPSB7Cj4gKwkvKiBGb3IgRGVmYXVsdCBjYXNlLCBkcml2ZXIgd2lsbCBz ZXQgdGhlIGNvbG9yc3BhY2UgKi8KPiArCXsgQ09MT1JJTUVUUllfREVGQVVMVCwgIkRlZmF1bHQi IH0sCj4gKwkvKiBTdGFuZGFyZCBEZWZpbml0aW9uIENvbG9yaW1ldHJ5IGJhc2VkIG9uIENFQSA4 NjEgKi8KPiArCXsgQ09MT1JJTUVUUllfSVRVXzYwMSwgIklUVV82MDEiIH0sCj4gKwl7IENPTE9S SU1FVFJZX0lUVV83MDksICJJVFVfNzA5IiB9LAo+ICsJLyogU3RhbmRhcmQgRGVmaW5pdGlvbiBD b2xvcmltZXRyeSBiYXNlZCBvbiBJRUMgNjE5NjYtMi00ICovCj4gKwl7IENPTE9SSU1FVFJZX1hW X1lDQ182MDEsICJYVl9ZQ0NfNjAxIiB9LAo+ICsJLyogSGlnaCBEZWZpbml0aW9uIENvbG9yaW1l dHJ5IGJhc2VkIG9uIElFQyA2MTk2Ni0yLTQgKi8KPiArCXsgQ09MT1JJTUVUUllfWFZfWUNDXzcw OSwgIlhWX1lDQ183MDkiIH0sCj4gKwkvKiBDb2xvcmltZXRyeSBiYXNlZCBvbiBJRUMgNjE5NjYt Mi0xL0FtZW5kbWVudCAxICovCj4gKwl7IENPTE9SSU1FVFJZX1NfWUNDXzYwMSwgIlNfWUNDXzYw MSIgfSwKPiArCS8qIENvbG9yaW1ldHJ5IGJhc2VkIG9uIElFQyA2MTk2Ni0yLTUgWzMzXSAqLwo+ ICsJeyBDT0xPUklNRVRSWV9PUFlDQ182MDEsICJvcFlDQ182MDEiIH0sCj4gKwkvKiBDb2xvcmlt ZXRyeSBiYXNlZCBvbiBJRUMgNjE5NjYtMi01ICovCj4gKwl7IENPTE9SSU1FVFJZX09QUkdCLCAi b3BSR0IiIH0sCj4gKwkvKiBDb2xvcmltZXRyeSBiYXNlZCBvbiBJVFUtUiBCVC4yMDIwICovCj4g Kwl7IENPTE9SSU1FVFJZX0JUMjAyMF9SR0IsICJCVDIwMjBfUkdCIiB9LAo+ICsJLyogQ29sb3Jp bWV0cnkgYmFzZWQgb24gSVRVLVIgQlQuMjAyMCAqLwo+ICsJeyBDT0xPUklNRVRSWV9CVDIwMjBf WUNDLCAiQlQyMDIwX1lDQyIgfSwKPiArCS8qIENvbG9yaW1ldHJ5IGJhc2VkIG9uIElUVS1SIEJU LjIwMjAgKi8KPiArCXsgQ09MT1JJTUVUUllfQlQyMDIwX0NZQ0MsICJCVDIwMjBfQ1lDQyIgfSwK PiArfTsKPiArCj4gKy8qIExpc3Qgb2YgRFAgQ29sb3JzcGFjZXMgc3VwcG9ydGVkICovCj4gK3N0 YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX3Byb3BfZW51bV9saXN0IGRwX2NvbG9yc3BhY2VzW10gPSB7 Cj4gKwkvKiBGb3IgRGVmYXVsdCBjYXNlLCBkcml2ZXIgd2lsbCBzZXQgdGhlIGNvbG9yc3BhY2Ug Ki8KPiArCXsgQ09MT1JJTUVUUllfREVGQVVMVCwgIkRlZmF1bHQiIH0sCj4gKwkvKiBTdGFuZGFy ZCBEZWZpbml0aW9uIENvbG9yaW1ldHJ5IGJhc2VkIG9uIENFQSA4NjEgKi8KPiArCXsgQ09MT1JJ TUVUUllfSVRVXzYwMSwgIklUVV82MDEiIH0sCj4gKwl7IENPTE9SSU1FVFJZX0lUVV83MDksICJJ VFVfNzA5IiB9LAo+ICsJLyogU3RhbmRhcmQgRGVmaW5pdGlvbiBDb2xvcmltZXRyeSBiYXNlZCBv biBJRUMgNjE5NjYtMi00ICovCj4gKwl7IENPTE9SSU1FVFJZX1hWX1lDQ182MDEsICJYVl9ZQ0Nf NjAxIiB9LAo+ICsJLyogSGlnaCBEZWZpbml0aW9uIENvbG9yaW1ldHJ5IGJhc2VkIG9uIElFQyA2 MTk2Ni0yLTQgKi8KPiArCXsgQ09MT1JJTUVUUllfWFZfWUNDXzcwOSwgIlhWX1lDQ183MDkiIH0s Cj4gKwkvKiBDb2xvcmltZXRyeSBiYXNlZCBvbiBJRUMgNjE5NjYtMi01ICovCj4gKwl7IENPTE9S SU1FVFJZX09QUkdCLCAib3BSR0IiIH0sCj4gKwkvKiBEUCBNU0EgQ29sb3JpbWV0cnkgKi8KPiAr CXsgRFBfQ09MT1JJTUVUUllfWV9DQkNSX0lUVV82MDEsICJZQ0JDUl9JVFVfNjAxIiB9LAo+ICsJ eyBEUF9DT0xPUklNRVRSWV9ZX0NCQ1JfSVRVXzcwOSwgIllDQkNSX0lUVV83MDkiIH0sCj4gKwl7 IERQX0NPTE9SSU1FVFJZX1NSR0IsICJzUkdCIiB9LAo+ICsJeyBEUF9DT0xPUklNRVRSWV9SR0Jf V0lERV9HQU1VVCwgIlJHQiBXaWRlIEdhbXV0IiB9LAo+ICsJeyBEUF9DT0xPUklNRVRSWV9TQ1JH QiwgInNjUkdCIiB9LAo+ICsJeyBEUF9DT0xPUklNRVRSWV9EQ0lfUDMsICJEQ0ktUDMiIH0sCj4g Kwl7IERQX0NPTE9SSU1FVFJZX0NVU1RPTV9DT0xPUl9QUk9GSUxFLCAiQ3VzdG9tIFByb2ZpbGUi IH0sCj4gK307Cj4gKwo+ICAvKioKPiAgICogRE9DOiBzdGFuZGFyZCBjb25uZWN0b3IgcHJvcGVy dGllcwo+ICAgKgo+IEBAIC0xNTQ4LDYgKzE1OTYsNTMgQEAgaW50IGRybV9tb2RlX2NyZWF0ZV9h c3BlY3RfcmF0aW9fcHJvcGVydHkoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgRVhQT1JUX1NZ TUJPTChkcm1fbW9kZV9jcmVhdGVfYXNwZWN0X3JhdGlvX3Byb3BlcnR5KTsKPiAgCj4gIC8qKgo+ ICsgKiBET0M6IHN0YW5kYXJkIGNvbm5lY3RvciBwcm9wZXJ0aWVzCj4gKyAqCj4gKyAqIENvbG9y c3BhY2U6Cj4gKyAqICAgICBkcm1fbW9kZV9jcmVhdGVfY29sb3JzcGFjZV9wcm9wZXJ0eSAtIGNy ZWF0ZSBjb2xvcnNwYWNlIHByb3BlcnR5Cj4gKyAqICAgICBUaGlzIHByb3BlcnR5IGhlbHBzIHNl bGVjdCBhIHN1aXRhYmxlIGNvbG9yc3BhY2UgYmFzZWQgb24gdGhlIHNpbmsKPiArICogICAgIGNh cGFiaWxpdHkuIE1vZGVybiBzaW5rIGRldmljZXMgc3VwcG9ydCB3aWRlciBnYW11dCBsaWtlIEJU MjAyMC4KPiArICogICAgIFRoaXMgaGVscHMgc3dpdGNoIHRvIEJUMjAyMCBtb2RlIGlmIHRoZSBC VDIwMjAgZW5jb2RlZCB2aWRlbyBzdHJlYW0KPiArICogICAgIGlzIGJlaW5nIHBsYXllZCBieSB0 aGUgdXNlciwgc2FtZSBmb3IgYW55IG90aGVyIGNvbG9yc3BhY2UuIFRoZXJlYnkKPiArICogICAg IGdpdmluZyBhIGdvb2QgdmlzdWFsIGV4cGVyaWVuY2UgdG8gdXNlcnMuCj4gKyAqCj4gKyAqICAg ICBUaGUgZXhwZWN0YXRpb24gZnJvbSB1c2Vyc3BhY2UgaXMgdGhhdCBpdCBzaG91bGQgcGFyc2Ug dGhlIEVESUQKPiArICogICAgIGFuZCBnZXQgc3VwcG9ydGVkIGNvbG9yc3BhY2VzLiBVc2UgdGhp cyBwcm9wZXJ0eSBhbmQgc3dpdGNoIHRvIHRoZQo+ICsgKiAgICAgb25lIHN1cHBvcnRlZC4gRHJp dmVyIHdpbGwgZXhwb3NlIHRoZSBwbGF0Zm9ybSBzdXBwb3J0ZWQgY29sb3JzcGFjZXMsCj4gKyAq ICAgICBob3dldmVyIHNpbmsgc3VwcG9ydGVkIGNvbG9yc3BhY2VzIHNob3VsZCBiZSByZXRyaWV2 ZWQgYnkgdXNlcnNwYWNlCj4gKyAqICAgICBmcm9tIEVESUQuCj4gKyAqCj4gKyAqICAgICBCYXNp Y2FsbHkgdGhlIGV4cGVjdGF0aW9uIGZyb20gdXNlcnNwYWNlIGlzOgo+ICsgKiAgICAgIC0gU2V0 IHVwIENSVEMgREVHQU1NQS9DVE0vR0FNTUEgdG8gY29udmVydCB0byBzb21lIHNpbmsKPiArICog ICAgICAgIGNvbG9yc3BhY2UKPiArICogICAgICAtIFNldCB0aGlzIG5ldyBwcm9wZXJ0eSB0byBs ZXQgdGhlIHNpbmsga25vdyB3aGF0IGl0Cj4gKyAqICAgICAgICBjb252ZXJ0ZWQgdGhlIENSVEMg b3V0cHV0IHRvLgo+ICsgKiAgICAgIC0gVGhpcyBwcm9wZXJ0eSBpcyBqdXN0IHRvIGluZm9ybSBz aW5rIHdoYXQgY29sb3JzcGFjZQo+ICsgKiAgICAgICAgc291cmNlIGlzIHRyeWluZyB0byBkcml2 ZS4KPiArICoKPiArICogICAgIENhbGxlZCBieSBhIGRyaXZlciB0aGUgZmlyc3QgdGltZSBpdCdz IG5lZWRlZCwgbXVzdCBiZSBhdHRhY2hlZCB0bwo+ICsgKiAgICAgZGVzaXJlZCBjb25uZWN0b3Jz Lgo+ICsgKi8KPiAraW50IGRybV9tb2RlX2NyZWF0ZV9jb2xvcnNwYWNlX3Byb3BlcnR5KHN0cnVj dCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCj4gKwkJCQkJY29uc3Qgc3RydWN0IGRybV9wcm9w X2VudW1fbGlzdCAqcHJvcHMsCj4gKwkJCQkJaW50IG51bV92YWx1ZXMpCj4gK3sKPiArCXN0cnVj dCBkcm1fZGV2aWNlICpkZXYgPSBjb25uZWN0b3ItPmRldjsKPiArCXN0cnVjdCBkcm1fcHJvcGVy dHkgKnByb3A7Cj4gKwo+ICsJcHJvcCA9IGRybV9wcm9wZXJ0eV9jcmVhdGVfZW51bShkZXYsIERS TV9NT0RFX1BST1BfRU5VTSwKPiArCQkJCQkiQ29sb3JzcGFjZSIsCj4gKwkJCQkJcHJvcHMsIG51 bV92YWx1ZXMpOwo+ICsJaWYgKCFwcm9wKQo+ICsJCXJldHVybiAtRU5PTUVNOwo+ICsKPiArCWNv bm5lY3Rvci0+Y29sb3JzcGFjZV9wcm9wZXJ0eSA9IHByb3A7Cj4gKwo+ICsJcmV0dXJuIDA7Cj4g K30KPiArRVhQT1JUX1NZTUJPTChkcm1fbW9kZV9jcmVhdGVfY29sb3JzcGFjZV9wcm9wZXJ0eSk7 Cj4gKwo+ICsvKioKPiAgICogZHJtX21vZGVfY3JlYXRlX2NvbnRlbnRfdHlwZV9wcm9wZXJ0eSAt IGNyZWF0ZSBjb250ZW50IHR5cGUgcHJvcGVydHkKPiAgICogQGRldjogRFJNIGRldmljZQo+ICAg Kgo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmggYi9pbmNsdWRlL2Ry bS9kcm1fY29ubmVjdG9yLmgKPiBpbmRleCA5OTQxNjEzLi5lMzJjZDExIDEwMDY0NAo+IC0tLSBh L2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaAo+ICsrKyBiL2luY2x1ZGUvZHJtL2RybV9jb25u ZWN0b3IuaAo+IEBAIC0zMSw2ICszMSw3IEBACj4gICNpbmNsdWRlIDxkcm0vZHJtX3V0aWwuaD4K PiAgCj4gICNpbmNsdWRlIDx1YXBpL2RybS9kcm1fbW9kZS5oPgo+ICsjaW5jbHVkZSA8ZHJtL2Ry bV9wcm9wZXJ0eS5oPgo+ICAKPiAgc3RydWN0IGRybV9jb25uZWN0b3JfaGVscGVyX2Z1bmNzOwo+ ICBzdHJ1Y3QgZHJtX21vZGVzZXRfYWNxdWlyZV9jdHg7Cj4gQEAgLTUwMyw2ICs1MDQsMTMgQEAg c3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgewo+ICAJdW5zaWduZWQgaW50IGNvbnRlbnRfcHJv dGVjdGlvbjsKPiAgCj4gIAkvKioKPiArCSAqIEBjb2xvcnNwYWNlOiBTdGF0ZSB2YXJpYWJsZSBm b3IgQ29ubmVjdG9yIHByb3BlcnR5IHRvIHJlcXVlc3QKPiArCSAqIGNvbG9yc3BhY2UgY2hhbmdl IG9uIFNpbmsuIFRoaXMgaXMgbW9zdCBjb21tb25seSB1c2VkIHRvIHN3aXRjaAo+ICsJICogdG8g d2lkZXIgY29sb3IgZ2FtdXRzIGxpa2UgQlQyMDIwLgo+ICsJICovCj4gKwl1MzIgY29sb3JzcGFj ZTsKPiArCj4gKwkvKioKPiAgCSAqIEB3cml0ZWJhY2tfam9iOiBXcml0ZWJhY2sgam9iIGZvciB3 cml0ZWJhY2sgY29ubmVjdG9ycwo+ICAJICoKPiAgCSAqIEhvbGRzIHRoZSBmcmFtZWJ1ZmZlciBh bmQgb3V0LWZlbmNlIGZvciBhIHdyaXRlYmFjayBjb25uZWN0b3IuIEFzCj4gQEAgLTk5NSw2ICsx MDAzLDEyIEBAIHN0cnVjdCBkcm1fY29ubmVjdG9yIHsKPiAgCXN0cnVjdCBkcm1fcHJvcGVydHkg KmNvbnRlbnRfcHJvdGVjdGlvbl9wcm9wZXJ0eTsKPiAgCj4gIAkvKioKPiArCSAqIEBjb2xvcnNw YWNlX3Byb3BlcnR5OiBDb25uZWN0b3IgcHJvcGVydHkgdG8gc2V0IHRoZSBzdWl0YWJsZQo+ICsJ ICogY29sb3JzcGFjZSBzdXBwb3J0ZWQgYnkgdGhlIHNpbmsuCj4gKwkgKi8KPiArCXN0cnVjdCBk cm1fcHJvcGVydHkgKmNvbG9yc3BhY2VfcHJvcGVydHk7Cj4gKwo+ICsJLyoqCj4gIAkgKiBAcGF0 aF9ibG9iX3B0cjoKPiAgCSAqCj4gIAkgKiBEUk0gYmxvYiBwcm9wZXJ0eSBkYXRhIGZvciB0aGUg RFAgTVNUIHBhdGggcHJvcGVydHkuIFRoaXMgc2hvdWxkIG9ubHkKPiBAQCAtMTI2OSw2ICsxMjgz LDkgQEAgaW50IGRybV9jb25uZWN0b3JfYXR0YWNoX3Zycl9jYXBhYmxlX3Byb3BlcnR5KAo+ICBp bnQgZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfY29udGVudF9wcm90ZWN0aW9uX3Byb3BlcnR5KAo+ICAJ CXN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpOwo+ICBpbnQgZHJtX21vZGVfY3JlYXRl X2FzcGVjdF9yYXRpb19wcm9wZXJ0eShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKPiAraW50IGRy bV9tb2RlX2NyZWF0ZV9jb2xvcnNwYWNlX3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVjdG9yICpj b25uZWN0b3IsCj4gKwkJCQkJY29uc3Qgc3RydWN0IGRybV9wcm9wX2VudW1fbGlzdCAqcHJvcHMs Cj4gKwkJCQkJaW50IG51bV92YWx1ZXMpOwo+ICBpbnQgZHJtX21vZGVfY3JlYXRlX2NvbnRlbnRf dHlwZV9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKPiAgdm9pZCBkcm1faGRtaV9h dmlfaW5mb2ZyYW1lX2NvbnRlbnRfdHlwZShzdHJ1Y3QgaGRtaV9hdmlfaW5mb2ZyYW1lICpmcmFt ZSwKPiAgCQkJCQkgY29uc3Qgc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKmNvbm5fc3RhdGUp Owo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VhcGkvZHJtL2RybV9tb2RlLmggYi9pbmNsdWRlL3Vh cGkvZHJtL2RybV9tb2RlLmgKPiBpbmRleCBhNDM5YzJlLi4yYmNkZmNmIDEwMDY0NAo+IC0tLSBh L2luY2x1ZGUvdWFwaS9kcm0vZHJtX21vZGUuaAo+ICsrKyBiL2luY2x1ZGUvdWFwaS9kcm0vZHJt X21vZGUuaAo+IEBAIC0yMTAsNiArMjEwLDM4IEBACj4gICNkZWZpbmUgRFJNX01PREVfQ09OVEVO VF9QUk9URUNUSU9OX0RFU0lSRUQgICAgIDEKPiAgI2RlZmluZSBEUk1fTU9ERV9DT05URU5UX1BS T1RFQ1RJT05fRU5BQkxFRCAgICAgMgo+ICAKPiArLyoKPiArICogVGhpcyBpcyBhIGNvbnNvbGlk YXRlZCBjb2xvcmltZXRyeSBsaXN0IHN1cHBvcnRlZCBieSBIRE1JIGFuZAo+ICsgKiBEUCBwcm90 b2NvbCBzdGFuZGFyZC4gVGhlIHJlc3BlY3RpdmUgY29ubmVjdG9ycyB3aWxsIHJlZ2lzdGVyCj4g KyAqIGEgcHJvcGVydHkgd2l0aCB0aGUgc3Vic2V0IG9mIHRoaXMgbGlzdCAoc3VwcG9ydGVkIGJ5 IHRoYXQKPiArICogcmVzcGVjdGl2ZSBwcm90b2NvbCkuIFVzZXJzcGFjZSB3aWxsIHNldCB0aGUg Y29sb3JzcGFjZSB0aHJvdWdoCj4gKyAqIGEgY29sb3JzcGFjZSBwcm9wZXJ0eSB3aGljaCB3aWxs IGJlIGNyZWF0ZWQgYW5kIGV4cG9zZWQgdG8KPiArICogdXNlcnNwYWNlLgo+ICsgKi8KPiArCj4g Ky8qIEZvciBEZWZhdWx0IGNhc2UsIGRyaXZlciB3aWxsIHNldCB0aGUgY29sb3JzcGFjZSAqLwo+ ICsjZGVmaW5lIENPTE9SSU1FVFJZX0RFRkFVTFQJMAo+ICsvKiBDRUEgODYxIE5vcm1hbCBDb2xv cmltZXRyeSBvcHRpb25zICovCj4gKyNkZWZpbmUgQ09MT1JJTUVUUllfSVRVXzYwMQkxCj4gKyNk ZWZpbmUgQ09MT1JJTUVUUllfSVRVXzcwOQkyCj4gKy8qIENFQSA4NjEgRXh0ZW5kZWQgQ29sb3Jp bWV0cnkgT3B0aW9ucyAqLwo+ICsjZGVmaW5lIENPTE9SSU1FVFJZX1hWX1lDQ182MDEJMwo+ICsj ZGVmaW5lIENPTE9SSU1FVFJZX1hWX1lDQ183MDkJNAo+ICsjZGVmaW5lIENPTE9SSU1FVFJZX1Nf WUNDXzYwMQk1Cj4gKyNkZWZpbmUgQ09MT1JJTUVUUllfT1BZQ0NfNjAxCTYKPiArI2RlZmluZSBD T0xPUklNRVRSWV9PUFJHQgk3Cj4gKyNkZWZpbmUgQ09MT1JJTUVUUllfQlQyMDIwX1JHQgk4Cj4g KyNkZWZpbmUgQ09MT1JJTUVUUllfQlQyMDIwX1lDQwk5Cj4gKyNkZWZpbmUgQ09MT1JJTUVUUllf QlQyMDIwX0NZQ0MJMTAKPiArLyogRFAgTVNBIENvbG9yaW1ldHJ5IE9wdGlvbnMgKi8KPiArI2Rl ZmluZSBEUF9DT0xPUklNRVRSWV9ZX0NCQ1JfSVRVXzYwMQkxMQo+ICsjZGVmaW5lIERQX0NPTE9S SU1FVFJZX1lfQ0JDUl9JVFVfNzA5CTEyCj4gKyNkZWZpbmUJRFBfQ09MT1JJTUVUUllfU1JHQgkJ MTMKPiArI2RlZmluZQlEUF9DT0xPUklNRVRSWV9SR0JfV0lERV9HQU1VVAkxNAp0YWIgdnMgc3Bh Y2UgOikKPiArI2RlZmluZSBEUF9DT0xPUklNRVRSWV9TQ1JHQgkJMTUKPiArI2RlZmluZSBEUF9D T0xPUklNRVRSWV9EQ0lfUDMJCTE2Cj4gKyNkZWZpbmUgRFBfQ09MT1JJTUVUUllfQ1VTVE9NX0NP TE9SX1BST0ZJTEUJMTcKClNpbmNlIHRoaXMgaXMgaW4gVUFQSSwgeW91IG5lZWQgdG8gcHJlZml4 IHdpdGggRFJNX01PREVfCgp+TWFhcnRlbgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2RyaS1kZXZlbAo=