From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jean-Francois Moine Subject: Re: [PATCH RFC v2 2/6] drm/i2c: tda998x: Move tda998x to a couple encoder/connector Date: Tue, 25 Mar 2014 16:55:48 +0100 Message-ID: <20140325165548.0065b639@armhf> References: <1458827.cQ6aDWdh1W@avalon> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from smtp3-g21.free.fr (smtp3-g21.free.fr [212.27.42.3]) by gabe.freedesktop.org (Postfix) with ESMTP id 788E06E0CB for ; Tue, 25 Mar 2014 08:55:21 -0700 (PDT) In-Reply-To: <1458827.cQ6aDWdh1W@avalon> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Laurent Pinchart Cc: Russell King , linux-arm-kernel@lists.infradead.org, dri-devel@lists.freedesktop.org, linux-media@vger.kernel.org List-Id: dri-devel@lists.freedesktop.org T24gTW9uLCAyNCBNYXIgMjAxNCAyMzozOTowMSArMDEwMApMYXVyZW50IFBpbmNoYXJ0IDxsYXVy ZW50LnBpbmNoYXJ0QGlkZWFzb25ib2FyZC5jb20+IHdyb3RlOgoKPiBIaSBKZWFuLUZyYW7Dp29p cywKCkhpIExhdXJlbnQsCgo+IFRoYW5rIHlvdSBmb3IgdGhlIHBhdGNoLgo+IAo+IE9uIEZyaWRh eSAyMSBNYXJjaCAyMDE0IDA5OjE3OjMyIEplYW4tRnJhbmNvaXMgTW9pbmUgd3JvdGU6Cj4gPiBU aGUgJ3NsYXZlIGVuY29kZXInIHN0cnVjdHVyZSBvZiB0aGUgdGRhOTk4eCBkcml2ZXIgYXNrcyBm b3IgZ2x1ZQo+ID4gYmV0d2VlbiB0aGUgRFJNIGRyaXZlciBhbmQgdGhlIGVuY29kZXIvY29ubmVj dG9yIHN0cnVjdHVyZXMuCj4gPiAKPiA+IFRoaXMgcGF0Y2ggY2hhbmdlcyB0aGUgZHJpdmVyIHRv IGEgbm9ybWFsIERSTSBlbmNvZGVyL2Nvbm5lY3Rvcgo+ID4gdGhhbmtzIHRvIHRoZSBpbmZyYXN0 cnVjdHVyZSBmb3IgY29tcG9uZW50aXNlZCBzdWJzeXN0ZW1zLgo+IAo+IEkgbGlrZSB0aGUgaWRl YSwgYnV0IEknbSBub3QgcmVhbGx5IGhhcHB5IHdpdGggdGhlIGltcGxlbWVudGF0aW9uLiBMZXQg bWUgdHJ5IAo+IHRvIGV4cGxhaW4gd2h5IGJlbG93Lgo+IAo+ID4gU2lnbmVkLW9mZi1ieTogSmVh bi1GcmFuY29pcyBNb2luZSA8bW9pbmVqZkBmcmVlLmZyPgo+ID4gLS0tCj4gPiAgZHJpdmVycy9n cHUvZHJtL2kyYy90ZGE5OTh4X2Rydi5jIHwgMzIzICsrKysrKysrKysrKysrKysrKystLS0tLS0t LS0tLS0tLS0tCj4gPiAgMSBmaWxlIGNoYW5nZWQsIDE4OCBpbnNlcnRpb25zKCspLCAxMzUgZGVs ZXRpb25zKC0pCj4gPiAKPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTJjL3RkYTk5 OHhfZHJ2LmMKPiA+IGIvZHJpdmVycy9ncHUvZHJtL2kyYy90ZGE5OTh4X2Rydi5jIGluZGV4IGZk Njc1MWMuLjFjMjVlNDAgMTAwNjQ0Cj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTJjL3RkYTk5 OHhfZHJ2LmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pMmMvdGRhOTk4eF9kcnYuYwo+IAo+ IFtzbmlwXQo+IAo+ID4gQEAgLTQ0LDEwICs0NSwxNCBAQCBzdHJ1Y3QgdGRhOTk4eF9wcml2IHsK PiA+IAo+ID4gIAl3YWl0X3F1ZXVlX2hlYWRfdCB3cV9lZGlkOwo+ID4gIAl2b2xhdGlsZSBpbnQg d3FfZWRpZF93YWl0Owo+ID4gLQlzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXI7Cj4gPiArCXN0 cnVjdCBkcm1fZW5jb2RlciBlbmNvZGVyOwo+ID4gKwlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciBjb25u ZWN0b3I7Cj4gPiAgfTsKPiAKPiBbc25pcF0KPiAKPiA+IC1zdGF0aWMgaW50Cj4gPiAtdGRhOTk4 eF9wcm9iZShzdHJ1Y3QgaTJjX2NsaWVudCAqY2xpZW50LCBjb25zdCBzdHJ1Y3QgaTJjX2Rldmlj ZV9pZCAqaWQpCj4gPiArc3RhdGljIGludCB0ZGFfYmluZChzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0 cnVjdCBkZXZpY2UgKm1hc3Rlciwgdm9pZCAqZGF0YSkKPiA+ICB7Cj4gPiArCXN0cnVjdCBkcm1f ZGV2aWNlICpkcm0gPSBkYXRhOwo+IAo+IFRoaXMgaXMgdGhlIHBhcnQgdGhhdCBib3RoZXJzIG1l LiBZb3UncmUgbWFraW5nIHR3byBhc3N1bXB0aW9ucyBoZXJlLCB0aGF0IHRoZSAKPiBEUk0gZHJp dmVyIHdpbGwgcGFzcyBhIHN0cnVjdCBkcm1fZGV2aWNlIHBvaW50ZXIgdG8gdGhlIGJpbmQgb3Bl cmF0aW9uLCBhbmQgCj4gdGhhdCB0aGUgSTJDIGVuY29kZXIgZHJpdmVyIGNhbiB0YWtlIGNvbnRy b2wgb2YgRFJNIGVuY29kZXIgYW5kIGNvbm5lY3RvciAKPiBjcmVhdGlvbi4gQWx0aG91Z2ggaXQg Y291bGQgYmVjb21lIHByb2JsZW1hdGljIGxhdGVyLCB0aGUgZmlyc3QgYXNzdW1wdGlvbiAKPiBp c24ndCB0b28gbXVjaCBvZiBhbiBpc3N1ZSBmb3Igbm93LiBJJ2xsIHRodXMgZm9jdXMgb24gdGhl IHNlY29uZCBvbmUuCj4gCj4gVGhlIGNvbXBvbmVudCBmcmFtZXdvcmsgaXNvbGF0ZSB0aGUgZW5j b2RlciBhbmQgRFJNIG1hc3RlciBkcml2ZXJzIGFzIGZhciBhcyAKPiBjb21wb25lbnQgY3JlYXRp b24gYW5kIGJpbmRpbmcgaXMgY29uY2VybmVkLCBidXQgZG9lc24ndCBwcm92aWRlIGEgd2F5IGZv ciB0aGUgCj4gdHdvIGRyaXZlcnMgdG8gY29tbXVuaWNhdGUgdG9nZXRoZXIgKG5vciBzaG91bGQg aXQpLiBZb3UncmUgc29sdmluZyB0aGlzIGJ5IAo+IHBhc3NpbmcgYSBwb2ludGVyIHRvIHRoZSBE Uk0gZGV2aWNlIHRvIHRoZSBlbmNvZGVyIGJpbmQgb3BlcmF0aW9uLCBtYWtpbmcgdGhlIAo+IGVu Y29kZXIgZHJpdmVyIGNyZWF0ZSBhIERSTSBlbmNvZGVyIGFuZCBjb25uZWN0b3IsIGFuZCByZWx5 aW5nIG9uIHRoZSBEUk0gY29yZSAKPiB0byBvcmNoZXN0cmF0ZSBDUlRDcywgZW5jb2RlcnMgYW5k IGNvbm5lY3RvcnMuIFlvdSB0aHVzIGFzc3VtZSB0aGF0IHRoZSAKPiBlbmNvZGVyIGhhcmR3YXJl IHNob3VsZCBiZSByZXByZXNlbnRlZCBieSBhIERSTSBlbmNvZGVyIG9iamVjdCwgYW5kIHRoYXQg aXRzIAo+IG91dHB1dCBpcyBjb25uZWN0ZWQgdG8gYSBjb25uZWN0b3IgdGhhdCBzaG91bGQgYmUg cmVwcmVzZW50ZWQgYnkgYSBEUk0gCj4gY29ubmVjdG9yIG9iamVjdC4gV2hpbGUgdGhpcyBjYW4g d29yayBpbiB5b3VyIHVzZSBjYXNlLCB0aGF0IHdvbid0IGFsd2F5cyBob2xkIAo+IHRydWUuIEhh cmR3YXJlIGVuY29kZXJzIGNhbiBiZSBjaGFpbmVkIHRvZ2V0aGVyLCB3aGlsZSBEUk0gZW5jb2Rl cnMgY2FuJ3QuIFRoZSAKPiBEUk0gY29yZSBoYXMgcmVjZW50bHkgcmVjZWl2ZWQgc3VwcG9ydCBm b3IgYnJpZGdlIG9iamVjdHMgdG8gb3ZlcmNvbWUgdGhhdCAKPiBsaW1pdGF0aW9uLiBEZXBlbmRp bmcgb24gdGhlIGhhcmR3YXJlIHRvcG9sb2d5LCBhIGdpdmVuIGhhcmR3YXJlIGVuY29kZXIgCj4g c2hvdWxkIGJlIG1vZGVsZWQgYXMgYSBEUk0gZW5jb2RlciBvciBhcyBhIERSTSBicmlkZ2UuIFRo YXQgZGVjaXNpb24gc2hvdWxkbid0IAo+IGJlIHRha2VuIGJ5IHRoZSBlbmNvZGVyIGRyaXZlciBi dXQgYnkgdGhlIERSTSBtYXN0ZXIgZHJpdmVyLiBUaGUgSTJDIGVuY29kZXIgCj4gZHJpdmVyIHRo dXMgc2hvdWxkbid0IGNyZWF0ZSB0aGUgRFJNIGVuY29kZXIgYW5kIERSTSBjb25uZWN0b3IgaXRz ZWxmLgo+IAo+IEkgYmVsaWV2ZSB0aGUgZW5jb2Rlci9tYXN0ZXIgY29tbXVuaWNhdGlvbiBwcm9i bGVtIHNob3VsZCBiZSBzb2x2ZWQgCj4gZGlmZmVyZW50bHkuIEluc3RlYWQgb2YgcGFzc2luZyBh IHBvaW50ZXIgdG8gdGhlIERSTSBkZXZpY2UgdG8gdGhlIGVuY29kZXIgCj4gZHJpdmVyIGFuZCBt YWtpbmcgdGhlIGVuY29kZXIgZHJpdmVyIGNvbnRyb2wgRFJNIGVuY29kZXIgYW5kIGNvbm5lY3Rv ciAKPiBjcmVhdGlvbiwgdGhlIGVuY29kZXIgZHJpdmVyIHNob3VsZCBpbnN0ZWFkIGNyZWF0ZSBh biBvYmplY3Qgbm90IHZpc2libGUgdG8gCj4gdXNlcnNwYWNlIHRoYXQgY2FuIGJlIHJldHJpZXZl ZCBieSB0aGUgRFJNIG1hc3RlciBkcml2ZXIgKHBvc3NpYmx5IHRocm91Z2ggCj4gcmVnaXN0cmF0 aW9uIHdpdGggdGhlIERSTSBjb3JlLCBvciBieSBnb2luZyB0aHJvdWdoIGRydmRhdGEgaW4gdGhl IGVuY29kZXIncyAKPiBzdHJ1Y3QgZGV2aWNlKS4gVGhlIERSTSBtYXN0ZXIgY291bGQgdXNlIHRo YXQgb2JqZWN0IHRvIGNvbW11bmljYXRlIHdpdGggdGhlIAo+IGVuY29kZXIsIGFuZCB3b3VsZCBy ZWdpc3RlciB0aGUgRFJNIGVuY29kZXIgYW5kIERSTSBjb25uZWN0b3IgaXRzZWxmIGJhc2VkIG9u IAo+IGhhcmR3YXJlIHRvcG9sb2d5Lgo+IAo+ID4gKwlzdHJ1Y3QgaTJjX2NsaWVudCAqaTJjX2Ns aWVudCA9IHRvX2kyY19jbGllbnQoZGV2KTsKPiA+ICsJc3RydWN0IHRkYTk5OHhfcHJpdiAqcHJp diA9IGkyY19nZXRfY2xpZW50ZGF0YShpMmNfY2xpZW50KTsKPiA+ICsJc3RydWN0IGRybV9jb25u ZWN0b3IgKmNvbm5lY3RvciA9ICZwcml2LT5jb25uZWN0b3I7Cj4gPiArCXN0cnVjdCBkcm1fZW5j b2RlciAqZW5jb2RlciA9ICZwcml2LT5lbmNvZGVyOwo+ID4gKwlpbnQgcmV0Owo+ID4gKwo+ID4g KwlpZiAoIXRyeV9tb2R1bGVfZ2V0KFRISVNfTU9EVUxFKSkgewo+ID4gKwkJZGV2X2VycihkZXYs ICJjYW5ub3QgZ2V0IG1vZHVsZSAlc1xuIiwgVEhJU19NT0RVTEUtPm5hbWUpOwo+ID4gKwkJcmV0 dXJuIC1FSU5WQUw7Cj4gPiArCX0KPiA+ICsKPiA+ICsJcmV0ID0gZHJtX2Nvbm5lY3Rvcl9pbml0 KGRybSwgY29ubmVjdG9yLAo+ID4gKwkJCQkmY29ubmVjdG9yX2Z1bmNzLAo+ID4gKwkJCQlEUk1f TU9ERV9DT05ORUNUT1JfSERNSUEpOwo+IAo+IFRoaXMgaXMgb25lIGV4YW1wbGUgb2YgdGhlIHNo b3J0Y29taW5ncyBJJ3ZlIGV4cGxhaW5lZCBhYm92ZS4gQW4gZW5jb2RlciAKPiBkcml2ZXIgY2Fu J3QgYWx3YXlzIGtub3cgd2hhdCBjb25uZWN0b3IgdHlwZSBpdCBpcyBjb25uZWN0ZWQgdG8uIElm IEknbSBub3QgCj4gbWlzdGFrZW4gcG9zc2libGUgb3B0aW9ucyBoZXJlIGFyZSBEVklJLCBEVklE LCBIRE1JQSBhbmQgSERNSUIuIEl0IHNob3VsZCBiZSAKPiB1cCB0byB0aGUgbWFzdGVyIGRyaXZl ciB0byBzZWxlY3QgdGhlIGNvbm5lY3RvciB0eXBlIGJhc2VkIG9uIGl0cyBvdmVyYWxsIHZpZXcg Cj4gb2YgdGhlIGhhcmR3YXJlLCBvciBldmVuIHRvIGEgY29ubmVjdG9yIGRyaXZlciB0aGF0IHdv dWxkIGJlIGJvdW5kIHRvIGEgCj4gY29ubmVjdG9yIERUIG5vZGUgKGFzIHByb3Bvc2VkIGluIGh0 dHBzOi8vd3d3Lm1haWwtYXJjaGl2ZS5jb20vZGV2aWNldHJlZUB2Z2VyLmtlcm5lbC5vcmcvbXNn MTY1ODUuaHRtbCkuCglbc25pcF0KClRoZSB0ZGE5OTh4LCBhcyBhIEhETUkgdHJhbnNtaXR0ZXIs IGhhcyB0byBkZWFsIHdpdGggYm90aCB2aWRlbyBhbmQKYXVkaW8uCgpXaGVyZWFzIHRoZSBoYXJk d2FyZSBjb25uZWN0aW9uIHNjaGVtZXMgYXJlIHRoZSBzYW1lIGluIGJvdGggd29ybGRzLAp0aGUg d2F5IHRoZXkgYXJlIHRyYW5zbGF0ZWQgdG8gY29tcHV0ZXIgb2JqZWN0cyBhcmUgdmVyeSBkaWZm ZXJlbnQ6CgotIHZpZGVvCglEUk0gY2FyZCAtPiBDUlRDcyAtPiBlbmNvZGVycyAtPiAoYnJpZGdl cykgLT4gY29ubmVjdG9ycwoKLSBhdWRpbwoJQUxTQSBjYXJkIC0+IENQVXMgLT4gKENPREVDcykg LT4gQ09ERUNzCgphbmQgaXQgd291bGQgYmUgbmljZSB0byBoYXZlIGEgY29tbW9uIGxheW91dC4K CkFjdHVhbGx5LCB0aGUgdGRhOTk4eCBpcyBhIHNsYXZlIGVuY29kZXIsIHRoYXQgaXMsIGl0IHBs YXlzIHRoZSByb2xlcwpvZiBib3RoIGVuY29kZXIgYW5kIGNvbm5lY3Rvci4gSW4gdGhlIDIgRFJN IGRyaXZlcnMgKGFybWFkYSBhbmQgdGlsY2RjKQp3aGljaCB1c2UgaXQsIHllcywgdGhlIGVuY29k ZXJzIGFuZCBjb25uZWN0b3JzIGFyZSBjcmVhdGVkIGJ5IHRoZSBtYWluCkRSTSBkcml2ZXJzLCBi dXQsIHRoZXJlIGlzIG5vIG5vdGlvbiBvZiBicmlkZ2UsIGFuZCwgYWxzbywgdGhlIGVuY29kZXIK aXMgRFJNX01PREVfRU5DT0RFUl9UTURTIGFuZCB0aGUgY29ubmVjdG9yIGlzIERSTV9NT0RFX0NP Tk5FQ1RPUl9IRE1JQS4KVGhlbiwgbm90aGluZyBpcyBjaGFuZ2VkIGluIHRoZSBnbG9iYWwgc3lz dGVtIHdvcmtpbmcuCgpBYm91dCB0aGUgY29ubmVjdG9yLCB5ZXMsIEkgbGV0IGl0cyB0eXBlIGFz IGhhcmQtY29kZWQsIGJ1dCB0aGlzIGNvdWxkCmJlIGNoYW5nZWQgYnkgY29uZmlndXJhdGlvbiBp biB0aGUgcGxhdGZvcm0gZGF0YSBvciBpbiB0aGUgRFQuIEFueXdheSwKdGhlcmUgaXMgbm90aGlu ZyBhcyBzdWNoIGluIHRoZSBwcm9wb3NlZCBwYXRjaAoKCSdBZGQgRFQgYmluZGluZyBkb2N1bWVu dGF0aW9uIGZvciBIRE1JIENvbm5lY3RvcicKCkkgYWxzbyBkaXNsaWtlIHRoaXMgcGF0Y2ggYmVj YXVzZSBpdCBhZGRzIGEgZGV2aWNlIHdoaWNoIGlzIG9mIG5vIHVzZS4KSSBoYWQgYSBzYW1lIHJl bWFyayBmcm9tIE1hcmsgQnJvd24gYWJvdXQgYSB0ZGE5OTh4IENPREVDIHByb3Bvc2FsIG9mCm1p bmU6CgoJaGRtaV9jb2RlYzogaGRtaS1jb2RlYyB7CgkJY29tcGF0aWJsZSA9ICJueHAsdGRhOTk4 eC1jb2RlYyI7CgkJYXVkaW8tcG9ydHMgPSA8MHgwMz4sIDwweDA0PjsKCX07CgpTbywgdGhlIG5l eHQgdGRhOTk4eCBDT0RFQyB3aWxsIGJlIGRpcmVjdGx5IGluY2x1ZGVkIGluIHRoZSB0ZGE5OTh4 CmRyaXZlciwgdGhlIGF1ZGlvIG91dHB1dCBiZWluZyB0aGUgSERNSSBjb25uZWN0b3IuIEhlcmUg aXMgdGhlIERUCmRlZmluaXRpb24gSSBoYXZlIGZvciB0aGUgQ3Vib3g6CgomaTJjMCB7CgloZG1p OiBoZG1pLWVuY29kZXIgewoJCWNvbXBhdGlibGUgPSAibnhwLHRkYTk5ODkiOwoJCXJlZyA9IDww eDcwPjsKCQlpbnRlcnJ1cHQtcGFyZW50ID0gPCZncGlvMD47CgkJaW50ZXJydXB0cyA9IDwyNyBJ UlFfVFlQRV9FREdFX0ZBTExJTkc+OwoJCXBpbmN0cmwtMCA9IDwmcG14X2NhbWVyYT47CgkJcGlu Y3RybC1uYW1lcyA9ICJkZWZhdWx0IjsKCgkJYXVkaW8tcG9ydHMgPSA8MHgwMz4sIDwweDA0PjsJ CS8qIDIgYXVkaW8gaW5wdXQgcG9ydHMgKi8KCQlhdWRpby1wb3J0LW5hbWVzID0gImkycyIsICJz cGRpZiI7CgkJI3NvdW5kLWRhaS1jZWxscyA9IDwxPjsKCgkJcG9ydCB7CQkJCQkvKiAxIHZpZGVv IGlucHV0IHBvcnQgKi8KCQkJaGRtaV8wOiBlbmRwb2ludEAwIHsKCQkJCXJlbW90ZS1lbmRwb2lu dCA9IDwmbGNkMF8wPjsKCQkJfTsKCQl9OwoJfTsKfTsKCkJhY2sgdG8gdGhlIERSTSBkZXZpY2Ug cG9pbnRlciBnaXZlbiB0byB0aGUgdGRhOTk4eCBkcml2ZXIsIGFzIHRoZQp0ZGE5OTh4IGlzIGFu IGVuY29kZXIvY29ubmVjdG9yLCBpdCBoYXMgbm8gYnJpZGdlIGZ1bmN0aW9uLCBzbywgdGhlcmUK aXMgbm8gbmVlZCB0byBhZGQgYSBjb21wbGV4IEFQSSBmb3IgaW5mb3JtYXRpb24gZXhjaGFuZ2Ug YmV0d2VlbiBib3RoCmRyaXZlcnMuCgpBbnl3YXksIHRoZXJlIGlzIGEgYmlnIGxhY2sgaW4gbXkg cHJvcG9zYWw6IHRoZSB0ZGE5OTh4IGVuY29kZXIgaXMKaGFyZC1jb2RlZCB0byB0aGUgZmlyc3Qg Q1JUQy4gVGhpcyBjb3VsZCBiZSBzb2x2ZWQgYnkgYSBzY2FuIG9mIHRoZSBEVAphbmQgb2YgdGhl IGVuY29kZXIgbGlzdCBieSB0aGUgRFJNIGRyaXZlciwgYnV0IEkgdGhpbmsgdGhhdCB0aGUgYWN0 dWFsCmRlZmluaXRpb25zIGFzIHByb3Bvc2VkIGJ5IG1lZGlhL3ZpZGVvLWludGVyZmFjZXMudHh0 IGFyZSBub3QgZWFzeSB0bwp1c2UuCgpEbyB5b3UgdGhpbmsgdGhhdCBhIGRlc2NyaXB0aW9uIGFz IGRvbmUgZm9yIEFMU0EgY291bGQgd29yaz8KCkEgc291bmQgY2FyZCBjcmVhdGlvbiBpcyBkb25l IGJ5IGEgZ2xvYmFsIHNvdW5kIGNvbmZpZ3VyYXRpb24gYW5kIGEKZGVzY3JpcHRpb24gb2YgdGhl IGxpbmtzIGJldHdlZW4gdGhlIGNhcmQgZWxlbWVudHMuIEhlcmUgaXMgdGhlIHRkYTk5OHgKcGFy dCBvZiB0aGUgQ3Vib3ggYXVkaW8gY2FyZCAoJ2F1ZGlvMScgaXMgdGhlIGF1ZGlvIGRldmljZSk6 CgoJc291bmQgewoJCWNvbXBhdGlibGUgPSAic2ltcGxlLWF1ZGlvLWNhcmQiOwoJCXNpbXBsZS1h dWRpby1jYXJkLG5hbWUgPSAiQ3Vib3ggQXVkaW8iOwoKCQlzaW1wbGUtYXVkaW8tY2FyZCxkYWkt bGlua0AwIHsJCS8qIEkyUyAtIEhETUkgKi8KCQkJZm9ybWF0ID0gImkycyI7CgkJCWNwdSB7CgkJ CQlzb3VuZC1kYWkgPSA8JmF1ZGlvMSAwPjsJLyogSTJTIG91dHB1dCAqLwoJCQl9OwoJCQljb2Rl YyB7CgkJCQlzb3VuZC1kYWkgPSA8JmhkbWkgMD47CQkvKiBJMlMgaW5wdXQgKi8KCQkJfTsKCQl9 OwoKCQlzaW1wbGUtYXVkaW8tY2FyZCxkYWktbGlua0AxIHsJCS8qIFMvUERJRiAtIEhETUkgKi8K CQkJY3B1IHsKCQkJCXNvdW5kLWRhaSA9IDwmYXVkaW8xIDE+OwkvKiBTL1BESUYgb3V0cHV0ICov CgkJCX07CgkJCWNvZGVjIHsKCQkJCXNvdW5kLWRhaSA9IDwmaGRtaSAxPjsJCS8qIFMvUERJRiBp bnB1dCAqLwoJCQl9OwoJCX07Cgl9OwoKVXNpbmcgdGhlIHNhbWUgZWxlbWVudHMsIGhlcmUgaXMg d2hhdCBjb3VsZCBiZSB0aGUgdmlkZW8gY2FyZCBvZiB0aGUKQXJtYWRhIDUxMCB3aXRoIGEgcGFu ZWwsIHRoZSB0ZGE5OTh4IGFuZCB0aGUgZGlzcGxheSBjb250cm9sbGVyOgoKCXZpZGVvIHsKCQlj b21wYXRpYmxlID0gInNpbXBsZS12aWRlby1jYXJkIjsKCgkJc2ltcGxlLXZpZGVvLWNhcmQsZHZp LWxpbmsgewoJCQljcnRjIHsKCQkJCWR2aSA9IDwmbGNkMD47CgkJCX07CgkJCWVuY29kZXIgewoJ CQkJZHZpID0gPCZwYW5lbD47CgkJCQljb25uZWN0b3ItdHlwZSA9IDc7CS8qIExWRFMgKi8KCQkJ fTsKCQl9OwoJCXNpbXBsZS12aWRlby1jYXJkLGR2aS1saW5rIHsKCQkJY3J0YyB7CgkJCQlkdmkg PSA8JmxjZDA+OwoJCQl9OwoJCQllbmNvZGVyIHsKCQkJCWR2aSA9IDwmaGRtaT47CgkJCQljb25u ZWN0b3ItdHlwZSA9IDExOwkvKiBIRE1JLUEgKi8KCQkJfTsKCQl9OwoJfTsKCglsY2QwOiBsY2Qt Y29udHJvbGxlckA4MjAwMDAgewoJCWNvbXBhdGlibGUgPSAibWFydmVsbCxhcm1hZGEtNTEwLWxj ZCI7CgkJLi4uIGhhcmR3YXJlIGRlZmluaXRpb25zIC4uLgoJfTsKCgloZG1pIDogaGRtaS1lbmNv ZGVyIHsKCQkuLiBzYW1lIGFzIGFib3ZlLCBidXQgd2l0aG91dCB0aGUgdmlkZW8gaW5wdXQgcG9y dCAuLgoJfTsKCglwYW5lbDogcGFuZWwgewoJCS4uIHBhbmVsIHBhcmFtZXRlcnMgLi4KCX07CgpU aGVuLCB0aGUgZ2VuZXJpYyAnc2ltcGxlLXZpZGVvLWNhcmQnIGhhcyBhbGwgZWxlbWVudHMgdG8g Y3JlYXRlIHRoZQpEUk0gZGV2aWNlLgoKLS0gCktlbiBhciBjJ2hlbnRhw7EJfAkgICAgICAqKiBC cmVpemggaGEgTGludXggYXRhdiEgKioKSmVmCQl8CQlodHRwOi8vbW9pbmVqZi5mcmVlLmZyLwpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwg bWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=