From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark yao Subject: Re: drm: rockchip: CONFIG_DRM_FBDEV_EMULATION will crash the HDMI down sometimes Date: Tue, 17 Jan 2017 16:25:07 +0800 Message-ID: <587DD4E3.5070202@rock-chips.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: 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: Randy Li Cc: "ayaka@soulik.info" , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-rockchip@lists.infradead.org, linux-arm-kernel@lists.infradead.org List-Id: linux-rockchip.vger.kernel.org CnN0YXRpYyB2b2lkIHZvcF9wbGFuZV9hdG9taWNfdXBkYXRlKHN0cnVjdCBkcm1fcGxhbmUgKnBs YW5lLAogICAgICAgICBzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpvbGRfc3RhdGUpCnsKICAgICBp ZiAoV0FSTl9PTighdm9wLT5pc19lbmFibGVkKSkKICAgICAgICAgcmV0dXJuOwoKVGhlIGlzc3Vl cyBzZWVtcyB2b3AgaXMgbm90IGVuYWJsZS4gYnV0IGNvbW1pdCBwbGFuZXMgaXMgdXNpbmcgCkRS TV9QTEFORV9DT01NSVRfQUNUSVZFX09OTFkuLi4KCkhpIFJhbmR5CgpDYW4geW91IGFkZCBzb21l IHByaW50IGZvciB0aGlzIGJ1ZzoKICAgICAxLCBJIHRoaW5rIHZvcF9jcnRjX2VuYWJsZSBmdW5j dGlvbiBzaG91bGQgYmUgY2FsbCBiZWZvcmUgCnZvcF9wbGFuZV9hdG9taWNfdXBkYXRlLCB5b3Ug Y2FuIGFkZCBzb21lIHByaW50IHRvIHZlcmlmaWVkIGl0LgogICAgIDIsIGFsc28gYWRkIGEgdHJh Y2Ugb24gdm9wX2NydGNfZGlzYWJsZS4KICAgICAzLCBwcmludCB0aGUgc3RhdHVzIG9mICBjcnRj LT5zdGF0ZS0+YWN0aXZlIGFuZCAKcGxhbmVfY3J0Y19hY3RpdmUocGxhbmUtPnN0YXRlKSB3aGVu IGJ1ZyBoYXBwZW4uCgpUaGFua3MuCk9uIDIwMTflubQwMeaciDE35pelIDE1OjU4LCBSYW5keSBM aSB3cm90ZToKPiBIZWxsbzoKPiAgIEkgd2FudCB0byBlbmFibGUgdGhlIHZpZGVvIG91dHB1dCBh dCBSSzMyODggRmlyZWZseSBib2FyZCwgYnV0IEkgCj4gZm91bmQgaWYgSSBlbmFibGUgQ09ORklH X0RSTV9GQkRFVl9FTVVMQVRJT04sIHRoZSBIRE1JIHdvdWxkIGNyYXNoIAo+IGRvd24gc29tZXRp bWVzIGJ1dCBzb21ldGltZXMgaXQgd29ya3MuIEFmdGVyIGRpc2FibGUgdGhhdCBvcGluaW9uLCBJ IAo+IG5ldmVyIG1lZXQgYSBwcm9ibGVtLiBJIGhhdmUgbm90IHZlcmlmaWVkIGl0IHdpdGggZURQ IGFzIEkgbWVldCBhIGJpZyAKPiBwcm9ibGVtIGluIHRoZXJlLgo+Cj4gWyAgT0sgIF0gU3RvcHBl ZCBMU0I6IExvYWQga2VybmVsIG1vZHVsZXMgbmVlZGVkIHRvIGVuYWJsZSBjcHVmcmVxIAo+IHNj YWxpbmcuCj4gWyAgIDMzLjI4Mjg0M10gW2RybTpkcm1fYXRvbWljX2hlbHBlcl9jb21taXRfY2xl YW51cF9kb25lIAo+IFtkcm1fa21zX2hlbHBlcl1dICpFUlJPUiogW0NSVEM6Mjc6Y3J0Yy0wXSBm bGlwX2RvbmUgdGltZWQgb3V0Cj4gWyAgIDMzLjM2MTQ4OV0gLS0tLS0tLS0tLS0tWyBjdXQgaGVy ZSBdLS0tLS0tLS0tLS0tCj4gWyAgIDMzLjM2NjI1MV0gV0FSTklORzogQ1BVOiAyIFBJRDogNDc2 IGF0IAo+IC9ob21lL2F5YWthL3dvcmtzcGFjZS9yazMyODgva2VybmVsL2xpbnV4LWtlcm5lbC9k cml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJtJAo+IHZvcC5jOjczMCB2b3BfcGxh bmVfYXRvbWljX3VwZGF0ZSsweDEyMTgvMHgxNzdjIFtyb2NrY2hpcGRybV0KPiBbICAgMzMuMzgz MDcxXSBNb2R1bGVzIGxpbmtlZCBpbjogcm9ja2NoaXBfdm9wX3JlZyByb2NrY2hpcGRybSAKPiBk d19oZG1pX3JvY2tjaGlwIGR3X2hkbWkgZHJtX2ttc19oZWxwZXIgY2ZiZmlsbHJlY3QgbWFsaV9r YmFzZSBzeXMkCj4gb3B5YXJlYSBncGlvX2lyX3JlY3YgY2ZiaW1nYmx0IHN5c2ZpbGxyZWN0IHJj X2NvcmUgZHdjMiBzeXNpbWdibHQgCj4gZmJfc3lzX2ZvcHMgcGFuZWxfc2ltcGxlIGNmYmNvcHlh cmVhIHJrX2NyeXB0byBkcm0gbnZtZW1fcm9ja2NoJAo+IHBfZWZ1c2UgdWRjX2NvcmUgZGVzX2dl bmVyaWMgcGh5X3JvY2tjaGlwX3VzYiBwd21fcm9ja2NoaXAgcHdtX2JsIAo+IGJhY2tsaWdodCBm Ygo+IFsgICAzMy40MTI3NTFdIENQVTogMiBQSUQ6IDQ3NiBDb21tOiBYIFRhaW50ZWQ6IEcgICAg ICAgIFcgCj4gNC4xMC4wLXJjMy1uZXh0LTIwMTcwMTExKyAjMTQ4Cj4gWyAgIDMzLjQyMTE4Ml0g SGFyZHdhcmUgbmFtZTogUm9ja2NoaXAgKERldmljZSBUcmVlKQo+IFsgICAzMy40MjU5MDVdIFs8 YzAxMTJiOTg+XSAodW53aW5kX2JhY2t0cmFjZSkgZnJvbSBbPGMwMTBkYWI4Pl0gCj4gKHNob3df c3RhY2srMHgyMC8weDI0KQo+IFsgICAzMy40MzM2NTJdIFs8YzAxMGRhYjg+XSAoc2hvd19zdGFj aykgZnJvbSBbPGMwNDQ5NzNjPl0gCj4gKGR1bXBfc3RhY2srMHg4Yy8weGEwKQo+IFsgICAzMy40 NDA4ODFdIFs8YzA0NDk3M2M+XSAoZHVtcF9zdGFjaykgZnJvbSBbPGMwMTI1Zjg4Pl0gCj4gKF9f d2FybisweGY4LzB4MTEwKQo+IFsgICAzMy40NDc4MzldIFs8YzAxMjVmODg+XSAoX193YXJuKSBm cm9tIFs8YzAxMjYwYjg+XSAKPiAod2Fybl9zbG93cGF0aF9udWxsKzB4MzAvMHgzOCkKPiBbICAg MzMuNDU1NDMxXSBbPGMwMTI2MGI4Pl0gKHdhcm5fc2xvd3BhdGhfbnVsbCkgZnJvbSBbPGJmNWNi NGRjPl0gCj4gKHZvcF9wbGFuZV9hdG9taWNfdXBkYXRlKzB4MTIxOC8weDE3N2MgW3JvY2tjaGlw ZHJtXSkKPiBbICAgMzMuNDY2MTI2XSBbPGJmNWNiNGRjPl0gKHZvcF9wbGFuZV9hdG9taWNfdXBk YXRlIFtyb2NrY2hpcGRybV0pIAo+IGZyb20gWzxiZjRkODU5MD5dIChkcm1fYXRvbWljX2hlbHBl cl9jb21taXRfcGxhbmVzKzB4ZDQvMHgyYjgKPiBbZHJtX2ttc19oZWxwZXJdKQo+IFsgICAzMy40 NzkxNjBdIFs8YmY0ZDg1OTA+XSAoZHJtX2F0b21pY19oZWxwZXJfY29tbWl0X3BsYW5lcyAKPiBb ZHJtX2ttc19oZWxwZXJdKSBmcm9tIFs8YmY1YzZhODg+XSAocm9ja2NoaXBfYXRvbWljX2NvbW1p dF90YWlsKzB4NCQKPiAvMHg2OCBbcm9ja2NoaXBkcm1dKQo+IFsgICAzMy40OTI0NTFdIFs8YmY1 YzZhODg+XSAocm9ja2NoaXBfYXRvbWljX2NvbW1pdF90YWlsIAo+IFtyb2NrY2hpcGRybV0pIGZy b20gWzxiZjRkYzcxND5dIChjb21taXRfdGFpbCsweDUwLzB4YjggW2RybV9rbXNfaGVscGVyXSQK PiBbICAgMzMuNTA0MDYxXSBbPGJmNGRjNzE0Pl0gKGNvbW1pdF90YWlsIFtkcm1fa21zX2hlbHBl cl0pIGZyb20gCj4gWzxiZjRkYzg3MD5dIChkcm1fYXRvbWljX2hlbHBlcl9jb21taXQrMHhkNC8w eDEzYyBbZHJtX2ttc19oZWxwZXIkCj4gKQo+IFsgICAzMy41MTU4NTBdIFs8YmY0ZGM4NzA+XSAo ZHJtX2F0b21pY19oZWxwZXJfY29tbWl0IAo+IFtkcm1fa21zX2hlbHBlcl0pIGZyb20gWzxiZjA5 MzE4Yz5dIChkcm1fYXRvbWljX2NvbW1pdCsweDVjLzB4NjggW2RybV0pCj4gWyAgIDMzLjUyNzEy Nl0gWzxiZjA5MzE4Yz5dIChkcm1fYXRvbWljX2NvbW1pdCBbZHJtXSkgZnJvbSAKPiBbPGJmNGUw MGY4Pl0gKHJlc3RvcmVfZmJkZXZfbW9kZSsweDE2MC8weDMwMCBbZHJtX2ttc19oZWxwZXJdKQo+ IFsgICAzMy41Mzc5NTJdIFs8YmY0ZTAwZjg+XSAocmVzdG9yZV9mYmRldl9tb2RlIFtkcm1fa21z X2hlbHBlcl0pIGZyb20gCj4gWzxiZjRlMTcxYz5dIChkcm1fZmJfaGVscGVyX3Jlc3RvcmVfZmJk ZXZfbW9kZV91bmxvY2tlZCsweCQKPiAwLzB4ODQgW2RybV9rbXNfaGVscGVyXSkKPiBbICAgMzMu NTUxNTkwXSBbPGJmNGUxNzFjPl0gKGRybV9mYl9oZWxwZXJfcmVzdG9yZV9mYmRldl9tb2RlX3Vu bG9ja2VkIAo+IFtkcm1fa21zX2hlbHBlcl0pIGZyb20gWzxiZjVjNjIxOD5dIChyb2NrY2hpcF9k cm1fbGFzdGNsb3MkCj4gKzB4MWMvMHgyMCBbcm9ja2NoaXBkcm1dKQo+IFsgICAzMy41NjU0MDRd IFs8YmY1YzYyMTg+XSAocm9ja2NoaXBfZHJtX2xhc3RjbG9zZSBbcm9ja2NoaXBkcm1dKSAKPiBm cm9tIFs8YmYwN2QyMGM+XSAoZHJtX2xhc3RjbG9zZSsweDQ4LzB4ZDggW2RybV0pCj4gWyAgIDMz LjU3NTk3N10gWzxiZjA3ZDIwYz5dIChkcm1fbGFzdGNsb3NlIFtkcm1dKSBmcm9tIFs8YmYwN2Q1 NjA+XSAKPiAoZHJtX3JlbGVhc2UrMHgyYzQvMHgzNmMgW2RybV0pCj4gWyAgIDMzLjU4NDkyN10g WzxiZjA3ZDU2MD5dIChkcm1fcmVsZWFzZSBbZHJtXSkgZnJvbSBbPGMwMmQ3YjM0Pl0gCj4gKF9f ZnB1dCsweDljLzB4MWU4KQo+IFsgICAzMy41OTI1MDFdIFs8YzAyZDdiMzQ+XSAoX19mcHV0KSBm cm9tIFs8YzAyZDdjZjA+XSAKPiAoX19fX2ZwdXQrMHgxOC8weDFjKQo+IFsgICAzMy41OTkyMDZd IFs8YzAyZDdjZjA+XSAoX19fX2ZwdXQpIGZyb20gWzxjMDE0NmVkND5dIAo+ICh0YXNrX3dvcmtf cnVuKzB4Y2MvMHhmMCkKPiBbICAgMzMuNjA2NTE5XSBbPGMwMTQ2ZWQ0Pl0gKHRhc2tfd29ya19y dW4pIGZyb20gWzxjMDEwZDFiMD5dIAo+IChkb193b3JrX3BlbmRpbmcrMHhkMC8weGQ0KQo+IFsg ICAzMy42MTQ0MzldIFs8YzAxMGQxYjA+XSAoZG9fd29ya19wZW5kaW5nKSBmcm9tIFs8YzAxMDhl Mjg+XSAKPiAoc2xvd193b3JrX3BlbmRpbmcrMHhjLzB4MjApCj4gWyAgIDMzLjYyMjY3NF0gLS0t WyBlbmQgdHJhY2UgOTVlZDJjM2YxNjc2MDdkMiBdLS0tCj4gWyAgIDMzLjYyNzMyN10gLS0tLS0t LS0tLS0tWyBjdXQgaGVyZSBdLS0tLS0tLS0tLS0tCj4gWyAgIDMzLjYzMjAxM10gV0FSTklORzog Q1BVOiAyIFBJRDogNDc2IGF0IAo+IC9ob21lL2F5YWthL3dvcmtzcGFjZS9yazMyODgva2VybmVs L2xpbnV4LWtlcm5lbC9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJtXwo+IHZv cC5jOjEwMTcgdm9wX2NydGNfYXRvbWljX2ZsdXNoKzB4MjdjLzB4MmI4IFtyb2NrY2hpcGRybV0K PiBbICAgMzMuNjQ4NTQyXSBNb2R1bGVzIGxpbmtlZCBpbjogcm9ja2NoaXBfdm9wX3JlZyByb2Nr Y2hpcGRybSAKPiBkd19oZG1pX3JvY2tjaGlwIGR3X2hkbWkgZHJtX2ttc19oZWxwZXIgY2ZiZmls bHJlY3QgbWFsaV9rYmFzZSBzeXNjCj4gb3B5YXJlYSBncGlvX2lyX3JlY3YgY2ZiaW1nYmx0IHN5 c2ZpbGxyZWN0IHJjX2NvcmUgZHdjMiBzeXNpbWdibHQgCj4gZmJfc3lzX2ZvcHMgcGFuZWxfc2lt cGxlIGNmYmNvcHlhcmVhIHJrX2NyeXB0byBkcm0gbnZtZW1fcm9ja2NoaQo+IHBfZWZ1c2UgdWRj X2NvcmUgZGVzX2dlbmVyaWMgcGh5X3JvY2tjaGlwX3VzYiBwd21fcm9ja2NoaXAgcHdtX2JsIAo+ IGJhY2tsaWdodCBmYgo+IFsgICAzMy42NzgxOTFdIENQVTogMiBQSUQ6IDQ3NiBDb21tOiBYIFRh aW50ZWQ6IEcgICAgICAgIFcgCj4gNC4xMC4wLXJjMy1uZXh0LTIwMTcwMTExKyAjMTQ4Cj4gWyAg IDMzLjY4NjYyMV0gSGFyZHdhcmUgbmFtZTogUm9ja2NoaXAgKERldmljZSBUcmVlKQo+IFsgICAz My42OTEzMzldIFs8YzAxMTJiOTg+XSAodW53aW5kX2JhY2t0cmFjZSkgZnJvbSBbPGMwMTBkYWI4 Pl0gCj4gKHNob3dfc3RhY2srMHgyMC8weDI0KQo+IFsgICAzMy42OTkwODRdIFs8YzAxMGRhYjg+ XSAoc2hvd19zdGFjaykgZnJvbSBbPGMwNDQ5NzNjPl0gCj4gKGR1bXBfc3RhY2srMHg4Yy8weGEw KQo+IFsgICAzMy43MDYzMDldIFs8YzA0NDk3M2M+XSAoZHVtcF9zdGFjaykgZnJvbSBbPGMwMTI1 Zjg4Pl0gCj4gKF9fd2FybisweGY4LzB4MTEwKQo+IFsgICAzMy43MTMyNzVdIFs8YzAxMjVmODg+ XSAoX193YXJuKSBmcm9tIFs8YzAxMjYwYjg+XSAKPiAod2Fybl9zbG93cGF0aF9udWxsKzB4MzAv MHgzOCkKPiBbICAgMzMuNzIwODY0XSBbPGMwMTI2MGI4Pl0gKHdhcm5fc2xvd3BhdGhfbnVsbCkg ZnJvbSBbPGJmNWM4M2UwPl0gCj4gKHZvcF9jcnRjX2F0b21pY19mbHVzaCsweDI3Yy8weDJiOCBb cm9ja2NoaXBkcm1dKQo+IFsgICAzMy43MzEyMDhdIFs8YmY1YzgzZTA+XSAodm9wX2NydGNfYXRv bWljX2ZsdXNoIFtyb2NrY2hpcGRybV0pIGZyb20gCj4gWzxiZjRkODY4Yz5dIChkcm1fYXRvbWlj X2hlbHBlcl9jb21taXRfcGxhbmVzKzB4MWQwLzB4MmI4IFsKPiBkcm1fa21zX2hlbHBlcl0pCj4g WyAgIDMzLjc0NDE1OV0gWzxiZjRkODY4Yz5dIChkcm1fYXRvbWljX2hlbHBlcl9jb21taXRfcGxh bmVzIAo+IFtkcm1fa21zX2hlbHBlcl0pIGZyb20gWzxiZjVjNmE4OD5dIChyb2NrY2hpcF9hdG9t aWNfY29tbWl0X3RhaWwrMHg0NAo+IC8weDY4IFtyb2NrY2hpcGRybV0pCj4gWyAgIDMzLjc1NzQ1 MV0gWzxiZjVjNmE4OD5dIChyb2NrY2hpcF9hdG9taWNfY29tbWl0X3RhaWwgCj4gW3JvY2tjaGlw ZHJtXSkgZnJvbSBbPGJmNGRjNzE0Pl0gKGNvbW1pdF90YWlsKzB4NTAvMHhiOCBbZHJtX2ttc19o ZWxwZXJdKQo+IFsgICAzMy43NjkwNjRdIFs8YmY0ZGM3MTQ+XSAoY29tbWl0X3RhaWwgW2RybV9r bXNfaGVscGVyXSkgZnJvbSAKPiBbPGJmNGRjODcwPl0gKGRybV9hdG9taWNfaGVscGVyX2NvbW1p dCsweGQ0LzB4MTNjIFtkcm1fa21zX2hlbHBlcl0KPiApCj4gWyAgIDMzLjc4MDg2MV0gWzxiZjRk Yzg3MD5dIChkcm1fYXRvbWljX2hlbHBlcl9jb21taXQgCj4gW2RybV9rbXNfaGVscGVyXSkgZnJv bSBbPGJmMDkzMThjPl0gKGRybV9hdG9taWNfY29tbWl0KzB4NWMvMHg2OCBbZHJtXSkKPiBbICAg MzMuNzkyMTMxXSBbPGJmMDkzMThjPl0gKGRybV9hdG9taWNfY29tbWl0IFtkcm1dKSBmcm9tIAo+ IFs8YmY0ZTAwZjg+XSAocmVzdG9yZV9mYmRldl9tb2RlKzB4MTYwLzB4MzAwIFtkcm1fa21zX2hl bHBlcl0pCj4gWyAgIDMzLjgwMjk1Nl0gWzxiZjRlMDBmOD5dIChyZXN0b3JlX2ZiZGV2X21vZGUg W2RybV9rbXNfaGVscGVyXSkgZnJvbSAKPiBbPGJmNGUxNzFjPl0gKGRybV9mYl9oZWxwZXJfcmVz dG9yZV9mYmRldl9tb2RlX3VubG9ja2VkKzB4NAo+IDAvMHg4NCBbZHJtX2ttc19oZWxwZXJdKQo+ IFsgICAzMy44MTY1OTBdIFs8YmY0ZTE3MWM+XSAoZHJtX2ZiX2hlbHBlcl9yZXN0b3JlX2ZiZGV2 X21vZGVfdW5sb2NrZWQgCj4gW2RybV9rbXNfaGVscGVyXSkgZnJvbSBbPGJmNWM2MjE4Pl0gKHJv Y2tjaGlwX2RybV9sYXN0Y2xvc2UKPiArMHgxYy8weDIwIFtyb2NrY2hpcGRybV0pCj4gWyAgIDMz LjgzMDQwNl0gWzxiZjVjNjIxOD5dIChyb2NrY2hpcF9kcm1fbGFzdGNsb3NlIFtyb2NrY2hpcGRy bV0pIAo+IGZyb20gWzxiZjA3ZDIwYz5dIChkcm1fbGFzdGNsb3NlKzB4NDgvMHhkOCBbZHJtXSkK PiBbICAgMzMuODQwOTc1XSBbPGJmMDdkMjBjPl0gKGRybV9sYXN0Y2xvc2UgW2RybV0pIGZyb20g WzxiZjA3ZDU2MD5dIAo+IChkcm1fcmVsZWFzZSsweDJjNC8weDM2YyBbZHJtXSkKPiBbICAgMzMu ODQ5OTIzXSBbPGJmMDdkNTYwPl0gKGRybV9yZWxlYXNlIFtkcm1dKSBmcm9tIFs8YzAyZDdiMzQ+ XSAKPiAoX19mcHV0KzB4OWMvMHgxZTgpCj4gWyAgIDMzLjg1NzQ5N10gWzxjMDJkN2IzND5dIChf X2ZwdXQpIGZyb20gWzxjMDJkN2NmMD5dIAo+IChfX19fZnB1dCsweDE4LzB4MWMpCj4gWyAgIDMz Ljg2NDIwMV0gWzxjMDJkN2NmMD5dIChfX19fZnB1dCkgZnJvbSBbPGMwMTQ2ZWQ0Pl0gCj4gKHRh c2tfd29ya19ydW4rMHhjYy8weGYwKQo+IFsgICAzMy44NzE1MTRdIFs8YzAxNDZlZDQ+XSAodGFz a193b3JrX3J1bikgZnJvbSBbPGMwMTBkMWIwPl0gCj4gKGRvX3dvcmtfcGVuZGluZysweGQwLzB4 ZDQpCj4gWyAgIDMzLjg3OTQzNF0gWzxjMDEwZDFiMD5dIChkb193b3JrX3BlbmRpbmcpIGZyb20g WzxjMDEwOGUyOD5dIAo+IChzbG93X3dvcmtfcGVuZGluZysweGMvMHgyMCkKPiBbICAgMzMuODg3 NjcxXSAtLS1bIGVuZCB0cmFjZSA5NWVkMmMzZjE2NzYwN2QzIF0tLS0KPiBbICAgMzMuODkyMzIy XSAtLS0tLS0tLS0tLS1bIGN1dCBoZXJlIF0tLS0tLS0tLS0tLS0KPiBbICAgMzMuODk3MDU4XSBX QVJOSU5HOiBDUFU6IDIgUElEOiA0NzYgYXQgCj4gL2hvbWUvYXlha2Evd29ya3NwYWNlL3JrMzI4 OC9rZXJuZWwvbGludXgta2VybmVsL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5j OjE1Cj4gNjMgZHJtX2F0b21pY19oZWxwZXJfY29tbWl0X2h3X2RvbmUrMHhjMC8weGM4IFtkcm1f a21zX2hlbHBlcl0KPiBbICAgMzMuOTEzOTM3XSBNb2R1bGVzIGxpbmtlZCBpbjogcm9ja2NoaXBf dm9wX3JlZyByb2NrY2hpcGRybSAKPiBkd19oZG1pX3JvY2tjaGlwIGR3X2hkbWkgZHJtX2ttc19o ZWxwZXIgY2ZiZmlsbHJlY3QgbWFsaV9rYmFzZSBzeXNjCj4gb3B5YXJlYSBncGlvX2lyX3JlY3Yg Y2ZiaW1nYmx0IHN5c2ZpbGxyZWN0IHJjX2NvcmUgZHdjMiBzeXNpbWdibHQgCj4gZmJfc3lzX2Zv cHMgcGFuZWxfc2ltcGxlIGNmYmNvcHlhcmVhIHJrX2NyeXB0byBkcm0gbnZtZW1fcm9ja2NoaQo+ IHBfZWZ1c2UgdWRjX2NvcmUgZGVzX2dlbmVyaWMgcGh5X3JvY2tjaGlwX3VzYiBwd21fcm9ja2No aXAgcHdtX2JsIAo+IGJhY2tsaWdodCBmYgo+IFsgICAzMy45NDM1ODFdIENQVTogMiBQSUQ6IDQ3 NiBDb21tOiBYIFRhaW50ZWQ6IEcgICAgICAgIFcgCj4gNC4xMC4wLXJjMy1uZXh0LTIwMTcwMTEx KyAjMTQ4Cj4gWyAgIDMzLjk1MjAxMF0gSGFyZHdhcmUgbmFtZTogUm9ja2NoaXAgKERldmljZSBU cmVlKQo+IFsgICAzMy45NTY3MjZdIFs8YzAxMTJiOTg+XSAodW53aW5kX2JhY2t0cmFjZSkgZnJv bSBbPGMwMTBkYWI4Pl0gCj4gKHNob3dfc3RhY2srMHgyMC8weDI0KQo+IFsgICAzMy45NjQ0NzBd IFs8YzAxMGRhYjg+XSAoc2hvd19zdGFjaykgZnJvbSBbPGMwNDQ5NzNjPl0gCj4gKGR1bXBfc3Rh Y2srMHg4Yy8weGEwKQo+IFsgICAzMy45NzE2OTVdIFs8YzA0NDk3M2M+XSAoZHVtcF9zdGFjaykg ZnJvbSBbPGMwMTI1Zjg4Pl0gCj4gKF9fd2FybisweGY4LzB4MTEwKQo+IFsgICAzMy45Nzg2NjFd IFs8YzAxMjVmODg+XSAoX193YXJuKSBmcm9tIFs8YzAxMjYwYjg+XSAKPiAod2Fybl9zbG93cGF0 aF9udWxsKzB4MzAvMHgzOCkKPiBbICAgMzMuOTg2MzAxXSBbPGMwMTI2MGI4Pl0gKHdhcm5fc2xv d3BhdGhfbnVsbCkgZnJvbSBbPGJmNGQ5NDEwPl0gCj4gKGRybV9hdG9taWNfaGVscGVyX2NvbW1p dF9od19kb25lKzB4YzAvMHhjOCBbZHJtX2ttc19oZWxwZXJdKQo+IFsgICAzMy45OTc2ODZdIFs8 YmY0ZDk0MTA+XSAoZHJtX2F0b21pY19oZWxwZXJfY29tbWl0X2h3X2RvbmUgCj4gW2RybV9rbXNf aGVscGVyXSkgZnJvbSBbPGJmNWM2YTkwPl0gKHJvY2tjaGlwX2F0b21pY19jb21taXRfdGFpbCsw eDQKPiBjLzB4NjggW3JvY2tjaGlwZHJtXSkKPiBbICAgMzQuMDExMDYyXSBbPGJmNWM2YTkwPl0g KHJvY2tjaGlwX2F0b21pY19jb21taXRfdGFpbCAKPiBbcm9ja2NoaXBkcm1dKSBmcm9tIFs8YmY0 ZGM3MTQ+XSAoY29tbWl0X3RhaWwrMHg1MC8weGI4IFtkcm1fa21zX2hlbHBlcl0pCj4gWyAgIDM0 LjAyMjY3MF0gWzxiZjRkYzcxND5dIChjb21taXRfdGFpbCBbZHJtX2ttc19oZWxwZXJdKSBmcm9t IAo+IFs8YmY0ZGM4NzA+XSAoZHJtX2F0b21pY19oZWxwZXJfY29tbWl0KzB4ZDQvMHgxM2MgW2Ry bV9rbXNfaGVscGVyXQo+ICkKPiBbICAgMzQuMDM0NDU4XSBbPGJmNGRjODcwPl0gKGRybV9hdG9t aWNfaGVscGVyX2NvbW1pdCAKPiBbZHJtX2ttc19oZWxwZXJdKSBmcm9tIFs8YmYwOTMxOGM+XSAo ZHJtX2F0b21pY19jb21taXQrMHg1Yy8weDY4IFtkcm1dKQo+IFsgICAzNC4wNDU3MjhdIFs8YmYw OTMxOGM+XSAoZHJtX2F0b21pY19jb21taXQgW2RybV0pIGZyb20gCj4gWzxiZjRlMDBmOD5dIChy ZXN0b3JlX2ZiZGV2X21vZGUrMHgxNjAvMHgzMDAgW2RybV9rbXNfaGVscGVyXSkKPiBbICAgMzQu MDU2NTU1XSBbPGJmNGUwMGY4Pl0gKHJlc3RvcmVfZmJkZXZfbW9kZSBbZHJtX2ttc19oZWxwZXJd KSBmcm9tIAo+IFs8YmY0ZTE3MWM+XSAoZHJtX2ZiX2hlbHBlcl9yZXN0b3JlX2ZiZGV2X21vZGVf dW5sb2NrZWQrMHg0Cj4gMC8weDg0IFtkcm1fa21zX2hlbHBlcl0pCj4gWyAgIDM0LjA3MDE5MF0g WzxiZjRlMTcxYz5dIChkcm1fZmJfaGVscGVyX3Jlc3RvcmVfZmJkZXZfbW9kZV91bmxvY2tlZCAK PiBbZHJtX2ttc19oZWxwZXJdKSBmcm9tIFs8YmY1YzYyMTg+XSAocm9ja2NoaXBfZHJtX2xhc3Rj bG9zZQo+ICsweDFjLzB4MjAgW3JvY2tjaGlwZHJtXSkKPiBbICAgMzQuMDg0MDA1XSBbPGJmNWM2 MjE4Pl0gKHJvY2tjaGlwX2RybV9sYXN0Y2xvc2UgW3JvY2tjaGlwZHJtXSkgCj4gZnJvbSBbPGJm MDdkMjBjPl0gKGRybV9sYXN0Y2xvc2UrMHg0OC8weGQ4IFtkcm1dKQo+IFsgICAzNC4wOTQ1ODFd IFs8YmYwN2QyMGM+XSAoZHJtX2xhc3RjbG9zZSBbZHJtXSkgZnJvbSBbPGJmMDdkNTYwPl0gCj4g KGRybV9yZWxlYXNlKzB4MmM0LzB4MzZjIFtkcm1dKQo+IFsgICAzNC4xMDM1MjZdIFs8YmYwN2Q1 NjA+XSAoZHJtX3JlbGVhc2UgW2RybV0pIGZyb20gWzxjMDJkN2IzND5dIAo+IChfX2ZwdXQrMHg5 Yy8weDFlOCkKPiBbICAgMzQuMTExMDk5XSBbPGMwMmQ3YjM0Pl0gKF9fZnB1dCkgZnJvbSBbPGMw MmQ3Y2YwPl0gCj4gKF9fX19mcHV0KzB4MTgvMHgxYykKPiBbICAgMzQuMTE3ODAyXSBbPGMwMmQ3 Y2YwPl0gKF9fX19mcHV0KSBmcm9tIFs8YzAxNDZlZDQ+XSAKPiAodGFza193b3JrX3J1bisweGNj LzB4ZjApCj4gWyAgIDM0LjEyNTExNV0gWzxjMDE0NmVkND5dICh0YXNrX3dvcmtfcnVuKSBmcm9t IFs8YzAxMGQxYjA+XSAKPiAoZG9fd29ya19wZW5kaW5nKzB4ZDAvMHhkNCkKPiBbICAgMzQuMTMz MDM0XSBbPGMwMTBkMWIwPl0gKGRvX3dvcmtfcGVuZGluZykgZnJvbSBbPGMwMTA4ZTI4Pl0gCj4g KHNsb3dfd29ya19wZW5kaW5nKzB4Yy8weDIwKQo+IFsgICAzNC4xNDEyNTBdIC0tLVsgZW5kIHRy YWNlIDk1ZWQyYzNmMTY3NjA3ZDQgXS0tLQo+IFsgICAzNC4xNDU5MjFdIC0tLS0tLS0tLS0tLVsg Y3V0IGhlcmUgXS0tLS0tLS0tLS0tLQo+IFsgICAzNC4xNTA1NjZdIFdBUk5JTkc6IENQVTogMiBQ SUQ6IDQ3NiBhdCAKPiAvaG9tZS9heWFrYS93b3Jrc3BhY2UvcmszMjg4L2tlcm5lbC9saW51eC1r ZXJuZWwvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV8KPiB2b3AuYzo4Mjgg dm9wX2NydGNfZW5hYmxlX3ZibGFuaysweDFhYy8weDFiNCBbcm9ja2NoaXBkcm1dCj4gWyAgIDM0 LjE2NzA1NF0gTW9kdWxlcyBsaW5rZWQgaW46IHJvY2tjaGlwX3ZvcF9yZWcgcm9ja2NoaXBkcm0g Cj4gZHdfaGRtaV9yb2NrY2hpcCBkd19oZG1pIGRybV9rbXNfaGVscGVyIGNmYmZpbGxyZWN0IG1h bGlfa2Jhc2Ugc3lzYwo+IG9weWFyZWEgZ3Bpb19pcl9yZWN2IGNmYmltZ2JsdCBzeXNmaWxscmVj dCByY19jb3JlIGR3YzIgc3lzaW1nYmx0IAo+IGZiX3N5c19mb3BzIHBhbmVsX3NpbXBsZSBjZmJj b3B5YXJlYSBya19jcnlwdG8gZHJtIG52bWVtX3JvY2tjaGkKPiBwX2VmdXNlIHVkY19jb3JlIGRl c19nZW5lcmljIHBoeV9yb2NrY2hpcF91c2IgcHdtX3JvY2tjaGlwIHB3bV9ibCAKPiBiYWNrbGln aHQgZmIKPiBbICAgMzQuMTk2NjUxXSBDUFU6IDIgUElEOiA0NzYgQ29tbTogWCBUYWludGVkOiBH ICAgICAgICBXIAo+IDQuMTAuMC1yYzMtbmV4dC0yMDE3MDExMSsgIzE0OAo+IFsgICAzNC4yMDUw NzhdIEhhcmR3YXJlIG5hbWU6IFJvY2tjaGlwIChEZXZpY2UgVHJlZSkKPiBbICAgMzQuMjA5Nzk0 XSBbPGMwMTEyYjk4Pl0gKHVud2luZF9iYWNrdHJhY2UpIGZyb20gWzxjMDEwZGFiOD5dIAo+IChz aG93X3N0YWNrKzB4MjAvMHgyNCkKPiBbICAgMzQuMjE3NTM4XSBbPGMwMTBkYWI4Pl0gKHNob3df c3RhY2spIGZyb20gWzxjMDQ0OTczYz5dIAo+IChkdW1wX3N0YWNrKzB4OGMvMHhhMCkKPiBbICAg MzQuMjI0NzYzXSBbPGMwNDQ5NzNjPl0gKGR1bXBfc3RhY2spIGZyb20gWzxjMDEyNWY4OD5dIAo+ IChfX3dhcm4rMHhmOC8weDExMCkKPiBbICAgMzQuMjMxNzI5XSBbPGMwMTI1Zjg4Pl0gKF9fd2Fy bikgZnJvbSBbPGMwMTI2MGI4Pl0gCj4gKHdhcm5fc2xvd3BhdGhfbnVsbCsweDMwLzB4MzgpCj4g WyAgIDM0LjIzOTMxOF0gWzxjMDEyNjBiOD5dICh3YXJuX3Nsb3dwYXRoX251bGwpIGZyb20gWzxi ZjVjN2I3Yz5dIAo+ICh2b3BfY3J0Y19lbmFibGVfdmJsYW5rKzB4MWFjLzB4MWI0IFtyb2NrY2hp cGRybV0pCj4gWyAgIDM0LjI0OTY5M10gWzxiZjVjN2I3Yz5dICh2b3BfY3J0Y19lbmFibGVfdmJs YW5rIFtyb2NrY2hpcGRybV0pIAo+IGZyb20gWzxiZjVjNjFmMD5dIChyb2NrY2hpcF9kcm1fY3J0 Y19lbmFibGVfdmJsYW5rKzB4NDgvMHg1NCBbcgo+IG9ja2NoaXBkcm1dKQo+IFsgICAzNC4yNjIz NzhdIFs8YmY1YzYxZjA+XSAocm9ja2NoaXBfZHJtX2NydGNfZW5hYmxlX3ZibGFuayAKPiBbcm9j a2NoaXBkcm1dKSBmcm9tIFs8YmYwN2ZmODA+XSAoZHJtX3ZibGFua19lbmFibGUrMHg4Yy8weGY4 IFtkcm1dKQo+IFsgICAzNC4yNzQwNzddIFs8YmYwN2ZmODA+XSAoZHJtX3ZibGFua19lbmFibGUg W2RybV0pIGZyb20gCj4gWzxiZjA4MDBiND5dIChkcm1fdmJsYW5rX2dldCsweGM4LzB4ZjAgW2Ry bV0pCj4gWyAgIDM0LjI4MzYxNl0gWzxiZjA4MDBiND5dIChkcm1fdmJsYW5rX2dldCBbZHJtXSkg ZnJvbSBbPGJmMDgwMGZjPl0gCj4gKGRybV9jcnRjX3ZibGFua19nZXQrMHgyMC8weDI0IFtkcm1d KQo+IFsgICAzNC4yOTMyMzldIFs8YmYwODAwZmM+XSAoZHJtX2NydGNfdmJsYW5rX2dldCBbZHJt XSkgZnJvbSAKPiBbPGJmNGRjMDBjPl0gKGRybV9hdG9taWNfaGVscGVyX3dhaXRfZm9yX3ZibGFu a3MucGFydC4wKzB4YTgvMHgyYTggW2QKPiBybV9rbXNfaGVscGVyXSkKPiBbICAgMzQuMzA2MTQ2 XSBbPGJmNGRjMDBjPl0gKGRybV9hdG9taWNfaGVscGVyX3dhaXRfZm9yX3ZibGFua3MucGFydC4w IAo+IFtkcm1fa21zX2hlbHBlcl0pIGZyb20gWzxiZjRkYzIzMD5dIChkcm1fYXRvbWljX2hlbHBl cl93YWl0Cj4gX2Zvcl92YmxhbmtzKzB4MjQvMHgyOCBbZHJtX2ttc19oZWxwZXJdKQo+IFsgICAz NC4zMjExNzZdIFs8YmY0ZGMyMzA+XSAoZHJtX2F0b21pY19oZWxwZXJfd2FpdF9mb3JfdmJsYW5r cyAKPiBbZHJtX2ttc19oZWxwZXJdKSBmcm9tIFs8YmY1YzZhOWM+XSAocm9ja2NoaXBfYXRvbWlj X2NvbW1pdF90YWlsKzAKPiB4NTgvMHg2OCBbcm9ja2NoaXBkcm1dKQo+IFsgICAzNC4zMzQ3MjVd IFs8YmY1YzZhOWM+XSAocm9ja2NoaXBfYXRvbWljX2NvbW1pdF90YWlsIAo+IFtyb2NrY2hpcGRy bV0pIGZyb20gWzxiZjRkYzcxND5dIChjb21taXRfdGFpbCsweDUwLzB4YjggW2RybV9rbXNfaGVs cGVyXSkKPiBbICAgMzQuMzQ2MzMwXSBbPGJmNGRjNzE0Pl0gKGNvbW1pdF90YWlsIFtkcm1fa21z X2hlbHBlcl0pIGZyb20gCj4gWzxiZjRkYzg3MD5dIChkcm1fYXRvbWljX2hlbHBlcl9jb21taXQr MHhkNC8weDEzYyBbZHJtX2ttc19oZWxwZXJdCj4gKQo+IFsgICAzNC4zNTgxMTddIFs8YmY0ZGM4 NzA+XSAoZHJtX2F0b21pY19oZWxwZXJfY29tbWl0IAo+IFtkcm1fa21zX2hlbHBlcl0pIGZyb20g WzxiZjA5MzE4Yz5dIChkcm1fYXRvbWljX2NvbW1pdCsweDVjLzB4NjggW2RybV0pCj4gWyAgIDM0 LjM2OTM4Nl0gWzxiZjA5MzE4Yz5dIChkcm1fYXRvbWljX2NvbW1pdCBbZHJtXSkgZnJvbSAKPiBb PGJmNGUwMGY4Pl0gKHJlc3RvcmVfZmJkZXZfbW9kZSsweDE2MC8weDMwMCBbZHJtX2ttc19oZWxw ZXJdKQo+IFsgICAzNC4zODAyMDldIFs8YmY0ZTAwZjg+XSAocmVzdG9yZV9mYmRldl9tb2RlIFtk cm1fa21zX2hlbHBlcl0pIGZyb20gCj4gWzxiZjRlMTcxYz5dIChkcm1fZmJfaGVscGVyX3Jlc3Rv cmVfZmJkZXZfbW9kZV91bmxvY2tlZCsweDQKPiAwLzB4ODQgW2RybV9rbXNfaGVscGVyXSkKPiBb ICAgMzQuMzkzODQ1XSBbPGJmNGUxNzFjPl0gKGRybV9mYl9oZWxwZXJfcmVzdG9yZV9mYmRldl9t b2RlX3VubG9ja2VkIAo+IFtkcm1fa21zX2hlbHBlcl0pIGZyb20gWzxiZjVjNjIxOD5dIChyb2Nr Y2hpcF9kcm1fbGFzdGNsb3NlCj4gKzB4MWMvMHgyMCBbcm9ja2NoaXBkcm1dKQo+IFsgICAzNC40 MDc2NjRdIFs8YmY1YzYyMTg+XSAocm9ja2NoaXBfZHJtX2xhc3RjbG9zZSBbcm9ja2NoaXBkcm1d KSAKPiBmcm9tIFs8YmYwN2QyMGM+XSAoZHJtX2xhc3RjbG9zZSsweDQ4LzB4ZDggW2RybV0pCj4g WyAgIDM0LjQxODIzN10gWzxiZjA3ZDIwYz5dIChkcm1fbGFzdGNsb3NlIFtkcm1dKSBmcm9tIFs8 YmYwN2Q1NjA+XSAKPiAoZHJtX3JlbGVhc2UrMHgyYzQvMHgzNmMgW2RybV0pCj4gWyAgIDM0LjQy NzE3OV0gWzxiZjA3ZDU2MD5dIChkcm1fcmVsZWFzZSBbZHJtXSkgZnJvbSBbPGMwMmQ3YjM0Pl0g Cj4gKF9fZnB1dCsweDljLzB4MWU4KQo+IFsgICAzNC40MzQ3NTRdIFs8YzAyZDdiMzQ+XSAoX19m cHV0KSBmcm9tIFs8YzAyZDdjZjA+XSAKPiAoX19fX2ZwdXQrMHgxOC8weDFjKQo+IFsgICAzNC40 NDE0NThdIFs8YzAyZDdjZjA+XSAoX19fX2ZwdXQpIGZyb20gWzxjMDE0NmVkND5dIAo+ICh0YXNr X3dvcmtfcnVuKzB4Y2MvMHhmMCkKPiBbICAgMzQuNDQ4NzY5XSBbPGMwMTQ2ZWQ0Pl0gKHRhc2tf d29ya19ydW4pIGZyb20gWzxjMDEwZDFiMD5dIAo+IChkb193b3JrX3BlbmRpbmcrMHhkMC8weGQ0 KQo+IFsgICAzNC40NTY2ODhdIFs8YzAxMGQxYjA+XSAoZG9fd29ya19wZW5kaW5nKSBmcm9tIFs8 YzAxMDhlMjg+XSAKPiAoc2xvd193b3JrX3BlbmRpbmcrMHhjLzB4MjApCj4gWyAgIDM0LjQ2NDg1 Nl0gLS0tWyBlbmQgdHJhY2UgOTVlZDJjM2YxNjc2MDdkNSBdLS0tCgoKLS0gCu+8rWFyayBZYW8K CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2 ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK