From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lucas Stach Subject: Re: [PATCH RFC 003/111] staging: etnaviv: add drm driver Date: Tue, 07 Apr 2015 09:35:17 +0200 Message-ID: <1428392117.2811.12.camel@pengutronix.de> References: <1427988653-754-1-git-send-email-l.stach@pengutronix.de> <1427988653-754-4-git-send-email-l.stach@pengutronix.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from metis.ext.pengutronix.de (metis.ext.pengutronix.de [92.198.50.35]) by gabe.freedesktop.org (Postfix) with ESMTP id 054F76E3F3 for ; Tue, 7 Apr 2015 00:38:29 -0700 (PDT) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Christian Gmeiner Cc: Russell King , DRI mailing list , Sascha Hauer List-Id: dri-devel@lists.freedesktop.org QW0gU29ubnRhZywgZGVuIDA1LjA0LjIwMTUsIDIxOjI2ICswMjAwIHNjaHJpZWIgQ2hyaXN0aWFu IEdtZWluZXI6Cj4gMjAxNS0wNC0wMiAxNzoyOSBHTVQrMDI6MDAgTHVjYXMgU3RhY2ggPGwuc3Rh Y2hAcGVuZ3V0cm9uaXguZGU+Ogo+ID4gRnJvbTogQ2hyaXN0aWFuIEdtZWluZXIgPGNocmlzdGlh bi5nbWVpbmVyQGdtYWlsLmNvbT4KPiA+Cj4gPiBUaGlzIGlzIGEgY29uc29saWRhdGlvbiBieSBS dXNzZWxsIEtpbmcgb2YgQ2hyaXN0aWFuJ3MgZHJtIHdvcmsuCj4gPgo+ID4gU2lnbmVkLW9mZi1i eTogQ2hyaXN0aWFuIEdtZWluZXIgPGNocmlzdGlhbi5nbWVpbmVyQGdtYWlsLmNvbT4KPiA+IFNp Z25lZC1vZmYtYnk6IFJ1c3NlbGwgS2luZyA8cm1rK2tlcm5lbEBhcm0ubGludXgub3JnLnVrPgoK PiA+IC0tLQpbLi4uXQoKPiA+ICsjZW5kaWYgLyogU1RBVEVfSElfWE1MICovCj4gPiBkaWZmIC0t Z2l0IGEvaW5jbHVkZS91YXBpL2RybS9ldG5hdml2X2RybS5oIGIvaW5jbHVkZS91YXBpL2RybS9l dG5hdml2X2RybS5oCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+ID4gaW5kZXggMDAwMDAwMDAw MDAwLi5mN2I1YWM2ZjM4NDIKPiA+IC0tLSAvZGV2L251bGwKPiA+ICsrKyBiL2luY2x1ZGUvdWFw aS9kcm0vZXRuYXZpdl9kcm0uaAo+ID4gQEAgLTAsMCArMSwyMjUgQEAKPiA+ICsvKgo+ID4gKyAq IENvcHlyaWdodCAoQykgMjAxMyBSZWQgSGF0Cj4gPiArICogQXV0aG9yOiBSb2IgQ2xhcmsgPHJv YmRjbGFya0BnbWFpbC5jb20+Cj4gPiArICoKPiA+ICsgKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBz b2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeSBpdAo+ID4gKyAq IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lv biAyIGFzIHB1Ymxpc2hlZCBieQo+ID4gKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24u Cj4gPiArICoKPiA+ICsgKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUg dGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwgYnV0IFdJVEhPVVQKPiA+ICsgKiBBTlkgV0FSUkFOVFk7 IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IK PiA+ICsgKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VIEdl bmVyYWwgUHVibGljIExpY2Vuc2UgZm9yCj4gPiArICogbW9yZSBkZXRhaWxzLgo+ID4gKyAqCj4g PiArICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwg UHVibGljIExpY2Vuc2UgYWxvbmcgd2l0aAo+ID4gKyAqIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwg c2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KPiA+ICsgKi8KPiA+ICsKPiA+ICsj aWZuZGVmIF9fRVROQVZJVl9EUk1fSF9fCj4gPiArI2RlZmluZSBfX0VUTkFWSVZfRFJNX0hfXwo+ ID4gKwo+ID4gKyNpbmNsdWRlIDxzdGRkZWYuaD4KPiA+ICsjaW5jbHVkZSA8ZHJtL2RybS5oPgo+ ID4gKwo+ID4gKy8qIFBsZWFzZSBub3RlIHRoYXQgbW9kaWZpY2F0aW9ucyB0byBhbGwgc3RydWN0 cyBkZWZpbmVkIGhlcmUgYXJlCj4gPiArICogc3ViamVjdCB0byBiYWNrd2FyZHMtY29tcGF0aWJp bGl0eSBjb25zdHJhaW50czoKPiA+ICsgKiAgMSkgRG8gbm90IHVzZSBwb2ludGVycywgdXNlIHVp bnQ2NF90IGluc3RlYWQgZm9yIDMyIGJpdCAvIDY0IGJpdAo+ID4gKyAqICAgICB1c2VyL2tlcm5l bCBjb21wYXRpYmlsaXR5Cj4gPiArICogIDIpIEtlZXAgZmllbGRzIGFsaWduZWQgdG8gdGhlaXIg c2l6ZQo+ID4gKyAqICAzKSBCZWNhdXNlIG9mIGhvdyBkcm1faW9jdGwoKSB3b3Jrcywgd2UgY2Fu IGFkZCBuZXcgZmllbGRzIGF0Cj4gPiArICogICAgIHRoZSBlbmQgb2YgYW4gaW9jdGwgaWYgc29t ZSBjYXJlIGlzIHRha2VuOiBkcm1faW9jdGwoKSB3aWxsCj4gPiArICogICAgIHplcm8gb3V0IHRo ZSBuZXcgZmllbGRzIGF0IHRoZSB0YWlsIG9mIHRoZSBpb2N0bCwgc28gYSB6ZXJvCj4gPiArICog ICAgIHZhbHVlIHNob3VsZCBoYXZlIGEgYmFja3dhcmRzIGNvbXBhdGlibGUgbWVhbmluZy4gIEFu ZCBmb3IKPiA+ICsgKiAgICAgb3V0cHV0IHBhcmFtcywgdXNlcnNwYWNlIHdvbid0IHNlZSB0aGUg bmV3bHkgYWRkZWQgb3V0cHV0Cj4gPiArICogICAgIGZpZWxkcy4uIHNvIHRoYXQgaGFzIHRvIGJl IHNvbWVob3cgb2suCj4gPiArICovCj4gPiArCj4gPiArI2RlZmluZSBFVE5BX1BJUEVfM0QgICAg ICAweDAwCj4gPiArI2RlZmluZSBFVE5BX1BJUEVfMkQgICAgICAweDAxCj4gPiArI2RlZmluZSBF VE5BX1BJUEVfVkcgICAgICAweDAyCj4gPiArCj4gPiArI2RlZmluZSBFVE5BX01BWF9QSVBFUyAg ICAzCj4gPiArCj4gPiArLyogdGltZW91dHMgYXJlIHNwZWNpZmllZCBpbiBjbG9jay1tb25vdG9u aWMgYWJzb2x1dGUgdGltZXMgKHRvIHNpbXBsaWZ5Cj4gPiArICogcmVzdGFydGluZyBpbnRlcnJ1 cHRlZCBpb2N0bHMpLiAgVGhlIGZvbGxvd2luZyBzdHJ1Y3QgaXMgbG9naWNhbGx5IHRoZQo+ID4g KyAqIHNhbWUgYXMgJ3N0cnVjdCB0aW1lc3BlYycgYnV0IDMyLzY0YiBBQkkgc2FmZS4KPiA+ICsg Ki8KPiA+ICtzdHJ1Y3QgZHJtX2V0bmF2aXZfdGltZXNwZWMgewo+ID4gKyAgICAgICBpbnQ2NF90 IHR2X3NlYzsgICAgICAgICAgLyogc2Vjb25kcyAqLwo+ID4gKyAgICAgICBpbnQ2NF90IHR2X25z ZWM7ICAgICAgICAgLyogbmFub3NlY29uZHMgKi8KPiA+ICt9Owo+ID4gKwo+ID4gKyNkZWZpbmUg RVROQVZJVl9QQVJBTV9HUFVfTU9ERUwgICAgICAgICAgICAgICAgICAgICAweDAxCj4gPiArI2Rl ZmluZSBFVE5BVklWX1BBUkFNX0dQVV9SRVZJU0lPTiAgICAgICAgICAgICAgICAgIDB4MDIKPiA+ ICsjZGVmaW5lIEVUTkFWSVZfUEFSQU1fR1BVX0ZFQVRVUkVTXzAgICAgICAgICAgICAgICAgMHgw Mwo+ID4gKyNkZWZpbmUgRVROQVZJVl9QQVJBTV9HUFVfRkVBVFVSRVNfMSAgICAgICAgICAgICAg ICAweDA0Cj4gPiArI2RlZmluZSBFVE5BVklWX1BBUkFNX0dQVV9GRUFUVVJFU18yICAgICAgICAg ICAgICAgIDB4MDUKPiA+ICsjZGVmaW5lIEVUTkFWSVZfUEFSQU1fR1BVX0ZFQVRVUkVTXzMgICAg ICAgICAgICAgICAgMHgwNgo+ID4gKyNkZWZpbmUgRVROQVZJVl9QQVJBTV9HUFVfRkVBVFVSRVNf NCAgICAgICAgICAgICAgICAweDA3Cj4gPiArCj4gPiArI2RlZmluZSBFVE5BVklWX1BBUkFNX0dQ VV9TVFJFQU1fQ09VTlQgICAgICAgICAgICAgIDB4MTAKPiA+ICsjZGVmaW5lIEVUTkFWSVZfUEFS QU1fR1BVX1JFR0lTVEVSX01BWCAgICAgICAgICAgICAgMHgxMQo+ID4gKyNkZWZpbmUgRVROQVZJ Vl9QQVJBTV9HUFVfVEhSRUFEX0NPVU5UICAgICAgICAgICAgICAweDEyCj4gPiArI2RlZmluZSBF VE5BVklWX1BBUkFNX0dQVV9WRVJURVhfQ0FDSEVfU0laRSAgICAgICAgIDB4MTMKPiA+ICsjZGVm aW5lIEVUTkFWSVZfUEFSQU1fR1BVX1NIQURFUl9DT1JFX0NPVU5UICAgICAgICAgMHgxNAo+ID4g KyNkZWZpbmUgRVROQVZJVl9QQVJBTV9HUFVfUElYRUxfUElQRVMgICAgICAgICAgICAgICAweDE1 Cj4gPiArI2RlZmluZSBFVE5BVklWX1BBUkFNX0dQVV9WRVJURVhfT1VUUFVUX0JVRkZFUl9TSVpF IDB4MTYKPiA+ICsjZGVmaW5lIEVUTkFWSVZfUEFSQU1fR1BVX0JVRkZFUl9TSVpFICAgICAgICAg ICAgICAgMHgxNwo+ID4gKyNkZWZpbmUgRVROQVZJVl9QQVJBTV9HUFVfSU5TVFJVQ1RJT05fQ09V TlQgICAgICAgICAweDE4Cj4gPiArI2RlZmluZSBFVE5BVklWX1BBUkFNX0dQVV9OVU1fQ09OU1RB TlRTICAgICAgICAgICAgIDB4MTkKPiA+ICsKPiA+ICsvLyNkZWZpbmUgTVNNX1BBUkFNX0dNRU1f U0laRSAgMHgwMgo+ID4gKwo+ID4gK3N0cnVjdCBkcm1fZXRuYXZpdl9wYXJhbSB7Cj4gPiArICAg ICAgIHVpbnQzMl90IHBpcGU7ICAgICAgICAgICAvKiBpbiwgRVROQV9QSVBFX3ggKi8KPiA+ICsg ICAgICAgdWludDMyX3QgcGFyYW07ICAgICAgICAgIC8qIGluLCBFVE5BVklWX1BBUkFNX3ggKi8K PiA+ICsgICAgICAgdWludDY0X3QgdmFsdWU7ICAgICAgICAgIC8qIG91dCAoZ2V0X3BhcmFtKSBv ciBpbiAoc2V0X3BhcmFtKSAqLwo+ID4gK307Cj4gPiArCj4gPiArLyoKPiA+ICsgKiBHRU0gYnVm ZmVyczoKPiA+ICsgKi8KPiA+ICsKPiA+ICsjZGVmaW5lIEVUTkFfQk9fQ01EU1RSRUFNICAgIDB4 MDAwMDAwMDEKPiA+ICsjZGVmaW5lIEVUTkFfQk9fQ0FDSEVfTUFTSyAgIDB4MDAwZjAwMDAKPiA+ ICsvKiBjYWNoZSBtb2RlcyAqLwo+ID4gKyNkZWZpbmUgRVROQV9CT19DQUNIRUQgICAgICAgMHgw MDAxMDAwMAo+ID4gKyNkZWZpbmUgRVROQV9CT19XQyAgICAgICAgICAgMHgwMDAyMDAwMAo+ID4g KyNkZWZpbmUgRVROQV9CT19VTkNBQ0hFRCAgICAgMHgwMDA0MDAwMAo+ID4gKwo+ID4gK3N0cnVj dCBkcm1fZXRuYXZpdl9nZW1fbmV3IHsKPiA+ICsgICAgICAgdWludDY0X3Qgc2l6ZTsgICAgICAg ICAgIC8qIGluICovCj4gPiArICAgICAgIHVpbnQzMl90IGZsYWdzOyAgICAgICAgICAvKiBpbiwg bWFzayBvZiBFVE5BX0JPX3ggKi8KPiA+ICsgICAgICAgdWludDMyX3QgaGFuZGxlOyAgICAgICAg IC8qIG91dCAqLwo+ID4gK307Cj4gPiArCj4gPiArc3RydWN0IGRybV9ldG5hdml2X2dlbV9pbmZv IHsKPiA+ICsgICAgICAgdWludDMyX3QgaGFuZGxlOyAgICAgICAgIC8qIGluICovCj4gPiArICAg ICAgIHVpbnQzMl90IHBhZDsKPiA+ICsgICAgICAgdWludDY0X3Qgb2Zmc2V0OyAgICAgICAgIC8q IG91dCwgb2Zmc2V0IHRvIHBhc3MgdG8gbW1hcCgpICovCj4gPiArfTsKPiA+ICsKPiA+ICsjZGVm aW5lIEVUTkFfUFJFUF9SRUFEICAgICAgICAweDAxCj4gPiArI2RlZmluZSBFVE5BX1BSRVBfV1JJ VEUgICAgICAgMHgwMgo+ID4gKyNkZWZpbmUgRVROQV9QUkVQX05PU1lOQyAgICAgIDB4MDQKPiA+ ICsKPiA+ICtzdHJ1Y3QgZHJtX2V0bmF2aXZfZ2VtX2NwdV9wcmVwIHsKPiA+ICsgICAgICAgdWlu dDMyX3QgaGFuZGxlOyAgICAgICAgIC8qIGluICovCj4gPiArICAgICAgIHVpbnQzMl90IG9wOyAg ICAgICAgICAgICAvKiBpbiwgbWFzayBvZiBFVE5BX1BSRVBfeCAqLwo+ID4gKyAgICAgICBzdHJ1 Y3QgZHJtX2V0bmF2aXZfdGltZXNwZWMgdGltZW91dDsgICAvKiBpbiAqLwo+ID4gK307Cj4gPiAr Cj4gPiArc3RydWN0IGRybV9ldG5hdml2X2dlbV9jcHVfZmluaSB7Cj4gPiArICAgICAgIHVpbnQz Ml90IGhhbmRsZTsgICAgICAgICAvKiBpbiAqLwo+ID4gK307Cj4gPiArCj4gPiArLyoKPiA+ICsg KiBDbWRzdHJlYW0gU3VibWlzc2lvbjoKPiA+ICsgKi8KPiA+ICsKPiA+ICsvKiBUaGUgdmFsdWUg d3JpdHRlbiBpbnRvIHRoZSBjbWRzdHJlYW0gaXMgbG9naWNhbGx5Ogo+ID4gKyAqCj4gPiArICog ICAoKHJlbG9jYnVmLT5ncHVhZGRyICsgcmVsb2Nfb2Zmc2V0KSA8PCBzaGlmdCkgfCBvcgo+ID4g KyAqCj4gPiArICogV2hlbiB3ZSBoYXZlIEdQVSdzIHcvID4zMmJpdCBwdHJzLCBpdCBzaG91bGQg YmUgcG9zc2libGUgdG8gZGVhbAo+ID4gKyAqIHdpdGggdGhpcyBieSBlbWl0J2luZyB0d28gcmVs b2MgZW50cmllcyB3aXRoIGFwcHJvcHJpYXRlIHNoaWZ0Cj4gPiArICogdmFsdWVzLiAgT3IgYSBu ZXcgRVROQV9TVUJNSVRfQ01EX3ggdHlwZSB3b3VsZCBhbHNvIGJlIGFuIG9wdGlvbi4KPiA+ICsg Kgo+ID4gKyAqIE5PVEUgdGhhdCByZWxvYydzIG11c3QgYmUgc29ydGVkIGJ5IG9yZGVyIG9mIGlu Y3JlYXNpbmcgc3VibWl0X29mZnNldCwKPiA+ICsgKiBvdGhlcndpc2UgRUlOVkFMLgo+ID4gKyAq Lwo+ID4gK3N0cnVjdCBkcm1fZXRuYXZpdl9nZW1fc3VibWl0X3JlbG9jIHsKPiA+ICsgICAgICAg dWludDMyX3Qgc3VibWl0X29mZnNldDsgIC8qIGluLCBvZmZzZXQgZnJvbSBzdWJtaXRfYm8gKi8K PiA+ICsgICAgICAgdWludDMyX3Qgb3I7ICAgICAgICAgICAgIC8qIGluLCB2YWx1ZSBPUidkIHdp dGggcmVzdWx0ICovCj4gPiArICAgICAgIGludDMyX3QgIHNoaWZ0OyAgICAgICAgICAvKiBpbiwg YW1vdW50IG9mIGxlZnQgc2hpZnQgKGNhbiBiZSBuZWdhdGl2ZSkgKi8KPiA+ICsgICAgICAgdWlu dDMyX3QgcmVsb2NfaWR4OyAgICAgIC8qIGluLCBpbmRleCBvZiByZWxvY19ibyBidWZmZXIgKi8K PiA+ICsgICAgICAgdWludDY0X3QgcmVsb2Nfb2Zmc2V0OyAgIC8qIGluLCBvZmZzZXQgZnJvbSBz dGFydCBvZiByZWxvY19ibyAqLwo+ID4gK307Cj4gPiArCj4gPiArLyogc3VibWl0LXR5cGVzOgo+ ID4gKyAqICAgQlVGIC0gdGhpcyBjbWQgYnVmZmVyIGlzIGV4ZWN1dGVkIG5vcm1hbGx5Lgo+ID4g KyAqICAgSUJfVEFSR0VUX0JVRiAtIHRoaXMgY21kIGJ1ZmZlciBpcyBhbiBJQiB0YXJnZXQuICBS ZWxvYydzIGFyZQo+ID4gKyAqICAgICAgcHJvY2Vzc2VkIG5vcm1hbGx5LCBidXQgdGhlIGtlcm5l bCBkb2VzIG5vdCBzZXR1cCBhbiBJQiB0bwo+ID4gKyAqICAgICAgdGhpcyBidWZmZXIgaW4gdGhl IGZpcnN0LWxldmVsIHJpbmdidWZmZXIKPiA+ICsgKiAgIENUWF9SRVNUT1JFX0JVRiAtIG9ubHkg ZXhlY3V0ZWQgaWYgdGhlcmUgaGFzIGJlZW4gYSBHUFUgY29udGV4dAo+ID4gKyAqICAgICAgc3dp dGNoIHNpbmNlIHRoZSBsYXN0IFNVQk1JVCBpb2N0bAo+ID4gKyAqLwo+ID4gKyNkZWZpbmUgRVRO QV9TVUJNSVRfQ01EX0JVRiAgICAgICAgICAgICAweDAwMDEKPiA+ICsjZGVmaW5lIEVUTkFfU1VC TUlUX0NNRF9JQl9UQVJHRVRfQlVGICAgMHgwMDAyCj4gPiArI2RlZmluZSBFVE5BX1NVQk1JVF9D TURfQ1RYX1JFU1RPUkVfQlVGIDB4MDAwMyBpcyBhCj4gPiArc3RydWN0IGRybV9ldG5hdml2X2dl bV9zdWJtaXRfY21kIHsKPiA+ICsgICAgICAgdWludDMyX3QgdHlwZTsgICAgICAgICAgIC8qIGlu LCBvbmUgb2YgRVROQV9TVUJNSVRfQ01EX3ggKi8KPiAKPiBEbyB3ZSBuZWVkIGRpZmZlcmVudCB0 eXBlcz8gSSBkaWQgbm90IHVzZSB0aGlzIGluIG15IGtlcm5lbCB0cmVlLgo+IAoKUGxlYXNlIGFs c28gbm90IHRoZSBjb21taXQgY2xlYW5pbmcgdGhpcyBBUEksIHdoaWNoIGNoYW5nZXMgdGhpcyBh IGJpdC4KCkJ1dCB5ZXMgd2UgbmVlZCBkaWZmZXJlbnQgdHlwZXMuIEF0IGxlYXN0IHRoZSBjb250 ZXh0IHJlc3RvcmUgYnVmZmVyCnR5cGUgaXMgbmVlZGVkIHRvIHByb3Blcmx5IGltcGxlbWVudCBH UFUgcG93ZXIgbWFuYWdlbWVudCBhbmQgY29udGV4dApzd2l0Y2hpbmcuCgo+ID4gKyAgICAgICB1 aW50MzJfdCBzdWJtaXRfaWR4OyAgICAgLyogaW4sIGluZGV4IG9mIHN1Ym1pdF9ibyBjbWRzdHJl YW0gYnVmZmVyICovCj4gPiArICAgICAgIHVpbnQzMl90IHN1Ym1pdF9vZmZzZXQ7ICAvKiBpbiwg b2Zmc2V0IGludG8gc3VibWl0X2JvICovCj4gCj4gRG8gd2UgcmVhbGx5IHdhbnQvbmVlZCB0aGUg b2Zmc2V0PyBJIGhhdmUgcmVtb3ZlZCBpdCBmb3JtIGNhdXNlIGl0Cj4gbWFrZXMgdGhpbmdzIGlu IHVzZXJzcGFjZQo+IG1vcmUgY29tcGxleCB0aGVuIG5lZWRlZC4KPiAKSXQgbWFrZXMgdGhpbmdz IGEgYml0IG1vcmUgY29tcGxleCwgYnV0IGl0IGFsbG93cyBmb3IgZmFyIG1vcmUgZWZmaWNpZW50 CmJ1ZmZlciB1c2UgaWYgeW91IGhhdmUgYXJlIGRlYWxpbmcgd2l0aCBhIGxvdCBvZiBmbHVzaGVz LiBJIGRvbid0IHNlZQp3aHkgd2Ugc2hvdWxkIHByZXZlbnQgdXNlcnNwYWNlIGZyb20gdXNpbmcg dGhpcyBvcHRpbWl6YXRpb24uCgo+ID4gKyAgICAgICB1aW50MzJfdCBzaXplOyAgICAgICAgICAg LyogaW4sIGNtZHN0cmVhbSBzaXplICovCj4gPiArICAgICAgIHVpbnQzMl90IHBhZDsKPiA+ICsg ICAgICAgdWludDMyX3QgbnJfcmVsb2NzOyAgICAgIC8qIGluLCBudW1iZXIgb2Ygc3VibWl0X3Jl bG9jJ3MgKi8KPiA+ICsgICAgICAgdWludDY0X3QgX191c2VyIHJlbG9jczsgIC8qIGluLCBwdHIg dG8gYXJyYXkgb2Ygc3VibWl0X3JlbG9jJ3MgKi8KPiA+ICt9Owo+ID4gKwo+ID4gKy8qIEVhY2gg YnVmZmVyIHJlZmVyZW5jZWQgZWxzZXdoZXJlIGluIHRoZSBjbWRzdHJlYW0gc3VibWl0IChpZS4g dGhlCj4gPiArICogY21kc3RyZWFtIGJ1ZmZlcihzKSB0aGVtc2VsdmVzIG9yIHJlbG9jIGVudHJp ZXMpIGhhcyBvbmUgKGFuZCBvbmx5Cj4gPiArICogb25lKSBlbnRyeSBpbiB0aGUgc3VibWl0LT5i b3NbXSB0YWJsZS4KPiA+ICsgKgo+ID4gKyAqIEFzIGEgb3B0aW1pemF0aW9uLCB0aGUgY3VycmVu dCBidWZmZXIgKGdwdSB2aXJ0dWFsIGFkZHJlc3MpIGNhbiBiZQo+ID4gKyAqIHBhc3NlZCBiYWNr IHRocm91Z2ggdGhlICdwcmVzdW1lZCcgZmllbGQuICBJZiBvbiBhIHN1YnNlcXVlbnQgcmVsb2Ms Cj4gPiArICogdXNlcnNwYWNlIHBhc3NlcyBiYWNrIGEgJ3ByZXN1bWVkJyBhZGRyZXNzIHRoYXQg aXMgc3RpbGwgdmFsaWQsCj4gPiArICogdGhlbiBwYXRjaGluZyB0aGUgY21kc3RyZWFtIGZvciB0 aGlzIGVudHJ5IGlzIHNraXBwZWQuICBUaGlzIGNhbgo+ID4gKyAqIGF2b2lkIGtlcm5lbCBuZWVk aW5nIHRvIG1hcC9hY2Nlc3MgdGhlIGNtZHN0cmVhbSBibyBpbiB0aGUgY29tbW9uCj4gPiArICog Y2FzZS4KPiA+ICsgKi8KPiA+ICsjZGVmaW5lIEVUTkFfU1VCTUlUX0JPX1JFQUQgICAgICAgICAg ICAgMHgwMDAxCj4gPiArI2RlZmluZSBFVE5BX1NVQk1JVF9CT19XUklURSAgICAgICAgICAgIDB4 MDAwMgo+ID4gK3N0cnVjdCBkcm1fZXRuYXZpdl9nZW1fc3VibWl0X2JvIHsKPiA+ICsgICAgICAg dWludDMyX3QgZmxhZ3M7ICAgICAgICAgIC8qIGluLCBtYXNrIG9mIEVUTkFfU1VCTUlUX0JPX3gg Ki8KPiA+ICsgICAgICAgdWludDMyX3QgaGFuZGxlOyAgICAgICAgIC8qIGluLCBHRU0gaGFuZGxl ICovCj4gPiArICAgICAgIHVpbnQ2NF90IHByZXN1bWVkOyAgICAgICAvKiBpbi9vdXQsIHByZXN1 bWVkIGJ1ZmZlciBhZGRyZXNzICovCj4gCj4gcHJlc3VtZWQgc3VwcG9ydCBzaG91bGQgbmV2ZXIg aGl0IGV0bmF2aXYgZHJpdmVyLgo+IApBcyBzdGF0ZWQgaW4gdGhlIGNvdmVyIGxldHRlciBJIHRo aW5rIHByZXN1bWVkIHN1cHBvcnQgd2lsbCBiZWNvbWUKcG9zc2libGUgd2l0aCBNTVV2MiBhbmQg bWF5IHByb3ZpZGUgYSBnb29kIG9wdGltaXphdGlvbiB0aGVyZS4gU28gSQp3b3VsZCByYXRoZXIg bGVhdmUgdGhpcyBpbiBoZXJlIGFuZCBqdXN0IGlnbm9yZSBpdCBmb3Igbm93LgoKPiA+ICt9Owo+ ID4gKwo+ID4gKy8qIEVhY2ggY21kc3RyZWFtIHN1Ym1pdCBjb25zaXN0cyBvZiBhIHRhYmxlIG9m IGJ1ZmZlcnMgaW52b2x2ZWQsIGFuZAo+ID4gKyAqIG9uZSBvciBtb3JlIGNtZHN0cmVhbSBidWZm ZXJzLiAgVGhpcyBhbGxvd3MgZm9yIGNvbmRpdGlvbmFsIGV4ZWN1dGlvbgo+ID4gKyAqIChjb250 ZXh0LXJlc3RvcmUpLCBhbmQgSUIgYnVmZmVycyBuZWVkZWQgZm9yIHBlciB0aWxlL2JpbiBkcmF3 IGNtZHMuCj4gPiArICovCj4gPiArc3RydWN0IGRybV9ldG5hdml2X2dlbV9zdWJtaXQgewo+ID4g KyAgICAgICB1aW50MzJfdCBwaXBlOyAgICAgICAgICAgLyogaW4sIEVUTkFfUElQRV94ICovCj4g PiArICAgICAgIHVpbnQzMl90IGZlbmNlOyAgICAgICAgICAvKiBvdXQgKi8KPiA+ICsgICAgICAg dWludDMyX3QgbnJfYm9zOyAgICAgICAgIC8qIGluLCBudW1iZXIgb2Ygc3VibWl0X2JvJ3MgKi8K PiA+ICsgICAgICAgdWludDMyX3QgbnJfY21kczsgICAgICAgIC8qIGluLCBudW1iZXIgb2Ygc3Vi bWl0X2NtZCdzICovCj4gCj4gRG8gd2UgcmVhbGx5IG5lZWQgdG8gc3VwcG9ydCBtdXRsaXBsZSBj bWRzIHBlciBzdWJtaXQ/IEkgaGF2ZSByZW1vdmVkIHRoaXMKPiBmcm9tIG15IGtlcm5lbC4KPiAK V2UgbmVlZCB0byBzdXBwb3J0IGF0IGxlYXN0IG9uZSBhZGRpdGlvbmFsIGNvbnRleHQgYnVmZmVy LCBzbyBJIGRvbid0CnNlZSB3aHkgd2Ugc2hvdWxkbid0IHN1cHBvcnQgbiBidWZmZXJzLgoKPiA+ ICsgICAgICAgdWludDY0X3QgX191c2VyIGJvczsgICAgIC8qIGluLCBwdHIgdG8gYXJyYXkgb2Yg c3VibWl0X2JvJ3MgKi8KPiA+ICsgICAgICAgdWludDY0X3QgX191c2VyIGNtZHM7ICAgIC8qIGlu LCBwdHIgdG8gYXJyYXkgb2Ygc3VibWl0X2NtZCdzICovCj4gPiArfTsKPiA+ICsKPiA+ICsvKiBU aGUgbm9ybWFsIHdheSB0byBzeW5jaHJvbml6ZSB3aXRoIHRoZSBHUFUgaXMganVzdCB0byBDUFVf UFJFUCBvbgo+ID4gKyAqIGEgYnVmZmVyIGlmIHlvdSBuZWVkIHRvIGFjY2VzcyBpdCBmcm9tIHRo ZSBDUFUgKG90aGVyIGNtZHN0cmVhbQo+ID4gKyAqIHN1Ym1pc3Npb24gZnJvbSBzYW1lIG9yIG90 aGVyIGNvbnRleHRzLCBQQUdFX0ZMSVAgaW9jdGwsIGV0YywgYWxsCj4gPiArICogaGFuZGxlIHRo ZSByZXF1aXJlZCBzeW5jaHJvbml6YXRpb24gdW5kZXIgdGhlIGhvb2QpLiAgVGhpcyBpb2N0bAo+ ID4gKyAqIG1haW5seSBqdXN0IGV4aXN0cyBhcyBhIHdheSB0byBpbXBsZW1lbnQgdGhlIGdhbGxp dW0gcGlwZV9mZW5jZQo+ID4gKyAqIEFQSXMgd2l0aG91dCByZXF1aXJpbmcgYSBkdW1teSBibyB0 byBzeW5jaHJvbml6ZSBvbi4KPiA+ICsgKi8KPiA+ICtzdHJ1Y3QgZHJtX2V0bmF2aXZfd2FpdF9m ZW5jZSB7Cj4gPiArICAgICAgIHVpbnQzMl90IHBpcGU7ICAgICAgICAgICAvKiBpbiwgRVROQV9Q SVBFX3ggKi8KPiA+ICsgICAgICAgdWludDMyX3QgZmVuY2U7ICAgICAgICAgIC8qIGluICovCj4g PiArICAgICAgIHN0cnVjdCBkcm1fZXRuYXZpdl90aW1lc3BlYyB0aW1lb3V0OyAgIC8qIGluICov Cj4gPiArfTsKPiA+ICsKPiA+ICsjZGVmaW5lIERSTV9FVE5BVklWX0dFVF9QQVJBTSAgICAgICAg ICAweDAwCj4gPiArLyogcGxhY2Vob2xkZXI6Cj4gPiArI2RlZmluZSBEUk1fTVNNX1NFVF9QQVJB TSAgICAgICAgICAgICAgMHgwMQo+ID4gKyAqLwo+ID4gKyNkZWZpbmUgRFJNX0VUTkFWSVZfR0VN X05FVyAgICAgICAgICAgIDB4MDIKPiA+ICsjZGVmaW5lIERSTV9FVE5BVklWX0dFTV9JTkZPICAg ICAgICAgICAweDAzCj4gPiArI2RlZmluZSBEUk1fRVROQVZJVl9HRU1fQ1BVX1BSRVAgICAgICAg MHgwNAo+ID4gKyNkZWZpbmUgRFJNX0VUTkFWSVZfR0VNX0NQVV9GSU5JICAgICAgIDB4MDUKPiA+ ICsjZGVmaW5lIERSTV9FVE5BVklWX0dFTV9TVUJNSVQgICAgICAgICAweDA2Cj4gPiArI2RlZmlu ZSBEUk1fRVROQVZJVl9XQUlUX0ZFTkNFICAgICAgICAgMHgwNwo+ID4gKyNkZWZpbmUgRFJNX0VU TkFWSVZfTlVNX0lPQ1RMUyAgICAgICAgIDB4MDgKPiA+ICsKPiA+ICsjZGVmaW5lIERSTV9JT0NU TF9FVE5BVklWX0dFVF9QQVJBTSAgICBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0VU TkFWSVZfR0VUX1BBUkFNLCBzdHJ1Y3QgZHJtX2V0bmF2aXZfcGFyYW0pCj4gPiArI2RlZmluZSBE Uk1fSU9DVExfRVROQVZJVl9HRU1fTkVXICAgICAgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSAr IERSTV9FVE5BVklWX0dFTV9ORVcsIHN0cnVjdCBkcm1fZXRuYXZpdl9nZW1fbmV3KQo+ID4gKyNk ZWZpbmUgRFJNX0lPQ1RMX0VUTkFWSVZfR0VNX0lORk8gICAgIERSTV9JT1dSKERSTV9DT01NQU5E X0JBU0UgKyBEUk1fRVROQVZJVl9HRU1fSU5GTywgc3RydWN0IGRybV9ldG5hdml2X2dlbV9pbmZv KQo+ID4gKyNkZWZpbmUgRFJNX0lPQ1RMX0VUTkFWSVZfR0VNX0NQVV9QUkVQIERSTV9JT1cgKERS TV9DT01NQU5EX0JBU0UgKyBEUk1fRVROQVZJVl9HRU1fQ1BVX1BSRVAsIHN0cnVjdCBkcm1fZXRu YXZpdl9nZW1fY3B1X3ByZXApCj4gPiArI2RlZmluZSBEUk1fSU9DVExfRVROQVZJVl9HRU1fQ1BV X0ZJTkkgRFJNX0lPVyAoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9FVE5BVklWX0dFTV9DUFVfRklO SSwgc3RydWN0IGRybV9ldG5hdml2X2dlbV9jcHVfZmluaSkKPiA+ICsjZGVmaW5lIERSTV9JT0NU TF9FVE5BVklWX0dFTV9TVUJNSVQgICBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0VU TkFWSVZfR0VNX1NVQk1JVCwgc3RydWN0IGRybV9ldG5hdml2X2dlbV9zdWJtaXQpCj4gPiArI2Rl ZmluZSBEUk1fSU9DVExfRVROQVZJVl9XQUlUX0ZFTkNFICAgRFJNX0lPVyAoRFJNX0NPTU1BTkRf QkFTRSArIERSTV9FVE5BVklWX1dBSVRfRkVOQ0UsIHN0cnVjdCBkcm1fZXRuYXZpdl93YWl0X2Zl bmNlKQo+ID4gKwo+ID4gKyNlbmRpZiAvKiBfX0VUTkFWSVZfRFJNX0hfXyAqLwo+ID4gLS0KPiA+ IDIuMS40Cj4gPgo+IAoKUmVnYXJkcywKTHVjYXMKCi0tIApQZW5ndXRyb25peCBlLksuICAgICAg ICAgICAgIHwgTHVjYXMgU3RhY2ggICAgICAgICAgICAgICAgIHwKSW5kdXN0cmlhbCBMaW51eCBT b2x1dGlvbnMgICB8IGh0dHA6Ly93d3cucGVuZ3V0cm9uaXguZGUvICB8CgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0 CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=