From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Zeng, Oak" Subject: [PATCH 1/2] drm/amdgpu: Remap hdp coherency registers Date: Thu, 11 Apr 2019 20:31:19 +0000 Message-ID: <1555014669-30077-1-git-send-email-Oak.Zeng@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: 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: "amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" Cc: "Deucher, Alexander" , "Kuehling, Felix" , "Zeng, Oak" , "Keely, Sean" UmVtYXAgSERQX01FTV9DT0hFUkVOQ1lfRkxVU0hfQ05UTCBhbmQgSERQX1JFR19DT0hFUkVOQ1lf RkxVU0hfQ05UTA0KdG8gYW4gZW1wdHkgcGFnZSBpbiBtbWlvIHNwYWNlLiBXZSB3aWxsIGxhdGVy IG1hcCB0aGlzIHBhZ2UgdG8gcHJvY2Vzcw0Kc3BhY2Ugc28gYXBwbGljYXRpb24gY2FuIGZsdXNo IGhkcC4gVGhpcyBjYW4ndCBiZSBkb25lIHByb3Blcmx5IGF0DQp0aG9zZSByZWdpc3RlcnMnIG9y aWdpbmFsIGxvY2F0aW9uIGJlY2F1c2UgaXQgd2lsbCBleHBvc2UgbW9yZSB0aGFuDQpkZXNpcmVk IHJlZ2lzdGVycyB0byBwcm9jZXNzIHNwYWNlLg0KDQpDaGFuZ2UtSWQ6IElhOGQyN2MwYzlhMDgy NzExZDE2YmJmNTU2MDJiZjU3MTJhNDdiNmQ2DQpTaWduZWQtb2ZmLWJ5OiBPYWsgWmVuZyA8T2Fr LlplbmdAYW1kLmNvbT4NCi0tLQ0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdS5o ICAgIHwgIDYgKysrKystDQogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvbmJpb192Nl8xLmMg fCAgMiArLQ0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L25iaW9fdjZfMS5oIHwgIDIgKy0N CiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9uYmlvX3Y3XzAuYyB8ICA3ICsrKy0tLS0NCiBk cml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9uYmlvX3Y3XzAuaCB8ICAyICstDQogZHJpdmVycy9n cHUvZHJtL2FtZC9hbWRncHUvbmJpb192N180LmMgfCAgNyArKystLS0tDQogZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvbmJpb192N180LmggfCAgMiArLQ0KIGRyaXZlcnMvZ3B1L2RybS9hbWQv YW1kZ3B1L3NvYzE1LmMgICAgIHwgMjIgKysrKysrKysrKysrKysrKysrKysrKw0KIDggZmlsZXMg Y2hhbmdlZCwgMzcgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pDQoNCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHUuaCBiL2RyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L2FtZGdwdS5oDQppbmRleCBiYzk2ZWM0Li44NDBiZTA1IDEwMDY0NA0KLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1LmgNCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9hbWQvYW1kZ3B1L2FtZGdwdS5oDQpAQCAtNjQ0LDYgKzY0NCwxMCBAQCBzdHJ1Y3QgbmJpb19o ZHBfZmx1c2hfcmVnIHsNCiANCiBzdHJ1Y3QgYW1kZ3B1X25iaW9fZnVuY3Mgew0KIAljb25zdCBz dHJ1Y3QgbmJpb19oZHBfZmx1c2hfcmVnICpoZHBfZmx1c2hfcmVnOw0KKwl1MzIgcmVtYXBwZWRf aGRwX21lbV9mbHVzaF9jbnRsX3JlZ19vZmZzZXQ7DQorCXUzMiByZW1hcHBlZF9oZHBfcmVnX2Zs dXNoX2NudGxfcmVnX29mZnNldDsNCisJcmVzb3VyY2Vfc2l6ZV90IHJlbWFwcGVkX2hkcF9tZW1f Zmx1c2hfY250bF9waHlzaWNhbF9hZGRyOw0KKwlyZXNvdXJjZV9zaXplX3QgcmVtYXBwZWRfaGRw X3JlZ19mbHVzaF9jbnRsX3BoeXNpY2FsX2FkZHI7DQogCXUzMiAoKmdldF9oZHBfZmx1c2hfcmVx X29mZnNldCkoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpOw0KIAl1MzIgKCpnZXRfaGRwX2Zs dXNoX2RvbmVfb2Zmc2V0KShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldik7DQogCXUzMiAoKmdl dF9wY2llX2luZGV4X29mZnNldCkoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpOw0KQEAgLTkw NSw3ICs5MDksNyBAQCBzdHJ1Y3QgYW1kZ3B1X2RldmljZSB7DQogCS8qIHNvYzE1IHJlZ2lzdGVy IG9mZnNldCBiYXNlZCBvbiBpcCwgaW5zdGFuY2UgYW5kICBzZWdtZW50ICovDQogCXVpbnQzMl90 IAkJKnJlZ19vZmZzZXRbTUFYX0hXSVBdW0hXSVBfTUFYX0lOU1RBTkNFXTsNCiANCi0JY29uc3Qg c3RydWN0IGFtZGdwdV9uYmlvX2Z1bmNzCSpuYmlvX2Z1bmNzOw0KKwlzdHJ1Y3QgYW1kZ3B1X25i aW9fZnVuY3MJKm5iaW9fZnVuY3M7DQogCWNvbnN0IHN0cnVjdCBhbWRncHVfZGZfZnVuY3MJKmRm X2Z1bmNzOw0KIA0KIAkvKiBkZWxheWVkIHdvcmtfZnVuYyBmb3IgZGVmZXJyaW5nIGNsb2NrZ2F0 aW5nIGR1cmluZyByZXN1bWUgKi8NCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9uYmlvX3Y2XzEuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L25iaW9fdjZfMS5j DQppbmRleCA2NTkwMTQzLi4yNDcwYjhlIDEwMDY0NA0KLS0tIGEvZHJpdmVycy9ncHUvZHJtL2Ft ZC9hbWRncHUvbmJpb192Nl8xLmMNCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L25i aW9fdjZfMS5jDQpAQCAtMjc2LDcgKzI3Niw3IEBAIHN0YXRpYyB2b2lkIG5iaW9fdjZfMV9pbml0 X3JlZ2lzdGVycyhzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldikNCiAJCVdSRUczMl9QQ0lFKHNt blBDSUVfQ0lfQ05UTCwgZGF0YSk7DQogfQ0KIA0KLWNvbnN0IHN0cnVjdCBhbWRncHVfbmJpb19m dW5jcyBuYmlvX3Y2XzFfZnVuY3MgPSB7DQorc3RydWN0IGFtZGdwdV9uYmlvX2Z1bmNzIG5iaW9f djZfMV9mdW5jcyA9IHsNCiAJLmhkcF9mbHVzaF9yZWcgPSAmbmJpb192Nl8xX2hkcF9mbHVzaF9y ZWcsDQogCS5nZXRfaGRwX2ZsdXNoX3JlcV9vZmZzZXQgPSBuYmlvX3Y2XzFfZ2V0X2hkcF9mbHVz aF9yZXFfb2Zmc2V0LA0KIAkuZ2V0X2hkcF9mbHVzaF9kb25lX29mZnNldCA9IG5iaW9fdjZfMV9n ZXRfaGRwX2ZsdXNoX2RvbmVfb2Zmc2V0LA0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L25iaW9fdjZfMS5oIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvbmJpb192 Nl8xLmgNCmluZGV4IDA3NDNhNmYuLmQ0MDliYjYgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9uYmlvX3Y2XzEuaA0KKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRn cHUvbmJpb192Nl8xLmgNCkBAIC0yNiw2ICsyNiw2IEBADQogDQogI2luY2x1ZGUgInNvYzE1X2Nv bW1vbi5oIg0KIA0KLWV4dGVybiBjb25zdCBzdHJ1Y3QgYW1kZ3B1X25iaW9fZnVuY3MgbmJpb192 Nl8xX2Z1bmNzOw0KK2V4dGVybiBzdHJ1Y3QgYW1kZ3B1X25iaW9fZnVuY3MgbmJpb192Nl8xX2Z1 bmNzOw0KIA0KICNlbmRpZg0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 L25iaW9fdjdfMC5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvbmJpb192N18wLmMNCmlu ZGV4IDFjZGI5OGEuLjlhNWFiZjUgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9uYmlvX3Y3XzAuYw0KKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvbmJpb192 N18wLmMNCkBAIC01NSwxMCArNTUsOSBAQCBzdGF0aWMgdm9pZCBuYmlvX3Y3XzBfaGRwX2ZsdXNo KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LA0KIAkJCQlzdHJ1Y3QgYW1kZ3B1X3JpbmcgKnJp bmcpDQogew0KIAlpZiAoIXJpbmcgfHwgIXJpbmctPmZ1bmNzLT5lbWl0X3dyZWcpDQotCQlXUkVH MzJfU09DMTVfTk9fS0lRKE5CSU8sIDAsIG1tSERQX01FTV9DT0hFUkVOQ1lfRkxVU0hfQ05UTCwg MCk7DQorCQlXUkVHMzJfTk9fS0lRKGFkZXYtPm5iaW9fZnVuY3MtPnJlbWFwcGVkX2hkcF9tZW1f Zmx1c2hfY250bF9yZWdfb2Zmc2V0LCAwKTsNCiAJZWxzZQ0KLQkJYW1kZ3B1X3JpbmdfZW1pdF93 cmVnKHJpbmcsIFNPQzE1X1JFR19PRkZTRVQoDQotCQkJTkJJTywgMCwgbW1IRFBfTUVNX0NPSEVS RU5DWV9GTFVTSF9DTlRMKSwgMCk7DQorCQlhbWRncHVfcmluZ19lbWl0X3dyZWcocmluZywgYWRl di0+bmJpb19mdW5jcy0+cmVtYXBwZWRfaGRwX21lbV9mbHVzaF9jbnRsX3JlZ19vZmZzZXQsIDAp Ow0KIH0NCiANCiBzdGF0aWMgdTMyIG5iaW9fdjdfMF9nZXRfbWVtc2l6ZShzdHJ1Y3QgYW1kZ3B1 X2RldmljZSAqYWRldikNCkBAIC0yNjMsNyArMjYyLDcgQEAgc3RhdGljIHZvaWQgbmJpb192N18w X2luaXRfcmVnaXN0ZXJzKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KQ0KIA0KIH0NCiANCi1j b25zdCBzdHJ1Y3QgYW1kZ3B1X25iaW9fZnVuY3MgbmJpb192N18wX2Z1bmNzID0gew0KK3N0cnVj dCBhbWRncHVfbmJpb19mdW5jcyBuYmlvX3Y3XzBfZnVuY3MgPSB7DQogCS5oZHBfZmx1c2hfcmVn ID0gJm5iaW9fdjdfMF9oZHBfZmx1c2hfcmVnLA0KIAkuZ2V0X2hkcF9mbHVzaF9yZXFfb2Zmc2V0 ID0gbmJpb192N18wX2dldF9oZHBfZmx1c2hfcmVxX29mZnNldCwNCiAJLmdldF9oZHBfZmx1c2hf ZG9uZV9vZmZzZXQgPSBuYmlvX3Y3XzBfZ2V0X2hkcF9mbHVzaF9kb25lX29mZnNldCwNCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9uYmlvX3Y3XzAuaCBiL2RyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L25iaW9fdjdfMC5oDQppbmRleCA1MDhkNTQ5Li5kYjUwNjE4IDEw MDY0NA0KLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvbmJpb192N18wLmgNCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L25iaW9fdjdfMC5oDQpAQCAtMjYsNiArMjYsNiBA QA0KIA0KICNpbmNsdWRlICJzb2MxNV9jb21tb24uaCINCiANCi1leHRlcm4gY29uc3Qgc3RydWN0 IGFtZGdwdV9uYmlvX2Z1bmNzIG5iaW9fdjdfMF9mdW5jczsNCitleHRlcm4gc3RydWN0IGFtZGdw dV9uYmlvX2Z1bmNzIG5iaW9fdjdfMF9mdW5jczsNCiANCiAjZW5kaWYNCmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9uYmlvX3Y3XzQuYyBiL2RyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L25iaW9fdjdfNC5jDQppbmRleCBjNjlkNTE1Li4yNTIwM2NjIDEwMDY0NA0KLS0t IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvbmJpb192N180LmMNCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L25iaW9fdjdfNC5jDQpAQCAtNTMsMTAgKzUzLDkgQEAgc3RhdGlj IHZvaWQgbmJpb192N180X2hkcF9mbHVzaChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwNCiAJ CQkJc3RydWN0IGFtZGdwdV9yaW5nICpyaW5nKQ0KIHsNCiAJaWYgKCFyaW5nIHx8ICFyaW5nLT5m dW5jcy0+ZW1pdF93cmVnKQ0KLQkJV1JFRzMyX1NPQzE1X05PX0tJUShOQklPLCAwLCBtbUhEUF9N RU1fQ09IRVJFTkNZX0ZMVVNIX0NOVEwsIDApOw0KKwkJV1JFRzMyX05PX0tJUShhZGV2LT5uYmlv X2Z1bmNzLT5yZW1hcHBlZF9oZHBfbWVtX2ZsdXNoX2NudGxfcmVnX29mZnNldCwgMCk7DQogCWVs c2UNCi0JCWFtZGdwdV9yaW5nX2VtaXRfd3JlZyhyaW5nLCBTT0MxNV9SRUdfT0ZGU0VUKA0KLQkJ CU5CSU8sIDAsIG1tSERQX01FTV9DT0hFUkVOQ1lfRkxVU0hfQ05UTCksIDApOw0KKwkJYW1kZ3B1 X3JpbmdfZW1pdF93cmVnKHJpbmcsIGFkZXYtPm5iaW9fZnVuY3MtPnJlbWFwcGVkX2hkcF9tZW1f Zmx1c2hfY250bF9yZWdfb2Zmc2V0LCAwKTsNCiB9DQogDQogc3RhdGljIHUzMiBuYmlvX3Y3XzRf Z2V0X21lbXNpemUoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpDQpAQCAtMjQyLDcgKzI0MSw3 IEBAIHN0YXRpYyB2b2lkIG5iaW9fdjdfNF9pbml0X3JlZ2lzdGVycyhzdHJ1Y3QgYW1kZ3B1X2Rl dmljZSAqYWRldikNCiAJCVdSRUczMl9QQ0lFKHNtblBDSUVfQ0lfQ05UTCwgZGF0YSk7DQogfQ0K IA0KLWNvbnN0IHN0cnVjdCBhbWRncHVfbmJpb19mdW5jcyBuYmlvX3Y3XzRfZnVuY3MgPSB7DQor c3RydWN0IGFtZGdwdV9uYmlvX2Z1bmNzIG5iaW9fdjdfNF9mdW5jcyA9IHsNCiAJLmhkcF9mbHVz aF9yZWcgPSAmbmJpb192N180X2hkcF9mbHVzaF9yZWcsDQogCS5nZXRfaGRwX2ZsdXNoX3JlcV9v ZmZzZXQgPSBuYmlvX3Y3XzRfZ2V0X2hkcF9mbHVzaF9yZXFfb2Zmc2V0LA0KIAkuZ2V0X2hkcF9m bHVzaF9kb25lX29mZnNldCA9IG5iaW9fdjdfNF9nZXRfaGRwX2ZsdXNoX2RvbmVfb2Zmc2V0LA0K ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L25iaW9fdjdfNC5oIGIvZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvbmJpb192N180LmgNCmluZGV4IGM0NDI4NjUuLjJlNWJi MDMgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9uYmlvX3Y3XzQuaA0K KysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvbmJpb192N180LmgNCkBAIC0yNiw2ICsy Niw2IEBADQogDQogI2luY2x1ZGUgInNvYzE1X2NvbW1vbi5oIg0KIA0KLWV4dGVybiBjb25zdCBz dHJ1Y3QgYW1kZ3B1X25iaW9fZnVuY3MgbmJpb192N180X2Z1bmNzOw0KK2V4dGVybiBzdHJ1Y3Qg YW1kZ3B1X25iaW9fZnVuY3MgbmJpb192N180X2Z1bmNzOw0KIA0KICNlbmRpZg0KZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3NvYzE1LmMgYi9kcml2ZXJzL2dwdS9kcm0v YW1kL2FtZGdwdS9zb2MxNS5jDQppbmRleCBiZGI1YWQ5Li5jNDdlN2E1IDEwMDY0NA0KLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvc29jMTUuYw0KKysrIGIvZHJpdmVycy9ncHUvZHJt L2FtZC9hbWRncHUvc29jMTUuYw0KQEAgLTQ0LDYgKzQ0LDcgQEANCiAjaW5jbHVkZSAic211aW8v c211aW9fOV8wX29mZnNldC5oIg0KICNpbmNsdWRlICJzbXVpby9zbXVpb185XzBfc2hfbWFzay5o Ig0KICNpbmNsdWRlICJuYmlvL25iaW9fN18wX2RlZmF1bHQuaCINCisjaW5jbHVkZSAibmJpby9u YmlvXzdfMF9vZmZzZXQuaCINCiAjaW5jbHVkZSAibmJpby9uYmlvXzdfMF9zaF9tYXNrLmgiDQog I2luY2x1ZGUgIm5iaW8vbmJpb183XzBfc21uLmgiDQogI2luY2x1ZGUgIm1wL21wXzlfMF9vZmZz ZXQuaCINCkBAIC03NzUsNiArNzc2LDI2IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgYW1kZ3B1X2Fz aWNfZnVuY3MgdmVnYTIwX2FzaWNfZnVuY3MgPQ0KIAkubmVlZF9yZXNldF9vbl9pbml0ID0gJnNv YzE1X25lZWRfcmVzZXRfb25faW5pdCwNCiB9Ow0KIA0KK3N0YXRpYyB2b2lkIHNvYzE1X3JlbWFw X2hkcF9jb2hlcmVuY3lfcmVnaXN0ZXJzKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KQ0KK3sN CisJLyogUmVtYXAgaGRwIGNvaGVyZW5jeSByZWdpc3RlcnMgdG8gdGhlIGxhc3QgcGFnZSBvZiBt bWlvDQorCSAqIHNwYWNlLCBmb3IgdGhlIHB1cnBvc2Ugb2YgbWFwcGluZyB0aGVtIHRvIHByb2Nl c3Mgc3BhY2UoDQorCSAqIHNvIHByb2Nlc3MgY2FuIGZsdXNoIGhkcCkNCisJICovDQorCVdSRUcz Ml9TT0MxNShOQklPLCAwLCBtbVJFTUFQX0hEUF9NRU1fRkxVU0hfQ05UTCwNCisJCQlhZGV2LT5y bW1pb19zaXplIC0gUEFHRV9TSVpFKTsNCisJV1JFRzMyX1NPQzE1KE5CSU8sIDAsIG1tUkVNQVBf SERQX1JFR19GTFVTSF9DTlRMLA0KKwkJCWFkZXYtPnJtbWlvX3NpemUgLSBQQUdFX1NJWkUgKyA0 KTsNCisJYWRldi0+bmJpb19mdW5jcy0+cmVtYXBwZWRfaGRwX21lbV9mbHVzaF9jbnRsX3JlZ19v ZmZzZXQgPQ0KKwkJCShhZGV2LT5ybW1pb19zaXplIC0gUEFHRV9TSVpFKSA+PiAyOw0KKwlhZGV2 LT5uYmlvX2Z1bmNzLT5yZW1hcHBlZF9oZHBfcmVnX2ZsdXNoX2NudGxfcmVnX29mZnNldCA9DQor CQkJKGFkZXYtPnJtbWlvX3NpemUgLSBQQUdFX1NJWkUgKyA0KSA+PiAyOw0KKwlhZGV2LT5uYmlv X2Z1bmNzLT5yZW1hcHBlZF9oZHBfbWVtX2ZsdXNoX2NudGxfcGh5c2ljYWxfYWRkciA9DQorCQkJ YWRldi0+cm1taW9fYmFzZSArIGFkZXYtPnJtbWlvX3NpemUgLSBQQUdFX1NJWkU7DQorCWFkZXYt Pm5iaW9fZnVuY3MtPnJlbWFwcGVkX2hkcF9yZWdfZmx1c2hfY250bF9waHlzaWNhbF9hZGRyID0N CisJCQlhZGV2LT5ybW1pb19iYXNlICsgYWRldi0+cm1taW9fc2l6ZSAtIFBBR0VfU0laRSArIDQ7 DQorfQ0KKw0KIHN0YXRpYyBpbnQgc29jMTVfY29tbW9uX2Vhcmx5X2luaXQodm9pZCAqaGFuZGxl KQ0KIHsNCiAJc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYgPSAoc3RydWN0IGFtZGdwdV9kZXZp Y2UgKiloYW5kbGU7DQpAQCAtNzk0LDYgKzgxNSw3IEBAIHN0YXRpYyBpbnQgc29jMTVfY29tbW9u X2Vhcmx5X2luaXQodm9pZCAqaGFuZGxlKQ0KIA0KIA0KIAlhZGV2LT5leHRlcm5hbF9yZXZfaWQg PSAweEZGOw0KKwlzb2MxNV9yZW1hcF9oZHBfY29oZXJlbmN5X3JlZ2lzdGVycyhhZGV2KTsNCiAJ c3dpdGNoIChhZGV2LT5hc2ljX3R5cGUpIHsNCiAJY2FzZSBDSElQX1ZFR0ExMDoNCiAJCWFkZXYt PmFzaWNfZnVuY3MgPSAmc29jMTVfYXNpY19mdW5jczsNCi0tIA0KMi43LjQNCg0KX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KYW1kLWdmeCBtYWlsaW5nIGxp c3QKYW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9hbWQtZ2Z4