From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yakir Yang Subject: Re: [PATCH v14 0/17] Add Analogix Core Display Port Driver Date: Tue, 5 Apr 2016 10:06:06 +0800 Message-ID: <57031D8E.1020903@rock-chips.com> References: <1455534485-1154-1-git-send-email-ykk@rock-chips.com> <20160331101535.GZ2510@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20160331101535.GZ2510@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Inki Dae , Andrzej Hajda , Joonyoung Shim , Seung-Woo Kim , Kyungmin Park , Jingoo Han , Thierry Reding , Krzysztof Kozlowski , Rob Herring , Heiko Stuebner , Mark Yao , devicetree@vger.kernel.org, linux-samsung-soc@vger.kernel.org, Russell King , Pawel Moll , Ian Campbell , linux-rockchip@lists.infradead.org, emil.l.velikov@gmail.com, linux-kernel@vger.kernel.org, Kishon Vijay Abraham I , javier@osg.samsung.com, Kukjin Kim , dri-devel@lists.freedesktop.org, Kumar Gala , ajaynumb@gmail.com, robherr List-Id: devicetree@vger.kernel.org SGkgRGFuaWVsLAoKT24gMDMvMzEvMjAxNiAwNjoxNSBQTSwgRGFuaWVsIFZldHRlciB3cm90ZToK PiBPbiBNb24sIEZlYiAxNSwgMjAxNiBhdCAwNzowODowNVBNICswODAwLCBZYWtpciBZYW5nIHdy b3RlOgo+PiBIaSBhbGwsCj4+Cj4+ICAgIFRoZSBTYW1zdW5nIEV4eW5vcyBlRFAgY29udHJvbGxl ciBhbmQgUm9ja2NoaXAgUkszMjg4IGVEUCBjb250cm9sbGVyCj4+IHNoYXJlIHRoZSBzYW1lIElQ LCBzbyBhIGxvdCBvZiBwYXJ0cyBjYW4gYmUgcmUtdXNlZC4gSSBzcGxpdCB0aGUgY29tbW9uCj4+ IGNvZGUgaW50byBicmlkZ2UgZGlyZWN0b3J5LCB0aGVuIHJrMzI4OCBhbmQgZXh5bm9zIG9ubHkg bmVlZCB0byBrZWVwCj4+IHNvbWUgcGxhdGZvcm0gY29kZS4gQ2F1c2UgSSBjYW4ndCBmaW5kIHRo ZSBleGFjdCBJUCBuYW1lIG9mIGV4eW5vcyBkcAo+PiBjb250cm9sbGVyLCBzbyBJIGRlY2lkZSB0 byBuYW1lIGRwIGNvcmUgZHJpdmVyIHdpdGggImFuYWxvZ2l4IiB3aGljaCBJCj4+IGZpbmQgaW4g cmszMjg4IGVEUCBUUk0KPj4KPj4gQnV0IHRoZXJlIGFyZSBzdGlsbCB0aHJlZSBsaWdodCByZWdp c3RlcnMgc2V0dGluZyBkaWZmZXJlbnQgYmV0d2Vlbgo+PiBleHlub3MgYW5kIHJrMzI4OC4KPj4g MS4gUkszMjg4IGhhdmUgZml2ZSBzcGVjaWFsIHBsbCByZWdpc3RlcnMgd2hpY2ggbm90IGluZGlj YXRlIGluIGV4eW5vcwo+PiAgICAgZHAgY29udHJvbGxlci4KPj4gMi4gVGhlIGFkZHJlc3Mgb2Yg RFBfUEhZX1BEKGRwIHBoeSBwb3dlciBtYW5hZ2VyIHJlZ2lzdGVyKSBhcmUgZGlmZmVyZW50Cj4+ ICAgICBiZXR3ZWVuIHJrMzI4OCBhbmQgZXh5bm9zLgo+PiAzLiBSazMyODggYW5kIGV4eW5vcyBo YXZlIGRpZmZlcmVudCBzZXR0aW5nIHdpdGggQVVYX0hXX1JFVFJZX0NUTChkcCBkZWJ1Zwo+PiAg ICAgcmVnaXN0ZXIpLgo+Pgo+PiBEdWUgdG8gTWFyayBZYW8gaGF2ZSBpbnRyb2R1Y2VkIHRoZSBB VE9NSUMgc3VwcG9ydCB0byBSb2NrY2hpcCBkcm0sIHNvIGl0J3MKPj4gb2theSB0byB1c2UgdGhl IEFUT01JQyBoZWxwZXJzIGZ1bmN0aW9ucyBpbiBjb25uZWN0b3JfZnVuY3MuIE5vIG5lZWQgdG8g c3BsaWN0Cj4+IHRoZSBjb25uZWN0b3IgaW5pdCB0byBwbGF0Zm9ybSBkcml2ZXIgYW55bW9yZSwg YW5kIHRoaXMgaXMgdGhlIGJpZ2dlc3QgY2hhbmdlCj4+IHNpbmNlIHZlcnNpb24gMTEuCj4+Cj4+ IFRoaXMgdjE0IGRpZG4ndCBoYXZlIGxvdHMgb2YgbmV3IGNoYW5nZXMgd2hpY2ggc2VlbXMgbm90 IHRoZSBjb3JyZWN0IHRpbWUgdG8KPj4gdXBncmFkZSB0aGUgdmVyc2lvbiBudW1iZXIsIGJ1dCBJ IGhhdmUgY2hhbmdlZCBvcmRlcmluZyBvZiBwYXRjaGVzIChhZGRpbmcgMgo+PiBtb3JlLCBhbmQg cmVtb3ZpbmcgMiBvdXQpLiBFc3BlY2lhbGx5IHRvIHByZXZlbnQgY29uZnVzaW5nIHBlb3BsZSwg c28gSSB1cGRhdGVkCj4+IHRoZSB3aG9sZSBzZXJpZXMuCj4gU28gSSdtIGp1bXBpbmcgaW50byB0 aGlzIHBhcnQgd2F5IGxhdGUsIGJ1dCBqdXN0IG5vdGljZWQgKHdlbGwgVGhpZXJyeQo+IHBvaW50 ZWQgdGhpcyBvdXQgdG8gbWUpIHRoYXQgdGhlIGV4eW5vcyBkcCBkcml2ZXIgcmVpbnZlbnRzIGFs bCB0aGUgZHAgYW5kCj4gZHAtYXV4IGhlbHBlcnMgd2UgYWxyZWFkeS4gVGhhdCdzIHNvbWV3aGF0 IG9raXNoIGZvciBhIHByaXZhdGUgZHJpdmVyIChhbmQKPiBleHlub3MgaGFzIGEgcmVwdXRhdGlv biBmb3IgdGhhdCBraW5kIG9mIHN0dWZmKSwgYnV0IGltbyBub3Qgb2sgZm9yIGEKPiBzaGFyZWQg ZHJpdmVyLgo+Cj4gTm90IHNheWluZyB0aGlzIHNob3VsZCBibG9jayBtZXJnaW5nIHRoaXMgcGF0 Y2gsIGJ1dCBpdCByZWFsbHkgbmVlZHMgdG8gYmUKPiBhZGRyZXNzZWQuIEFsbCB0aGUgZHAgYXV4 IGFuZCBlZGlkIHJlYWQgY29kZSBpbiB0aGUgY3VycmVudAo+IGV4eW5vc19kcF9jb3JlL3JlZy5j IGZpbGVzIG5lZWRzIHRvIGJlIHJlcGxhY2VkIHdpdGggZHAgaGVscGVycyBhbmQgdGhlCj4gY29y ZSBpMmMgZWRpZCByZWFkaW5nIGNvZGUuCj4KPiBXaG8ncyBnb2luZyB0byBzaWduIHVwIHRvIGRv IHRoaXM/CgpWb2x1bnRlZXIgdG8gdGhhdCwgYWZ0ZXIgZmluaXNoIHRoaXMgdGhyZWFkLCBJIHdv dWxkIHNlbmQgbmV3IHNlcmllcyB0bwpzd2l0Y2ggdG8gdGFrZSB1c2Ugb2YgZHAgaGVscGVyLgoK Oi1ECi0gWWFraXIKCj4gLURhbmllbAo+Cj4+IFRoYW5rcywKPj4gLSBZYWtpcgo+Pgo+Pgo+PiBD aGFuZ2VzIGluIHYxNDoKPj4gLSBSZWJhc2UgdGhlIG5ldyBjaGFuZ2VzIGluIGlteC1kcCBkcml2 ZXIKPj4gLSBTcGxpdCB1cCB0aGlzIHBhdGNoIGludG8gMyBwYXJ0cywgbWFrZSB0aGlzIGVhc3kg dG8gcmV2aWV3IChIZWlrbykKPj4gLSBSZW1vdmUgdGhlIFJvY2tjaGlwIERQIFBIWSB0byBhbiBz ZXBhcmF0ZSB0aHJlYWQgKEhlaWtvKQo+PiAgICAgIGh0dHBzOi8vcGF0Y2h3b3JrLmtlcm5lbC5v cmcvcGF0Y2gvODMxMjcwMS8KPj4KPj4gQ2hhbmdlcyBpbiB2MTM6Cj4+IC0gVXNlIC5lbmFibGUg aW5zdGVhZCBvZiBwcmVwcmFyZS9jb21taXQgaW4gZW5jb2Rlcl9oZWxwZXJfZnVuY3MgKEhlaWtv KQo+PiAtIEZpeCB0aGUgbWlzc2luZyBwYXJhbWV0ZXJzIHdpdGggZHJtX2VuY29kZXJfaW5pdCgp IGhlbHBlciBmdW5jdGlvbi4gKEhlaWtvKQo+Pgo+PiBDaGFuZ2VzIGluIHYxMjoKPj4gLSBNb3Zl IHRoZSBjb25uZWN0b3IgaW5pdCB0byBhbmFsb2dpeF9kcCBkcml2ZXIsIGFuZCB1c2luZyBBVE9N SUMgaGVscGVyIChIZWlrbykKPj4gLSBBZGQgdGhlIGFjayBmcm9tIEppbmdvbwo+PiAtIFJlbW92 ZSB0aGUgZW51bSBsaW5rX3JhdGVfdHlwZSBzdHJ1Y3QsIHVzaW5nIHRoZSBtYXJjb3MgaW4gZHJt X2RwX2hlbHBlci5oIChKaW5nb28pCj4+Cj4+IENoYW5nZXMgaW4gdjExOgo+PiAtIFVzZXMgdGFi cyB0byBmaXggdGhlIGluZGVudGF0aW9uIGlzc3VlcyBpbiBhbmFsb2dpeF9kcF9jb3JlLmggKEhl aWtvKQo+PiAtIFJlbmFtZSB0aGUgImFuYWxvZ2l4LG5lZWQtZm9yY2UtaHBkIiB0byBjb21tb24g J2ZvcmNlLWhwZCcgKFJvYikKPj4gLSBBZGQgdGhlIGFjayBmcm9tIFJvYiBIZXJyaW5nCj4+IC0g UmV2ZXJ0IHBhcnRzIG9mIEd1c3Rhdm8gUGFkb3ZhbidzIGNoYW5nZXMgaW4gY29tbWl0Ogo+PiAJ ZHJtL2V4eW5vczogZG8gbm90IHN0YXJ0IGVuYWJsaW5nIERQIGF0IGJpbmQoKSBwaGFzZQo+PiAg ICBBZGQgZHAgcGh5IHBvd2Vyb24gZnVuY3Rpb24gaW4gYmluZCB0aW1lLgo+PiAtIE1vdmUgdGhl IHBhbmVsIHByZXBhcmUgZnJvbSBnZXRfbW9kZXMgdGltZSB0byBiaW5kIHRpbWUsIGFuZCBtb3Zl Cj4+ICAgIHRoZSBwYW5lbCB1bnByZXBhcmUgZnJvbSBicmlkZ2UtPmRpc2FibGUgdG8gdW5iaW5k IHRpbWUuIChIZWlrbykKPj4KPj4gQ2hhbmdlcyBpbiB2MTA6Cj4+IC0gQWRkIHRoZSBhY2sgZnJv bSBSb2IgSGVycmluZwo+PiAtIENvcnJlY3QgdGhlIFJPQ0tDSElQX0FOQUxPR0lYX0RQIGluZGVu dGF0aW9uIGluIEtjb25maWcgdG8gdGFicyBoZXJlIChIZWlrbykKPj4gLSBBZGQgdGhlIGFjayBm cm9tIFJvYiBIZXJyaW5nCj4+IC0gUmVtb3ZlIHRoZSBzdXJwbHVzICJwbGF0X2RhdGEiIGNoZWNr LiAoSGVpa28pCj4+IC0gICAgICAgc3dpdGNoIChkcC0+cGxhdF9kYXRhICYmIGRwLT5wbGF0X2Rh dGEtPmRldl90eXBlKSB7Cj4+ICsgICAgICAgc3dpdGNoIChkcC0+cGxhdF9kYXRhLT5kZXZfdHlw ZSkgewo+Pgo+PiBDaGFuZ2VzIGluIHY5Ogo+PiAtIERvY3VtZW50IG1vcmUgZGV0YWlscyBmb3Ig J3BvcnRzJyBwcm9wZXJ0eS4KPj4KPj4gQ2hhbmdlcyBpbiB2ODoKPj4gLSBDb3JyZWN0IHRoZSBy aWdodCBkb2N1bWVudCBwYXRoIG9mIGRpc3BsYXktdGltaW5nLnR4dCAoSGVpa28pCj4+IC0gQ29y cmVjdCB0aGUgbWlzc3BlbGwgb2YgJ2Zyb20nIHRvICdmcm0nLiAoSGVpa28pCj4+IC0gTW9kaWZ5 IHRoZSBjb21taXQgc3ViamVjdCBuYW1lLiAoSGVpa28pCj4+Cj4+IENoYW5nZXMgaW4gdjc6Cj4+ IC0gQmFjayB0byB1c2UgdGhlIG9mX3Byb3BlcnR5X3JlYWRfYm9vbCgpIGludGVyZmFjcyB0byBw cm92b2lkIGJhY2t3YXJkCj4+ICAgIGNvbXBhdGliaWxpdHkgb2YgImhzeW5jLWFjdGl2ZS1oaWdo IiAidnN5bmMtYWN0aXZlLWhpZ2giICJpbnRlcmxhY2VkIgo+PiAgICB0byBhdm9pZCAtRU9WRVJG TE9XIGVycm9yIChLcnp5c3p0b2YpCj4+Cj4+IENoYW5nZXMgaW4gdjY6Cj4+IC0gRml4IHRoZSBL Y29uZmlnIHJlY3Vyc2l2ZSBkZXBlbmRlbmN5IChKYXZpZXIpCj4+IC0gRml4IFBlYWNoIFBpdCBo cGQgcHJvcGVydHkgbmFtZSBlcnJvcjoKPj4gLSAgICAgICBocGQtZ3BpbyA9IDwmZ3B4MiA2IDA+ Owo+PiArICAgICAgIGhwZC1ncGlvcyA9IDwmZ3B4MiA2IDA+Owo+Pgo+PiBDaGFuZ2VzIGluIHY1 Ogo+PiAtIENvcnJlY3QgdGhlIGNoZWNrIGNvbmRpdGlvbiBvZiBncGlvX2lzX3ZhbGlkIHdoZW4g ZHJpdmVyIHRyeSB0byBnZXQKPj4gICAgdGhlICJocGQtZ3Bpb3MiIERUIHByb3BlcnkuIChIZWlr bykKPj4gLSBNb3ZlIHRoZSBwbGF0Zm9ybSBhdHRhY2ggY2FsbGJhY2sgaW4gdGhlIGZyb250IG9m IGNvcmUgZHJpdmVyIGJyaWRnZQo+PiAgICBhdHRjaCBmdW5jdGlvbi4gQ2F1c2Ugb25jZSBwbGF0 Zm9ybSBmYWlsZWQgYXQgYXR0YWNoLCBjb3JlIGRyaXZlciBzaG91bGQKPj4gICAgc3RpbGwgZmFp bGVkLCBzbyBubyBuZWVkIHRvIGluaXQgY29ubmVjdG9yIGJlZm9yZSBwbGF0Zm9ybSBhdHRhY2hl ZCAoS3J6eXN6dG9mKQo+PiAtIEtlZXAgY29kZSBzdHlsZSBubyBjaGFuZ2VzIHdpdGggdGhlIHBy ZXZpb3VzIGV4eW5vc19kcF9jb2RlLmMgaW4gdGhpcwo+PiAgICBwYXRjaCwgYW5kIHVwZGF0ZSBj b21taXQgbWVzc2FnZSBhYm91dCB0aGUgbmV3IGV4cG9ydCBzeW1ib2wgKEtyenlzenRvZikKPj4g LSBHYXRoZXIgdGhlIGRldmljZSB0eXBlIHBhdGNoICh2NCAxMS8xNikgaW50byB0aGlzIG9uZS4g KEtyenlzenRvZikKPj4gLSBsZWF2ZSBvdXQgdGhlIGNvbm5lY3RvciByZWdpc3RyYXRpb24gdG8g YW5hbG9naXggcGxhdGZvcm0gZHJpdmVyLiAoVGhpZXJyeSkKPj4gLSBSZXNlcXVlbmNlIHRoaXMg cGF0Y2ggYWZ0ZXIgYW5hbG9naXhfZHAgZHJpdmVyIGhhdmUgYmVlbiBzcGxpdAo+PiAgICBmcm9t IGV4eW5vc19kcCBjb2RlLCBhbmQgcmVwaHJhc2UgcmVhc29uYWJsZSBjb21taXQgbWVzc2FnZSwg YW5kCj4+ICAgIHJlbW92ZSBzb21lIGNvbnRyb3ZlcnNpYWwgc3R5bGUgKEtyenlzenRvZikKPj4g ICAgICAtCQlhbmFsb2dpeF9kcF93cml0ZV9ieXRlX3RvX2RwY2QoCj4+ICAgICAgLSAJCQkJZHAs IERQX1RFU1RfUkVTUE9OU0UsCj4+ICAgICAgKwkJYW5hbG9naXhfZHBfd3JpdGVfYnl0ZV90b19k cGNkKGRwLAo+PiAgICAgICsJCQkJRFBfVEVTVF9SRVNQT05TRSwKPj4gCQkJCURQX1RFU1RfRURJ RF9DSEVDS1NVTV9XUklURSk7Cj4+IC0gU3dpdGNoIHZpZGVvIHRpbWluZyB0eXBlIHRvICJ1MzIi LCBzbyBkcml2ZXIgY291bGQgdXNlICJvZl9wcm9wZXJ0eV9yZWFkX3UzMiIKPj4gICAgdG8gZ2V0 IHRoZSBiYWNrd29yZCB0aW1pbmcgdmFsdWVzLiBLcnp5c3p0b2Ygc3VnZ2VzdCBtZSB0aGF0IGRy aXZlciBjb3VsZCB1c2UKPj4gICAgdGhlICJvZl9wcm9wZXJ0eV9yZWFkX2Jvb2wiIHRvIGdldCBi YWNrd29yZCB0aW1pbmcgdmFsdWVzLCBidXQgdGhhdCBpbnRlcmZhY3MKPj4gICAgd291bGQgbW9k aWZ5IHRoZSBvcmlnaW5hbCBkcm1fZGlzcGxheV9tb2RlIHRpbWluZyBkaXJlY3RseSAod2hldGhl ciB0aG9zZQo+PiAgICBwcm9wZXJ0aWVzIGV4aXN0cyBvciBub3QpLgo+PiAtIENvcnJlY3QgdGhl IG1pc3NwZWxsIGluIGNvbW1pdCBtZXNzYWdlLiAoS3J6eXN6dG9mKQo+PiAtIFJlbW92ZSB0aGUg ZW1wdHkgbGluZSBhdCB0aGUgZW5kIG9mIGRvY3VtZW50LCBhbmQgY29ycmVjdCB0aGUgZW5kcG9p bnQKPj4gICAgbnVtYmVycyBpbiB0aGUgZXhhbXBsZSBEVCBub2RlLCBhbmQgcmVtb3ZlIHRoZSBy ZWd1bGF0b3IgaW9tdXggc2V0dGluZwo+PiAgICBpbiBkcml2ZXIgY29kZSB3aGlsZSB1c2luZyB0 aGUgcGluY3RsIGluIGRldmljZXRyZWUgaW5zdGVhZC4gKEhlaWtvKQo+PiAtIEFkZCBkZXZpY2Ug dHlwZSBkZWNsYXJlZCwgY2F1c2UgdGhlIHByZXZpb3VzICJwbGF0Zm9ybSBkZXZpY2UgdHlwZQo+ PiAgICBzdXBwb3J0ICh2NCAxMS8xNikiIGFscmVhZHkgbWVyZ2UgaW50byAodjUgMDIvMTQpLgo+ PiAtIEltcGxlbWVudCBjb25uZWN0b3IgcmVnaXN0cmF0aW9uIGNvZGUuIChUaGllcnJ5KQo+PiAt IFNwbGl0IGJpbmRpbmcgZG9jJ3MgZnJvbSBkcml2ZXIgY2hhbmdlcy4gKFJvYikKPj4gLSBBZGQg ZURQIGhvdHBsdWcgcGluY3RybCBwcm9wZXJ0eS4gKEhlaWtvKQo+Pgo+PiBDaGFuZ2VzIGluIHY0 Ogo+PiAtIFVwZGF0ZSAiYW5hbG9naXgsaHBkLWdwaW9zIiB0byAiaHBkLWdwaW9zIiBEVCBwcm9w ZXJ5LiAoUm9iKQo+PiAtIFJlbmFtZSAiYW5hbG9naXhfZHAtZXh5bm9zLmMiIGZpbGUgbmFtZSB0 byAiZXh5bm9zX2RwLmMiIChKaW5nb28pCj4+IC0gQ3JlYXRlIGEgc2VwYXJhdGUgZm9sZGVyIGZv ciBhbmFsb2dpeCBjb2RlIGluIGJyaWRnZS8gKEFyY2hpdCkKPj4gLSBVcGRhdGUgY29tbWl0IG1l c3NhZ2UgbW9yZSByZWFkYWJsZS4gKEppbmdvbykKPj4gLSBBZGp1c3QgdGhlIG9yZGVyIGZyb20g MDUgdG8gMDQKPj4gLSBQcm92aWRlIGJhY2t3b3JkIGNvbXBhdGliaWxpdHkgd2l0aCBzYW1zdW5n LiAoS3J6eXN6dG9mKQo+PiAtIFNwbGl0IGFsbCBEVFMgY2hhbmdlcywgYW5kIHByb3ZpZGUgYmFj a3dhcmQgY29tcGF0aWJpbGl0eS4gTWFyayBvbGQKPj4gICAgcHJvcGVydGllcyBhcyBkZXByZWNh dGVkIGJ1dCBzdGlsbCBzdXBwb3J0IHRoZW0uIChLcnp5c3p0b2YpCj4+IC0gVXBkYXRlICJhbmFs b2dpeCxocGQtZ3BpbyIgdG8gImhwZC1ncGlvcyIgcHJvcCBuYW1lLiAoUm9iKQo+PiAtIERlcHJl Y2F0ZWQgc29tZSBwcm9wZXJ0aWVzIHdoaWNoIGNvdWxkIHBhcnNlZCBmcm9tIEVkaWQvTW9kZS9E UENELiAoVGhpZXJyeSkKPj4gICAgICAiYW5hbG9naXgsY29sb3Itc3BhY2UiICYgImFuYWxvZ2l4 LGNvbG9yLWRlcHRoIiAgICYKPj4gICAgICAiYW5hbG9naXgsbGluay1yYXRlIiAgICYgImFuYWxv Z2l4LGxhbmUtY291bnQiICAgICYKPj4gICAgICAiYW5hbG9naXgseWNiY3ItY29lZmYiICYgImFu YWxvZ2l4LGR5bmFtaWMtcmFuZ2UiICYKPj4gICAgICAidnN5bmMtYWN0aXZlLWhpZ2giICAgICYg ImhzeW5jLWFjdGl2ZS1oaWdoIiAgICAgICYgImludGVybGFjZXMiCj4+IC0gU2VwYXJhdGUgYWxs IERUUyBjaGFuZ2VzIHRvIGEgc2VwYXJhdGUgcGF0Y2guIChLcnp5c3p0b2YpCj4+IC0gUmVtb3Zl IHNvbWUgZGVwcmVjYXRlZCBEVCBwcm9wZXJ0aWVzIGluIHJvY2tjaGlwIGRwIGRvY3VtZW50Lgo+ PiAtIFNlcHJhdGUgdGhlIGxpbmstcmF0ZSBhbmQgbGFuZS1jb3VudCBsaW1pdCBvdXQgd2l0aCB0 aGUgZGV2aWNlX3R5cGUKPj4gICAgZmxhZy4gKFRoaWVycnkpCj4+IC0gVGFrZSBKaW5nb28gc3Vn Z2VzdCwgYWRkIGNvbW1pdCBtZXNzYWdlcy4KPj4gLSBDYWxsIGRybV9wYW5lbF9wcmVwYXJlKCkg aW4gLmdldF9tb2RlcyBmdW5jdGlvbiwgZW5zdXJlIHBhbmVsIHNob3VsZAo+PiAgICBwb3dlciBv biBiZWZvcmUgZHJpdmVyIHRyeSB0byByZWFkIGVkaWQgbWVzc2FnZS4KPj4KPj4gQ2hhbmdlcyBp biB2MzoKPj4gLSBNb3ZlIGV4eW5vcydzIHZpZGVvX3RpbWluZyBjb2RlIHRvIGFuYWxvZ2l4X2Rw LWV4eW5vcyBwbGF0Zm9ybSBkcml2ZXIsCj4+ICAgIGFkZCBnZXRfbW9kZXMgbWV0aG9kIHRvIHN0 cnVjdCBhbmFsb2dpeF9kcF9wbGF0X2RhdGEuIChUaGllcnJ5KQo+PiAtIFJlbmFtZSBzb21lICJz YW1zdW5nKiIgZHRzIHByb3BlcnkgdG8gImFuYWxvZ2l4KiIuIChIZWlrbykKPj4gLSBUaGUgbGlu a19yYXRlIGFuZCBsYW5lX2NvdW50IHNob3VsZG4ndCBjb25maWcgdG8gdGhlIERUIHByb3BlcnR5 IHZhbHVlCj4+ICAgIGRpcmVjdGx5LCBidXQgd2UgY2FuIHRha2UgdGhvc2UgYXMgaGFyZHdhcmUg bGltaXRlLiBGb3IgZXhhbXBsZSwgUkszMjg4Cj4+ICAgIG9ubHkgc3VwcG9ydCA0IHBoeXNpY2Fs IGxhbmVzIG9mIDIuNy8xLjYyIEdicHMvbGFuZSwgc28gRFQgcHJvcGVydHkgd291bGQKPj4gICAg bGlrZSAibGluay1yYXRlID0gMHgwYSIgImxhbmUtY291bnQgPSA0Ii4gKFRoaWVycnkpCj4+IC0g RHluYW1pYyBwYXJzZSB2aWRlbyB0aW1pbmcgaW5mbyBmcm9tIHN0cnVjdCBkcm1fZGlzcGxheV9t b2RlIGFuZAo+PiAgICBzdHJ1Y3QgZHJtX2Rpc3BsYXlfaW5mby4gKFRoaWVycnkpCj4+IC0gQWRk IGRldmljZXRyZWUgYmluZGluZyBkb2N1bWVudHMuIChIZWlrbykKPj4gLSBSZW1vdmUgc3luYyBw b2wgJiBjb2xvcmltZXRyeSBwcm9wZXJpZXMgZnJvbSB0aGUgbmV3IGFuYWxvZ2l4IGRwIGRyaXZl cgo+PiAgICBkZXZpY2V0cmVlIGJpbmRpbmcuIChUaGllcnJ5KQo+PiAtIFVwZGF0ZSB0aGUgZXhp c3QgZXh5bm9zIGR0c2kgZmlsZSB3aXRoIHRoZSBsYXRlc3QgRFAgRFQgcHJvcGVyaWVzLgo+PiAt IExlYXZlICJzY2xrX2VkcF8yNG0iIHRvIHJvY2tjaGlwIGRwIHBoeSBkcml2ZXIgd2hpY2ggbmFt ZSB0byAiMjRtIiwKPj4gICAgYW5kIGxlYXZlICJzY2xrX2VkcCIgdG8gYW5hbG9naXggZHAgY29y ZSBkcml2ZXIgd2hpY2ggbmFtZSB0byAiZHAiLAo+PiAgICBhbmQgbGVhdmUgInBjbGtfZWRwIiB0 byByb2NrY2hpcCBkcCBwbGF0Zm9ybSBkcml2ZXIgd2hpY2ggbmFtZSB0bwo+PiAgICAicGNsayIu IChUaGllcnJ5ICYgSGVpa28pCj4+IC0gQWRkIGRldmljZXRyZWUgYmluZGluZyBkb2N1bWVudC4g KEhlaWtvKQo+PiAtIFJlbW92ZSAicm9ja2NoaXAscGFuZWwiIERUIHByb3BlcnR5LCB0YWtlIHVz ZSBvZiByZW1vdGUgcG9pbnQgdG8gZ2V0IHBhbmVsCj4+ICAgIG5vZGUuIChIZWlrbykKPj4gLSBB ZGQgdGhlIG5ldyBmdW5jdGlvbiBwb2ludCBkcF9wbGF0ZGF0YS0+Z2V0X21vZGVzKCkgaW5pdC4K Pj4gLSBBZGQgImFuYWxvZ2l4LG5lZWQtZm9yY2UtaHBkIiB0byBpbmRpY2F0ZSB3aGV0aGVyIGRy aXZlciBuZWVkIGZvY2UKPj4gICAgaHBkIHdoZW4gaHBkIGRldGVjdCBmYWlsZWQuCj4+IC0gbW92 ZSBkcCBocGQgZGV0ZWN0IHRvIGNvbm5lY3RvciBkZXRlY3QgZnVuY3Rpb24uCj4+IC0gQWRkIGVk aWQgbW9kZXMgcGFyc2Ugc3VwcG9ydAo+Pgo+PiBDaGFuZ2VzIGluIHYyOgo+PiAtIFJlbW92ZSBu ZXcgY29weXJpZ2h0IChKaW5nb28pCj4+IC0gRml4IGNvbXBpbGVkIGZhaWxlZCBkdWUgdG8gYW5h bG9naXhfZHBfZGV2aWNlIG1pc3NwZWxsCj4+IC0gSW1wcm92ZWQgY29tbWl0IG1lc3NhZ2UgbW9y ZSByZWFkYWJsZSwgYW5kIGF2b2lkIHVzaW5nIHNvbWUKPj4gICAgdW5jb21tb24gc3R5bGUgbGlr ZSBiZWxsb3c6IChKb2UgUHJlY2hlcykKPj4gICAgICAtICByZXR2YWwgPSBleHlub3NfZHBfcmVh ZF9ieXRlc19mcm9tX2kyYyguLi4KPj4gICAgCQkJCSAgLi4uKTsKPj4gICAgICArICByZXR2YWwg PQo+PiAgICAgICsgIGV4eW5vc19kcF9yZWFkX2J5dGVzX2Zyb21faTJjKC4uLi4uLik7Cj4+IC0g R2V0IHBhbmVsIG5vZGUgd2l0aCByZW1vdGUtZW5kcG9pbnQgbWV0aG9kLCBhbmQgY3JlYXRlIGRl dmljZXRyZWUgYmluZGluZwo+PiAgICBmb3IgZHJpdmVyLiAoSGVpa28pCj4+IC0gUmVtb3ZlIHRo ZSBjbG9jayBlbmFibGUvZGlzYmFsZSB3aXRoICJzY2xrX2VkcCIgJiAic2Nsa19lZHBfMjRtIiwK Pj4gICAgbGVhdmUgdGhvc2UgY2xvY2sgdG8gcm9ja2NoaXAgZHAgcGh5IGRyaXZlci4KPj4gLSBG aXggY29tcGlsZSBmYWlsZWQgZHV0IHRvIHBoeV9wZF9hZGRyIHZhcmlhYmxlIG1pc3NwZWxsIGVy cm9yCj4+Cj4+IEhlaWtvIFN0dWVibmVyICgyKToKPj4gICAgZHJtL2V4eW5vczogZHA6IHJlbmFt ZSBpbXBsZW1lbnRhdGlvbiBzcGVjaWZpYyBkcml2ZXIgcGFydAo+PiAgICBkcm06IGJyaWRnZTog YW5hbG9naXgvZHA6IHJlbmFtZSByZWdpc3RlciBjb25zdGFudHMKPj4KPj4gWWFraXIgWWFuZyAo MTUpOgo+PiAgICBkcm06IGJyaWRnZTogYW5hbG9naXgvZHA6IHNwbGl0IGV4eW5vcyBkcCBkcml2 ZXIgdG8gYnJpZGdlIGRpcmVjdG9yeQo+PiAgICBkcm06IGJyaWRnZTogYW5hbG9naXgvZHA6IGZp eCBzb21lIG9idmlvdXMgY29kZSBzdHlsZQo+PiAgICBkcm06IGJyaWRnZTogYW5hbG9naXgvZHA6 IHJlbW92ZSBkdXBsaWNhdGUgY29uZmlndXJhdGlvbiBvZiBsaW5rIHJhdGUKPj4gICAgICBhbmQg bGluayBjb3VudAo+PiAgICBkcm06IGJyaWRnZTogYW5hbG9naXgvZHA6IGR5bmFtaWMgcGFyc2Ug c3luY19wb2wgJiBpbnRlcmxhY2UgJgo+PiAgICAgIGR5bmFtaWNfcmFuZ2UKPj4gICAgZHQtYmlu ZGluZ3M6IGFkZCBkb2N1bWVudCBmb3IgYW5hbG9naXggZGlzcGxheSBwb3J0IGRyaXZlcgo+PiAg ICBBUk06IGR0czogZXh5bm9zL2RwOiByZW1vdmUgc29tZSBwcm9wZXJ0aWVzIHRoYXQgZGVwcmVj YXRlZCBieQo+PiAgICAgIGFuYWxvZ2l4X2RwIGRyaXZlcgo+PiAgICBkcm06IHJvY2tjaGlwOiBk cDogYWRkIHJvY2tjaGlwIHBsYXRmb3JtIGRwIGRyaXZlcgo+PiAgICBkdC1iaW5kaW5nczogYWRk IGRvY3VtZW50IGZvciByb2NrY2hpcCB2YXJpYW50IG9mIGFuYWxvZ2l4X2RwCj4+ICAgIGRybTog YnJpZGdlOiBhbmFsb2dpeC9kcDogYWRkIHNvbWUgcmszMjg4IHNwZWNpYWwgcmVnaXN0ZXJzIHNl dHRpbmcKPj4gICAgZHJtOiBicmlkZ2U6IGFuYWxvZ2l4L2RwOiBhZGQgbWF4IGxpbmsgcmF0ZSBh bmQgbGFuZSBjb3VudCBsaW1pdCBmb3IKPj4gICAgICBSSzMyODgKPj4gICAgZHJtOiBicmlkZ2U6 IGFuYWxvZ2l4L2RwOiB0cnkgZm9yY2UgaHBkIGFmdGVyIHBsdWcgaW4gbG9va3VwIGZhaWxlZAo+ PiAgICBkcm06IGJyaWRnZTogYW5hbG9naXgvZHA6IG1vdmUgaHBkIGRldGVjdCB0byBjb25uZWN0 b3IgZGV0ZWN0IGZ1bmN0aW9uCj4+ICAgIGRybTogYnJpZGdlOiBhbmFsb2dpeC9kcDogYWRkIGVk aWQgbW9kZXMgcGFyc2UgaW4gZ2V0X21vZGVzIG1ldGhvZAo+PiAgICBkcm06IGJyaWRnZTogYW5h bG9naXgvZHA6IGFkZCBwYW5lbCBwcmVwYXJlL3VucHJlcGFyZSBpbgo+PiAgICAgIHN1c3BlbmQv cmVzdW1lIHRpbWUKPj4gICAgZHJtOiBicmlkZ2U6IGFuYWxvZ2l4L2RwOiBGaXggdGhlIHBvc3Np YmxlIGRlYWQgbG9jayBpbiBicmlkZ2UgZGlzYWJsZQo+PiAgICAgIHRpbWUKPj4KPj4gICAuLi4v YmluZGluZ3MvZGlzcGxheS9icmlkZ2UvYW5hbG9naXhfZHAudHh0ICAgICAgICB8ICAgNTIgKwo+ PiAgIC4uLi9iaW5kaW5ncy9kaXNwbGF5L2V4eW5vcy9leHlub3NfZHAudHh0ICAgICAgICAgIHwg ICA5MyArLQo+PiAgIC4uLi9kaXNwbGF5L3JvY2tjaGlwL2FuYWxvZ2l4X2RwLXJvY2tjaGlwLnR4 dCAgICAgIHwgICA5MiArKwo+PiAgIGFyY2gvYXJtL2Jvb3QvZHRzL2V4eW5vczUyNTAtYXJuZGFs ZS5kdHMgICAgICAgICAgIHwgICAgMiAtCj4+ICAgYXJjaC9hcm0vYm9vdC9kdHMvZXh5bm9zNTI1 MC1zbWRrNTI1MC5kdHMgICAgICAgICAgfCAgICAyIC0KPj4gICBhcmNoL2FybS9ib290L2R0cy9l eHlub3M1MjUwLXNub3ctY29tbW9uLmR0c2kgICAgICB8ICAgIDQgKy0KPj4gICBhcmNoL2FybS9i b290L2R0cy9leHlub3M1MjUwLXNwcmluZy5kdHMgICAgICAgICAgICB8ICAgIDQgKy0KPj4gICBh cmNoL2FybS9ib290L2R0cy9leHlub3M1NDIwLXBlYWNoLXBpdC5kdHMgICAgICAgICB8ICAgIDQg Ky0KPj4gICBhcmNoL2FybS9ib290L2R0cy9leHlub3M1NDIwLXNtZGs1NDIwLmR0cyAgICAgICAg ICB8ICAgIDIgLQo+PiAgIGFyY2gvYXJtL2Jvb3QvZHRzL2V4eW5vczU4MDAtcGVhY2gtcGkuZHRz ICAgICAgICAgIHwgICAgMiAtCj4+ICAgZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9LY29uZmlnICAg ICAgICAgICAgICAgICAgICAgfCAgICAyICsKPj4gICBkcml2ZXJzL2dwdS9kcm0vYnJpZGdlL01h a2VmaWxlICAgICAgICAgICAgICAgICAgICB8ICAgIDEgKwo+PiAgIGRyaXZlcnMvZ3B1L2RybS9i cmlkZ2UvYW5hbG9naXgvS2NvbmZpZyAgICAgICAgICAgIHwgICAgMyArCj4+ICAgZHJpdmVycy9n cHUvZHJtL2JyaWRnZS9hbmFsb2dpeC9NYWtlZmlsZSAgICAgICAgICAgfCAgICAxICsKPj4gICBk cml2ZXJzL2dwdS9kcm0vYnJpZGdlL2FuYWxvZ2l4L2FuYWxvZ2l4X2RwX2NvcmUuYyB8IDE0MzAg KysrKysrKysrKysrKysrKysrCj4+ICAgZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9hbmFsb2dpeC9h bmFsb2dpeF9kcF9jb3JlLmggfCAgMjgxICsrKysKPj4gICBkcml2ZXJzL2dwdS9kcm0vYnJpZGdl L2FuYWxvZ2l4L2FuYWxvZ2l4X2RwX3JlZy5jICB8IDEzMjAgKysrKysrKysrKysrKysrKysKPj4g ICAuLi4vYW5hbG9naXgvYW5hbG9naXhfZHBfcmVnLmh9ICAgICAgICAgICAgICAgICAgICB8ICAy NzAgKystLQo+PiAgIGRyaXZlcnMvZ3B1L2RybS9leHlub3MvS2NvbmZpZyAgICAgICAgICAgICAg ICAgICAgIHwgICAgMyArLQo+PiAgIGRyaXZlcnMvZ3B1L2RybS9leHlub3MvTWFrZWZpbGUgICAg ICAgICAgICAgICAgICAgIHwgICAgMiArLQo+PiAgIGRyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5 bm9zX2RwLmMgICAgICAgICAgICAgICAgIHwgIDMyNCArKysrKwo+PiAgIGRyaXZlcnMvZ3B1L2Ry bS9leHlub3MvZXh5bm9zX2RwX2NvcmUuYyAgICAgICAgICAgIHwgMTUxMCAtLS0tLS0tLS0tLS0t LS0tLS0tLQo+PiAgIGRyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2RwX2NvcmUuaCAgICAg ICAgICAgIHwgIDI4MiAtLS0tCj4+ICAgZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3NfZHBf cmVnLmMgICAgICAgICAgICAgfCAxMjYzIC0tLS0tLS0tLS0tLS0tLS0KPj4gICBkcml2ZXJzL2dw dS9kcm0vcm9ja2NoaXAvS2NvbmZpZyAgICAgICAgICAgICAgICAgICB8ICAgIDkgKwo+PiAgIGRy aXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9NYWtlZmlsZSAgICAgICAgICAgICAgICAgIHwgICAgMSAr Cj4+ICAgZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL2FuYWxvZ2l4X2RwLXJvY2tjaGlwLmMgICAg fCAgMzg0ICsrKysrCj4+ICAgaW5jbHVkZS9kcm0vYnJpZGdlL2FuYWxvZ2l4X2RwLmggICAgICAg ICAgICAgICAgICAgfCAgIDQxICsKPj4gICAyOCBmaWxlcyBjaGFuZ2VkLCA0MTE1IGluc2VydGlv bnMoKyksIDMyNjkgZGVsZXRpb25zKC0pCj4+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IERvY3VtZW50 YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9kaXNwbGF5L2JyaWRnZS9hbmFsb2dpeF9kcC50eHQK Pj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdz L2Rpc3BsYXkvcm9ja2NoaXAvYW5hbG9naXhfZHAtcm9ja2NoaXAudHh0Cj4+ICAgY3JlYXRlIG1v ZGUgMTAwNjQ0IGRyaXZlcnMvZ3B1L2RybS9icmlkZ2UvYW5hbG9naXgvS2NvbmZpZwo+PiAgIGNy ZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL2dwdS9kcm0vYnJpZGdlL2FuYWxvZ2l4L01ha2VmaWxl Cj4+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvZ3B1L2RybS9icmlkZ2UvYW5hbG9naXgv YW5hbG9naXhfZHBfY29yZS5jCj4+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvZ3B1L2Ry bS9icmlkZ2UvYW5hbG9naXgvYW5hbG9naXhfZHBfY29yZS5oCj4+ICAgY3JlYXRlIG1vZGUgMTAw NjQ0IGRyaXZlcnMvZ3B1L2RybS9icmlkZ2UvYW5hbG9naXgvYW5hbG9naXhfZHBfcmVnLmMKPj4g ICByZW5hbWUgZHJpdmVycy9ncHUvZHJtL3tleHlub3MvZXh5bm9zX2RwX3JlZy5oID0+IGJyaWRn ZS9hbmFsb2dpeC9hbmFsb2dpeF9kcF9yZWcuaH0gKDYyJSkKPj4gICBjcmVhdGUgbW9kZSAxMDA2 NDQgZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3NfZHAuYwo+PiAgIGRlbGV0ZSBtb2RlIDEw MDY0NCBkcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcF9jb3JlLmMKPj4gICBkZWxldGUg bW9kZSAxMDA2NDQgZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3NfZHBfY29yZS5oCj4+ICAg ZGVsZXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2RwX3JlZy5j Cj4+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9hbmFsb2dp eF9kcC1yb2NrY2hpcC5jCj4+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvZHJtL2JyaWRn ZS9hbmFsb2dpeF9kcC5oCj4+Cj4+IC0tIAo+PiAxLjkuMQo+Pgo+Pgo+PiBfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+PiBkcmktZGV2ZWwgbWFpbGluZyBs aXN0Cj4+IGRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPj4gaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwKCgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0 CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK