From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH] RFC: drm: add support for tiled/compressed/etc modifier in addfb2 (v1.5) Date: Thu, 29 Jan 2015 12:29:48 +0100 Message-ID: <20150129112948.GZ4764@phenom.ffwll.local> References: <1422466672-15833-1-git-send-email-daniel.vetter@ffwll.ch> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-we0-f182.google.com (mail-we0-f182.google.com [74.125.82.182]) by gabe.freedesktop.org (Postfix) with ESMTP id BD8B86E76F for ; Thu, 29 Jan 2015 03:28:29 -0800 (PST) Received: by mail-we0-f182.google.com with SMTP id l61so23151944wev.13 for ; Thu, 29 Jan 2015 03:28:29 -0800 (PST) Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Rob Clark Cc: DRI Development , Daniel Vetter , Intel Graphics Development , Daniel Stone , Laurent Pinchart , Daniel Vetter , Michel =?iso-8859-1?Q?D=E4nzer?= List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCBKYW4gMjgsIDIwMTUgYXQgMDE6NDY6NTNQTSAtMDUwMCwgUm9iIENsYXJrIHdyb3Rl Ogo+IE9uIFdlZCwgSmFuIDI4LCAyMDE1IGF0IDEyOjM3IFBNLCBEYW5pZWwgVmV0dGVyIDxkYW5p ZWwudmV0dGVyQGZmd2xsLmNoPiB3cm90ZToKPiA+IEZyb206IFJvYiBDbGFyayA8cm9iZGNsYXJr QGdtYWlsLmNvbT4KPiA+Cj4gPiBJbiBEUk0vS01TIHdlIGFyZSBsYWNraW5nIGEgZ29vZCB3YXkg dG8gZGVhbCB3aXRoIHRpbGVkL2NvbXByZXNzZWQKPiA+IGZvcm1hdHMuICBFc3BlY2lhbGx5IGlu IHRoZSBjYXNlIG9mIGRtYWJ1Zi9wcmltZSBidWZmZXIgc2hhcmluZywgd2hlcmUKPiA+IHdlIGNh bm5vdCBhbHdheXMgcmVseSBvbiB1bmRlci10aGUtaG9vZCBmbGFncyBwYXNzZWQgdG8gZHJpdmVy IHNwZWNpZmljCj4gPiBnZW0tY3JlYXRlIGlvY3RsIHRvIHBhc3MgYXJvdW5kIHRoZXNlIGV4dHJh IGZsYWdzLgo+ID4KPiA+IFRoZSBwcm9wb3NhbCBpcyB0byBhZGQgYSBwZXItcGxhbmUgZm9ybWF0 IG1vZGlmaWVyLiAgVGhpcyBhbGxvd3MgdG8sIGlmCj4gPiBuZWNlc3NhcnksIHVzZSBkaWZmZXJl bnQgdGlsaW5nIHBhdHRlcnMgZm9yIHN1Yi1zYW1wbGVkIHBsYW5lcywgZXRjLgo+ID4gVGhlIGZv cm1hdCBtb2RpZmllcnMgYXJlIGFkZGVkIGF0IHRoZSBlbmQgb2YgdGhlIGlvY3RsIHN0cnVjdCwg c28gZm9yCj4gPiBsZWdhY3kgdXNlcnNwYWNlIGl0IHdpbGwgYmUgemVybyBwYWRkZWQuCj4gPgo+ ID4gVE9ETyBob3cgYmVzdCB0byBkZWFsIHdpdGggYXNzaWdubWVudCBvZiBtb2RpZmllciB0b2tl biB2YWx1ZXM/ICBUaGUKPiA+IHJvdWdoIGlkZWEgd2FzIHRvIG5hbWVzcGFjZSB0aGluZ3Mgd2l0 aCBhbiA4Yml0IHZlbmRvci1pZCwgYW5kIHRoZW4KPiA+IGJleW9uZCB0aGF0IGl0IGlzIHRyZWF0 ZWQgYXMgYW4gb3BhcXVlIHZhbHVlLiAgQnV0IHRoYXQgd2FzIGEgcmVsYXRpdmVseQo+ID4gYXJi aXRyYXJ5IGNob2ljZS4gIFRoZXJlIGFyZSBjYXNlcyB3aGVyZSBzYW1lIHRpbGluZyBwYXR0ZXJu IGFuZC9vcgo+ID4gY29tcHJlc3Npb24gaXMgc3VwcG9ydGVkIGJ5IHZhcmlvdXMgZGlmZmVyZW50 IHZlbmRvcnMuICBTbyB3ZSBzaG91bGQKPiA+IHN0YW5kYXJkaXplIHRvIHVzZSB0aGUgdmVuZG9y LWlkIGFuZCB2YWx1ZSBvZiB0aGUgZmlyc3Qgb25lIHdobwo+ID4gZG9jdW1lbnRzIHRoZSBmb3Jt YXQ/Cj4gCj4gaWlyYywgSSB0aGluayB3ZSBkZWNpZGVkIHRoYXQgZHJtX2ZvdXJjYy5oIGluIGRy bS1uZXh0IGlzIGEgc3VmZmljaWVudAo+IGF1dGhvcml0eSBmb3IgY29vcmRpbmF0aW5nIGFzc2ln bm1lbnQgb2YgbW9kaWZpZXIgdG9rZW4gdmFsdWVzLCBzbyB3ZQo+IGNvdWxkIHByb2JhYmx5IGRy b3AgdGhpcyBUT0RPLiAgUGVyaGFwcyBpdCB3b3VsZG4ndCBodXJ0IHRvIGRvY3VtZW50Cj4gc29t ZXdoZXJlIHRoYXQsIGFzIHdpdGggZm91cmNjL2Zvcm1hdCB2YWx1ZXMsIG5ldyBhZGRpdGlvbnMg YXJlCj4gZXhwZWN0ZWQgdG8gY29tZSB3aXRoIHNvbWUgZGVzY3JpcHRpb24gb2YgdGhlIGZvcm1h dD8KCk9oIHJpZ2h0IGZvcmdvdHRlbiB0byBkcm9wIHRoZSBUT0RPLiBJJ2xsIGFkZCBhIGNvbW1l bnQgdG8gdGhlIGhlYWRlcgpmaWxlLgo+IAo+ID4KPiA+IHYxOiBvcmlnaW5hbAo+ID4gdjEuNTog aW5jcmVhc2UgbW9kaWZpZXIgdG8gNjRiCj4gPgo+ID4gdjI6IEluY29ycG9yYXRlIHJldmlldyBj b21tZW50cyBmcm9tIHRoZSBiaWcgdGhyZWFkLCBwbHVzIGEgZmV3IG1vcmUuCj4gPgo+ID4gLSBB ZGQgYSBnZXRjYXAgc28gdGhhdCB1c2Vyc3BhY2UgZG9lc24ndCBoYXZlIHRvIGp1bXAgdGhyb3Vn aCBob29wcy4KPiA+IC0gQWxsb3cgbW9kaWZpZXJzIG9ubHkgd2hlbiBhIGZsYWcgaXMgc2V0LiBU aGF0IHdheSBkcml2ZXJzIGtub3cgd2hlbgo+ID4gICB0aGV5J3JlIGRlYWxpbmcgd2l0aCBvbGQg dXNlcnNwYWNlIGFuZCBuZWVkIHRvIGZpc2ggb3V0IGUuZy4gdGlsaW5nCj4gPiAgIGZyb20gb3Ro ZXIgaW5mb3JtYXRpb24uCj4gPiAtIEFmdGVyIHJvbGxpbmcgb3V0IGNoZWNrcyBmb3IgLT5tb2Rp ZmllciB0byBhbGwgZHJpdmVycyBJJ3ZlIGRlY2lkZWQKPiA+ICAgdGhhdCB0aGlzIGlzIHdheSB0 b28gZnJhZ2lsZSBhbmQgbmVlZHMgYW4gZXhwbGljaXQgb3B0LWluIGZsYWcuIFNvCj4gPiAgIGRv IHRoYXQgaW5zdGVhZC4KPiA+IC0gQWRkIGEgZGVmaW5lIChqdXN0IGZvciBkb2N1bWVudGF0aW9u IHJlYWxseSkgZm9yIHRoZSAiTk9ORSIKPiA+ICAgbW9kaWZpZXIuIEltbyB3ZSBkb24ndCBuZWVk IHRvIGFkZCBtYXNrICNkZWZpbmVzIHNpbmNlIGRyaXZlcnMKPiA+ICAgcmVhbGx5IHNob3VsZCBv bmx5IGRvIGV4YWN0IG1hdGNoZXMgYWdhaW5zdCB2YWx1ZXMgZGVmaW5lZCB3aXRoCj4gPiAgIGZv dXJjY19tb2RfY29kZS4KPiA+IC0gRHJvcCB0aGUgU2Ftc3VuZyB0aWxpbmcgbW9kaWZpZXIgb24g Um9iJ3MgcmVxdWVzdCBzaW5jZSBoZSdzIG5vdCB5ZXQKPiA+ICAgc3VyZSB3aGV0aGVyIHRoYXQg b25lIGlzIGFjY3VyYXRlLgo+ID4KPiA+IENjOiBSb2IgQ2xhcmsgPHJvYmRjbGFya0BnbWFpbC5j b20+Cj4gPiBDYzogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGxpbnV4LmludGVsLmNv bT4KPiA+IENjOiBMYXVyZW50IFBpbmNoYXJ0IDxsYXVyZW50LnBpbmNoYXJ0QGlkZWFzb25ib2Fy ZC5jb20+Cj4gPiBDYzogRGFuaWVsIFN0b25lIDxkYW5pZWxAZm9vaXNoYmFyLm9yZz4KPiA+IENj OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgo+ID4gQ2M6 IE1pY2hlbCBEw6RuemVyIDxtaWNoZWxAZGFlbnplci5uZXQ+Cj4gPiBTaWduZWQtb2ZmLWJ5OiBS b2IgQ2xhcmsgPHJvYmRjbGFya0BnbWFpbC5jb20+ICh2MS41KQo+ID4gU2lnbmVkLW9mZi1ieTog RGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBpbnRlbC5jb20+Cj4gPgo+IAo+IHlvdSBmb3Jn b3QgdG8gY2hhbmdlIHN1YmplY3QgbGluZSB0byAodjIpLi4gYnV0IG90aGVyIHRoYW4gdGhhdCwg bG9va3MgZ29vZAoKQWgsIEkgZ2VuZXJhbGx5IGRvbid0IGtlZXAgYSBwYXRjaCByZXZpc2lvbiBp biB0aGUgc3ViamVjdCBhbmQgZm9yZ290IHRvCnVwZGF0ZSBpdCA7LSkKCj4gCj4gUmV2aWV3ZWQt Ynk6IFJvYiBDbGFyayA8cm9iZGNsYXJrQGdtYWlsLmNvbT4KPiAKPiA+IC0tCj4gPgo+ID4gSSd2 ZSBwaWNrZWQgdGhpcyB1cCBzaW5jZSB3ZSB3YW50IHRvIHB1c2ggb3V0IHNvbWUgZmFuY3kgbmV3 IHRpbGluZwo+ID4gbW9kZXMgc29vbmlzaC4gTm8gZGVmaW5lcyB5ZXQsIGJ1dCBUdnJrdG8gaXMg d29ya2luZyBvbiB0aGUgaTkxNSBwYXJ0cwo+ID4gb2YgdGhpcy4KPiA+Cj4gPiBJIHRoaW5rIHRo ZSBvbmx5IHBhcnQgSSBoYXZlbid0IGRvbmUgZnJvbSB0aGUgZGlzY3Vzc2lvbiBpcyBleHBvc2lu ZyBhCj4gPiBsaXN0IG9mIHN1cHBvcnRlZCBtb2RpZmllcnMuIE5vdCBzdXJlIHRoYXQncyByZWFs bHkgdXNlZnVsIHRob3VnaAo+ID4gc2luY2UgYWxsIHRoaXMgaXMgaGlnaGx5IGh3IHNwZWNpZmlj Lgo+ID4KPiA+IEFuZCBhIG5vdGUgdG8gZHJpdmVyIHdyaXRlczogVGhleSBuZWVkIHRvIGNoZWNr IG9yIHRoZSBmbGFnIGFuZCBpbiBpdHMKPiA+IGFic2VuY2UgbWFrZSBhIHJlYXNvbmFibGUgY2hv aWNlIGFib3V0IHRoZSBpbnRlcm5hbCBsYXlldCAoZS5nLiBmb3IKPiA+IGk5MTUgY29uc3VsdCB0 aGUgdGlsaW5nIG1vZGUgb2YgdGhlIHVuZGVybHlpbmcgYm8pLgo+ID4gLURhbmllbAo+ID4gLS0t Cj4gPiAgZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjLmMgICAgfCAxNCArKysrKysrKysrKysrLQo+ ID4gIGRyaXZlcnMvZ3B1L2RybS9kcm1faW9jdGwuYyAgIHwgIDMgKysrCj4gPiAgaW5jbHVkZS9k cm0vZHJtX2NydGMuaCAgICAgICAgfCAgMyArKysKPiA+ICBpbmNsdWRlL3VhcGkvZHJtL2RybS5o ICAgICAgICB8ICAxICsKPiA+ICBpbmNsdWRlL3VhcGkvZHJtL2RybV9mb3VyY2MuaCB8IDI2ICsr KysrKysrKysrKysrKysrKysrKysrKysrCj4gPiAgaW5jbHVkZS91YXBpL2RybS9kcm1fbW9kZS5o ICAgfCAgOSArKysrKysrKysKPiA+ICA2IGZpbGVzIGNoYW5nZWQsIDU1IGluc2VydGlvbnMoKyks IDEgZGVsZXRpb24oLSkKPiA+Cj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9j cnRjLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGMuYwo+ID4gaW5kZXggNDE5ZjlkOTE1Yzc4 Li44MDkwZTNkNjRmNjcgMTAwNjQ0Cj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGMu Ywo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjLmMKPiA+IEBAIC0zMzI0LDYgKzMz MjQsMTIgQEAgc3RhdGljIGludCBmcmFtZWJ1ZmZlcl9jaGVjayhjb25zdCBzdHJ1Y3QgZHJtX21v ZGVfZmJfY21kMiAqcikKPiA+ICAgICAgICAgICAgICAgICAgICAgICAgIERSTV9ERUJVR19LTVMo ImJhZCBwaXRjaCAldSBmb3IgcGxhbmUgJWRcbiIsIHItPnBpdGNoZXNbaV0sIGkpOwo+ID4gICAg ICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC1FSU5WQUw7Cj4gPiAgICAgICAgICAgICAgICAg fQo+ID4gKwo+ID4gKyAgICAgICAgICAgICAgIGlmIChyLT5tb2RpZmllcltpXSAmJiAhKHItPmZs YWdzICYgRFJNX01PREVfRkJfTU9ESUZJRVJTKSkgewo+ID4gKyAgICAgICAgICAgICAgICAgICAg ICAgRFJNX0RFQlVHX0tNUygiYmFkIGZiIG1vZGlmaWVyICVsbHUgZm9yIHBsYW5lICVkXG4iLAo+ ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByLT5tb2RpZmllcltpXSwg aSk7Cj4gPiArICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gLUVJTlZBTDsKPiA+ICsgICAg ICAgICAgICAgICB9Cj4gPiAgICAgICAgIH0KPiA+Cj4gPiAgICAgICAgIHJldHVybiAwOwo+ID4g QEAgLTMzMzcsNyArMzM0Myw3IEBAIHN0YXRpYyBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICphZGRf ZnJhbWVidWZmZXJfaW50ZXJuYWwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiA+ICAgICAgICAg c3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmI7Cj4gPiAgICAgICAgIGludCByZXQ7Cj4gPgo+ID4g LSAgICAgICBpZiAoci0+ZmxhZ3MgJiB+RFJNX01PREVfRkJfSU5URVJMQUNFRCkgewo+ID4gKyAg ICAgICBpZiAoci0+ZmxhZ3MgJiB+KERSTV9NT0RFX0ZCX0lOVEVSTEFDRUQgfCBEUk1fTU9ERV9G Ql9NT0RJRklFUlMpKSB7Cj4gPiAgICAgICAgICAgICAgICAgRFJNX0RFQlVHX0tNUygiYmFkIGZy YW1lYnVmZmVyIGZsYWdzIDB4JTA4eFxuIiwgci0+ZmxhZ3MpOwo+ID4gICAgICAgICAgICAgICAg IHJldHVybiBFUlJfUFRSKC1FSU5WQUwpOwo+ID4gICAgICAgICB9Cj4gPiBAQCAtMzM1Myw2ICsz MzU5LDEyIEBAIHN0YXRpYyBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICphZGRfZnJhbWVidWZmZXJf aW50ZXJuYWwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiA+ICAgICAgICAgICAgICAgICByZXR1 cm4gRVJSX1BUUigtRUlOVkFMKTsKPiA+ICAgICAgICAgfQo+ID4KPiA+ICsgICAgICAgaWYgKHIt PmZsYWdzICYgRFJNX01PREVfRkJfTU9ESUZJRVJTICYmCj4gPiArICAgICAgICAgICAhZGV2LT5t b2RlX2NvbmZpZy5hbGxvd19mYl9tb2RpZmllcnMpIHsKPiA+ICsgICAgICAgICAgICAgICBEUk1f REVCVUdfS01TKCJkcml2ZXIgZG9lcyBub3Qgc3VwcG9ydCBmYiBtb2RpZmllcnNcbiIpOwo+ID4g KyAgICAgICAgICAgICAgIHJldHVybiBFUlJfUFRSKC1FSU5WQUwpOwo+ID4gKyAgICAgICB9Cj4g PiArCj4gPiAgICAgICAgIHJldCA9IGZyYW1lYnVmZmVyX2NoZWNrKHIpOwo+ID4gICAgICAgICBp ZiAocmV0KQo+ID4gICAgICAgICAgICAgICAgIHJldHVybiBFUlJfUFRSKHJldCk7Cj4gPiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9pb2N0bC5jIGIvZHJpdmVycy9ncHUvZHJtL2Ry bV9pb2N0bC5jCj4gPiBpbmRleCAzNzg1ZDY2NzIxZjIuLmE2ZDc3M2E2MWMyZCAxMDA2NDQKPiA+ IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1faW9jdGwuYwo+ID4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2RybV9pb2N0bC5jCj4gPiBAQCAtMzIxLDYgKzMyMSw5IEBAIHN0YXRpYyBpbnQgZHJtX2dl dGNhcChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLCBzdHJ1Y3QgZHJtX2ZpbGUg KmZpbGVfCj4gPiAgICAgICAgICAgICAgICAgZWxzZQo+ID4gICAgICAgICAgICAgICAgICAgICAg ICAgcmVxLT52YWx1ZSA9IDY0Owo+ID4gICAgICAgICAgICAgICAgIGJyZWFrOwo+ID4gKyAgICAg ICBjYXNlIERSTV9DQVBfQURERkIyX01PRElGSUVSUzoKPiA+ICsgICAgICAgICAgICAgICByZXEt PnZhbHVlID0gZGV2LT5tb2RlX2NvbmZpZy5hbGxvd19mYl9tb2RpZmllcnM7Cj4gPiArICAgICAg ICAgICAgICAgYnJlYWs7Cj4gPiAgICAgICAgIGRlZmF1bHQ6Cj4gPiAgICAgICAgICAgICAgICAg cmV0dXJuIC1FSU5WQUw7Cj4gPiAgICAgICAgIH0KPiA+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2Ry bS9kcm1fY3J0Yy5oIGIvaW5jbHVkZS9kcm0vZHJtX2NydGMuaAo+ID4gaW5kZXggMDE5YzliNTYy MTQ0Li43NjdmN2Q0Y2FiNjMgMTAwNjQ0Cj4gPiAtLS0gYS9pbmNsdWRlL2RybS9kcm1fY3J0Yy5o Cj4gPiArKysgYi9pbmNsdWRlL2RybS9kcm1fY3J0Yy5oCj4gPiBAQCAtMTE1Myw2ICsxMTUzLDkg QEAgc3RydWN0IGRybV9tb2RlX2NvbmZpZyB7Cj4gPiAgICAgICAgIC8qIHdoZXRoZXIgYXN5bmMg cGFnZSBmbGlwIGlzIHN1cHBvcnRlZCBvciBub3QgKi8KPiA+ICAgICAgICAgYm9vbCBhc3luY19w YWdlX2ZsaXA7Cj4gPgo+ID4gKyAgICAgICAvKiB3aGV0aGVyIHRoZSBkcml2ZXIgc3VwcG9ydHMg ZmIgbW9kaWZpZXJzICovCj4gPiArICAgICAgIGJvb2wgYWxsb3dfZmJfbW9kaWZpZXJzOwo+ID4g Kwo+ID4gICAgICAgICAvKiBjdXJzb3Igc2l6ZSAqLwo+ID4gICAgICAgICB1aW50MzJfdCBjdXJz b3Jfd2lkdGgsIGN1cnNvcl9oZWlnaHQ7Cj4gPiAgfTsKPiA+IGRpZmYgLS1naXQgYS9pbmNsdWRl L3VhcGkvZHJtL2RybS5oIGIvaW5jbHVkZS91YXBpL2RybS9kcm0uaAo+ID4gaW5kZXggMDFiMmQ2 ZDBlMzU1Li5mZjZlZjYyZDA4NGIgMTAwNjQ0Cj4gPiAtLS0gYS9pbmNsdWRlL3VhcGkvZHJtL2Ry bS5oCj4gPiArKysgYi9pbmNsdWRlL3VhcGkvZHJtL2RybS5oCj4gPiBAQCAtNjMwLDYgKzYzMCw3 IEBAIHN0cnVjdCBkcm1fZ2VtX29wZW4gewo+ID4gICAqLwo+ID4gICNkZWZpbmUgRFJNX0NBUF9D VVJTT1JfV0lEVEggICAgICAgICAgIDB4OAo+ID4gICNkZWZpbmUgRFJNX0NBUF9DVVJTT1JfSEVJ R0hUICAgICAgICAgIDB4OQo+ID4gKyNkZWZpbmUgRFJNX0NBUF9BRERGQjJfTU9ESUZJRVJTICAg ICAgIDB4MTAKPiA+Cj4gPiAgLyoqIERSTV9JT0NUTF9HRVRfQ0FQIGlvY3RsIGFyZ3VtZW50IHR5 cGUgKi8KPiA+ICBzdHJ1Y3QgZHJtX2dldF9jYXAgewo+ID4gZGlmZiAtLWdpdCBhL2luY2x1ZGUv dWFwaS9kcm0vZHJtX2ZvdXJjYy5oIGIvaW5jbHVkZS91YXBpL2RybS9kcm1fZm91cmNjLmgKPiA+ IGluZGV4IDY0NmFlNWYzOWY0Mi4uYmY5OTU1N2YxNjI0IDEwMDY0NAo+ID4gLS0tIGEvaW5jbHVk ZS91YXBpL2RybS9kcm1fZm91cmNjLmgKPiA+ICsrKyBiL2luY2x1ZGUvdWFwaS9kcm0vZHJtX2Zv dXJjYy5oCj4gPiBAQCAtMTMyLDQgKzEzMiwzMCBAQAo+ID4gICNkZWZpbmUgRFJNX0ZPUk1BVF9Z VVY0NDQgICAgICBmb3VyY2NfY29kZSgnWScsICdVJywgJzInLCAnNCcpIC8qIG5vbi1zdWJzYW1w bGVkIENiICgxKSBhbmQgQ3IgKDIpIHBsYW5lcyAqLwo+ID4gICNkZWZpbmUgRFJNX0ZPUk1BVF9Z VlU0NDQgICAgICBmb3VyY2NfY29kZSgnWScsICdWJywgJzInLCAnNCcpIC8qIG5vbi1zdWJzYW1w bGVkIENyICgxKSBhbmQgQ2IgKDIpIHBsYW5lcyAqLwo+ID4KPiA+ICsKPiA+ICsvKgo+ID4gKyAq IEZvcm1hdCBNb2RpZmllcnM6Cj4gPiArICoKPiA+ICsgKiBGb3JtYXQgbW9kaWZpZXJzIGRlc2Ny aWJlLCB0eXBpY2FsbHksIGEgcmUtb3JkZXJpbmcgb3IgbW9kaWZpY2F0aW9uCj4gPiArICogb2Yg dGhlIGRhdGEgaW4gYSBwbGFuZSBvZiBhbiBGQi4gIFRoaXMgY2FuIGJlIHVzZWQgdG8gZXhwcmVz cyB0aWxlZC8KPiA+ICsgKiBzd2l6emxlZCBmb3JtYXRzLCBvciBjb21wcmVzc2lvbiwgb3IgYSBj b21iaW5hdGlvbiBvZiB0aGUgdHdvLgo+ID4gKyAqCj4gPiArICogVGhlIHVwcGVyIDggYml0cyBv ZiB0aGUgZm9ybWF0IG1vZGlmaWVyIGFyZSBhIHZlbmRvci1pZCBhcyBhc3NpZ25lZAo+ID4gKyAq IGJlbG93LiAgVGhlIGxvd2VyIDU2IGJpdHMgYXJlIGFzc2lnbmVkIGFzIHZlbmRvciBzZWVzIGZp dC4KPiA+ICsgKi8KPiA+ICsKPiA+ICsvKiBWZW5kb3IgSWRzOiAqLwo+ID4gKyNkZWZpbmUgRFJN X0ZPUk1BVF9NT0RfTk9ORSAgICAgICAgICAgMAo+ID4gKyNkZWZpbmUgRFJNX0ZPUk1BVF9NT0Rf VkVORE9SX0lOVEVMICAgMHgwMQo+ID4gKyNkZWZpbmUgRFJNX0ZPUk1BVF9NT0RfVkVORE9SX0FN RCAgICAgMHgwMgo+ID4gKyNkZWZpbmUgRFJNX0ZPUk1BVF9NT0RfVkVORE9SX05WICAgICAgMHgw Mwo+ID4gKyNkZWZpbmUgRFJNX0ZPUk1BVF9NT0RfVkVORE9SX1NBTVNVTkcgMHgwNAo+ID4gKyNk ZWZpbmUgRFJNX0ZPUk1BVF9NT0RfVkVORE9SX1FDT00gICAgMHgwNQo+ID4gKy8qIGFkZCBtb3Jl IHRvIHRoZSBlbmQgYXMgbmVlZGVkICovCj4gPiArCj4gPiArI2RlZmluZSBmb3VyY2NfbW9kX2Nv ZGUodmVuZG9yLCB2YWwpIFwKPiA+ICsgICAgICAgKCgoKHU2NClEUk1fRk9STUFUX01PRF9WRU5E T1JfIyMgdmVuZG9yKSA8PCA1NikgfCAodmFsICYgMHgwMGZmZmZmZmZmZmZmZmZmTCkKPiA+ICsK PiA+ICsvKiBGb3JtYXQgTW9kaWZpZXIgdG9rZW5zOiAqLwo+ID4gKwo+ID4gICNlbmRpZiAvKiBE Uk1fRk9VUkNDX0ggKi8KPiA+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VhcGkvZHJtL2RybV9tb2Rl LmggYi9pbmNsdWRlL3VhcGkvZHJtL2RybV9tb2RlLmgKPiA+IGluZGV4IGNhNzg4ZTAxZGFiMi4u ZGJlYmE5NDk0NjJhIDEwMDY0NAo+ID4gLS0tIGEvaW5jbHVkZS91YXBpL2RybS9kcm1fbW9kZS5o Cj4gPiArKysgYi9pbmNsdWRlL3VhcGkvZHJtL2RybV9tb2RlLmgKPiA+IEBAIC0zMzYsNiArMzM2 LDcgQEAgc3RydWN0IGRybV9tb2RlX2ZiX2NtZCB7Cj4gPiAgfTsKPiA+Cj4gPiAgI2RlZmluZSBE Uk1fTU9ERV9GQl9JTlRFUkxBQ0VEICgxPDwwKSAvKiBmb3IgaW50ZXJsYWNlZCBmcmFtZWJ1ZmZl cnMgKi8KPiA+ICsjZGVmaW5lIERSTV9NT0RFX0ZCX01PRElGSUVSUyAgKDE8PDEpIC8qIGVuYWJs ZXMgLT5tb2RpZmVyW10gKi8KPiA+Cj4gPiAgc3RydWN0IGRybV9tb2RlX2ZiX2NtZDIgewo+ID4g ICAgICAgICBfX3UzMiBmYl9pZDsKPiA+IEBAIC0zNTYsMTAgKzM1NywxOCBAQCBzdHJ1Y3QgZHJt X21vZGVfZmJfY21kMiB7Cj4gPiAgICAgICAgICAqIFNvIGl0IHdvdWxkIGNvbnNpc3Qgb2YgWSBh cyBvZmZzZXRzWzBdIGFuZCBVViBhcwo+ID4gICAgICAgICAgKiBvZmZzZXRzWzFdLiAgTm90ZSB0 aGF0IG9mZnNldHNbMF0gd2lsbCBnZW5lcmFsbHkKPiA+ICAgICAgICAgICogYmUgMCAoYnV0IHRo aXMgaXMgbm90IHJlcXVpcmVkKS4KPiA+ICsgICAgICAgICoKPiA+ICsgICAgICAgICogVG8gYWNj b21tb2RhdGUgdGlsZWQsIGNvbXByZXNzZWQsIGV0YyBmb3JtYXRzLCBhIHBlci1wbGFuZQo+ID4g KyAgICAgICAgKiBtb2RpZmllciBjYW4gYmUgc3BlY2lmaWVkLiAgVGhlIGRlZmF1bHQgdmFsdWUg b2YgemVybwo+ID4gKyAgICAgICAgKiBpbmRpY2F0ZXMgIm5hdGl2ZSIgZm9ybWF0IGFzIHNwZWNp ZmllZCBieSB0aGUgZm91cmNjLgo+ID4gKyAgICAgICAgKiBWZW5kb3Igc3BlY2lmaWMgbW9kaWZp ZXIgdG9rZW4uICBUaGlzIGFsbG93cywgZm9yIGV4YW1wbGUsCj4gPiArICAgICAgICAqIGRpZmZl cmVudCB0aWxpbmcvc3dpenpsaW5nIHBhdHRlcm4gb24gZGlmZmVyZW50IHBsYW5lcy4KPiA+ICsg ICAgICAgICogU2VlIGRpc2N1c3Npb24gYWJvdmUgb2YgRFJNX0ZPUk1BVF9NT0RfeHh4Lgo+ID4g ICAgICAgICAgKi8KPiA+ICAgICAgICAgX191MzIgaGFuZGxlc1s0XTsKPiA+ICAgICAgICAgX191 MzIgcGl0Y2hlc1s0XTsgLyogcGl0Y2ggZm9yIGVhY2ggcGxhbmUgKi8KPiA+ICAgICAgICAgX191 MzIgb2Zmc2V0c1s0XTsgLyogb2Zmc2V0IG9mIGVhY2ggcGxhbmUgKi8KPiA+ICsgICAgICAgX191 NjQgbW9kaWZpZXJbNF07IC8qIGllLCB0aWxpbmcsIGNvbXByZXNzZWQgKHBlciBwbGFuZSkgKi8K PiA+ICB9Owo+ID4KPiA+ICAjZGVmaW5lIERSTV9NT0RFX0ZCX0RJUlRZX0FOTk9UQVRFX0NPUFkg MHgwMQo+ID4gLS0KPiA+IDIuMS40Cj4gPgoKLS0gCkRhbmllbCBWZXR0ZXIKU29mdHdhcmUgRW5n aW5lZXIsIEludGVsIENvcnBvcmF0aW9uCis0MSAoMCkgNzkgMzY1IDU3IDQ4IC0gaHR0cDovL2Js b2cuZmZ3bGwuY2gKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn Cmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK