From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Koenig, Christian" Subject: Re: [PATCH 1/2] drm/amdgpu: Remap hdp coherency registers Date: Mon, 15 Apr 2019 08:06:04 +0000 Message-ID: <677f9d24-2c03-bf30-7bb6-0e57a38f158d@amd.com> References: <1555014669-30077-1-git-send-email-Oak.Zeng@amd.com> <9cc46562-129b-5e1f-14a9-6244ede19f3e@gmail.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 Content-ID: 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: "Zeng, Oak" , "amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" Cc: "Deucher, Alexander" , "Kuehling, Felix" , "Keely, Sean" SGkgT2FrLA0KDQp3ZWxsLCB3ZSBtYWtlIHRoZSBmdW5jdGlvbiBwb2ludGVyIHN0cnVjdHVyZXMg Y29uc3RhbnQgaXMgZXhhY3RseSB0byANCnByZXZlbnQgdGhvc2Ugc2NlbmFyaW9zLg0KDQpCYWNr Z3JvdW5kIGlzIHRoYXQgbXVsdGlwbGUgR1BVIGNhbiB1c2UgdGhlIHNhbWUgZnVuY3Rpb24gcG9p bnRlciANCnN0cnVjdHVyZSwgYnV0IHdpdGggZGlmZmVyZW50IHJlZ2lzdGVyIG9mZnNldHMuIFNv IHdoYXQgeW91IGRvIGhlcmUgaXMgDQphY3R1YWxseSBpbGxlZ2FsIGFuZCBjb3VsZCBicmVhayBp biBzb21lIGNhc2VzLg0KDQpFYXNpZXN0IHNvbHV0aW9uIHdvdWxkIGluZGVlZCBiZSB0byBhZGQg YSBuZXcgc3R1ZmYgZGlyZWN0bHkgdG8gdGhlIA0KYWRldiwgcHJvYmFibHkgYmVzdCBlbmNhcHN1 bGF0ZWQgaW4gYSBuZXcgc3RydWN0dXJlLg0KDQpSZWdhcmRzLA0KQ2hyaXN0aWFuLg0KDQpBbSAx Mi4wNC4xOSB1bSAxNzozOSBzY2hyaWViIFplbmcsIE9hazoNCj4gSGkgQ2hyaXN0aWFuLA0KPg0K PiBBZnRlciBoZHAgcmVnaXN0ZXJzIGFyZSBtb3ZlZCB0byBhIG5ldyBwbGFjZSBpbiBtbWlvIHNw YWNlLCB3ZSBjYW4ndCBhY2Nlc3MgdGhvc2UgcmVnaXN0ZXJzIHRocm91Z2ggdGhlIHByZS1kZWZp bmVkIHJlZ2lzdGVyIG9mZnNldC4gSSByZWNvcmRlZCB0aGUgbmV3IHJlZ2lzdGVyIG9mZnNldCBp biBzdHJ1Y3QgYW1kZ3B1X25iaW9fZnVuY3MgKGJlY2F1c2UgdGhvc2UgcmVnaXN0ZXJzIGFyZSBu YmlvIHJlZ2lzdGVycykgYW5kIGluaXRpYWxpemVkIHRoZW0gaW4gdGhlIGVhcmx5IGluaXQuIEFm dGVyIHRob3NlIGNoYW5nZXMsIEkgY2FuJ3Qga2VlcCBpbnN0YW5jZSBvZiBzdHJ1Y3QgYW1kZ3B1 X25iaW9fZnVuY3MgdG8gYmUgY29uc3RhbnQgYW55bW9yZSAtIHdlIGRvbid0IGtub3cgdGhlIG5l dyByZWdpc3RlciBvZmZzZXQgYmVmb3JlIHRoZSByZW1hcCBmdW5jdGlvbi4gV2hlbiBJIG1hZGUg dGhlIGNoYW5nZSwgSSBhbHNvIGZlbHQgbm90IGNvbWZvcnRhYmxlLiBEbyB5b3UgaGF2ZSBhbnkg YmV0dGVyIHNvbHV0aW9uPyBJbnRyb2R1Y2UgbmV3IHIvdyBtZW1iZXJzIGRpcmVjdGx5IHRvIGFk ZXY/IC0gSSBhbHNvIGZlZWwgbm90IGNvbWZvcnRhYmxlIGJlY2F1c2UgdGhvc2UgcmVnaXN0ZXJz IEkgYWRkZWQgYmVsb25ncyB0byBuYmlvIGJ5IG5hdHVyZS4uLg0KPg0KPiBSZWdhcmRzLA0KPiBP YWsNCj4NCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogQ2hyaXN0aWFuIEvD tm5pZyA8Y2tvZW5pZy5sZWljaHR6dW1lcmtlbkBnbWFpbC5jb20+DQo+IFNlbnQ6IEZyaWRheSwg QXByaWwgMTIsIDIwMTkgMzoyNCBBTQ0KPiBUbzogWmVuZywgT2FrIDxPYWsuWmVuZ0BhbWQuY29t PjsgYW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcNCj4gQ2M6IERldWNoZXIsIEFsZXhhbmRl ciA8QWxleGFuZGVyLkRldWNoZXJAYW1kLmNvbT47IEt1ZWhsaW5nLCBGZWxpeCA8RmVsaXguS3Vl aGxpbmdAYW1kLmNvbT47IEtlZWx5LCBTZWFuIDxTZWFuLktlZWx5QGFtZC5jb20+DQo+IFN1Ympl Y3Q6IFJlOiBbUEFUQ0ggMS8yXSBkcm0vYW1kZ3B1OiBSZW1hcCBoZHAgY29oZXJlbmN5IHJlZ2lz dGVycw0KPg0KPiBBbSAxMS4wNC4xOSB1bSAyMjozMSBzY2hyaWViIFplbmcsIE9hazoNCj4+IFJl bWFwIEhEUF9NRU1fQ09IRVJFTkNZX0ZMVVNIX0NOVEwgYW5kIEhEUF9SRUdfQ09IRVJFTkNZX0ZM VVNIX0NOVEwgdG8NCj4+IGFuIGVtcHR5IHBhZ2UgaW4gbW1pbyBzcGFjZS4gV2Ugd2lsbCBsYXRl ciBtYXAgdGhpcyBwYWdlIHRvIHByb2Nlc3MNCj4+IHNwYWNlIHNvIGFwcGxpY2F0aW9uIGNhbiBm bHVzaCBoZHAuIFRoaXMgY2FuJ3QgYmUgZG9uZSBwcm9wZXJseSBhdA0KPj4gdGhvc2UgcmVnaXN0 ZXJzJyBvcmlnaW5hbCBsb2NhdGlvbiBiZWNhdXNlIGl0IHdpbGwgZXhwb3NlIG1vcmUgdGhhbg0K Pj4gZGVzaXJlZCByZWdpc3RlcnMgdG8gcHJvY2VzcyBzcGFjZS4NCj4+DQo+PiBDaGFuZ2UtSWQ6 IElhOGQyN2MwYzlhMDgyNzExZDE2YmJmNTU2MDJiZjU3MTJhNDdiNmQ2DQo+PiBTaWduZWQtb2Zm LWJ5OiBPYWsgWmVuZyA8T2FrLlplbmdAYW1kLmNvbT4NCj4+IC0tLQ0KPj4gICAgZHJpdmVycy9n cHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1LmggICAgfCAgNiArKysrKy0NCj4+ICAgIGRyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L25iaW9fdjZfMS5jIHwgIDIgKy0NCj4+ICAgIGRyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1L25iaW9fdjZfMS5oIHwgIDIgKy0NCj4+ICAgIGRyaXZlcnMvZ3B1L2Ry bS9hbWQvYW1kZ3B1L25iaW9fdjdfMC5jIHwgIDcgKysrLS0tLQ0KPj4gICAgZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvbmJpb192N18wLmggfCAgMiArLQ0KPj4gICAgZHJpdmVycy9ncHUvZHJt L2FtZC9hbWRncHUvbmJpb192N180LmMgfCAgNyArKystLS0tDQo+PiAgICBkcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9uYmlvX3Y3XzQuaCB8ICAyICstDQo+PiAgICBkcml2ZXJzL2dwdS9kcm0v YW1kL2FtZGdwdS9zb2MxNS5jICAgICB8IDIyICsrKysrKysrKysrKysrKysrKysrKysNCj4+ICAg IDggZmlsZXMgY2hhbmdlZCwgMzcgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pDQo+Pg0K Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdS5oDQo+PiBi L2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdS5oDQo+PiBpbmRleCBiYzk2ZWM0Li44 NDBiZTA1IDEwMDY0NA0KPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1 LmgNCj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdS5oDQo+PiBAQCAt NjQ0LDYgKzY0NCwxMCBAQCBzdHJ1Y3QgbmJpb19oZHBfZmx1c2hfcmVnIHsNCj4+ICAgIA0KPj4g ICAgc3RydWN0IGFtZGdwdV9uYmlvX2Z1bmNzIHsNCj4+ICAgIAljb25zdCBzdHJ1Y3QgbmJpb19o ZHBfZmx1c2hfcmVnICpoZHBfZmx1c2hfcmVnOw0KPj4gKwl1MzIgcmVtYXBwZWRfaGRwX21lbV9m bHVzaF9jbnRsX3JlZ19vZmZzZXQ7DQo+PiArCXUzMiByZW1hcHBlZF9oZHBfcmVnX2ZsdXNoX2Nu dGxfcmVnX29mZnNldDsNCj4+ICsJcmVzb3VyY2Vfc2l6ZV90IHJlbWFwcGVkX2hkcF9tZW1fZmx1 c2hfY250bF9waHlzaWNhbF9hZGRyOw0KPj4gKwlyZXNvdXJjZV9zaXplX3QgcmVtYXBwZWRfaGRw X3JlZ19mbHVzaF9jbnRsX3BoeXNpY2FsX2FkZHI7DQo+PiAgICAJdTMyICgqZ2V0X2hkcF9mbHVz aF9yZXFfb2Zmc2V0KShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldik7DQo+PiAgICAJdTMyICgq Z2V0X2hkcF9mbHVzaF9kb25lX29mZnNldCkoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpOw0K Pj4gICAgCXUzMiAoKmdldF9wY2llX2luZGV4X29mZnNldCkoc3RydWN0IGFtZGdwdV9kZXZpY2Ug KmFkZXYpOyBAQCAtOTA1LDcNCj4+ICs5MDksNyBAQCBzdHJ1Y3QgYW1kZ3B1X2RldmljZSB7DQo+ PiAgICAJLyogc29jMTUgcmVnaXN0ZXIgb2Zmc2V0IGJhc2VkIG9uIGlwLCBpbnN0YW5jZSBhbmQg IHNlZ21lbnQgKi8NCj4+ICAgIAl1aW50MzJfdCAJCSpyZWdfb2Zmc2V0W01BWF9IV0lQXVtIV0lQ X01BWF9JTlNUQU5DRV07DQo+PiAgICANCj4+IC0JY29uc3Qgc3RydWN0IGFtZGdwdV9uYmlvX2Z1 bmNzCSpuYmlvX2Z1bmNzOw0KPj4gKwlzdHJ1Y3QgYW1kZ3B1X25iaW9fZnVuY3MJKm5iaW9fZnVu Y3M7DQo+IFBsZWFzZSBrZXAgdGhlIGZ1bmN0aW9uIHBvaW50ZXJzIGNvbnN0YW50LiBUaG9zZSBz aG91bGQgbmV2ZXIgYmUgY2hhbmdlZCBvbiBhIHJ1bm5pbmcgc3lzdGVtLg0KPg0KPiBDaHJpc3Rp YW4uDQo+DQo+PiAgICAJY29uc3Qgc3RydWN0IGFtZGdwdV9kZl9mdW5jcwkqZGZfZnVuY3M7DQo+ PiAgICANCj4+ICAgIAkvKiBkZWxheWVkIHdvcmtfZnVuYyBmb3IgZGVmZXJyaW5nIGNsb2NrZ2F0 aW5nIGR1cmluZyByZXN1bWUgKi8NCj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1k L2FtZGdwdS9uYmlvX3Y2XzEuYw0KPj4gYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9uYmlv X3Y2XzEuYw0KPj4gaW5kZXggNjU5MDE0My4uMjQ3MGI4ZSAxMDA2NDQNCj4+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L25iaW9fdjZfMS5jDQo+PiArKysgYi9kcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9uYmlvX3Y2XzEuYw0KPj4gQEAgLTI3Niw3ICsyNzYsNyBAQCBzdGF0aWMg dm9pZCBuYmlvX3Y2XzFfaW5pdF9yZWdpc3RlcnMoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYp DQo+PiAgICAJCVdSRUczMl9QQ0lFKHNtblBDSUVfQ0lfQ05UTCwgZGF0YSk7DQo+PiAgICB9DQo+ PiAgICANCj4+IC1jb25zdCBzdHJ1Y3QgYW1kZ3B1X25iaW9fZnVuY3MgbmJpb192Nl8xX2Z1bmNz ID0gew0KPj4gK3N0cnVjdCBhbWRncHVfbmJpb19mdW5jcyBuYmlvX3Y2XzFfZnVuY3MgPSB7DQo+ PiAgICAJLmhkcF9mbHVzaF9yZWcgPSAmbmJpb192Nl8xX2hkcF9mbHVzaF9yZWcsDQo+PiAgICAJ LmdldF9oZHBfZmx1c2hfcmVxX29mZnNldCA9IG5iaW9fdjZfMV9nZXRfaGRwX2ZsdXNoX3JlcV9v ZmZzZXQsDQo+PiAgICAJLmdldF9oZHBfZmx1c2hfZG9uZV9vZmZzZXQgPSBuYmlvX3Y2XzFfZ2V0 X2hkcF9mbHVzaF9kb25lX29mZnNldCwNCj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v YW1kL2FtZGdwdS9uYmlvX3Y2XzEuaA0KPj4gYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9u YmlvX3Y2XzEuaA0KPj4gaW5kZXggMDc0M2E2Zi4uZDQwOWJiNiAxMDA2NDQNCj4+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L25iaW9fdjZfMS5oDQo+PiArKysgYi9kcml2ZXJzL2dw dS9kcm0vYW1kL2FtZGdwdS9uYmlvX3Y2XzEuaA0KPj4gQEAgLTI2LDYgKzI2LDYgQEANCj4+ICAg IA0KPj4gICAgI2luY2x1ZGUgInNvYzE1X2NvbW1vbi5oIg0KPj4gICAgDQo+PiAtZXh0ZXJuIGNv bnN0IHN0cnVjdCBhbWRncHVfbmJpb19mdW5jcyBuYmlvX3Y2XzFfZnVuY3M7DQo+PiArZXh0ZXJu IHN0cnVjdCBhbWRncHVfbmJpb19mdW5jcyBuYmlvX3Y2XzFfZnVuY3M7DQo+PiAgICANCj4+ICAg ICNlbmRpZg0KPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L25iaW9f djdfMC5jDQo+PiBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L25iaW9fdjdfMC5jDQo+PiBp bmRleCAxY2RiOThhLi45YTVhYmY1IDEwMDY0NA0KPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2Ft ZC9hbWRncHUvbmJpb192N18wLmMNCj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 L25iaW9fdjdfMC5jDQo+PiBAQCAtNTUsMTAgKzU1LDkgQEAgc3RhdGljIHZvaWQgbmJpb192N18w X2hkcF9mbHVzaChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwNCj4+ICAgIAkJCQlzdHJ1Y3Qg YW1kZ3B1X3JpbmcgKnJpbmcpDQo+PiAgICB7DQo+PiAgICAJaWYgKCFyaW5nIHx8ICFyaW5nLT5m dW5jcy0+ZW1pdF93cmVnKQ0KPj4gLQkJV1JFRzMyX1NPQzE1X05PX0tJUShOQklPLCAwLCBtbUhE UF9NRU1fQ09IRVJFTkNZX0ZMVVNIX0NOVEwsIDApOw0KPj4gKwkJDQo+PiArV1JFRzMyX05PX0tJ UShhZGV2LT5uYmlvX2Z1bmNzLT5yZW1hcHBlZF9oZHBfbWVtX2ZsdXNoX2NudGxfcmVnX29mZnNl DQo+PiArdCwgMCk7DQo+PiAgICAJZWxzZQ0KPj4gLQkJYW1kZ3B1X3JpbmdfZW1pdF93cmVnKHJp bmcsIFNPQzE1X1JFR19PRkZTRVQoDQo+PiAtCQkJTkJJTywgMCwgbW1IRFBfTUVNX0NPSEVSRU5D WV9GTFVTSF9DTlRMKSwgMCk7DQo+PiArCQlhbWRncHVfcmluZ19lbWl0X3dyZWcocmluZywNCj4+ ICthZGV2LT5uYmlvX2Z1bmNzLT5yZW1hcHBlZF9oZHBfbWVtX2ZsdXNoX2NudGxfcmVnX29mZnNl dCwgMCk7DQo+PiAgICB9DQo+PiAgICANCj4+ICAgIHN0YXRpYyB1MzIgbmJpb192N18wX2dldF9t ZW1zaXplKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KSBAQA0KPj4gLTI2Myw3ICsyNjIsNyBA QCBzdGF0aWMgdm9pZCBuYmlvX3Y3XzBfaW5pdF9yZWdpc3RlcnMoc3RydWN0DQo+PiBhbWRncHVf ZGV2aWNlICphZGV2KQ0KPj4gICAgDQo+PiAgICB9DQo+PiAgICANCj4+IC1jb25zdCBzdHJ1Y3Qg YW1kZ3B1X25iaW9fZnVuY3MgbmJpb192N18wX2Z1bmNzID0gew0KPj4gK3N0cnVjdCBhbWRncHVf bmJpb19mdW5jcyBuYmlvX3Y3XzBfZnVuY3MgPSB7DQo+PiAgICAJLmhkcF9mbHVzaF9yZWcgPSAm bmJpb192N18wX2hkcF9mbHVzaF9yZWcsDQo+PiAgICAJLmdldF9oZHBfZmx1c2hfcmVxX29mZnNl dCA9IG5iaW9fdjdfMF9nZXRfaGRwX2ZsdXNoX3JlcV9vZmZzZXQsDQo+PiAgICAJLmdldF9oZHBf Zmx1c2hfZG9uZV9vZmZzZXQgPSBuYmlvX3Y3XzBfZ2V0X2hkcF9mbHVzaF9kb25lX29mZnNldCwN Cj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9uYmlvX3Y3XzAuaA0K Pj4gYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9uYmlvX3Y3XzAuaA0KPj4gaW5kZXggNTA4 ZDU0OS4uZGI1MDYxOCAxMDA2NDQNCj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 L25iaW9fdjdfMC5oDQo+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9uYmlvX3Y3 XzAuaA0KPj4gQEAgLTI2LDYgKzI2LDYgQEANCj4+ICAgIA0KPj4gICAgI2luY2x1ZGUgInNvYzE1 X2NvbW1vbi5oIg0KPj4gICAgDQo+PiAtZXh0ZXJuIGNvbnN0IHN0cnVjdCBhbWRncHVfbmJpb19m dW5jcyBuYmlvX3Y3XzBfZnVuY3M7DQo+PiArZXh0ZXJuIHN0cnVjdCBhbWRncHVfbmJpb19mdW5j cyBuYmlvX3Y3XzBfZnVuY3M7DQo+PiAgICANCj4+ICAgICNlbmRpZg0KPj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L25iaW9fdjdfNC5jDQo+PiBiL2RyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1L25iaW9fdjdfNC5jDQo+PiBpbmRleCBjNjlkNTE1Li4yNTIwM2NjIDEw MDY0NA0KPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvbmJpb192N180LmMNCj4+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L25iaW9fdjdfNC5jDQo+PiBAQCAtNTMs MTAgKzUzLDkgQEAgc3RhdGljIHZvaWQgbmJpb192N180X2hkcF9mbHVzaChzdHJ1Y3QgYW1kZ3B1 X2RldmljZSAqYWRldiwNCj4+ICAgIAkJCQlzdHJ1Y3QgYW1kZ3B1X3JpbmcgKnJpbmcpDQo+PiAg ICB7DQo+PiAgICAJaWYgKCFyaW5nIHx8ICFyaW5nLT5mdW5jcy0+ZW1pdF93cmVnKQ0KPj4gLQkJ V1JFRzMyX1NPQzE1X05PX0tJUShOQklPLCAwLCBtbUhEUF9NRU1fQ09IRVJFTkNZX0ZMVVNIX0NO VEwsIDApOw0KPj4gKwkJDQo+PiArV1JFRzMyX05PX0tJUShhZGV2LT5uYmlvX2Z1bmNzLT5yZW1h cHBlZF9oZHBfbWVtX2ZsdXNoX2NudGxfcmVnX29mZnNlDQo+PiArdCwgMCk7DQo+PiAgICAJZWxz ZQ0KPj4gLQkJYW1kZ3B1X3JpbmdfZW1pdF93cmVnKHJpbmcsIFNPQzE1X1JFR19PRkZTRVQoDQo+ PiAtCQkJTkJJTywgMCwgbW1IRFBfTUVNX0NPSEVSRU5DWV9GTFVTSF9DTlRMKSwgMCk7DQo+PiAr CQlhbWRncHVfcmluZ19lbWl0X3dyZWcocmluZywNCj4+ICthZGV2LT5uYmlvX2Z1bmNzLT5yZW1h cHBlZF9oZHBfbWVtX2ZsdXNoX2NudGxfcmVnX29mZnNldCwgMCk7DQo+PiAgICB9DQo+PiAgICAN Cj4+ICAgIHN0YXRpYyB1MzIgbmJpb192N180X2dldF9tZW1zaXplKHN0cnVjdCBhbWRncHVfZGV2 aWNlICphZGV2KSBAQA0KPj4gLTI0Miw3ICsyNDEsNyBAQCBzdGF0aWMgdm9pZCBuYmlvX3Y3XzRf aW5pdF9yZWdpc3RlcnMoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpDQo+PiAgICAJCVdSRUcz Ml9QQ0lFKHNtblBDSUVfQ0lfQ05UTCwgZGF0YSk7DQo+PiAgICB9DQo+PiAgICANCj4+IC1jb25z dCBzdHJ1Y3QgYW1kZ3B1X25iaW9fZnVuY3MgbmJpb192N180X2Z1bmNzID0gew0KPj4gK3N0cnVj dCBhbWRncHVfbmJpb19mdW5jcyBuYmlvX3Y3XzRfZnVuY3MgPSB7DQo+PiAgICAJLmhkcF9mbHVz aF9yZWcgPSAmbmJpb192N180X2hkcF9mbHVzaF9yZWcsDQo+PiAgICAJLmdldF9oZHBfZmx1c2hf cmVxX29mZnNldCA9IG5iaW9fdjdfNF9nZXRfaGRwX2ZsdXNoX3JlcV9vZmZzZXQsDQo+PiAgICAJ LmdldF9oZHBfZmx1c2hfZG9uZV9vZmZzZXQgPSBuYmlvX3Y3XzRfZ2V0X2hkcF9mbHVzaF9kb25l X29mZnNldCwNCj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9uYmlv X3Y3XzQuaA0KPj4gYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9uYmlvX3Y3XzQuaA0KPj4g aW5kZXggYzQ0Mjg2NS4uMmU1YmIwMyAxMDA2NDQNCj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L25iaW9fdjdfNC5oDQo+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdw dS9uYmlvX3Y3XzQuaA0KPj4gQEAgLTI2LDYgKzI2LDYgQEANCj4+ICAgIA0KPj4gICAgI2luY2x1 ZGUgInNvYzE1X2NvbW1vbi5oIg0KPj4gICAgDQo+PiAtZXh0ZXJuIGNvbnN0IHN0cnVjdCBhbWRn cHVfbmJpb19mdW5jcyBuYmlvX3Y3XzRfZnVuY3M7DQo+PiArZXh0ZXJuIHN0cnVjdCBhbWRncHVf bmJpb19mdW5jcyBuYmlvX3Y3XzRfZnVuY3M7DQo+PiAgICANCj4+ICAgICNlbmRpZg0KPj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3NvYzE1LmMNCj4+IGIvZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvc29jMTUuYw0KPj4gaW5kZXggYmRiNWFkOS4uYzQ3ZTdhNSAx MDA2NDQNCj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3NvYzE1LmMNCj4+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3NvYzE1LmMNCj4+IEBAIC00NCw2ICs0NCw3 IEBADQo+PiAgICAjaW5jbHVkZSAic211aW8vc211aW9fOV8wX29mZnNldC5oIg0KPj4gICAgI2lu Y2x1ZGUgInNtdWlvL3NtdWlvXzlfMF9zaF9tYXNrLmgiDQo+PiAgICAjaW5jbHVkZSAibmJpby9u YmlvXzdfMF9kZWZhdWx0LmgiDQo+PiArI2luY2x1ZGUgIm5iaW8vbmJpb183XzBfb2Zmc2V0Lmgi DQo+PiAgICAjaW5jbHVkZSAibmJpby9uYmlvXzdfMF9zaF9tYXNrLmgiDQo+PiAgICAjaW5jbHVk ZSAibmJpby9uYmlvXzdfMF9zbW4uaCINCj4+ICAgICNpbmNsdWRlICJtcC9tcF85XzBfb2Zmc2V0 LmgiDQo+PiBAQCAtNzc1LDYgKzc3NiwyNiBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGFtZGdwdV9h c2ljX2Z1bmNzIHZlZ2EyMF9hc2ljX2Z1bmNzID0NCj4+ICAgIAkubmVlZF9yZXNldF9vbl9pbml0 ID0gJnNvYzE1X25lZWRfcmVzZXRfb25faW5pdCwNCj4+ICAgIH07DQo+PiAgICANCj4+ICtzdGF0 aWMgdm9pZCBzb2MxNV9yZW1hcF9oZHBfY29oZXJlbmN5X3JlZ2lzdGVycyhzdHJ1Y3QgYW1kZ3B1 X2RldmljZQ0KPj4gKyphZGV2KSB7DQo+PiArCS8qIFJlbWFwIGhkcCBjb2hlcmVuY3kgcmVnaXN0 ZXJzIHRvIHRoZSBsYXN0IHBhZ2Ugb2YgbW1pbw0KPj4gKwkgKiBzcGFjZSwgZm9yIHRoZSBwdXJw b3NlIG9mIG1hcHBpbmcgdGhlbSB0byBwcm9jZXNzIHNwYWNlKA0KPj4gKwkgKiBzbyBwcm9jZXNz IGNhbiBmbHVzaCBoZHApDQo+PiArCSAqLw0KPj4gKwlXUkVHMzJfU09DMTUoTkJJTywgMCwgbW1S RU1BUF9IRFBfTUVNX0ZMVVNIX0NOVEwsDQo+PiArCQkJYWRldi0+cm1taW9fc2l6ZSAtIFBBR0Vf U0laRSk7DQo+PiArCVdSRUczMl9TT0MxNShOQklPLCAwLCBtbVJFTUFQX0hEUF9SRUdfRkxVU0hf Q05UTCwNCj4+ICsJCQlhZGV2LT5ybW1pb19zaXplIC0gUEFHRV9TSVpFICsgNCk7DQo+PiArCWFk ZXYtPm5iaW9fZnVuY3MtPnJlbWFwcGVkX2hkcF9tZW1fZmx1c2hfY250bF9yZWdfb2Zmc2V0ID0N Cj4+ICsJCQkoYWRldi0+cm1taW9fc2l6ZSAtIFBBR0VfU0laRSkgPj4gMjsNCj4+ICsJYWRldi0+ bmJpb19mdW5jcy0+cmVtYXBwZWRfaGRwX3JlZ19mbHVzaF9jbnRsX3JlZ19vZmZzZXQgPQ0KPj4g KwkJCShhZGV2LT5ybW1pb19zaXplIC0gUEFHRV9TSVpFICsgNCkgPj4gMjsNCj4+ICsJYWRldi0+ bmJpb19mdW5jcy0+cmVtYXBwZWRfaGRwX21lbV9mbHVzaF9jbnRsX3BoeXNpY2FsX2FkZHIgPQ0K Pj4gKwkJCWFkZXYtPnJtbWlvX2Jhc2UgKyBhZGV2LT5ybW1pb19zaXplIC0gUEFHRV9TSVpFOw0K Pj4gKwlhZGV2LT5uYmlvX2Z1bmNzLT5yZW1hcHBlZF9oZHBfcmVnX2ZsdXNoX2NudGxfcGh5c2lj YWxfYWRkciA9DQo+PiArCQkJYWRldi0+cm1taW9fYmFzZSArIGFkZXYtPnJtbWlvX3NpemUgLSBQ QUdFX1NJWkUgKyA0OyB9DQo+PiArDQo+PiAgICBzdGF0aWMgaW50IHNvYzE1X2NvbW1vbl9lYXJs eV9pbml0KHZvaWQgKmhhbmRsZSkNCj4+ICAgIHsNCj4+ICAgIAlzdHJ1Y3QgYW1kZ3B1X2Rldmlj ZSAqYWRldiA9IChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqKWhhbmRsZTsgQEANCj4+IC03OTQsNiAr ODE1LDcgQEAgc3RhdGljIGludCBzb2MxNV9jb21tb25fZWFybHlfaW5pdCh2b2lkICpoYW5kbGUp DQo+PiAgICANCj4+ICAgIA0KPj4gICAgCWFkZXYtPmV4dGVybmFsX3Jldl9pZCA9IDB4RkY7DQo+ PiArCXNvYzE1X3JlbWFwX2hkcF9jb2hlcmVuY3lfcmVnaXN0ZXJzKGFkZXYpOw0KPj4gICAgCXN3 aXRjaCAoYWRldi0+YXNpY190eXBlKSB7DQo+PiAgICAJY2FzZSBDSElQX1ZFR0ExMDoNCj4+ICAg IAkJYWRldi0+YXNpY19mdW5jcyA9ICZzb2MxNV9hc2ljX2Z1bmNzOw0KDQpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwphbWQtZ2Z4IG1haWxpbmcgbGlzdAph bWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZng=