From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Russell, Kent" Subject: RE: [PATCH] drm/amdgpu: Need to set the baco cap before baco reset Date: Mon, 17 Jun 2019 11:08:54 +0000 Message-ID: References: <1558943005-16557-1-git-send-email-Emily.Deng@amd.com> <9bfdbf20-b914-6063-5517-8352e652e203@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: Content-Language: en-US List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: "Deng, Emily" , "Yang, Philip" , "Quan, Evan" , "amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" VGhlIGlzc3VlIHdhcyBsaW1pdGVkIHRvIG9uZSBzcGVjaWZpYyBtb2RlbCBvZiBNSTI1LCBJJ2xs IHNlZSBpZiBJIGNhbiBnZXQgYWNjZXNzIHRvIHRoYXQgbGF0ZXIgdG9kYXkgYW5kIHRyeSB5b3Vy IHBhdGNoIG91dC4gVGhhbmsgeW91IEVtaWx5IQ0KIA0KIEtlbnQNCg0KLS0tLS1PcmlnaW5hbCBN ZXNzYWdlLS0tLS0NCkZyb206IERlbmcsIEVtaWx5IDxFbWlseS5EZW5nQGFtZC5jb20+IA0KU2Vu dDogU3VuZGF5LCBKdW5lIDE2LCAyMDE5IDExOjUzIFBNDQpUbzogWWFuZywgUGhpbGlwIDxQaGls aXAuWWFuZ0BhbWQuY29tPjsgUnVzc2VsbCwgS2VudCA8S2VudC5SdXNzZWxsQGFtZC5jb20+OyBR dWFuLCBFdmFuIDxFdmFuLlF1YW5AYW1kLmNvbT47IGFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Au b3JnDQpTdWJqZWN0OiBSRTogW1BBVENIXSBkcm0vYW1kZ3B1OiBOZWVkIHRvIHNldCB0aGUgYmFj byBjYXAgYmVmb3JlIGJhY28gcmVzZXQNCg0KSGkgUGhpbGlwLA0KICAgICBDb3VsZCB5b3UgaGVs cCB0byB0cnkgd2hldGhlciB0aGUgYXR0YWNobWVudCBwYXRjaCBjb3VsZCBoZWxwIHdpdGggdGhl IGlzc3VlIGVuY291bnRlcj8gSWYgaXQgaXMgT0ssIHRoZW4gSSB3aWxsIHNlbmQgdGhpcyBwYXRj aCBvdXQgdG8gcmV2aWV3LiANCg0KQmVzdCB3aXNoZXMNCkVtaWx5IERlbmcNCg0KDQoNCj4tLS0t LU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPkZyb206IERlbmcsIEVtaWx5DQo+U2VudDogTW9uZGF5 LCBKdW5lIDE3LCAyMDE5IDEwOjUwIEFNDQo+VG86IFlhbmcsIFBoaWxpcCA8UGhpbGlwLllhbmdA YW1kLmNvbT47IFJ1c3NlbGwsIEtlbnQgDQo+PEtlbnQuUnVzc2VsbEBhbWQuY29tPjsgUXVhbiwg RXZhbiA8RXZhbi5RdWFuQGFtZC5jb20+OyBhbWQtIA0KPmdmeEBsaXN0cy5mcmVlZGVza3RvcC5v cmcNCj5TdWJqZWN0OiBSRTogW1BBVENIXSBkcm0vYW1kZ3B1OiBOZWVkIHRvIHNldCB0aGUgYmFj byBjYXAgYmVmb3JlIGJhY28gDQo+cmVzZXQNCj4NCj5IaSBQaGlsaXAsDQo+ICAgICBTb3JyeSBm b3IgaW50cm9kdWNlIHRoaXMgaXNzdWUgZm9yIHlvdS4gRnJvbSB0aGUgY29kZSwgSSBjb3VsZG4n dCANCj5zZWUgYW55IGlzc3VlLiBBbmQgSSBoYXZlIHRlc3RlZCB0aGUgY29kZSBpbiBteSBWZWdh MTAsIGl0IGlzIE9LLiAgU28gSSANCj50aGluayB0aGlzIGlzIHRoZSBrZmQgc3BlY2lmaWMgaXNz dWUsIGJ1dCBJIGNvdWxkbid0IHJlcHJvZHVjZSBpc3N1ZSBvbiANCj5teSBwbGF0Zm9ybS4gQ291 bGQgeW91IGNyZWF0ZSBhbiB0aWNrZXQsIGFuZCBhc3NpZ24gdG8gbWUsIGFuZCBzaGFyZSBtZSAN Cj55b3VyIHBsYXRmb3JtLCBzbyBJIGNvdWxkIGRlYnVnIGl0IGFuZCBmaXggaXQgdG9kYXkuDQo+ DQo+QmVzdCB3aXNoZXMNCj5FbWlseSBEZW5nDQo+DQo+Pi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0t LS0tDQo+PkZyb206IFlhbmcsIFBoaWxpcCA8UGhpbGlwLllhbmdAYW1kLmNvbT4NCj4+U2VudDog RnJpZGF5LCBKdW5lIDE0LCAyMDE5IDEwOjE2IFBNDQo+PlRvOiBEZW5nLCBFbWlseSA8RW1pbHku RGVuZ0BhbWQuY29tPjsgUnVzc2VsbCwgS2VudCANCj4+PEtlbnQuUnVzc2VsbEBhbWQuY29tPjsg UXVhbiwgRXZhbiA8RXZhbi5RdWFuQGFtZC5jb20+OyBhbWQtIA0KPj5nZnhAbGlzdHMuZnJlZWRl c2t0b3Aub3JnDQo+PlN1YmplY3Q6IFJlOiBbUEFUQ0hdIGRybS9hbWRncHU6IE5lZWQgdG8gc2V0 IHRoZSBiYWNvIGNhcCBiZWZvcmUgYmFjbyANCj4+cmVzZXQNCj4+DQo+PkhpIEVtaWx5LA0KPj4N Cj4+SSBhbSBub3QgZmFtaWxpYXIgd2l0aCB2YmlvcyBhbmQgZHJpdmVyIGluaXQgcGFydCwganVz dCBiYXNlZCBvbiBteSANCj4+ZXhwZXJpZW5jZSwgdGhlIHBhdGNoIGRvbid0IG1vZGlmeSBhbWRn cHVfZ2V0X2Jpb3MgYnV0IG1vdmUgDQo+PmFtZGdwdV9nZXRfYmlvcyB0byBhbWRncHVfZGV2aWNl X2lwX2Vhcmx5X2luaXQgZnJvbSANCj4+YW1kZ3B1X2RldmljZV9pbml0LCBzbyBhbWRncHVfZ2V0 X2Jpb3MgaXMgZXhlY3V0ZWQgZWFybGllci4gVGhlIGtlcm5lbCBlcnJvciBtZXNzYWdlICJCVUc6 DQo+Pmtlcm5lbCBOVUxMIHBvaW50ZXIgZGVyZWZlcmVuY2UiIG1lYW5zIHNvbWV0aGluZyBpcyBu b3QgaW5pdGlhbGl6ZWQuDQo+PlBsZWFzZSByZXZpZXcgdGhlIGNoYW5nZS4gVGhpcyBpc3N1ZSBi bG9ja3Mgcm9jbSByZWxlYXNlIG5vdy4NCj4+DQo+PlJlZ2FyZHMsDQo+PlBoaWxpcA0KPj4NCj4+ T24gMjAxOS0wNi0xMyAxMToxOSBwLm0uLCBEZW5nLCBFbWlseSB3cm90ZToNCj4+PiBIaSBSdXNz ZWxsLA0KPj4+ICAgICAgIFRoaXMgcGF0Y2ggd2lsbCByZWFkIHZiaW9zLCBhbmQgcGFyc2UgdmJp b3MgdG8gZ2V0IHRoZSBiYWNvIA0KPj4+IHJlc2V0IGZlYXR1cmUNCj4+Yml0LiAgRnJvbSB0aGUg Y2FsbCB0cmFjZSwgaXQgc2hvd3MgZXJyb3IgaW4gIiBhbWRncHVfZ2V0X2Jpb3MgIiwgYnV0IA0K Pj50aGlzIHBhdGNoIGRvbid0IG1vZGlmeSBhbWRncHVfZ2V0X2Jpb3MsIGFuZCBjb2RlIGJlZm9y ZSANCj4+YW1kZ3B1X2dldF9iaW9zLiBQbGVhc2UgZmlyc3QgY2hlY2sgd2h5IGl0IHdpbGwgaGFz IGVycm9yIHdoZW4gcmVhZCB2Ymlvcy4NCj4+Pg0KPj4+IEJlc3Qgd2lzaGVzDQo+Pj4gRW1pbHkg RGVuZw0KPj4+DQo+Pj4NCj4+Pg0KPj4+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPj4+ PiBGcm9tOiBSdXNzZWxsLCBLZW50IDxLZW50LlJ1c3NlbGxAYW1kLmNvbT4NCj4+Pj4gU2VudDog VGh1cnNkYXksIEp1bmUgMTMsIDIwMTkgNzoxMSBQTQ0KPj4+PiBUbzogUXVhbiwgRXZhbiA8RXZh bi5RdWFuQGFtZC5jb20+OyBEZW5nLCBFbWlseQ0KPj48RW1pbHkuRGVuZ0BhbWQuY29tPjsNCj4+ Pj4gYW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcNCj4+Pj4gQ2M6IERlbmcsIEVtaWx5IDxF bWlseS5EZW5nQGFtZC5jb20+DQo+Pj4+IFN1YmplY3Q6IFJFOiBbUEFUQ0hdIGRybS9hbWRncHU6 IE5lZWQgdG8gc2V0IHRoZSBiYWNvIGNhcCBiZWZvcmUgDQo+Pj4+IGJhY28gcmVzZXQNCj4+Pj4N Cj4+Pj4gSGkgRW1pbHksDQo+Pj4+DQo+Pj4+IFRoaXMgcGF0Y2ggY2F1c2VkIGEgcmVncmVzc2lv biBvbiBNSTI1IChDaGlwIDY4NjAsIFZCSU9TDQo+Pj4+IDExMy1EMDUxMzcwMC0wMDEpIG1hY2hp bmVzIHdoZXJlIHRoZSBkcml2ZXIgd291bGQgbm90IGJvb3QuIE5vdGUgDQo+Pj4+IHRoYXQgdGhp cyB3YXMgbm90IHNlZW4gb24NCj4+Pj4gVmVnYTEwIEZyb250aWVyIChDaGlwIDY4NjMsIFZCSU9T IDExMy1EMDUwMTEwMC1YMDkpIG9yIFJhZGVvbjY0IA0KPj4+PiAoQ2hpcCA2OTdmKS4gUmV2ZXJ0 aW5nIHRoaXMgcGF0Y2ggcmVzb2x2ZWQgdGhlIGlzc3VlIHdpdGggbm8gb3RoZXIgDQo+Pj4+IHdv cmsgcmVxdWlyZWQgYW5kIHdhcyBjb25maXJtZWQgb24gYWxsIDMgbWFjaGluZXMuDQo+Pj4+DQo+ Pj4+IEhlcmUgaXMgdGhlIGRtZXNnOg0KPj4+Pg0KPj4+PiBbICAgIDMuOTA4NjUzXSBhbWRncHUg MDAwMDoyMzowMC4wOiBCQVIgNjogY2FuJ3QgYXNzaWduIFs/Pz8gMHgwMDAwMDAwMA0KPj5mbGFn cw0KPj4+PiAweDIwMDAwMDAwXSAoYm9ndXMgYWxpZ25tZW50KQ0KPj4+PiBbICAgIDMuOTA4Njky XSBCVUc6IGtlcm5lbCBOVUxMIHBvaW50ZXIgZGVyZWZlcmVuY2UsIGFkZHJlc3M6DQo+Pj4+IDAw MDAwMDAwMDAwMDAwMDgNCj4+Pj4gWyAgICAzLjkwODcxNl0gI1BGOiBzdXBlcnZpc29yIHJlYWQg YWNjZXNzIGluIGtlcm5lbCBtb2RlDQo+Pj4+IFsgICAgMy45MDg3MzRdICNQRjogZXJyb3JfY29k ZSgweDAwMDApIC0gbm90LXByZXNlbnQgcGFnZQ0KPj4+PiBbICAgIDMuOTA4NzUzXSBQR0QgMCBQ NEQgMA0KPj4+PiBbICAgIDMuOTA4NzY3XSBPb3BzOiAwMDAwIFsjMV0gU01QIE5PUFRJDQo+Pj4+ IFsgICAgMy45MDkyOTNdIENQVTogOCBQSUQ6IDQwOSBDb21tOiBrd29ya2VyLzg6MSBOb3QgdGFp bnRlZCA1LjIuMC1yYzEtDQo+a2ZkLQ0KPj4+PiBjb21wdXRlLXJvYy1tYXN0ZXItMTA3MzQgIzEN Cj4+Pj4gWyAgICAzLjkwOTc1M10gSGFyZHdhcmUgbmFtZTogSW52ZW50ZWMgICAgIFA0Nw0KPj5X QzIwNzEwMTkwMDENCj4+Pj4gL1A0NyAgICAgICAgICAgICAsIEJJT1MgMC42NCAwNC8wOS8yMDE4 DQo+Pj4+IFsgICAgMy45MTA1MzRdIFdvcmtxdWV1ZTogZXZlbnRzIHdvcmtfZm9yX2NwdV9mbg0K Pj4+PiBbICAgIDMuOTEwOTUzXSBSSVA6IDAwMTA6YW1kZ3B1X2dldF9iaW9zKzB4M2FhLzB4NTgw IFthbWRncHVdDQo+Pj4+IFsgICAgMy45MTEzMTRdIENvZGU6IGMwIDQ4IGM3IDQ0IDI0IDVjIDAw IDAwIDAwIDAwIDQ4IGM3IDg0IDI0IDkwIDAwIDAwIDAwDQo+MDANCj4+MDANCj4+Pj4gMDAgMDAg NDggODkgZDkgNDggMjkgZjkgODMgYzEgM2MgYzEgZTkgMDMgZjMgNDggYWIgNDkgOGIgNDQgMjQg MzggDQo+Pj4+IDw0OD4gOGIgNDAgMDgNCj4+Pj4gNDggODUgYzAgNzQgMjQgYmEgM2MgMDAgMDAg MDAgNDggODkgZGUgNGMgODkgZTcgZmYgZDANCj4+Pj4gWyAgICAzLjkxMjA2OV0gUlNQOiAwMDE4 OmZmZmZhMjdkY2UyOGZjNTAgRUZMQUdTOiAwMDAxMDIxMg0KPj4+PiBbICAgIDMuOTEyNTAyXSBS QVg6IDAwMDAwMDAwMDAwMDAwMDAgUkJYOiBmZmZmYTI3ZGNlMjhmY2FjIFJDWDoNCj4+Pj4gMDAw MDAwMDAwMDAwMDAwMA0KPj4+PiBbICAgIDMuOTEyOTgwXSBSRFg6IDAwMDAwMDAwMDAwMDAwMDAg UlNJOiAwMDAwMDAwMDAwMDAwMDgyIFJESToNCj4+Pj4gZmZmZmEyN2RjZTI4ZmNlOA0KPj4+PiBb ICAgIDMuOTEzNDY3XSBSQlA6IDAwMDAwMDAwMDAwMDAwMDAgUjA4OiAwMDAwMDAwMDAwMDAwMDAx IFIwOToNCj4+Pj4gMDAwMDAwMDAwMDAwMDc5YQ0KPj4+PiBbICAgIDMuOTEzOTQwXSBSMTA6IDAw MDAwMDAwMDAwMDAwMDAgUjExOiAwMDAwMDAwMDAwMDAwMDAxIFIxMjoNCj4+Pj4gZmZmZjg4ZDY1 N2FmMDAwMA0KPj4+PiBbICAgIDMuOTE0MzQ5XSBSMTM6IGZmZmZmZmZmYzBjMzgxMjAgUjE0OiBm ZmZmYTI3ZGNlMjhmYzY4IFIxNToNCj4+Pj4gZmZmZjg4ZDY1N2FmMDAwMA0KPj4+PiBbICAgIDMu OTE0NzY3XSBGUzogIDAwMDAwMDAwMDAwMDAwMDAoMDAwMCkgR1M6ZmZmZjg4ZDY1ZjQwMDAwMCgw MDAwKQ0KPj4+PiBrbmxHUzowMDAwMDAwMDAwMDAwMDAwDQo+Pj4+IFsgICAgMy45MTUyMDNdIENT OiAgMDAxMCBEUzogMDAwMCBFUzogMDAwMCBDUjA6IDAwMDAwMDAwODAwNTAwMzMNCj4+Pj4gWyAg ICAzLjkxNTYzN10gQ1IyOiAwMDAwMDAwMDAwMDAwMDA4IENSMzogMDAwMDAwM2U3NTQwYTAwMCBD UjQ6DQo+Pj4+IDAwMDAwMDAwMDAzNDA2ZTANCj4+Pj4gWyAgICAzLjkxNjA3NV0gQ2FsbCBUcmFj ZToNCj4+Pj4gWyAgICAzLjkxNjUyMl0gID8gcGNpZV9jYXBhYmlsaXR5X2NsZWFyX2FuZF9zZXRf d29yZCsweDUzLzB4ODANCj4+Pj4gWyAgICAzLjkxNzAxNF0gIGFtZGdwdV9kZXZpY2VfaW5pdCsw eDkyMy8weDE4MjAgW2FtZGdwdV0NCj4+Pj4gWyAgICAzLjkxNzUxNV0gIGFtZGdwdV9kcml2ZXJf bG9hZF9rbXMrMHg3MS8weDMxMCBbYW1kZ3B1XQ0KPj4+PiBbICAgIDMuOTE3OTk3XSAgZHJtX2Rl dl9yZWdpc3RlcisweDExMy8weDFhMCBbZHJtXQ0KPj4+PiBbICAgIDMuOTE4NTE0XSAgYW1kZ3B1 X3BjaV9wcm9iZSsweGI4LzB4MTUwIFthbWRncHVdDQo+Pj4+IFsgICAgMy45MTkwMDNdICA/IF9f cG1fcnVudGltZV9yZXN1bWUrMHg1NC8weDcwDQo+Pj4+IFsgICAgMy45MTkyNzBdIHVzYiAxLTI6 IE5ldyBVU0IgZGV2aWNlIGZvdW5kLCBpZFZlbmRvcj0xNGRkLA0KPj5pZFByb2R1Y3Q9MTAwNSwN Cj4+Pj4gYmNkRGV2aWNlPSAwLjAwDQo+Pj4+IFsgICAgMy45MTk0OThdICBsb2NhbF9wY2lfcHJv YmUrMHgzZC8weDkwDQo+Pj4+IFsgICAgMy45MTk1MDNdICA/IF9fc2NoZWR1bGUrMHgzZGUvMHg2 OTANCj4+Pj4gWyAgICAzLjkyMDM3NF0gdXNiIDEtMjogTmV3IFVTQiBkZXZpY2Ugc3RyaW5nczog TWZyPTEsIFByb2R1Y3Q9MiwNCj4+Pj4gU2VyaWFsTnVtYmVyPTMNCj4+Pj4gWyAgICAzLjkyMTEz N10gIHdvcmtfZm9yX2NwdV9mbisweDEwLzB4MjANCj4+Pj4gWyAgICAzLjkyMjAyOF0gdXNiIDEt MjogUHJvZHVjdDogRDJDSU0tVlVTQg0KPj4+PiBbICAgIDMuOTIyODE1XSAgcHJvY2Vzc19vbmVf d29yaysweDE1OS8weDNlMA0KPj4+PiBbICAgIDMuOTIzNjMzXSB1c2IgMS0yOiBNYW51ZmFjdHVy ZXI6IFJhcml0YW4NCj4+Pj4gWyAgICAzLjkyMzYzNV0gdXNiIDEtMjogU2VyaWFsTnVtYmVyOiBF RkZCMjEyRDBBNkUzMkYNCj4+Pj4gWyAgICAzLjkyNDQxNl0gIHdvcmtlcl90aHJlYWQrMHgyMmIv MHg0NDANCj4+Pj4gWyAgICAzLjkyNDQxOV0gID8gcmVzY3Vlcl90aHJlYWQrMHgzNTAvMHgzNTAN Cj4+Pj4gWyAgICAzLjkyNzgxMl0gIGt0aHJlYWQrMHhmNi8weDEzMA0KPj4+PiBbICAgIDMuOTI4 MTU3XSBhdGExOiBTQVRBIGxpbmsgdXAgNi4wIEdicHMgKFNTdGF0dXMgMTMzIFNDb250cm9sIDMw MCkNCj4+Pj4gWyAgICAzLjkyODM2NV0gID8ga3RocmVhZF9kZXN0cm95X3dvcmtlcisweDQwLzB4 NDANCj4+Pj4gWyAgICAzLjkyOTQwMV0gYXRhMS4wMDogQVRBLTEwOiBJTlRFTCBTU0RTQzJLRzk2 MEc3LCBTQ1YxMDEwMCwgbWF4DQo+Pj4+IFVETUEvMTMzDQo+Pj4+IFsgICAgMy45MzAxMDFdICBy ZXRfZnJvbV9mb3JrKzB4MWYvMHgzMA0KPj4+PiBbICAgIDMuOTMwMTAzXSBNb2R1bGVzIGxpbmtl ZCBpbjogYW1kZ3B1KCspIGNyY3QxMGRpZl9wY2xtdWwgY3JjMzJfcGNsbXVsDQo+Pj4+IGdoYXNo X2NsbXVsbmlfaW50ZWwgYXN0IGFtZF9pb21tdV92MiBhZXNuaV9pbnRlbCBncHVfc2NoZWQgDQo+ Pj4+IGkyY19hbGdvX2JpdA0KPj4+PiBhZXNfeDg2XzY0IHR0bSBjcnlwdG9fc2ltZCBkcm1fa21z X2hlbHBlciBjcnlwdGQgZ2x1ZV9oZWxwZXIgDQo+Pj4+IHN5c2NvcHlhcmVhIHN5c2ZpbGxyZWN0 IGFoY2kgc3lzaW1nYmx0IGxpYmFoY2kgZmJfc3lzX2ZvcHMgaXhnYmUoKykgDQo+Pj4+IGRybSBk Y2EgbWRpbw0KPj4+PiBbICAgIDMuOTMwOTY1XSBhdGExLjAwOiAxODc1Mzg1MDA4IHNlY3RvcnMs IG11bHRpIDE6IExCQTQ4IE5DUSAoZGVwdGggMzIpDQo+Pj4+IFsgICAgMy45MzEwODVdIGF0YTEu MDA6IGNvbmZpZ3VyZWQgZm9yIFVETUEvMTMzDQo+Pj4+IFsgICAgMy45MzE4MDldIENSMjogMDAw MDAwMDAwMDAwMDAwOA0KPj4+PiBbICAgIDMuOTM0NzIzXSBzY3NpIDA6MDowOjA6IERpcmVjdC1B Y2Nlc3MgICAgIEFUQSAgICAgIElOVEVMIFNTRFNDMktHOTYgMDEwMA0KPj5QUToNCj4+Pj4gMCBB TlNJOiA1DQo+Pj4+DQo+Pj4+DQo+Pj4+IFRoYW5rcyENCj4+Pj4NCj4+Pj4gS2VudA0KPj4+Pg0K Pj4+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPj4+PiBGcm9tOiBhbWQtZ2Z4IDxhbWQt Z2Z4LWJvdW5jZXNAbGlzdHMuZnJlZWRlc2t0b3Aub3JnPiBPbiBCZWhhbGYgT2YgDQo+Pj4+IFF1 YW4sIEV2YW4NCj4+Pj4gU2VudDogTW9uZGF5LCBNYXkgMjcsIDIwMTkgOToxNyBQTQ0KPj4+PiBU bzogRGVuZywgRW1pbHkgPEVtaWx5LkRlbmdAYW1kLmNvbT47IGFtZC1nZnhAbGlzdHMuZnJlZWRl c2t0b3Aub3JnDQo+Pj4+IENjOiBEZW5nLCBFbWlseSA8RW1pbHkuRGVuZ0BhbWQuY29tPg0KPj4+ PiBTdWJqZWN0OiBSRTogW1BBVENIXSBkcm0vYW1kZ3B1OiBOZWVkIHRvIHNldCB0aGUgYmFjbyBj YXAgYmVmb3JlIA0KPj4+PiBiYWNvIHJlc2V0DQo+Pj4+DQo+Pj4+IFJldmlld2VkLWJ5OiBFdmFu IFF1YW4gPGV2YW4ucXVhbkBhbWQuY29tPg0KPj4+Pg0KPj4+Pj4gLS0tLS1PcmlnaW5hbCBNZXNz YWdlLS0tLS0NCj4+Pj4+IEZyb206IGFtZC1nZnggPGFtZC1nZngtYm91bmNlc0BsaXN0cy5mcmVl ZGVza3RvcC5vcmc+IE9uIEJlaGFsZiBPZiANCj4+Pj4+IEVtaWx5IERlbmcNCj4+Pj4+IFNlbnQ6 IE1vbmRheSwgTWF5IDI3LCAyMDE5IDM6NDMgUE0NCj4+Pj4+IFRvOiBhbWQtZ2Z4QGxpc3RzLmZy ZWVkZXNrdG9wLm9yZw0KPj4+Pj4gQ2M6IERlbmcsIEVtaWx5IDxFbWlseS5EZW5nQGFtZC5jb20+ DQo+Pj4+PiBTdWJqZWN0OiBbUEFUQ0hdIGRybS9hbWRncHU6IE5lZWQgdG8gc2V0IHRoZSBiYWNv IGNhcCBiZWZvcmUgYmFjbyANCj4+Pj4+IHJlc2V0DQo+Pj4+Pg0KPj4+Pj4gRm9yIHBhc3N0aHJv dWdoLCBhZnRlciByZWJvb3RlZCB0aGUgVk0sIGRyaXZlciB3aWxsIGRvIGEgYmFjbyANCj4+Pj4+ IHJlc2V0IGJlZm9yZSBkb2luZyBvdGhlciBkcml2ZXIgaW5pdGlhbGl6YXRpb24gZHVyaW5nIGxv YWRpbmcgIGRyaXZlci4NCj4+Pj4+IEZvciBkb2luZyB0aGUgYmFjbyByZXNldCwgaXQgd2lsbCBm aXJzdCBjaGVjayB0aGUgYmFjbyByZXNldCBjYXBhYmlsaXR5Lg0KPj4+Pj4gU28gZmlyc3QgbmVl ZCB0byBzZXQgdGhlIGNhcCBmcm9tIHRoZSB2YmlvcyBpbmZvcm1hdGlvbiBvciBiYWNvIA0KPj4+ Pj4gcmVzZXQgd29uJ3QNCj4+Pj4gYmUgZW5hYmxlZC4NCj4+Pj4+DQo+Pj4+PiBTaWduZWQtb2Zm LWJ5OiBFbWlseSBEZW5nIDxFbWlseS5EZW5nQGFtZC5jb20+DQo+Pj4+PiAtLS0NCj4+Pj4+ICAg ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2RldmljZS5jICAgICAgICAgfCAyNA0K PisrKysrKysrKystLQ0KPj4tLS0NCj4+Pj4+IC0tLS0tLS0NCj4+Pj4+ICAgZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvc29jMTUuYyAgICAgICAgICAgICAgICAgfCAgMyArKy0NCj4+Pj4+ICAg ZHJpdmVycy9ncHUvZHJtL2FtZC9wb3dlcnBsYXkvaHdtZ3IvdmVnYTEwX2h3bWdyLmMgfCAgNCAr KysrDQo+Pj4+PiAgIC4uLi9hbWQvcG93ZXJwbGF5L2h3bWdyL3ZlZ2ExMF9wcm9jZXNzcHB0YWJs ZXMuYyAgIHwgMjQNCj4+Pj4+ICsrKysrKysrKysrKysrKysrKysrKysNCj4+Pj4+ICAgLi4uL2Ft ZC9wb3dlcnBsYXkvaHdtZ3IvdmVnYTEwX3Byb2Nlc3NwcHRhYmxlcy5oICAgfCAgMSArDQo+Pj4+ PiAgIDUgZmlsZXMgY2hhbmdlZCwgNDIgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pDQo+ Pj4+Pg0KPj4+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdw dV9kZXZpY2UuYw0KPj4+Pj4gYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZGV2 aWNlLmMNCj4+Pj4+IGluZGV4IGI2ZGVkODQuLjdhOGMyMjAgMTAwNjQ0DQo+Pj4+PiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZGV2aWNlLmMNCj4+Pj4+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9kZXZpY2UuYw0KPj4+Pj4gQEAgLTE1NDEs NiArMTU0MSwxNyBAQCBzdGF0aWMgaW50DQo+Pj4+PiBhbWRncHVfZGV2aWNlX2lwX2Vhcmx5X2lu aXQoc3RydWN0DQo+Pj4+PiBhbWRncHVfZGV2aWNlICphZGV2KQ0KPj4+Pj4gICAJaWYgKGFtZGdw dV9zcmlvdl92ZihhZGV2KSkNCj4+Pj4+ICAgCQlhZGV2LT5wbS5wcF9mZWF0dXJlICY9IH5QUF9H RlhPRkZfTUFTSzsNCj4+Pj4+DQo+Pj4+PiArCS8qIFJlYWQgQklPUyAqLw0KPj4+Pj4gKwlpZiAo IWFtZGdwdV9nZXRfYmlvcyhhZGV2KSkNCj4+Pj4+ICsJCXJldHVybiAtRUlOVkFMOw0KPj4+Pj4g Kw0KPj4+Pj4gKwlyID0gYW1kZ3B1X2F0b21iaW9zX2luaXQoYWRldik7DQo+Pj4+PiArCWlmIChy KSB7DQo+Pj4+PiArCQlkZXZfZXJyKGFkZXYtPmRldiwgImFtZGdwdV9hdG9tYmlvc19pbml0IGZh aWxlZFxuIik7DQo+Pj4+PiArCQlhbWRncHVfdmZfZXJyb3JfcHV0KGFkZXYsDQo+Pj4+PiBBTURH SU1fRVJST1JfVkZfQVRPTUJJT1NfSU5JVF9GQUlMLCAwLCAwKTsNCj4+Pj4+ICsJCXJldHVybiBy Ow0KPj4+Pj4gKwl9DQo+Pj4+PiArDQo+Pj4+PiAgIAlmb3IgKGkgPSAwOyBpIDwgYWRldi0+bnVt X2lwX2Jsb2NrczsgaSsrKSB7DQo+Pj4+PiAgIAkJaWYgKChhbWRncHVfaXBfYmxvY2tfbWFzayAm ICgxIDw8IGkpKSA9PSAwKSB7DQo+Pj4+PiAgIAkJCURSTV9FUlJPUigiZGlzYWJsZWQgaXAgYmxv Y2s6ICVkIDwlcz5cbiIsIEBAIC0NCj4+Pj4+IDI1OTEsMTkgKzI2MDIsNiBAQCBpbnQgYW1kZ3B1 X2RldmljZV9pbml0KHN0cnVjdCBhbWRncHVfZGV2aWNlDQo+PiphZGV2LA0KPj4+Pj4gICAJCWdv dG8gZmVuY2VfZHJpdmVyX2luaXQ7DQo+Pj4+PiAgIAl9DQo+Pj4+Pg0KPj4+Pj4gLQkvKiBSZWFk IEJJT1MgKi8NCj4+Pj4+IC0JaWYgKCFhbWRncHVfZ2V0X2Jpb3MoYWRldikpIHsNCj4+Pj4+IC0J CXIgPSAtRUlOVkFMOw0KPj4+Pj4gLQkJZ290byBmYWlsZWQ7DQo+Pj4+PiAtCX0NCj4+Pj4+IC0N Cj4+Pj4+IC0JciA9IGFtZGdwdV9hdG9tYmlvc19pbml0KGFkZXYpOw0KPj4+Pj4gLQlpZiAocikg ew0KPj4+Pj4gLQkJZGV2X2VycihhZGV2LT5kZXYsICJhbWRncHVfYXRvbWJpb3NfaW5pdCBmYWls ZWRcbiIpOw0KPj4+Pj4gLQkJYW1kZ3B1X3ZmX2Vycm9yX3B1dChhZGV2LA0KPj4+Pj4gQU1ER0lN X0VSUk9SX1ZGX0FUT01CSU9TX0lOSVRfRkFJTCwgMCwgMCk7DQo+Pj4+PiAtCQlnb3RvIGZhaWxl ZDsNCj4+Pj4+IC0JfQ0KPj4+Pj4gLQ0KPj4+Pj4gICAJLyogZGV0ZWN0IGlmIHdlIGFyZSB3aXRo IGFuIFNSSU9WIHZiaW9zICovDQo+Pj4+PiAgIAlhbWRncHVfZGV2aWNlX2RldGVjdF9zcmlvdl9i aW9zKGFkZXYpOw0KPj4+Pj4NCj4+Pj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1k L2FtZGdwdS9zb2MxNS5jDQo+Pj4+PiBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3NvYzE1 LmMNCj4+Pj4+IGluZGV4IDc4YmQ0ZmMuLmQ5ZmRkOTUgMTAwNjQ0DQo+Pj4+PiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9zb2MxNS5jDQo+Pj4+PiArKysgYi9kcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9zb2MxNS5jDQo+Pj4+PiBAQCAtNzY0LDcgKzc2NCw4IEBAIHN0YXRpYyBi b29sIHNvYzE1X25lZWRfcmVzZXRfb25faW5pdChzdHJ1Y3QgDQo+Pj4+PiBhbWRncHVfZGV2aWNl ICphZGV2KQ0KPj4+Pj4gICAJLyogSnVzdCByZXR1cm4gZmFsc2UgZm9yIHNvYzE1IEdQVXMuICBS ZXNldCBkb2VzIG5vdCBzZWVtIHRvDQo+Pj4+PiAgIAkgKiBiZSBuZWNlc3NhcnkuDQo+Pj4+PiAg IAkgKi8NCj4+Pj4+IC0JcmV0dXJuIGZhbHNlOw0KPj4+Pj4gKwlpZiAoIWFtZGdwdV9wYXNzdGhy b3VnaChhZGV2KSkNCj4+Pj4+ICsJCXJldHVybiBmYWxzZTsNCj4+Pj4+DQo+Pj4+PiAgIAlpZiAo YWRldi0+ZmxhZ3MgJiBBTURfSVNfQVBVKQ0KPj4+Pj4gICAJCXJldHVybiBmYWxzZTsNCj4+Pj4+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL3Bvd2VycGxheS9od21nci92ZWdhMTBf aHdtZ3IuYw0KPj4+Pj4gYi9kcml2ZXJzL2dwdS9kcm0vYW1kL3Bvd2VycGxheS9od21nci92ZWdh MTBfaHdtZ3IuYw0KPj4+Pj4gaW5kZXggY2U2YWViNS4uMWQ5YmIyOSAxMDA2NDQNCj4+Pj4+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvcG93ZXJwbGF5L2h3bWdyL3ZlZ2ExMF9od21nci5jDQo+ Pj4+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL3Bvd2VycGxheS9od21nci92ZWdhMTBfaHdt Z3IuYw0KPj4+Pj4gQEAgLTUzMTEsOCArNTMxMSwxMiBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHBw X2h3bWdyX2Z1bmMgDQo+Pj4+PiB2ZWdhMTBfaHdtZ3JfZnVuY3MgPSB7DQo+Pj4+Pg0KPj4+Pj4g ICBpbnQgdmVnYTEwX2h3bWdyX2luaXQoc3RydWN0IHBwX2h3bWdyICpod21ncikgIHsNCj4+Pj4+ ICsJc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYgPSBod21nci0+YWRldjsNCj4+Pj4+ICsNCj4+ Pj4+ICAgCWh3bWdyLT5od21ncl9mdW5jID0gJnZlZ2ExMF9od21ncl9mdW5jczsNCj4+Pj4+ICAg CWh3bWdyLT5wcHRhYmxlX2Z1bmMgPSAmdmVnYTEwX3BwdGFibGVfZnVuY3M7DQo+Pj4+PiArCWlm IChhbWRncHVfcGFzc3Rocm91Z2goYWRldikpDQo+Pj4+PiArCQlyZXR1cm4gdmVnYTEwX2JhY29f c2V0X2NhcChod21ncik7DQo+Pj4+Pg0KPj4+Pj4gICAJcmV0dXJuIDA7DQo+Pj4+PiAgIH0NCj4+ Pj4+IGRpZmYgLS1naXQNCj4+Pj4+IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9wb3dlcnBsYXkvaHdt Z3IvdmVnYTEwX3Byb2Nlc3NwcHRhYmxlcy5jDQo+Pj4+PiBiL2RyaXZlcnMvZ3B1L2RybS9hbWQv cG93ZXJwbGF5L2h3bWdyL3ZlZ2ExMF9wcm9jZXNzcHB0YWJsZXMuYw0KPj4+Pj4gaW5kZXggYjY3 NjdkNy4uODNkMjJjZCAxMDA2NDQNCj4+Pj4+IC0tLQ0KPmEvZHJpdmVycy9ncHUvZHJtL2FtZC9w b3dlcnBsYXkvaHdtZ3IvdmVnYTEwX3Byb2Nlc3NwcHRhYmxlcy5jDQo+Pj4+PiArKysNCj4+Yi9k cml2ZXJzL2dwdS9kcm0vYW1kL3Bvd2VycGxheS9od21nci92ZWdhMTBfcHJvY2Vzc3BwdGFibGVz LmMNCj4+Pj4+IEBAIC0xMzcxLDMgKzEzNzEsMjcgQEAgaW50IHZlZ2ExMF9nZXRfcG93ZXJwbGF5 X3RhYmxlX2VudHJ5KHN0cnVjdA0KPj4+Pj4gcHBfaHdtZ3IgKmh3bWdyLA0KPj4+Pj4NCj4+Pj4+ ICAgCXJldHVybiByZXN1bHQ7DQo+Pj4+PiAgIH0NCj4+Pj4+ICsNCj4+Pj4+ICtpbnQgdmVnYTEw X2JhY29fc2V0X2NhcChzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdyKSB7DQo+Pj4+PiArCWludCByZXN1 bHQgPSAwOw0KPj4+Pj4gKw0KPj4+Pj4gKwljb25zdCBBVE9NX1ZlZ2ExMF9QT1dFUlBMQVlUQUJM RSAqcG93ZXJwbGF5X3RhYmxlOw0KPj4+Pj4gKw0KPj4+Pj4gKwlwb3dlcnBsYXlfdGFibGUgPSBn ZXRfcG93ZXJwbGF5X3RhYmxlKGh3bWdyKTsNCj4+Pj4+ICsNCj4+Pj4+ICsJUFBfQVNTRVJUX1dJ VEhfQ09ERSgocG93ZXJwbGF5X3RhYmxlICE9IE5VTEwpLA0KPj4+Pj4gKwkJIk1pc3NpbmcgUG93 ZXJQbGF5IFRhYmxlISIsIHJldHVybiAtMSk7DQo+Pj4+PiArDQo+Pj4+PiArCXJlc3VsdCA9IGNo ZWNrX3Bvd2VycGxheV90YWJsZXMoaHdtZ3IsIHBvd2VycGxheV90YWJsZSk7DQo+Pj4+PiArDQo+ Pj4+PiArCVBQX0FTU0VSVF9XSVRIX0NPREUoKHJlc3VsdCA9PSAwKSwNCj4+Pj4+ICsJCQkgICAg ImNoZWNrX3Bvd2VycGxheV90YWJsZXMgZmFpbGVkIiwgcmV0dXJuIHJlc3VsdCk7DQo+Pj4+PiAr DQo+Pj4+PiArCXNldF9od19jYXAoDQo+Pj4+PiArCQkJaHdtZ3IsDQo+Pj4+PiArCQkJMCAhPSAo bGUzMl90b19jcHUocG93ZXJwbGF5X3RhYmxlLT51bFBsYXRmb3JtQ2FwcykNCj4+Pj4+ICYgQVRP TV9WRUdBMTBfUFBfUExBVEZPUk1fQ0FQX0JBQ08pLA0KPj4+Pj4gKwkJCVBITV9QbGF0Zm9ybUNh cHNfQkFDTyk7DQo+Pj4+PiArCXJldHVybiByZXN1bHQ7DQo+Pj4+PiArfQ0KPj4+Pj4gKw0KPj4+ Pj4gZGlmZiAtLWdpdA0KPj4+Pj4gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL3Bvd2VycGxheS9od21n ci92ZWdhMTBfcHJvY2Vzc3BwdGFibGVzLmgNCj4+Pj4+IGIvZHJpdmVycy9ncHUvZHJtL2FtZC9w b3dlcnBsYXkvaHdtZ3IvdmVnYTEwX3Byb2Nlc3NwcHRhYmxlcy5oDQo+Pj4+PiBpbmRleCBkODNl ZDJhLi5kYTVmYmVjIDEwMDY0NA0KPj4+Pj4gLS0tDQo+PmEvZHJpdmVycy9ncHUvZHJtL2FtZC9w b3dlcnBsYXkvaHdtZ3IvdmVnYTEwX3Byb2Nlc3NwcHRhYmxlcy5oDQo+Pj4+PiArKysNCj4+Yi9k cml2ZXJzL2dwdS9kcm0vYW1kL3Bvd2VycGxheS9od21nci92ZWdhMTBfcHJvY2Vzc3BwdGFibGVz LmgNCj4+Pj4+IEBAIC01OSw0ICs1OSw1IEBAIGV4dGVybiBpbnQNCj4+Pj4+IHZlZ2ExMF9nZXRf bnVtYmVyX29mX3Bvd2VycGxheV90YWJsZV9lbnRyaWVzKHN0cnVjdCBwcF9od21ncg0KPj4+PiAq aHdtZ3IpOw0KPj4+Pj4gZXh0ZXJuIGludCB2ZWdhMTBfZ2V0X3Bvd2VycGxheV90YWJsZV9lbnRy eShzdHJ1Y3QgcHBfaHdtZ3IgDQo+Pj4+PiAqaHdtZ3IsIHVpbnQzMl90IGVudHJ5X2luZGV4LA0K Pj4+Pj4gICAJCXN0cnVjdCBwcF9wb3dlcl9zdGF0ZSAqcG93ZXJfc3RhdGUsIGludA0KPj4+PiAo KmNhbGxfYmFja19mdW5jKShzdHJ1Y3QNCj4+Pj4+IHBwX2h3bWdyICosIHZvaWQgKiwNCj4+Pj4+ ICAgCQkJCXN0cnVjdCBwcF9wb3dlcl9zdGF0ZSAqLCB2b2lkICosIHVpbnQzMl90KSk7DQo+Pj4+ PiArZXh0ZXJuIGludCB2ZWdhMTBfYmFjb19zZXRfY2FwKHN0cnVjdCBwcF9od21nciAqaHdtZ3Ip Ow0KPj4+Pj4gICAjZW5kaWYNCj4+Pj4+IC0tDQo+Pj4+PiAyLjcuNA0KPj4+Pj4NCj4+Pj4+IF9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQo+Pj4+PiBhbWQt Z2Z4IG1haWxpbmcgbGlzdA0KPj4+Pj4gYW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcNCj4+ Pj4+IGh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vYW1kLWdm eA0KPj4+PiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXw0K Pj4+PiBhbWQtZ2Z4IG1haWxpbmcgbGlzdA0KPj4+PiBhbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9w Lm9yZw0KPj4+PiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2FtZC1nZngNCj4+PiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXw0KPj4+IGFtZC1nZnggbWFpbGluZyBsaXN0DQo+Pj4gYW1kLWdmeEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcNCj4+PiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2FtZC1nZngNCj4+Pg0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KYW1kLWdmeCBtYWlsaW5nIGxpc3QKYW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5v cmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9hbWQtZ2Z4