From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH v2 2/3] drm: Add CRTC background color property (v2) Date: Wed, 14 Nov 2018 19:20:36 +0200 Message-ID: <20181114172036.GR9144@intel.com> References: <20181113232149.22753-1-matthew.d.roper@intel.com> <20181113232149.22753-3-matthew.d.roper@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: <20181113232149.22753-3-matthew.d.roper@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Matt Roper Cc: wei.c.li@intel.com, intel-gfx@lists.freedesktop.org, Sean Paul , dri-devel@lists.freedesktop.org, harish.krupo.kps@intel.com List-Id: dri-devel@lists.freedesktop.org T24gVHVlLCBOb3YgMTMsIDIwMTggYXQgMDM6MjE6NDhQTSAtMDgwMCwgTWF0dCBSb3BlciB3cm90 ZToKPiBTb21lIGRpc3BsYXkgY29udHJvbGxlcnMgY2FuIGJlIHByb2dyYW1tZWQgdG8gcHJlc2Vu dCBub24tYmxhY2sgY29sb3JzCj4gZm9yIHBpeGVscyBub3QgY292ZXJlZCBieSBhbnkgcGxhbmUg KG9yIHBpeGVscyBjb3ZlcmVkIGJ5IHRoZQo+IHRyYW5zcGFyZW50IHJlZ2lvbnMgb2YgaGlnaGVy IHBsYW5lcykuICBDb21wb3NpdG9ycyB0aGF0IHdhbnQgYSBVSSB3aXRoCj4gYSBzb2xpZCBjb2xv ciBiYWNrZ3JvdW5kIGNhbiBwb3RlbnRpYWxseSBzYXZlIG1lbW9yeSBiYW5kd2lkdGggYnkKPiBz ZXR0aW5nIHRoZSBDUlRDIGJhY2tncm91bmQgcHJvcGVydHkgYW5kIHVzaW5nIHNtYWxsZXIgcGxh bmVzIHRvIGRpc3BsYXkKPiB0aGUgcmVzdCBvZiB0aGUgY29udGVudC4KPiAKPiBUbyBhdm9pZCBj b25mdXNpb24gYmV0d2VlbiBkaWZmZXJlbnQgd2F5cyBvZiBlbmNvZGluZyBSR0IgZGF0YSwgd2UK PiBkZWZpbmUgYSBzdGFuZGFyZCA2NC1iaXQgZm9ybWF0IHRoYXQgc2hvdWxkIGJlIHVzZWQgZm9y IHRoaXMgcHJvcGVydHkncwo+IHZhbHVlLiAgSGVscGVyIGZ1bmN0aW9ucyBhbmQgbWFjcm9zIGFy ZSBwcm92aWRlZCB0byBnZW5lcmF0ZSBhbmQgZGlzc2VjdAo+IHZhbHVlcyBpbiB0aGlzIHN0YW5k YXJkIGZvcm1hdCB3aXRoIHZhcnlpbmcgY29tcG9uZW50IHByZWNpc2lvbiB2YWx1ZXMuCj4gCj4g djI6Cj4gIC0gU3dhcCBpbnRlcm5hbCByZXByZXNlbnRhdGlvbidzIGJsdWUgYW5kIHJlZCBiaXRz IHRvIG1ha2UgaXQgZWFzaWVyCj4gICAgdG8gcmVhZCBpZiBwcmludGVkIG91dC4gIChWaWxsZSkK PiAgLSBEb2N1bWVudCBiZ2NvbG9yIHByb3BlcnR5IGluIGRybV9ibGVuZC5jLiAgKFNlYW4gUGF1 bCkKPiAgLSBzL2JhY2tncm91bmRfY29sb3IvYmdjb2xvci8gZm9yIGNvbnNpc3RlbmN5IGJldHdl ZW4gcHJvcGVydHkgbmFtZSBhbmQKPiAgICB2YWx1ZSBzdG9yYWdlIGZpZWxkLiAgKFNlYW4gUGF1 bCkKPiAgLSBBZGQgYSBjb252ZW5pZW5jZSBmdW5jdGlvbiB0byBhdHRhY2ggcHJvcGVydHkgdG8g YSBnaXZlbiBjcnRjLgo+IAo+IENjOiBkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4g Q2M6IHdlaS5jLmxpQGludGVsLmNvbQo+IENjOiBoYXJpc2gua3J1cG8ua3BzQGludGVsLmNvbQo+ IENjOiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgo+IENj OiBTZWFuIFBhdWwgPHNlYW5AcG9vcmx5LnJ1bj4KPiBTaWduZWQtb2ZmLWJ5OiBNYXR0IFJvcGVy IDxtYXR0aGV3LmQucm9wZXJAaW50ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vZHJt X2F0b21pY19zdGF0ZV9oZWxwZXIuYyB8ICAxICsKPiAgZHJpdmVycy9ncHUvZHJtL2RybV9hdG9t aWNfdWFwaS5jICAgICAgICAgfCAgNSArKysrKwo+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2JsZW5k LmMgICAgICAgICAgICAgICB8IDIxICsrKysrKysrKysrKysrKysrKy0tLQo+ICBkcml2ZXJzL2dw dS9kcm0vZHJtX21vZGVfY29uZmlnLmMgICAgICAgICB8ICA2ICsrKysrKwo+ICBpbmNsdWRlL2Ry bS9kcm1fYmxlbmQuaCAgICAgICAgICAgICAgICAgICB8ICAxICsKPiAgaW5jbHVkZS9kcm0vZHJt X2NydGMuaCAgICAgICAgICAgICAgICAgICAgfCAxNyArKysrKysrKysrKysrKysrKwo+ICBpbmNs dWRlL2RybS9kcm1fbW9kZV9jb25maWcuaCAgICAgICAgICAgICB8ICA1ICsrKysrCj4gIGluY2x1 ZGUvdWFwaS9kcm0vZHJtX21vZGUuaCAgICAgICAgICAgICAgIHwgMjYgKysrKysrKysrKysrKysr KysrKysrKysrKysKPiAgOCBmaWxlcyBjaGFuZ2VkLCA3OSBpbnNlcnRpb25zKCspLCAzIGRlbGV0 aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19zdGF0 ZV9oZWxwZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX3N0YXRlX2hlbHBlci5jCj4g aW5kZXggM2JhOTk2MDY5ZDY5Li4yZjhjNTU2NjgwODkgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL2RybV9hdG9taWNfc3RhdGVfaGVscGVyLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0v ZHJtX2F0b21pY19zdGF0ZV9oZWxwZXIuYwo+IEBAIC0xMDEsNiArMTAxLDcgQEAgdm9pZCBfX2Ry bV9hdG9taWNfaGVscGVyX2NydGNfZHVwbGljYXRlX3N0YXRlKHN0cnVjdCBkcm1fY3J0YyAqY3J0 YywKPiAgCXN0YXRlLT5wbGFuZXNfY2hhbmdlZCA9IGZhbHNlOwo+ICAJc3RhdGUtPmNvbm5lY3Rv cnNfY2hhbmdlZCA9IGZhbHNlOwo+ICAJc3RhdGUtPmNvbG9yX21nbXRfY2hhbmdlZCA9IGZhbHNl Owo+ICsJc3RhdGUtPmJnY29sb3JfY2hhbmdlZCA9IGZhbHNlOwoKV29uZGVyaW5nIGEgYml0IGFi b3V0IHRoZSBncmFudWxhaXJ0eSBvZiB0aGVzZSBmbGFncy4gSXMgYmdjb2xvcgppbXBvcnRhbnQg ZW5vdWdoIHRvIHdhcnJhbnQgaXRzIG93biBmbGFnLCBvciBzaG91bGQgaXQganVzdCBiZSBwYXJ0 IG9mCmNvbG9yX21nbXRfY2hhbmdlZCBmb3IgZXhhbXBsZT8KCmNvbG9yX21nbXRfY2hhbmdlZCBp cyByYXRoZXIgaGVhdnkgdGhvdWdoIGFzIGl0IHdvdWxkIGZvcmNlIExVVApyZXByb2dyYW1taW5n LCBzbyBJJ3ZlIGJlZW4gdGhpbmtpbmcgdGhhdCBpdCBzaG91bGQgcGVyaGFwcyBiZSAKc3BsaXQg aW50byBzZXBhcmF0ZQpnYW1tYV9sdXRfY2hhbmdlZC9kZWdhbW1hX2x1dF9jaGFuZ2VkL290aGVy X2NvbG9yX3N0dWZmX2NoYW5nZWQKZmxhZ3MuCgpBbnl3YXlzLCBqdXN0IHRoaW5raW5nIG91dCBs b3VkIGhlcmUuIFdlIGNhbiBjb21iaW5lIHNvbWUKb2YgdGhlc2UgZmxhZ3MgbGF0ZXIgaWYgd2Ug c3RhcnQgdG8gYWNjdW11bGF0ZSB0b28gbWFueS4KCgo+ICAJc3RhdGUtPnpwb3NfY2hhbmdlZCA9 IGZhbHNlOwo+ICAJc3RhdGUtPmNvbW1pdCA9IE5VTEw7Cj4gIAlzdGF0ZS0+ZXZlbnQgPSBOVUxM Owo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY191YXBpLmMgYi9kcml2 ZXJzL2dwdS9kcm0vZHJtX2F0b21pY191YXBpLmMKPiBpbmRleCA4NmFjMzM5MjJiMDkuLmI5NWE1 NWE3NzhlMiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY191YXBpLmMK PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY191YXBpLmMKPiBAQCAtNDY3LDYgKzQ2 Nyw5IEBAIHN0YXRpYyBpbnQgZHJtX2F0b21pY19jcnRjX3NldF9wcm9wZXJ0eShzdHJ1Y3QgZHJt X2NydGMgKmNydGMsCj4gIAkJCXJldHVybiAtRUZBVUxUOwo+ICAKPiAgCQlzZXRfb3V0X2ZlbmNl X2Zvcl9jcnRjKHN0YXRlLT5zdGF0ZSwgY3J0YywgZmVuY2VfcHRyKTsKPiArCX0gZWxzZSBpZiAo cHJvcGVydHkgPT0gY29uZmlnLT5iZ2NvbG9yX3Byb3BlcnR5KSB7Cj4gKwkJc3RhdGUtPmJnY29s b3IgPSB2YWw7Cj4gKwkJc3RhdGUtPmJnY29sb3JfY2hhbmdlZCA9IHRydWU7Cj4gIAl9IGVsc2Ug aWYgKGNydGMtPmZ1bmNzLT5hdG9taWNfc2V0X3Byb3BlcnR5KSB7Cj4gIAkJcmV0dXJuIGNydGMt PmZ1bmNzLT5hdG9taWNfc2V0X3Byb3BlcnR5KGNydGMsIHN0YXRlLCBwcm9wZXJ0eSwgdmFsKTsK PiAgCX0gZWxzZSB7Cj4gQEAgLTQ5OSw2ICs1MDIsOCBAQCBkcm1fYXRvbWljX2NydGNfZ2V0X3By b3BlcnR5KHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiAgCQkqdmFsID0gKHN0YXRlLT5nYW1tYV9s dXQpID8gc3RhdGUtPmdhbW1hX2x1dC0+YmFzZS5pZCA6IDA7Cj4gIAllbHNlIGlmIChwcm9wZXJ0 eSA9PSBjb25maWctPnByb3Bfb3V0X2ZlbmNlX3B0cikKPiAgCQkqdmFsID0gMDsKPiArCWVsc2Ug aWYgKHByb3BlcnR5ID09IGNvbmZpZy0+Ymdjb2xvcl9wcm9wZXJ0eSkKPiArCQkqdmFsID0gc3Rh dGUtPmJnY29sb3I7Cj4gIAllbHNlIGlmIChjcnRjLT5mdW5jcy0+YXRvbWljX2dldF9wcm9wZXJ0 eSkKPiAgCQlyZXR1cm4gY3J0Yy0+ZnVuY3MtPmF0b21pY19nZXRfcHJvcGVydHkoY3J0Yywgc3Rh dGUsIHByb3BlcnR5LCB2YWwpOwo+ICAJZWxzZQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vZHJtX2JsZW5kLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2JsZW5kLmMKPiBpbmRleCAwYzc4 Y2EzODZjYmUuLjdjNzNjYjgzODc0YSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJt X2JsZW5kLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2JsZW5kLmMKPiBAQCAtMTc1LDkg KzE3NSwxNiBAQAo+ICAgKgkJIHBsYW5lIGRvZXMgbm90IGV4cG9zZSB0aGUgImFscGhhIiBwcm9w ZXJ0eSwgdGhlbiB0aGlzIGlzCj4gICAqCQkgYXNzdW1lZCB0byBiZSAxLjAKPiAgICoKPiAtICog Tm90ZSB0aGF0IGFsbCB0aGUgcHJvcGVydHkgZXh0ZW5zaW9ucyBkZXNjcmliZWQgaGVyZSBhcHBs eSBlaXRoZXIgdG8gdGhlCj4gLSAqIHBsYW5lIG9yIHRoZSBDUlRDIChlLmcuIGZvciB0aGUgYmFj a2dyb3VuZCBjb2xvciwgd2hpY2ggY3VycmVudGx5IGlzIG5vdAo+IC0gKiBleHBvc2VkIGFuZCBh c3N1bWVkIHRvIGJlIGJsYWNrKS4KPiArICogVGhlIHByb3BlcnR5IGV4dGVuc2lvbnMgZGVzY3Jp YmVkIGFib3ZlIGFsbCBhcHBseSB0byB0aGUgcGxhbmUuICBEcml2ZXJzCj4gKyAqIG1heSBhbHNv IGV4cG9zZSB0aGUgZm9sbG93aW5nIGNydGMgcHJvcGVydHkgZXh0ZW5zaW9uOgo+ICsgKgo+ICsg KiBiZ2NvbG9yOgo+ICsgKglCYWNrZ3JvdW5kIGNvbG9yIGlzIHNldHVwIHdpdGggZHJtX2NydGNf YWRkX2JnY29sb3JfcHJvcGVydHkoKS4gIEl0Cj4gKyAqCWNvbnRyb2xzIHRoZSBSR0IgY29sb3Ig b2YgYSBmdWxsLXNjcmVlbiwgZnVsbHktb3BhcXVlIGxheWVyIHRoYXQgZXhpc3RzCj4gKyAqCWJl bG93IGFsbCBwbGFuZXMuICBUaGlzIGNvbG9yIHdpbGwgYmUgdXNlZCBmb3IgcGl4ZWxzIG5vdCBj b3ZlcmVkIGJ5Cj4gKyAqCWFueSBwbGFuZSBhbmQgbWF5IGFsc28gYmUgYmxlbmRlZCB3aXRoIHBs YW5lIGNvbnRlbnRzIGFzIGFsbG93ZWQgYnkgYQo+ICsgKglwbGFuZSdzIGFscGhhIHZhbHVlcy4g IFRoZSBiYWNrZ3JvdW5kIGNvbG9yIGRlZmF1bHRzIHRvIGJsYWNrLCBhbmQgaXMKPiArICoJYXNz dW1lZCB0byBiZSBibGFjayBmb3IgZHJpdmVycyB0aGF0IGRvIG5vdCBleHBvc2UgdGhpcyBwcm9w ZXJ0eS4KPiAgICovCj4gIAo+ICAvKioKPiBAQCAtNTkzLDMgKzYwMCwxMSBAQCBpbnQgZHJtX3Bs YW5lX2NyZWF0ZV9ibGVuZF9tb2RlX3Byb3BlcnR5KHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAo+ ICAJcmV0dXJuIDA7Cj4gIH0KPiAgRVhQT1JUX1NZTUJPTChkcm1fcGxhbmVfY3JlYXRlX2JsZW5k X21vZGVfcHJvcGVydHkpOwo+ICsKPiArdm9pZCBkcm1fY3J0Y19hZGRfYmdjb2xvcl9wcm9wZXJ0 eShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCj4gK3sKPiArCWRybV9vYmplY3RfYXR0YWNoX3Byb3Bl cnR5KCZjcnRjLT5iYXNlLAo+ICsJCQkJICAgY3J0Yy0+ZGV2LT5tb2RlX2NvbmZpZy5iZ2NvbG9y X3Byb3BlcnR5LAo+ICsJCQkJICAgZHJtX3JnYmEoMTYsIDAsIDAsIDAsIDB4ZmZmZikpOwo+ICt9 Cj4gK0VYUE9SVF9TWU1CT0woZHJtX2NydGNfYWRkX2JnY29sb3JfcHJvcGVydHkpOwo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX21vZGVfY29uZmlnLmMgYi9kcml2ZXJzL2dwdS9k cm0vZHJtX21vZGVfY29uZmlnLmMKPiBpbmRleCBlZTgwNzg4ZjJjNDAuLjc1ZTM3Njc1NTE3NiAx MDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX21vZGVfY29uZmlnLmMKPiArKysgYi9k cml2ZXJzL2dwdS9kcm0vZHJtX21vZGVfY29uZmlnLmMKPiBAQCAtMzUyLDYgKzM1MiwxMiBAQCBz dGF0aWMgaW50IGRybV9tb2RlX2NyZWF0ZV9zdGFuZGFyZF9wcm9wZXJ0aWVzKHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYpCj4gIAkJcmV0dXJuIC1FTk9NRU07Cj4gIAlkZXYtPm1vZGVfY29uZmlnLm1v ZGlmaWVyc19wcm9wZXJ0eSA9IHByb3A7Cj4gIAo+ICsJcHJvcCA9IGRybV9wcm9wZXJ0eV9jcmVh dGVfcmFuZ2UoZGV2LCAwLCAiQkFDS0dST1VORF9DT0xPUiIsCj4gKwkJCQkJIDAsIEdFTk1BU0tf VUxMKDYzLCAwKSk7Cj4gKwlpZiAoIXByb3ApCj4gKwkJcmV0dXJuIC1FTk9NRU07Cj4gKwlkZXYt Pm1vZGVfY29uZmlnLmJnY29sb3JfcHJvcGVydHkgPSBwcm9wOwo+ICsKPiAgCXJldHVybiAwOwo+ ICB9Cj4gIAo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fYmxlbmQuaCBiL2luY2x1ZGUv ZHJtL2RybV9ibGVuZC5oCj4gaW5kZXggODhiZGZlYzNiZDg4Li45ZTI1MzhkZDdiOWEgMTAwNjQ0 Cj4gLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2JsZW5kLmgKPiArKysgYi9pbmNsdWRlL2RybS9kcm1f YmxlbmQuaAo+IEBAIC01OCw0ICs1OCw1IEBAIGludCBkcm1fYXRvbWljX25vcm1hbGl6ZV96cG9z KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gIAkJCSAgICAgIHN0cnVjdCBkcm1fYXRvbWljX3N0 YXRlICpzdGF0ZSk7Cj4gIGludCBkcm1fcGxhbmVfY3JlYXRlX2JsZW5kX21vZGVfcHJvcGVydHko c3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCj4gIAkJCQkJIHVuc2lnbmVkIGludCBzdXBwb3J0ZWRf bW9kZXMpOwo+ICt2b2lkIGRybV9jcnRjX2FkZF9iZ2NvbG9yX3Byb3BlcnR5KHN0cnVjdCBkcm1f Y3J0YyAqY3J0Yyk7Cj4gICNlbmRpZgo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fY3J0 Yy5oIGIvaW5jbHVkZS9kcm0vZHJtX2NydGMuaAo+IGluZGV4IGIyMTQzN2JjOTViZi4uZDc4Zjgy Zjk1NGU0IDEwMDY0NAo+IC0tLSBhL2luY2x1ZGUvZHJtL2RybV9jcnRjLmgKPiArKysgYi9pbmNs dWRlL2RybS9kcm1fY3J0Yy5oCj4gQEAgLTE2OCw2ICsxNjgsMTEgQEAgc3RydWN0IGRybV9jcnRj X3N0YXRlIHsKPiAgCSAqIGRyaXZlcnMgdG8gc3RlZXIgdGhlIGF0b21pYyBjb21taXQgY29udHJv bCBmbG93Lgo+ICAJICovCj4gIAlib29sIGNvbG9yX21nbXRfY2hhbmdlZCA6IDE7Cj4gKwkvKioK PiArCSAqIEBiZ2NvbG9yX2NoYW5nZWQ6IEJhY2tncm91bmQgY29sb3IgdmFsdWUgaGFzIGNoYW5n ZWQuICBVc2VkIGJ5Cj4gKwkgKiBkcml2ZXJzIHRvIHN0ZWVyIHRoZSBhdG9taWMgY29tbWl0IGNv bnRyb2wgZmxvdy4KPiArCSAqLwo+ICsJYm9vbCBiZ2NvbG9yX2NoYW5nZWQgOiAxOwo+ICAKPiAg CS8qKgo+ICAJICogQG5vX3ZibGFuazoKPiBAQCAtMjc0LDYgKzI3OSwxOCBAQCBzdHJ1Y3QgZHJt X2NydGNfc3RhdGUgewo+ICAJICovCj4gIAlzdHJ1Y3QgZHJtX3Byb3BlcnR5X2Jsb2IgKmdhbW1h X2x1dDsKPiAgCj4gKwkvKioKPiArCSAqIEBiZ2NvbG9yOgo+ICsJICoKPiArCSAqIFJHQiB2YWx1 ZSByZXByZXNlbnRpbmcgdGhlIHBpcGUncyBiYWNrZ3JvdW5kIGNvbG9yLiAgVGhlIGJhY2tncm91 bmQKPiArCSAqIGNvbG9yIChha2EgImNhbnZhcyBjb2xvciIpIG9mIGEgcGlwZSBpcyB0aGUgY29s b3IgdGhhdCB3aWxsIGJlIHVzZWQKPiArCSAqIGZvciBwaXhlbHMgbm90IGNvdmVyZWQgYnkgYSBw bGFuZSwgb3IgY292ZXJlZCBieSB0cmFuc3BhcmVudCBwaXhlbHMKPiArCSAqIG9mIGEgcGxhbmUu ICBUaGUgdmFsdWUgaGVyZSBzaG91bGQgYmUgYnVpbHQgdmlhIGRybV9yZ2JhKCk7Cj4gKwkgKiBp bmRpdmlkdWFsIGNvbG9yIGNvbXBvbmVudHMgY2FuIGJlIGV4dHJhY3RlZCB3aXRoIGRlc2lyZWQg cHJlY2lzaW9uCj4gKwkgKiB2aWEgdGhlIERSTV9SR0JBXyooKSBtYWNyb3MuCj4gKwkgKi8KPiAr CXU2NCBiZ2NvbG9yOwo+ICsKPiAgCS8qKgo+ICAJICogQHRhcmdldF92Ymxhbms6Cj4gIAkgKgo+ IGRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fbW9kZV9jb25maWcuaCBiL2luY2x1ZGUvZHJt L2RybV9tb2RlX2NvbmZpZy5oCj4gaW5kZXggNWRiZWFiZGJhZjkxLi44YjY4NmQyMjhmZWIgMTAw NjQ0Cj4gLS0tIGEvaW5jbHVkZS9kcm0vZHJtX21vZGVfY29uZmlnLmgKPiArKysgYi9pbmNsdWRl L2RybS9kcm1fbW9kZV9jb25maWcuaAo+IEBAIC04MTMsNiArODEzLDExIEBAIHN0cnVjdCBkcm1f bW9kZV9jb25maWcgewo+ICAJICovCj4gIAlzdHJ1Y3QgZHJtX3Byb3BlcnR5ICp3cml0ZWJhY2tf b3V0X2ZlbmNlX3B0cl9wcm9wZXJ0eTsKPiAgCj4gKwkvKioKPiArCSAqIEBiZ2NvbG9yX3Byb3Bl cnR5OiBSR0JBIGJhY2tncm91bmQgY29sb3IgZm9yIENSVEMuCj4gKwkgKi8KPiArCXN0cnVjdCBk cm1fcHJvcGVydHkgKmJnY29sb3JfcHJvcGVydHk7Cj4gKwo+ICAJLyogZHVtYiBpb2N0bCBwYXJh bWV0ZXJzICovCj4gIAl1aW50MzJfdCBwcmVmZXJyZWRfZGVwdGgsIHByZWZlcl9zaGFkb3c7Cj4g IAo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VhcGkvZHJtL2RybV9tb2RlLmggYi9pbmNsdWRlL3Vh cGkvZHJtL2RybV9tb2RlLmgKPiBpbmRleCBkM2UwZmUzMWVmYzUuLjdjNGY5MDJhYTI5MCAxMDA2 NDQKPiAtLS0gYS9pbmNsdWRlL3VhcGkvZHJtL2RybV9tb2RlLmgKPiArKysgYi9pbmNsdWRlL3Vh cGkvZHJtL2RybV9tb2RlLmgKPiBAQCAtODg4LDYgKzg4OCwzMiBAQCBzdHJ1Y3QgZHJtX21vZGVf cmV2b2tlX2xlYXNlIHsKPiAgCV9fdTMyIGxlc3NlZV9pZDsKPiAgfTsKPiAgCj4gKy8qCj4gKyAq IFB1dCBSR0JBIHZhbHVlcyBpbnRvIGEgc3RhbmRhcmQgNjQtYml0IHJlcHJlc2VudGF0aW9uIHRo YXQgY2FuIGJlIHVzZWQKPiArICogZm9yIGlvY3RsIHBhcmFtZXRlcnMsIGludGVyLWRyaXZlciBj b21tbXVuaWNhdGlvbiwgZXRjLiAgSWYgdGhlIGNvbXBvbmVudAo+ICsgKiB2YWx1ZXMgYmVpbmcg cHJvdmlkZWQgY29udGFpbiBsZXNzIHRoYW4gMTYgYml0cyBvZiBwcmVjaXNpb24sIHRoZXknbGwK PiArICogYmUgc2hpZnRlZCBpbnRvIHRoZSBtb3N0IHNpZ25pZmljYW50IGJpdHMuCj4gKyAqLwo+ ICtzdGF0aWMgaW5saW5lIF9fdTY0Cj4gK2RybV9yZ2JhKF9fdTggYnBjLCBfX3UxNiByZWQsIF9f dTE2IGdyZWVuLCBfX3UxNiBibHVlLCBfX3UxNiBhbHBoYSkKPiArewo+ICsJaW50IG1zYl9zaGlm dCA9IDE2IC0gYnBjOwo+ICsKPiArCXJldHVybiAoX191NjQpYWxwaGEgPDwgbXNiX3NoaWZ0IDw8 IDQ4IHwKPiArCSAgICAgICAoX191NjQpcmVkICAgPDwgbXNiX3NoaWZ0IDw8IDMyIHwKPiArCSAg ICAgICAoX191NjQpZ3JlZW4gPDwgbXNiX3NoaWZ0IDw8IDE2IHwKPiArCSAgICAgICAoX191NjQp Ymx1ZSAgPDwgbXNiX3NoaWZ0OwoKU28gdGhlIHZhbHVlIGlzIG5vdyBBUkdCIGJ1dCBldmVyeXRo aW5nIHN0aWxsIHNheXMgUkdCQT8KCj4gK30KPiArCj4gKy8qCj4gKyAqIEV4dHJhY3QgdGhlIHNw ZWNpZmllZCBudW1iZXIgb2YgYml0cyBvZiBhIHNwZWNpZmljIGNvbG9yIGNvbXBvbmVudCBmcm9t IGEKPiArICogc3RhbmRhcmQgNjQtYml0IFJHQkEgdmFsdWUuCj4gKyAqLwo+ICsjZGVmaW5lIERS TV9SR0JBX0JMVUUoYywgbnVtYml0cykgIChfX3UxNikoKGMgJiAweEZGRkZ1bGwpICAgICA+PiAo MTYtbnVtYml0cykpCj4gKyNkZWZpbmUgRFJNX1JHQkFfR1JFRU4oYywgbnVtYml0cykgKF9fdTE2 KSgoYyAmIDB4RkZGRnVsbDw8MTYpID4+ICgzMi1udW1iaXRzKSkKPiArI2RlZmluZSBEUk1fUkdC QV9SRUQoYywgbnVtYml0cykgICAoX191MTYpKChjICYgMHhGRkZGdWxsPDwzMikgPj4gKDQ4LW51 bWJpdHMpKQo+ICsjZGVmaW5lIERSTV9SR0JBX0FMUEhBKGMsIG51bWJpdHMpIChfX3UxNikoKGMg JiAweEZGRkZ1bGw8PDQ4KSA+PiAoNjQtbnVtYml0cykpCj4gKwo+ICAjaWYgZGVmaW5lZChfX2Nw bHVzcGx1cykKPiAgfQo+ICAjZW5kaWYKPiAtLSAKPiAyLjE0LjQKCi0tIApWaWxsZSBTeXJqw6Rs w6QKSW50ZWwKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K ZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0 dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==