From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matt Roper Subject: Re: [PATCH v4.1 2/3] drm: Add CRTC background color property (v4) Date: Wed, 30 Jan 2019 18:11:16 -0800 Message-ID: <20190131021116.GD10103@mdroper-desk.amr.corp.intel.com> References: <20190130185122.10322-1-matthew.d.roper@intel.com> <20190130185122.10322-3-matthew.d.roper@intel.com> <20190130210125.GR20097@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20190130210125.GR20097@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Cc: Daniel Vetter , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, wei.c.li@intel.com, harish.krupo.kps@intel.com List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCBKYW4gMzAsIDIwMTkgYXQgMTE6MDE6MjVQTSArMDIwMCwgVmlsbGUgU3lyasOkbMOk IHdyb3RlOgo+IE9uIFdlZCwgSmFuIDMwLCAyMDE5IGF0IDEwOjUxOjIxQU0gLTA4MDAsIE1hdHQg Um9wZXIgd3JvdGU6Cj4gPiBTb21lIGRpc3BsYXkgY29udHJvbGxlcnMgY2FuIGJlIHByb2dyYW1t ZWQgdG8gcHJlc2VudCBub24tYmxhY2sgY29sb3JzCj4gPiBmb3IgcGl4ZWxzIG5vdCBjb3ZlcmVk IGJ5IGFueSBwbGFuZSAob3IgcGl4ZWxzIGNvdmVyZWQgYnkgdGhlCj4gPiB0cmFuc3BhcmVudCBy ZWdpb25zIG9mIGhpZ2hlciBwbGFuZXMpLiAgQ29tcG9zaXRvcnMgdGhhdCB3YW50IGEgVUkgd2l0 aAo+ID4gYSBzb2xpZCBjb2xvciBiYWNrZ3JvdW5kIGNhbiBwb3RlbnRpYWxseSBzYXZlIG1lbW9y eSBiYW5kd2lkdGggYnkKPiA+IHNldHRpbmcgdGhlIENSVEMgYmFja2dyb3VuZCBwcm9wZXJ0eSBh bmQgdXNpbmcgc21hbGxlciBwbGFuZXMgdG8gZGlzcGxheQo+ID4gdGhlIHJlc3Qgb2YgdGhlIGNv bnRlbnQuCj4gPiAKPiA+IFRvIGF2b2lkIGNvbmZ1c2lvbiBiZXR3ZWVuIGRpZmZlcmVudCB3YXlz IG9mIGVuY29kaW5nIFJHQiBkYXRhLCB3ZQo+ID4gZGVmaW5lIGEgc3RhbmRhcmQgNjQtYml0IGZv cm1hdCB0aGF0IHNob3VsZCBiZSB1c2VkIGZvciB0aGlzIHByb3BlcnR5J3MKPiA+IHZhbHVlLiAg SGVscGVyIGZ1bmN0aW9ucyBhbmQgbWFjcm9zIGFyZSBwcm92aWRlZCB0byBnZW5lcmF0ZSBhbmQg ZGlzc2VjdAo+ID4gdmFsdWVzIGluIHRoaXMgc3RhbmRhcmQgZm9ybWF0IHdpdGggdmFyeWluZyBj b21wb25lbnQgcHJlY2lzaW9uIHZhbHVlcy4KPiA+IAo+ID4gdjI6Cj4gPiAgLSBTd2FwIGludGVy bmFsIHJlcHJlc2VudGF0aW9uJ3MgYmx1ZSBhbmQgcmVkIGJpdHMgdG8gbWFrZSBpdCBlYXNpZXIK PiA+ICAgIHRvIHJlYWQgaWYgcHJpbnRlZCBvdXQuICAoVmlsbGUpCj4gPiAgLSBEb2N1bWVudCBi Z2NvbG9yIHByb3BlcnR5IGluIGRybV9ibGVuZC5jLiAgKFNlYW4gUGF1bCkKPiA+ICAtIHMvYmFj a2dyb3VuZF9jb2xvci9iZ2NvbG9yLyBmb3IgY29uc2lzdGVuY3kgYmV0d2VlbiBwcm9wZXJ0eSBu YW1lIGFuZAo+ID4gICAgdmFsdWUgc3RvcmFnZSBmaWVsZC4gIChTZWFuIFBhdWwpCj4gPiAgLSBB ZGQgYSBjb252ZW5pZW5jZSBmdW5jdGlvbiB0byBhdHRhY2ggcHJvcGVydHkgdG8gYSBnaXZlbiBj cnRjLgo+ID4gCj4gPiB2MzoKPiA+ICAtIFJlc3RydWN0dXJlIEFSR0IgY29tcG9uZW50IGV4dHJh Y3Rpb24gbWFjcm9zIHRvIGJlIGVhc2llciB0bwo+ID4gICAgdW5kZXJzdGFuZCBhbmQgZW5jbG9z ZSB0aGUgcGFyYW1ldGVycyBpbiAoKSB0byBhdm9pZCBjYWxjdWxhdGlvbnMKPiA+ICAgIGlmIGV4 cHJlc3Npb25zIGFyZSBwYXNzZWQuICAoU2VhbiBQYXVsKQo+ID4gIC0gcy9yZ2JhL2FyZ2IvIGlu IGhlbHBlciBmdW5jdGlvbi9tYWNybyBuYW1lcy4gIEV2ZW4gdGhvdWdoIHRoZSBpZGVhIGlzCj4g PiAgICB0byBub3Qgd29ycnkgYWJvdXQgdGhlIGludGVybmFsIHJlcHJlc2VudGF0aW9uIG9mIHRo ZSB1NjQsIGl0IGNhbgo+ID4gICAgc3RpbGwgYmUgY29uZnVzaW5nIHRvIGxvb2sgYXQgY29kZSB0 aGF0IHVzZXMgJ3JnYmEnIHRlcm1pbm9sb2d5LCBidXQKPiA+ICAgIHN0b3JlcyB2YWx1ZXMgd2l0 aCBhcmdiIG9yZGVyaW5nLiAgKFZpbGxlKQo+ID4gCj4gPiB2NDoKPiA+ICAtIERyb3AgdGhlIGJn Y29sb3JfY2hhbmdlZCBmbGFnLiAgKFZpbGxlLCBCcmlhbiBTdGFya2V5KQo+ID4gIC0gQ2xhcmlm eSBpbiBrZXJuZWxkb2MgdGhhdCBiYWNrZ3JvdW5kIGNvbG9yIGlzIGV4cGVjdGVkIHRvIHVuZGVy Z28gdGhlCj4gPiAgICBzYW1lIHBpcGUtbGV2ZWwgZGVnYW1tYS9jc2MvZ2FtbWEgdHJhbnNmb3Jt YXRpb25zIHRoYXQgcGxhbmVzIGRvLgo+ID4gICAgKEJyaWFuIFN0YXJrZXkpCj4gPiAgLSBVcGRh dGUga2VybmVsZG9jIHRvIGluZGljYXRlIG5vbi1vcGFxdWUgY29sb3JzIGFyZSBhbGxvd2VkLCBi dXQgYXJlCj4gPiAgICBnZW5lcmFsbHkgb25seSB1c2VmdWwgaW4gc3BlY2lhbCBjYXNlcyBzdWNo IGFzIHdoZW4gd3JpdGViYWNrCj4gPiAgICBjb25uZWN0b3JzIGFyZSB1c2VkIChCcmlhbiBTdGFy a2V5IC8gRXJpYyBBbmhvbHQpCj4gPiAKPiA+IENjOiBkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCj4gPiBDYzogd2VpLmMubGlAaW50ZWwuY29tCj4gPiBDYzogaGFyaXNoLmtydXBvLmtw c0BpbnRlbC5jb20KPiA+IENjOiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXgu aW50ZWwuY29tPgo+ID4gQ2M6IFNlYW4gUGF1bCA8c2VhbkBwb29ybHkucnVuPgo+ID4gQ2M6IEJy aWFuIFN0YXJrZXkgPEJyaWFuLlN0YXJrZXlAYXJtLmNvbT4KPiA+IENjOiBFcmljIEFuaG9sdCA8 ZXJpY0BhbmhvbHQubmV0Pgo+ID4gQ2M6IFN0w6lwaGFuZSBNYXJjaGVzaW4gPG1hcmNoZXVAY2hy b21pdW0ub3JnPgo+ID4gQ2M6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+ Cj4gPiBTaWduZWQtb2ZmLWJ5OiBNYXR0IFJvcGVyIDxtYXR0aGV3LmQucm9wZXJAaW50ZWwuY29t Pgo+ID4gUmV2aWV3ZWQtYnkodjIpOiBTZWFuIFBhdWwgPHNlYW5AcG9vcmx5LnJ1bj4KPiA+IFJl dmlld2VkLWJ5OiBCcmlhbiBTdGFya2V5IDxicmlhbi5zdGFya2V5QGFybS5jb20+Cj4gPiAtLS0K PiA+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY191YXBpLmMgfCAgNCArKysrCj4gPiAgZHJp dmVycy9ncHUvZHJtL2RybV9ibGVuZC5jICAgICAgIHwgMjcgKysrKysrKysrKysrKysrKysrKysr KysrLS0tCj4gPiAgZHJpdmVycy9ncHUvZHJtL2RybV9tb2RlX2NvbmZpZy5jIHwgIDYgKysrKysr Cj4gPiAgaW5jbHVkZS9kcm0vZHJtX2JsZW5kLmggICAgICAgICAgIHwgIDEgKwo+ID4gIGluY2x1 ZGUvZHJtL2RybV9jcnRjLmggICAgICAgICAgICB8IDEyICsrKysrKysrKysrKwo+ID4gIGluY2x1 ZGUvZHJtL2RybV9tb2RlX2NvbmZpZy5oICAgICB8ICA1ICsrKysrCj4gPiAgaW5jbHVkZS91YXBp L2RybS9kcm1fbW9kZS5oICAgICAgIHwgMjggKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ ID4gIDcgZmlsZXMgY2hhbmdlZCwgODAgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKPiA+ IAo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX3VhcGkuYyBiL2Ry aXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX3VhcGkuYwo+ID4gaW5kZXggOWExZjQxYWRmYzY3Li5k NTY5ZTIwZTM0ZTMgMTAwNjQ0Cj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY191 YXBpLmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX3VhcGkuYwo+ID4gQEAg LTQ2OSw2ICs0NjksOCBAQCBzdGF0aWMgaW50IGRybV9hdG9taWNfY3J0Y19zZXRfcHJvcGVydHko c3RydWN0IGRybV9jcnRjICpjcnRjLAo+ID4gIAkJCXJldHVybiAtRUZBVUxUOwo+ID4gIAo+ID4g IAkJc2V0X291dF9mZW5jZV9mb3JfY3J0YyhzdGF0ZS0+c3RhdGUsIGNydGMsIGZlbmNlX3B0cik7 Cj4gPiArCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gY29uZmlnLT5iZ2NvbG9yX3Byb3BlcnR5KSB7 Cj4gPiArCQlzdGF0ZS0+Ymdjb2xvciA9IHZhbDsKPiA+ICAJfSBlbHNlIGlmIChjcnRjLT5mdW5j cy0+YXRvbWljX3NldF9wcm9wZXJ0eSkgewo+ID4gIAkJcmV0dXJuIGNydGMtPmZ1bmNzLT5hdG9t aWNfc2V0X3Byb3BlcnR5KGNydGMsIHN0YXRlLCBwcm9wZXJ0eSwgdmFsKTsKPiA+ICAJfSBlbHNl IHsKPiA+IEBAIC01MDMsNiArNTA1LDggQEAgZHJtX2F0b21pY19jcnRjX2dldF9wcm9wZXJ0eShz dHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gPiAgCQkqdmFsID0gKHN0YXRlLT5nYW1tYV9sdXQpID8g c3RhdGUtPmdhbW1hX2x1dC0+YmFzZS5pZCA6IDA7Cj4gPiAgCWVsc2UgaWYgKHByb3BlcnR5ID09 IGNvbmZpZy0+cHJvcF9vdXRfZmVuY2VfcHRyKQo+ID4gIAkJKnZhbCA9IDA7Cj4gPiArCWVsc2Ug aWYgKHByb3BlcnR5ID09IGNvbmZpZy0+Ymdjb2xvcl9wcm9wZXJ0eSkKPiA+ICsJCSp2YWwgPSBz dGF0ZS0+Ymdjb2xvcjsKPiA+ICAJZWxzZSBpZiAoY3J0Yy0+ZnVuY3MtPmF0b21pY19nZXRfcHJv cGVydHkpCj4gPiAgCQlyZXR1cm4gY3J0Yy0+ZnVuY3MtPmF0b21pY19nZXRfcHJvcGVydHkoY3J0 Yywgc3RhdGUsIHByb3BlcnR5LCB2YWwpOwo+ID4gIAllbHNlCj4gPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2RybV9ibGVuZC5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9ibGVuZC5jCj4g PiBpbmRleCAwYzc4Y2EzODZjYmUuLmQ0NTFhYzllMWQ2ZCAxMDA2NDQKPiA+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS9kcm1fYmxlbmQuYwo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9ibGVu ZC5jCj4gPiBAQCAtMTc1LDkgKzE3NSwyMiBAQAo+ID4gICAqCQkgcGxhbmUgZG9lcyBub3QgZXhw b3NlIHRoZSAiYWxwaGEiIHByb3BlcnR5LCB0aGVuIHRoaXMgaXMKPiA+ICAgKgkJIGFzc3VtZWQg dG8gYmUgMS4wCj4gPiAgICoKPiA+IC0gKiBOb3RlIHRoYXQgYWxsIHRoZSBwcm9wZXJ0eSBleHRl bnNpb25zIGRlc2NyaWJlZCBoZXJlIGFwcGx5IGVpdGhlciB0byB0aGUKPiA+IC0gKiBwbGFuZSBv ciB0aGUgQ1JUQyAoZS5nLiBmb3IgdGhlIGJhY2tncm91bmQgY29sb3IsIHdoaWNoIGN1cnJlbnRs eSBpcyBub3QKPiA+IC0gKiBleHBvc2VkIGFuZCBhc3N1bWVkIHRvIGJlIGJsYWNrKS4KPiA+ICsg KiBUaGUgcHJvcGVydHkgZXh0ZW5zaW9ucyBkZXNjcmliZWQgYWJvdmUgYWxsIGFwcGx5IHRvIHRo ZSBwbGFuZS4gIERyaXZlcnMKPiA+ICsgKiBtYXkgYWxzbyBleHBvc2UgdGhlIGZvbGxvd2luZyBj cnRjIHByb3BlcnR5IGV4dGVuc2lvbjoKPiA+ICsgKgo+ID4gKyAqIEJBQ0tHUk9VTkRfQ09MT1I6 Cj4gPiArICoJQmFja2dyb3VuZCBjb2xvciBpcyBzZXR1cCB3aXRoIGRybV9jcnRjX2FkZF9iZ2Nv bG9yX3Byb3BlcnR5KCkuICBJdAo+ID4gKyAqCWNvbnRyb2xzIHRoZSBBUkdCIGNvbG9yIG9mIGEg ZnVsbC1zY3JlZW4gbGF5ZXIgdGhhdCBleGlzdHMgYmVsb3cgYWxsCj4gPiArICoJcGxhbmVzLiAg VGhpcyBjb2xvciB3aWxsIGJlIHVzZWQgZm9yIHBpeGVscyBub3QgY292ZXJlZCBieSBhbnkgcGxh bmUKPiA+ICsgKglhbmQgbWF5IGFsc28gYmUgYmxlbmRlZCB3aXRoIHBsYW5lIGNvbnRlbnRzIGFz IGFsbG93ZWQgYnkgYSBwbGFuZSdzCj4gPiArICoJYWxwaGEgdmFsdWVzLiAgVGhlIGJhY2tncm91 bmQgY29sb3IgZGVmYXVsdHMgdG8gYmxhY2ssIGFuZCBpcyBhc3N1bWVkCj4gPiArICoJdG8gYmUg YmxhY2sgZm9yIGRyaXZlcnMgdGhhdCBkbyBub3QgZXhwb3NlIHRoaXMgcHJvcGVydHkuICBBbHRo b3VnaAo+ID4gKyAqCWJhY2tncm91bmQgY29sb3IgaXNuJ3QgYSBwbGFuZSwgaXQgaXMgYXNzdW1l ZCB0aGF0IHRoZSBjb2xvciBwcm92aWRlZAo+ID4gKyAqCWhlcmUgdW5kZXJnb2VzIHRoZSBzYW1l IHBpcGUtbGV2ZWwgZGVnYW1tYS9DU0MvZ2FtbWEgdHJhbnNmb3JtYXRpb25zCj4gPiArICoJdGhh dCBwbGFuZXMgdW5kZXJnby4gIE5vdGUgdGhhdCB0aGUgY29sb3IgdmFsdWUgcHJvdmlkZWQgaGVy ZSBpbmNsdWRlcwo+ID4gKyAqCWFuIGFscGhhIGNoYW5uZWwuLi5ub24tb3BhcXVlIGJhY2tncm91 bmQgY29sb3IgdmFsdWVzIGFyZSBhbGxvd2VkLAo+ID4gKyAqCWJ1dCBhcmUgZ2VuZXJhbGx5IG9u bHkgaG9ub3JlZCBpbiBzcGVjaWFsIGNhc2VzIChlLmcuLCB3aGVuIGEgbWVtb3J5Cj4gPiArICoJ d3JpdGViYWNrIGNvbm5lY3RvciBpcyBpbiB1c2UpLgo+IAo+IFdoYXQgd291bGQgdGhlIGFscGhh PDEuMCBkbyBpbiB0aGF0IGNhc2U/IEJsZW5kIHRoZSB3cml0ZWJhY2sgb3V0cHV0Cj4gd2l0aCB3 aGF0J3MgYWxyZWFkeSB0aGVyZT8KCkkgdGhpbmsgaXQncyBtb3JlIGZvciBjYXNlcyB3aGVyZSB5 b3VyIGhhcmR3YXJlJ3MgcGlwZSB3cml0ZXMgYmFjawphY3R1YWwgQVJHQiBkYXRhIHRvIG1lbW9y eSwgaW5jbHVkaW5nIGFuIGFscGhhIGNvbXBvbmVudCwgcmF0aGVyIHRoYW4KanVzdCBSR0Igb3Ig WFJHQi4gIFlvdSBjb3VsZCB0aGVuIHRha2UgdGhhdCBBUkdCIHdyaXRlYmFjayBidWZmZXIgYW5k CnBhc3MgaXQgdGhyb3VnaCBzb21lIG90aGVyIGZvcm0gb2YgdXNlZnVsIGNvbXBvc2l0aW5nIGlm IHRoZSBiZ2NvbG9yCnBpeGVscyBoYXZlIGEgbm9uLW9wYXF1ZSBhbHBoYS4KCgpNYXR0Cgo+IAo+ ID4gICAqLwo+ID4gIAo+ID4gIC8qKgo+ID4gQEAgLTU5MywzICs2MDYsMTEgQEAgaW50IGRybV9w bGFuZV9jcmVhdGVfYmxlbmRfbW9kZV9wcm9wZXJ0eShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwK PiA+ICAJcmV0dXJuIDA7Cj4gPiAgfQo+ID4gIEVYUE9SVF9TWU1CT0woZHJtX3BsYW5lX2NyZWF0 ZV9ibGVuZF9tb2RlX3Byb3BlcnR5KTsKPiA+ICsKPiA+ICt2b2lkIGRybV9jcnRjX2FkZF9iZ2Nv bG9yX3Byb3BlcnR5KHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKPiA+ICt7Cj4gPiArCWRybV9vYmpl Y3RfYXR0YWNoX3Byb3BlcnR5KCZjcnRjLT5iYXNlLAo+ID4gKwkJCQkgICBjcnRjLT5kZXYtPm1v ZGVfY29uZmlnLmJnY29sb3JfcHJvcGVydHksCj4gPiArCQkJCSAgIGRybV9hcmdiKDE2LCAweGZm ZmYsIDAsIDAsIDApKTsKPiAKPiBpZiAoY3J0Yy0+c3RhdGUpCj4gIGNydGMtPnN0YXRlLT5iZyA9 IGRlZmF1bHQgdmFsdWU7ID8KPiAKPiA+ICt9Cj4gPiArRVhQT1JUX1NZTUJPTChkcm1fY3J0Y19h ZGRfYmdjb2xvcl9wcm9wZXJ0eSk7Cj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2Ry bV9tb2RlX2NvbmZpZy5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9tb2RlX2NvbmZpZy5jCj4gPiBp bmRleCA0YTFjMjAyM2NjZjAuLjhhN2MzNDZiMzE5MSAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMv Z3B1L2RybS9kcm1fbW9kZV9jb25maWcuYwo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9t b2RlX2NvbmZpZy5jCj4gPiBAQCAtMzY0LDYgKzM2NCwxMiBAQCBzdGF0aWMgaW50IGRybV9tb2Rl X2NyZWF0ZV9zdGFuZGFyZF9wcm9wZXJ0aWVzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gPiAg CQlyZXR1cm4gLUVOT01FTTsKPiA+ICAJZGV2LT5tb2RlX2NvbmZpZy5tb2RpZmllcnNfcHJvcGVy dHkgPSBwcm9wOwo+ID4gIAo+ID4gKwlwcm9wID0gZHJtX3Byb3BlcnR5X2NyZWF0ZV9yYW5nZShk ZXYsIDAsICJCQUNLR1JPVU5EX0NPTE9SIiwKPiA+ICsJCQkJCSAwLCBHRU5NQVNLX1VMTCg2Mywg MCkpOwo+ID4gKwlpZiAoIXByb3ApCj4gPiArCQlyZXR1cm4gLUVOT01FTTsKPiA+ICsJZGV2LT5t b2RlX2NvbmZpZy5iZ2NvbG9yX3Byb3BlcnR5ID0gcHJvcDsKPiA+ICsKPiA+ICAJcmV0dXJuIDA7 Cj4gPiAgfQo+ID4gIAo+ID4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9ibGVuZC5oIGIv aW5jbHVkZS9kcm0vZHJtX2JsZW5kLmgKPiA+IGluZGV4IDg4YmRmZWMzYmQ4OC4uOWUyNTM4ZGQ3 YjlhIDEwMDY0NAo+ID4gLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2JsZW5kLmgKPiA+ICsrKyBiL2lu Y2x1ZGUvZHJtL2RybV9ibGVuZC5oCj4gPiBAQCAtNTgsNCArNTgsNSBAQCBpbnQgZHJtX2F0b21p Y19ub3JtYWxpemVfenBvcyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ID4gIAkJCSAgICAgIHN0 cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSk7Cj4gPiAgaW50IGRybV9wbGFuZV9jcmVhdGVf YmxlbmRfbW9kZV9wcm9wZXJ0eShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKPiA+ICAJCQkJCSB1 bnNpZ25lZCBpbnQgc3VwcG9ydGVkX21vZGVzKTsKPiA+ICt2b2lkIGRybV9jcnRjX2FkZF9iZ2Nv bG9yX3Byb3BlcnR5KHN0cnVjdCBkcm1fY3J0YyAqY3J0Yyk7Cj4gPiAgI2VuZGlmCj4gPiBkaWZm IC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2NydGMuaCBiL2luY2x1ZGUvZHJtL2RybV9jcnRjLmgK PiA+IGluZGV4IDg1YWJkM2ZlOWU4My4uZGJlMGI0NWQ1ZGE2IDEwMDY0NAo+ID4gLS0tIGEvaW5j bHVkZS9kcm0vZHJtX2NydGMuaAo+ID4gKysrIGIvaW5jbHVkZS9kcm0vZHJtX2NydGMuaAo+ID4g QEAgLTI3NCw2ICsyNzQsMTggQEAgc3RydWN0IGRybV9jcnRjX3N0YXRlIHsKPiA+ICAJICovCj4g PiAgCXN0cnVjdCBkcm1fcHJvcGVydHlfYmxvYiAqZ2FtbWFfbHV0Owo+ID4gIAo+ID4gKwkvKioK PiA+ICsJICogQGJnY29sb3I6Cj4gPiArCSAqCj4gPiArCSAqIFJHQiB2YWx1ZSByZXByZXNlbnRp bmcgdGhlIHBpcGUncyBiYWNrZ3JvdW5kIGNvbG9yLiAgVGhlIGJhY2tncm91bmQKPiA+ICsJICog Y29sb3IgKGFrYSAiY2FudmFzIGNvbG9yIikgb2YgYSBwaXBlIGlzIHRoZSBjb2xvciB0aGF0IHdp bGwgYmUgdXNlZAo+ID4gKwkgKiBmb3IgcGl4ZWxzIG5vdCBjb3ZlcmVkIGJ5IGEgcGxhbmUsIG9y IGNvdmVyZWQgYnkgdHJhbnNwYXJlbnQgcGl4ZWxzCj4gPiArCSAqIG9mIGEgcGxhbmUuICBUaGUg dmFsdWUgaGVyZSBzaG91bGQgYmUgYnVpbHQgdmlhIGRybV9hcmdiKCk7Cj4gPiArCSAqIGluZGl2 aWR1YWwgY29sb3IgY29tcG9uZW50cyBjYW4gYmUgZXh0cmFjdGVkIHdpdGggZGVzaXJlZCBwcmVj aXNpb24KPiA+ICsJICogdmlhIHRoZSBEUk1fQVJHQl8qKCkgbWFjcm9zLgo+ID4gKwkgKi8KPiA+ ICsJdTY0IGJnY29sb3I7Cj4gPiArCj4gPiAgCS8qKgo+ID4gIAkgKiBAdGFyZ2V0X3ZibGFuazoK PiA+ICAJICoKPiA+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fbW9kZV9jb25maWcuaCBi L2luY2x1ZGUvZHJtL2RybV9tb2RlX2NvbmZpZy5oCj4gPiBpbmRleCAxZTZjYjg4NTk5NGQuLjA0 NjNkM2Y0YWU1OSAxMDA2NDQKPiA+IC0tLSBhL2luY2x1ZGUvZHJtL2RybV9tb2RlX2NvbmZpZy5o Cj4gPiArKysgYi9pbmNsdWRlL2RybS9kcm1fbW9kZV9jb25maWcuaAo+ID4gQEAgLTgzNiw2ICs4 MzYsMTEgQEAgc3RydWN0IGRybV9tb2RlX2NvbmZpZyB7Cj4gPiAgCSAqLwo+ID4gIAlzdHJ1Y3Qg ZHJtX3Byb3BlcnR5ICp3cml0ZWJhY2tfb3V0X2ZlbmNlX3B0cl9wcm9wZXJ0eTsKPiA+ICAKPiA+ ICsJLyoqCj4gPiArCSAqIEBiZ2NvbG9yX3Byb3BlcnR5OiBSR0IgYmFja2dyb3VuZCBjb2xvciBm b3IgQ1JUQy4KPiA+ICsJICovCj4gPiArCXN0cnVjdCBkcm1fcHJvcGVydHkgKmJnY29sb3JfcHJv cGVydHk7Cj4gPiArCj4gPiAgCS8qIGR1bWIgaW9jdGwgcGFyYW1ldGVycyAqLwo+ID4gIAl1aW50 MzJfdCBwcmVmZXJyZWRfZGVwdGgsIHByZWZlcl9zaGFkb3c7Cj4gPiAgCj4gPiBkaWZmIC0tZ2l0 IGEvaW5jbHVkZS91YXBpL2RybS9kcm1fbW9kZS5oIGIvaW5jbHVkZS91YXBpL2RybS9kcm1fbW9k ZS5oCj4gPiBpbmRleCBhNDM5YzJlNjc4OTYuLjVmMzFlNmEwNWJkOSAxMDA2NDQKPiA+IC0tLSBh L2luY2x1ZGUvdWFwaS9kcm0vZHJtX21vZGUuaAo+ID4gKysrIGIvaW5jbHVkZS91YXBpL2RybS9k cm1fbW9kZS5oCj4gPiBAQCAtOTA3LDYgKzkwNywzNCBAQCBzdHJ1Y3QgZHJtX21vZGVfcmVjdCB7 Cj4gPiAgCV9fczMyIHkyOwo+ID4gIH07Cj4gPiAgCj4gPiArLyoKPiA+ICsgKiBQdXQgQVJHQiB2 YWx1ZXMgaW50byBhIHN0YW5kYXJkIDY0LWJpdCByZXByZXNlbnRhdGlvbiB0aGF0IGNhbiBiZSB1 c2VkCj4gPiArICogZm9yIGlvY3RsIHBhcmFtZXRlcnMsIGludGVyLWRyaXZlciBjb21tbXVuaWNh dGlvbiwgZXRjLiAgSWYgdGhlIGNvbXBvbmVudAo+ID4gKyAqIHZhbHVlcyBiZWluZyBwcm92aWRl ZCBjb250YWluIGxlc3MgdGhhbiAxNiBiaXRzIG9mIHByZWNpc2lvbiwgdGhleSdsbAo+ID4gKyAq IGJlIHNoaWZ0ZWQgaW50byB0aGUgbW9zdCBzaWduaWZpY2FudCBiaXRzLgo+ID4gKyAqLwo+ID4g K3N0YXRpYyBpbmxpbmUgX191NjQKPiA+ICtkcm1fYXJnYihfX3U4IGJwYywgX191MTYgYWxwaGEs IF9fdTE2IHJlZCwgX191MTYgZ3JlZW4sIF9fdTE2IGJsdWUpCj4gPiArewo+ID4gKwlpbnQgbXNi X3NoaWZ0ID0gMTYgLSBicGM7Cj4gPiArCj4gPiArCXJldHVybiAoX191NjQpYWxwaGEgPDwgbXNi X3NoaWZ0IDw8IDQ4IHwKPiA+ICsJICAgICAgIChfX3U2NClyZWQgICA8PCBtc2Jfc2hpZnQgPDwg MzIgfAo+ID4gKwkgICAgICAgKF9fdTY0KWdyZWVuIDw8IG1zYl9zaGlmdCA8PCAxNiB8Cj4gPiAr CSAgICAgICAoX191NjQpYmx1ZSAgPDwgbXNiX3NoaWZ0Owo+ID4gK30KPiA+ICsKPiA+ICsvKgo+ ID4gKyAqIEV4dHJhY3QgdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgYml0cyBvZiBhIHNwZWNpZmlj IGNvbG9yIGNvbXBvbmVudCBmcm9tIGEKPiA+ICsgKiBzdGFuZGFyZCA2NC1iaXQgQVJHQiB2YWx1 ZS4KPiA+ICsgKi8KPiA+ICsjZGVmaW5lIERSTV9BUkdCX0NPTVAoYywgc2hpZnQsIG51bWJpdHMp IFwKPiA+ICsJKF9fdTE2KSgoKGMpICYgMHhGRkZGdWxsIDw8IChzaGlmdCkpID4+ICgoc2hpZnQp ICsgMTYgLSAobnVtYml0cykpKQo+ID4gKyNkZWZpbmUgRFJNX0FSR0JfQkxVRShjLCBudW1iaXRz KSAgRFJNX0FSR0JfQ09NUChjLCAwLCBudW1iaXRzKQo+ID4gKyNkZWZpbmUgRFJNX0FSR0JfR1JF RU4oYywgbnVtYml0cykgRFJNX0FSR0JfQ09NUChjLCAxNiwgbnVtYml0cykKPiA+ICsjZGVmaW5l IERSTV9BUkdCX1JFRChjLCBudW1iaXRzKSAgIERSTV9BUkdCX0NPTVAoYywgMzIsIG51bWJpdHMp Cj4gPiArI2RlZmluZSBEUk1fQVJHQl9BTFBIQShjLCBudW1iaXRzKSBEUk1fQVJHQl9DT01QKGMs IDQ4LCBudW1iaXRzKQo+ID4gKwo+ID4gICNpZiBkZWZpbmVkKF9fY3BsdXNwbHVzKQo+ID4gIH0K PiA+ICAjZW5kaWYKPiA+IC0tIAo+ID4gMi4xNC41Cj4gCj4gLS0gCj4gVmlsbGUgU3lyasOkbMOk Cj4gSW50ZWwKCi0tIApNYXR0IFJvcGVyCkdyYXBoaWNzIFNvZnR3YXJlIEVuZ2luZWVyCklvVEcg UGxhdGZvcm0gRW5hYmxpbmcgJiBEZXZlbG9wbWVudApJbnRlbCBDb3Jwb3JhdGlvbgooOTE2KSAz NTYtMjc5NQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJ bnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK