From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Kuehling, Felix" Subject: [PATCH 08/27] drm/amdkfd: Init mqd managers in device queue manager init Date: Sun, 28 Apr 2019 07:44:08 +0000 Message-ID: <20190428074331.30107-9-Felix.Kuehling@amd.com> References: <20190428074331.30107-1-Felix.Kuehling@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190428074331.30107-1-Felix.Kuehling-5C7GfCeVMHo@public.gmane.org> 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: "Zeng, Oak" , "Kuehling, Felix" RnJvbTogT2FrIFplbmcgPG96ZW5nQGFtZC5jb20+DQoNClByZXZpb3VzbHkgbXFkIG1hbmFnZXJz IHdhcyBpbml0aWFsaXplZCBvbiBkZW1hbmQuIEFzIHRoZXJlDQphcmUgb25seSBhIGZldyB0eXBl IG9mIG1xZCBtYW5hZ2VycywgdGhlIG9uIGRlbWFuZCBpbml0aWFsaXphdGlvbg0KZG9lc24ndCBz YXZlIHRvbyBtdWNoIG1lbW9yeS4gSW5pdGlhbGl6ZSB0aGVtIG9uIGRldmljZQ0KcXVldWUgaW5p dGlhbGl6YXRpb24gaW5zdGVhZCBhbmQgZGVsZXRlIHRoZSBnZXRfbXFkX21hbmFnZXINCmludGVy ZmFjZS4gVGhpcyBtYWtlcyBjb2RlcyBtb3JlIG9yZ2FuaXplZCBmb3IgZnV0dXJlIGNoYW5nZXMu DQoNClNpZ25lZC1vZmYtYnk6IE9hayBaZW5nIDxvemVuZ0BhbWQuY29tPg0KUmV2aWV3ZWQtYnk6 IEZlbGl4IEt1ZWhsaW5nIDxGZWxpeC5LdWVobGluZ0BhbWQuY29tPg0KU2lnbmVkLW9mZi1ieTog RmVsaXggS3VlaGxpbmcgPEZlbGl4Lkt1ZWhsaW5nQGFtZC5jb20+DQotLS0NCiAuLi4vZHJtL2Ft ZC9hbWRrZmQva2ZkX2RldmljZV9xdWV1ZV9tYW5hZ2VyLmMgfCAxMjcgKysrKysrLS0tLS0tLS0t LS0tDQogLi4uL2RybS9hbWQvYW1ka2ZkL2tmZF9kZXZpY2VfcXVldWVfbWFuYWdlci5oIHwgICA2 IC0NCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGtmZC9rZmRfa2VybmVsX3F1ZXVlLmMgfCAgIDYg Ky0NCiAuLi4vYW1kL2FtZGtmZC9rZmRfcHJvY2Vzc19xdWV1ZV9tYW5hZ2VyLmMgICAgfCAgIDMg Ky0NCiA0IGZpbGVzIGNoYW5nZWQsIDQ3IGluc2VydGlvbnMoKyksIDk1IGRlbGV0aW9ucygtKQ0K DQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRrZmQva2ZkX2RldmljZV9xdWV1 ZV9tYW5hZ2VyLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGtmZC9rZmRfZGV2aWNlX3F1ZXVl X21hbmFnZXIuYw0KaW5kZXggYTVhODY0M2MwNGZjLi4wNjM2MjVjMzY0NmIgMTAwNjQ0DQotLS0g YS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGtmZC9rZmRfZGV2aWNlX3F1ZXVlX21hbmFnZXIuYw0K KysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRrZmQva2ZkX2RldmljZV9xdWV1ZV9tYW5hZ2Vy LmMNCkBAIC0zNjgsOSArMzY4LDcgQEAgc3RhdGljIGludCBjcmVhdGVfY29tcHV0ZV9xdWV1ZV9u b2Nwc2NoKHN0cnVjdCBkZXZpY2VfcXVldWVfbWFuYWdlciAqZHFtLA0KIAlzdHJ1Y3QgbXFkX21h bmFnZXIgKm1xZF9tZ3I7DQogCWludCByZXR2YWw7DQogDQotCW1xZF9tZ3IgPSBkcW0tPm9wcy5n ZXRfbXFkX21hbmFnZXIoZHFtLCBLRkRfTVFEX1RZUEVfQ09NUFVURSk7DQotCWlmICghbXFkX21n cikNCi0JCXJldHVybiAtRU5PTUVNOw0KKwltcWRfbWdyID0gZHFtLT5tcWRfbWdyc1tLRkRfTVFE X1RZUEVfQ09NUFVURV07DQogDQogCXJldHZhbCA9IGFsbG9jYXRlX2hxZChkcW0sIHEpOw0KIAlp ZiAocmV0dmFsKQ0KQEAgLTQyNSwxMCArNDIzLDggQEAgc3RhdGljIGludCBkZXN0cm95X3F1ZXVl X25vY3BzY2hfbG9ja2VkKHN0cnVjdCBkZXZpY2VfcXVldWVfbWFuYWdlciAqZHFtLA0KIAlpbnQg cmV0dmFsOw0KIAlzdHJ1Y3QgbXFkX21hbmFnZXIgKm1xZF9tZ3I7DQogDQotCW1xZF9tZ3IgPSBk cW0tPm9wcy5nZXRfbXFkX21hbmFnZXIoZHFtLA0KLQkJZ2V0X21xZF90eXBlX2Zyb21fcXVldWVf dHlwZShxLT5wcm9wZXJ0aWVzLnR5cGUpKTsNCi0JaWYgKCFtcWRfbWdyKQ0KLQkJcmV0dXJuIC1F Tk9NRU07DQorCW1xZF9tZ3IgPSBkcW0tPm1xZF9tZ3JzW2dldF9tcWRfdHlwZV9mcm9tX3F1ZXVl X3R5cGUoDQorCQkJcS0+cHJvcGVydGllcy50eXBlKV07DQogDQogCWlmIChxLT5wcm9wZXJ0aWVz LnR5cGUgPT0gS0ZEX1FVRVVFX1RZUEVfQ09NUFVURSkgew0KIAkJZGVhbGxvY2F0ZV9ocWQoZHFt LCBxKTsNCkBAIC01MDEsMTIgKzQ5Nyw4IEBAIHN0YXRpYyBpbnQgdXBkYXRlX3F1ZXVlKHN0cnVj dCBkZXZpY2VfcXVldWVfbWFuYWdlciAqZHFtLCBzdHJ1Y3QgcXVldWUgKnEpDQogCQlyZXR2YWwg PSAtRU5PREVWOw0KIAkJZ290byBvdXRfdW5sb2NrOw0KIAl9DQotCW1xZF9tZ3IgPSBkcW0tPm9w cy5nZXRfbXFkX21hbmFnZXIoZHFtLA0KLQkJCWdldF9tcWRfdHlwZV9mcm9tX3F1ZXVlX3R5cGUo cS0+cHJvcGVydGllcy50eXBlKSk7DQotCWlmICghbXFkX21ncikgew0KLQkJcmV0dmFsID0gLUVO T01FTTsNCi0JCWdvdG8gb3V0X3VubG9jazsNCi0JfQ0KKwltcWRfbWdyID0gZHFtLT5tcWRfbWdy c1tnZXRfbXFkX3R5cGVfZnJvbV9xdWV1ZV90eXBlKA0KKwkJCXEtPnByb3BlcnRpZXMudHlwZSld Ow0KIAkvKg0KIAkgKiBFdmljdGlvbiBzdGF0ZSBsb2dpYzogd2Ugb25seSBtYXJrIGFjdGl2ZSBx dWV1ZXMgYXMgZXZpY3RlZA0KIAkgKiB0byBhdm9pZCB0aGUgb3ZlcmhlYWQgb2YgcmVzdG9yaW5n IGluYWN0aXZlIHF1ZXVlcyBsYXRlcg0KQEAgLTU3MSwyNyArNTYzLDYgQEAgc3RhdGljIGludCB1 cGRhdGVfcXVldWUoc3RydWN0IGRldmljZV9xdWV1ZV9tYW5hZ2VyICpkcW0sIHN0cnVjdCBxdWV1 ZSAqcSkNCiAJcmV0dXJuIHJldHZhbDsNCiB9DQogDQotc3RhdGljIHN0cnVjdCBtcWRfbWFuYWdl ciAqZ2V0X21xZF9tYW5hZ2VyKA0KLQkJc3RydWN0IGRldmljZV9xdWV1ZV9tYW5hZ2VyICpkcW0s IGVudW0gS0ZEX01RRF9UWVBFIHR5cGUpDQotew0KLQlzdHJ1Y3QgbXFkX21hbmFnZXIgKm1xZF9t Z3I7DQotDQotCWlmIChXQVJOX09OKHR5cGUgPj0gS0ZEX01RRF9UWVBFX01BWCkpDQotCQlyZXR1 cm4gTlVMTDsNCi0NCi0JcHJfZGVidWcoIm1xZCB0eXBlICVkXG4iLCB0eXBlKTsNCi0NCi0JbXFk X21nciA9IGRxbS0+bXFkX21ncnNbdHlwZV07DQotCWlmICghbXFkX21ncikgew0KLQkJbXFkX21n ciA9IGRxbS0+YXNpY19vcHMubXFkX21hbmFnZXJfaW5pdCh0eXBlLCBkcW0tPmRldik7DQotCQlp ZiAoIW1xZF9tZ3IpDQotCQkJcHJfZXJyKCJtcWQgbWFuYWdlciBpcyBOVUxMIik7DQotCQlkcW0t Pm1xZF9tZ3JzW3R5cGVdID0gbXFkX21ncjsNCi0JfQ0KLQ0KLQlyZXR1cm4gbXFkX21ncjsNCi19 DQotDQogc3RhdGljIGludCBldmljdF9wcm9jZXNzX3F1ZXVlc19ub2Nwc2NoKHN0cnVjdCBkZXZp Y2VfcXVldWVfbWFuYWdlciAqZHFtLA0KIAkJCQkJc3RydWN0IHFjbV9wcm9jZXNzX2RldmljZSAq cXBkKQ0KIHsNCkBAIC02MTIsMTMgKzU4Myw4IEBAIHN0YXRpYyBpbnQgZXZpY3RfcHJvY2Vzc19x dWV1ZXNfbm9jcHNjaChzdHJ1Y3QgZGV2aWNlX3F1ZXVlX21hbmFnZXIgKmRxbSwNCiAJbGlzdF9m b3JfZWFjaF9lbnRyeShxLCAmcXBkLT5xdWV1ZXNfbGlzdCwgbGlzdCkgew0KIAkJaWYgKCFxLT5w cm9wZXJ0aWVzLmlzX2FjdGl2ZSkNCiAJCQljb250aW51ZTsNCi0JCW1xZF9tZ3IgPSBkcW0tPm9w cy5nZXRfbXFkX21hbmFnZXIoZHFtLA0KLQkJCWdldF9tcWRfdHlwZV9mcm9tX3F1ZXVlX3R5cGUo cS0+cHJvcGVydGllcy50eXBlKSk7DQotCQlpZiAoIW1xZF9tZ3IpIHsgLyogc2hvdWxkIG5vdCBi ZSBoZXJlICovDQotCQkJcHJfZXJyKCJDYW5ub3QgZXZpY3QgcXVldWUsIG1xZCBtZ3IgaXMgTlVM TFxuIik7DQotCQkJcmV0dmFsID0gLUVOT01FTTsNCi0JCQlnb3RvIG91dDsNCi0JCX0NCisJCW1x ZF9tZ3IgPSBkcW0tPm1xZF9tZ3JzW2dldF9tcWRfdHlwZV9mcm9tX3F1ZXVlX3R5cGUoDQorCQkJ CXEtPnByb3BlcnRpZXMudHlwZSldOw0KIAkJcS0+cHJvcGVydGllcy5pc19ldmljdGVkID0gdHJ1 ZTsNCiAJCXEtPnByb3BlcnRpZXMuaXNfYWN0aXZlID0gZmFsc2U7DQogCQlyZXR2YWwgPSBtcWRf bWdyLT5kZXN0cm95X21xZChtcWRfbWdyLCBxLT5tcWQsDQpAQCAtNzE3LDEzICs2ODMsOCBAQCBz dGF0aWMgaW50IHJlc3RvcmVfcHJvY2Vzc19xdWV1ZXNfbm9jcHNjaChzdHJ1Y3QgZGV2aWNlX3F1 ZXVlX21hbmFnZXIgKmRxbSwNCiAJbGlzdF9mb3JfZWFjaF9lbnRyeShxLCAmcXBkLT5xdWV1ZXNf bGlzdCwgbGlzdCkgew0KIAkJaWYgKCFxLT5wcm9wZXJ0aWVzLmlzX2V2aWN0ZWQpDQogCQkJY29u dGludWU7DQotCQltcWRfbWdyID0gZHFtLT5vcHMuZ2V0X21xZF9tYW5hZ2VyKGRxbSwNCi0JCQln ZXRfbXFkX3R5cGVfZnJvbV9xdWV1ZV90eXBlKHEtPnByb3BlcnRpZXMudHlwZSkpOw0KLQkJaWYg KCFtcWRfbWdyKSB7IC8qIHNob3VsZCBub3QgYmUgaGVyZSAqLw0KLQkJCXByX2VycigiQ2Fubm90 IHJlc3RvcmUgcXVldWUsIG1xZCBtZ3IgaXMgTlVMTFxuIik7DQotCQkJcmV0dmFsID0gLUVOT01F TTsNCi0JCQlnb3RvIG91dDsNCi0JCX0NCisJCW1xZF9tZ3IgPSBkcW0tPm1xZF9tZ3JzW2dldF9t cWRfdHlwZV9mcm9tX3F1ZXVlX3R5cGUoDQorCQkJCXEtPnByb3BlcnRpZXMudHlwZSldOw0KIAkJ cS0+cHJvcGVydGllcy5pc19ldmljdGVkID0gZmFsc2U7DQogCQlxLT5wcm9wZXJ0aWVzLmlzX2Fj dGl2ZSA9IHRydWU7DQogCQlyZXR2YWwgPSBtcWRfbWdyLT5sb2FkX21xZChtcWRfbWdyLCBxLT5t cWQsIHEtPnBpcGUsDQpAQCAtOTUxLDkgKzkxMiw3IEBAIHN0YXRpYyBpbnQgY3JlYXRlX3NkbWFf cXVldWVfbm9jcHNjaChzdHJ1Y3QgZGV2aWNlX3F1ZXVlX21hbmFnZXIgKmRxbSwNCiAJc3RydWN0 IG1xZF9tYW5hZ2VyICptcWRfbWdyOw0KIAlpbnQgcmV0dmFsOw0KIA0KLQltcWRfbWdyID0gZHFt LT5vcHMuZ2V0X21xZF9tYW5hZ2VyKGRxbSwgS0ZEX01RRF9UWVBFX1NETUEpOw0KLQlpZiAoIW1x ZF9tZ3IpDQotCQlyZXR1cm4gLUVOT01FTTsNCisJbXFkX21nciA9IGRxbS0+bXFkX21ncnNbS0ZE X01RRF9UWVBFX1NETUFdOw0KIA0KIAlyZXR2YWwgPSBhbGxvY2F0ZV9zZG1hX3F1ZXVlKGRxbSwg JnEtPnNkbWFfaWQpOw0KIAlpZiAocmV0dmFsKQ0KQEAgLTExODYsMTcgKzExNDUsOCBAQCBzdGF0 aWMgaW50IGNyZWF0ZV9xdWV1ZV9jcHNjaChzdHJ1Y3QgZGV2aWNlX3F1ZXVlX21hbmFnZXIgKmRx bSwgc3RydWN0IHF1ZXVlICpxLA0KIAlpZiAocmV0dmFsKQ0KIAkJZ290byBvdXRfZGVhbGxvY2F0 ZV9zZG1hX3F1ZXVlOw0KIA0KLQkvKiBEbyBpbml0X21xZCBiZWZvcmUgZHFtX2xvY2soZHFtKSB0 byBhdm9pZCBjaXJjdWxhciBsb2NraW5nIG9yZGVyOg0KLQkgKiBsb2NrKGRxbSkgLT4gYm86OnJl c2VydmUNCi0JICovDQotCW1xZF9tZ3IgPSBkcW0tPm9wcy5nZXRfbXFkX21hbmFnZXIoZHFtLA0K LQkJCWdldF9tcWRfdHlwZV9mcm9tX3F1ZXVlX3R5cGUocS0+cHJvcGVydGllcy50eXBlKSk7DQot DQotCWlmICghbXFkX21ncikgew0KLQkJcmV0dmFsID0gLUVOT01FTTsNCi0JCWdvdG8gb3V0X2Rl YWxsb2NhdGVfZG9vcmJlbGw7DQotCX0NCi0NCisJbXFkX21nciA9IGRxbS0+bXFkX21ncnNbZ2V0 X21xZF90eXBlX2Zyb21fcXVldWVfdHlwZSgNCisJCQlxLT5wcm9wZXJ0aWVzLnR5cGUpXTsNCiAJ LyoNCiAJICogRXZpY3Rpb24gc3RhdGUgbG9naWM6IHdlIG9ubHkgbWFyayBhY3RpdmUgcXVldWVz IGFzIGV2aWN0ZWQNCiAJICogdG8gYXZvaWQgdGhlIG92ZXJoZWFkIG9mIHJlc3RvcmluZyBpbmFj dGl2ZSBxdWV1ZXMgbGF0ZXINCkBAIC0xMzgxLDEyICsxMzMxLDggQEAgc3RhdGljIGludCBkZXN0 cm95X3F1ZXVlX2Nwc2NoKHN0cnVjdCBkZXZpY2VfcXVldWVfbWFuYWdlciAqZHFtLA0KIA0KIAl9 DQogDQotCW1xZF9tZ3IgPSBkcW0tPm9wcy5nZXRfbXFkX21hbmFnZXIoZHFtLA0KLQkJCWdldF9t cWRfdHlwZV9mcm9tX3F1ZXVlX3R5cGUocS0+cHJvcGVydGllcy50eXBlKSk7DQotCWlmICghbXFk X21ncikgew0KLQkJcmV0dmFsID0gLUVOT01FTTsNCi0JCWdvdG8gZmFpbGVkOw0KLQl9DQorCW1x ZF9tZ3IgPSBkcW0tPm1xZF9tZ3JzW2dldF9tcWRfdHlwZV9mcm9tX3F1ZXVlX3R5cGUoDQorCQkJ cS0+cHJvcGVydGllcy50eXBlKV07DQogDQogCWRlYWxsb2NhdGVfZG9vcmJlbGwocXBkLCBxKTsN CiANCkBAIC0xNDIwLDcgKzEzNjYsNiBAQCBzdGF0aWMgaW50IGRlc3Ryb3lfcXVldWVfY3BzY2go c3RydWN0IGRldmljZV9xdWV1ZV9tYW5hZ2VyICpkcW0sDQogDQogCXJldHVybiByZXR2YWw7DQog DQotZmFpbGVkOg0KIGZhaWxlZF90cnlfZGVzdHJveV9kZWJ1Z2dlZF9xdWV1ZToNCiANCiAJZHFt X3VubG9jayhkcW0pOw0KQEAgLTE1NjYsMTEgKzE1MTEsNyBAQCBzdGF0aWMgaW50IGdldF93YXZl X3N0YXRlKHN0cnVjdCBkZXZpY2VfcXVldWVfbWFuYWdlciAqZHFtLA0KIAkJZ290byBkcW1fdW5s b2NrOw0KIAl9DQogDQotCW1xZF9tZ3IgPSBkcW0tPm9wcy5nZXRfbXFkX21hbmFnZXIoZHFtLCBL RkRfTVFEX1RZUEVfQ09NUFVURSk7DQotCWlmICghbXFkX21ncikgew0KLQkJciA9IC1FTk9NRU07 DQotCQlnb3RvIGRxbV91bmxvY2s7DQotCX0NCisJbXFkX21nciA9IGRxbS0+bXFkX21ncnNbS0ZE X01RRF9UWVBFX0NPTVBVVEVdOw0KIA0KIAlpZiAoIW1xZF9tZ3ItPmdldF93YXZlX3N0YXRlKSB7 DQogCQlyID0gLUVJTlZBTDsNCkBAIC0xNjQ1LDIxICsxNTg2LDQwIEBAIHN0YXRpYyBpbnQgcHJv Y2Vzc190ZXJtaW5hdGlvbl9jcHNjaChzdHJ1Y3QgZGV2aWNlX3F1ZXVlX21hbmFnZXIgKmRxbSwN CiAJICogRG8gdW5pbml0X21xZCgpIGFmdGVyIGRxbV91bmxvY2sgdG8gYXZvaWQgY2lyY3VsYXIg bG9ja2luZy4NCiAJICovDQogCWxpc3RfZm9yX2VhY2hfZW50cnlfc2FmZShxLCBuZXh0LCAmcXBk LT5xdWV1ZXNfbGlzdCwgbGlzdCkgew0KLQkJbXFkX21nciA9IGRxbS0+b3BzLmdldF9tcWRfbWFu YWdlcihkcW0sDQotCQkJZ2V0X21xZF90eXBlX2Zyb21fcXVldWVfdHlwZShxLT5wcm9wZXJ0aWVz LnR5cGUpKTsNCi0JCWlmICghbXFkX21ncikgew0KLQkJCXJldHZhbCA9IC1FTk9NRU07DQotCQkJ Z290byBvdXQ7DQotCQl9DQorCQltcWRfbWdyID0gZHFtLT5tcWRfbWdyc1tnZXRfbXFkX3R5cGVf ZnJvbV9xdWV1ZV90eXBlKA0KKwkJCQlxLT5wcm9wZXJ0aWVzLnR5cGUpXTsNCiAJCWxpc3RfZGVs KCZxLT5saXN0KTsNCiAJCXFwZC0+cXVldWVfY291bnQtLTsNCiAJCW1xZF9tZ3ItPnVuaW5pdF9t cWQobXFkX21nciwgcS0+bXFkLCBxLT5tcWRfbWVtX29iaik7DQogCX0NCiANCi1vdXQ6DQogCXJl dHVybiByZXR2YWw7DQogfQ0KIA0KK3N0YXRpYyBpbnQgaW5pdF9tcWRfbWFuYWdlcnMoc3RydWN0 IGRldmljZV9xdWV1ZV9tYW5hZ2VyICpkcW0pDQorew0KKwlpbnQgaSwgajsNCisJc3RydWN0IG1x ZF9tYW5hZ2VyICptcWRfbWdyOw0KKw0KKwlmb3IgKGkgPSAwOyBpIDwgS0ZEX01RRF9UWVBFX01B WDsgaSsrKSB7DQorCQltcWRfbWdyID0gZHFtLT5hc2ljX29wcy5tcWRfbWFuYWdlcl9pbml0KGks IGRxbS0+ZGV2KTsNCisJCWlmICghbXFkX21ncikgew0KKwkJCXByX2VycigibXFkIG1hbmFnZXIg WyVkXSBpbml0aWFsaXphdGlvbiBmYWlsZWRcbiIsIGkpOw0KKwkJCWdvdG8gb3V0X2ZyZWU7DQor CQl9DQorCQlkcW0tPm1xZF9tZ3JzW2ldID0gbXFkX21ncjsNCisJfQ0KKw0KKwlyZXR1cm4gMDsN CisNCitvdXRfZnJlZToNCisJZm9yIChqID0gMDsgaiA8IGk7IGorKykgew0KKwkJa2ZyZWUoZHFt LT5tcWRfbWdyc1tqXSk7DQorCQlkcW0tPm1xZF9tZ3JzW2pdID0gTlVMTDsNCisJfQ0KKw0KKwly ZXR1cm4gLUVOT01FTTsNCit9DQogc3RydWN0IGRldmljZV9xdWV1ZV9tYW5hZ2VyICpkZXZpY2Vf cXVldWVfbWFuYWdlcl9pbml0KHN0cnVjdCBrZmRfZGV2ICpkZXYpDQogew0KIAlzdHJ1Y3QgZGV2 aWNlX3F1ZXVlX21hbmFnZXIgKmRxbTsNCkBAIC0xNjk3LDcgKzE2NTcsNiBAQCBzdHJ1Y3QgZGV2 aWNlX3F1ZXVlX21hbmFnZXIgKmRldmljZV9xdWV1ZV9tYW5hZ2VyX2luaXQoc3RydWN0IGtmZF9k ZXYgKmRldikNCiAJCWRxbS0+b3BzLnN0b3AgPSBzdG9wX2Nwc2NoOw0KIAkJZHFtLT5vcHMuZGVz dHJveV9xdWV1ZSA9IGRlc3Ryb3lfcXVldWVfY3BzY2g7DQogCQlkcW0tPm9wcy51cGRhdGVfcXVl dWUgPSB1cGRhdGVfcXVldWU7DQotCQlkcW0tPm9wcy5nZXRfbXFkX21hbmFnZXIgPSBnZXRfbXFk X21hbmFnZXI7DQogCQlkcW0tPm9wcy5yZWdpc3Rlcl9wcm9jZXNzID0gcmVnaXN0ZXJfcHJvY2Vz czsNCiAJCWRxbS0+b3BzLnVucmVnaXN0ZXJfcHJvY2VzcyA9IHVucmVnaXN0ZXJfcHJvY2VzczsN CiAJCWRxbS0+b3BzLnVuaW5pdGlhbGl6ZSA9IHVuaW5pdGlhbGl6ZTsNCkBAIC0xNzE3LDcgKzE2 NzYsNiBAQCBzdHJ1Y3QgZGV2aWNlX3F1ZXVlX21hbmFnZXIgKmRldmljZV9xdWV1ZV9tYW5hZ2Vy X2luaXQoc3RydWN0IGtmZF9kZXYgKmRldikNCiAJCWRxbS0+b3BzLmNyZWF0ZV9xdWV1ZSA9IGNy ZWF0ZV9xdWV1ZV9ub2Nwc2NoOw0KIAkJZHFtLT5vcHMuZGVzdHJveV9xdWV1ZSA9IGRlc3Ryb3lf cXVldWVfbm9jcHNjaDsNCiAJCWRxbS0+b3BzLnVwZGF0ZV9xdWV1ZSA9IHVwZGF0ZV9xdWV1ZTsN Ci0JCWRxbS0+b3BzLmdldF9tcWRfbWFuYWdlciA9IGdldF9tcWRfbWFuYWdlcjsNCiAJCWRxbS0+ b3BzLnJlZ2lzdGVyX3Byb2Nlc3MgPSByZWdpc3Rlcl9wcm9jZXNzOw0KIAkJZHFtLT5vcHMudW5y ZWdpc3Rlcl9wcm9jZXNzID0gdW5yZWdpc3Rlcl9wcm9jZXNzOw0KIAkJZHFtLT5vcHMuaW5pdGlh bGl6ZSA9IGluaXRpYWxpemVfbm9jcHNjaDsNCkBAIC0xNzY4LDYgKzE3MjYsOSBAQCBzdHJ1Y3Qg ZGV2aWNlX3F1ZXVlX21hbmFnZXIgKmRldmljZV9xdWV1ZV9tYW5hZ2VyX2luaXQoc3RydWN0IGtm ZF9kZXYgKmRldikNCiAJCWdvdG8gb3V0X2ZyZWU7DQogCX0NCiANCisJaWYgKGluaXRfbXFkX21h bmFnZXJzKGRxbSkpDQorCQlnb3RvIG91dF9mcmVlOw0KKw0KIAlpZiAoIWRxbS0+b3BzLmluaXRp YWxpemUoZHFtKSkNCiAJCXJldHVybiBkcW07DQogDQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRrZmQva2ZkX2RldmljZV9xdWV1ZV9tYW5hZ2VyLmggYi9kcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGtmZC9rZmRfZGV2aWNlX3F1ZXVlX21hbmFnZXIuaA0KaW5kZXggYTVkODNlYzFj NmE4Li5hNWVmN2E2NjUwYTUgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGtm ZC9rZmRfZGV2aWNlX3F1ZXVlX21hbmFnZXIuaA0KKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRrZmQva2ZkX2RldmljZV9xdWV1ZV9tYW5hZ2VyLmgNCkBAIC00OCw4ICs0OCw2IEBAIHN0cnVj dCBkZXZpY2VfcHJvY2Vzc19ub2RlIHsNCiAgKg0KICAqIEB1cGRhdGVfcXVldWU6IFF1ZXVlIHVw ZGF0ZSByb3V0aW5lLg0KICAqDQotICogQGdldF9tcWRfbWFuYWdlcjogUmV0dXJucyB0aGUgbXFk IG1hbmFnZXIgYWNjb3JkaW5nIHRvIHRoZSBtcWQgdHlwZS4NCi0gKg0KICAqIEBleGV1dGVfcXVl dWVzOiBEaXNwYXRjaGVzIHRoZSBxdWV1ZXMgbGlzdCB0byB0aGUgSC9XLg0KICAqDQogICogQHJl Z2lzdGVyX3Byb2Nlc3M6IFRoaXMgcm91dGluZSBhc3NvY2lhdGVzIGEgc3BlY2lmaWMgcHJvY2Vz cyB3aXRoIGRldmljZS4NCkBAIC05NywxMCArOTUsNiBAQCBzdHJ1Y3QgZGV2aWNlX3F1ZXVlX21h bmFnZXJfb3BzIHsNCiAJaW50CSgqdXBkYXRlX3F1ZXVlKShzdHJ1Y3QgZGV2aWNlX3F1ZXVlX21h bmFnZXIgKmRxbSwNCiAJCQkJc3RydWN0IHF1ZXVlICpxKTsNCiANCi0Jc3RydWN0IG1xZF9tYW5h Z2VyICogKCpnZXRfbXFkX21hbmFnZXIpDQotCQkJCQkoc3RydWN0IGRldmljZV9xdWV1ZV9tYW5h Z2VyICpkcW0sDQotCQkJCQllbnVtIEtGRF9NUURfVFlQRSB0eXBlKTsNCi0NCiAJaW50CSgqcmVn aXN0ZXJfcHJvY2Vzcykoc3RydWN0IGRldmljZV9xdWV1ZV9tYW5hZ2VyICpkcW0sDQogCQkJCQlz dHJ1Y3QgcWNtX3Byb2Nlc3NfZGV2aWNlICpxcGQpOw0KIA0KZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9hbWQvYW1ka2ZkL2tmZF9rZXJuZWxfcXVldWUuYyBiL2RyaXZlcnMvZ3B1L2RybS9h bWQvYW1ka2ZkL2tmZF9rZXJuZWxfcXVldWUuYw0KaW5kZXggNThiYjNhZDIzM2ExLi43YTczN2I1 MGJlZDQgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGtmZC9rZmRfa2VybmVs X3F1ZXVlLmMNCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1ka2ZkL2tmZF9rZXJuZWxfcXVl dWUuYw0KQEAgLTU4LDEyICs1OCwxMCBAQCBzdGF0aWMgYm9vbCBpbml0aWFsaXplKHN0cnVjdCBr ZXJuZWxfcXVldWUgKmtxLCBzdHJ1Y3Qga2ZkX2RldiAqZGV2LA0KIAlrcS0+bm9wX3BhY2tldCA9 IG5vcC51MzJhbGw7DQogCXN3aXRjaCAodHlwZSkgew0KIAljYXNlIEtGRF9RVUVVRV9UWVBFX0RJ UToNCi0JCWtxLT5tcWRfbWdyID0gZGV2LT5kcW0tPm9wcy5nZXRfbXFkX21hbmFnZXIoZGV2LT5k cW0sDQotCQkJCQkJS0ZEX01RRF9UWVBFX0RJUSk7DQorCQlrcS0+bXFkX21nciA9IGRldi0+ZHFt LT5tcWRfbWdyc1tLRkRfTVFEX1RZUEVfRElRXTsNCiAJCWJyZWFrOw0KIAljYXNlIEtGRF9RVUVV RV9UWVBFX0hJUToNCi0JCWtxLT5tcWRfbWdyID0gZGV2LT5kcW0tPm9wcy5nZXRfbXFkX21hbmFn ZXIoZGV2LT5kcW0sDQotCQkJCQkJS0ZEX01RRF9UWVBFX0hJUSk7DQorCQlrcS0+bXFkX21nciA9 IGRldi0+ZHFtLT5tcWRfbWdyc1tLRkRfTVFEX1RZUEVfSElRXTsNCiAJCWJyZWFrOw0KIAlkZWZh dWx0Og0KIAkJcHJfZXJyKCJJbnZhbGlkIHF1ZXVlIHR5cGUgJWRcbiIsIHR5cGUpOw0KZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1ka2ZkL2tmZF9wcm9jZXNzX3F1ZXVlX21hbmFn ZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1ka2ZkL2tmZF9wcm9jZXNzX3F1ZXVlX21hbmFn ZXIuYw0KaW5kZXggNzY3MTY1OGVmMWYxLi5mMThkOWNkZjlhYWMgMTAwNjQ0DQotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vYW1kL2FtZGtmZC9rZmRfcHJvY2Vzc19xdWV1ZV9tYW5hZ2VyLmMNCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1ka2ZkL2tmZF9wcm9jZXNzX3F1ZXVlX21hbmFnZXIuYw0K QEAgLTQ2MSw4ICs0NjEsNyBAQCBpbnQgcHFtX2RlYnVnZnNfbXFkcyhzdHJ1Y3Qgc2VxX2ZpbGUg Km0sIHZvaWQgKmRhdGEpDQogCQkJCQkgICBxLT5wcm9wZXJ0aWVzLnR5cGUsIHEtPmRldmljZS0+ aWQpOw0KIAkJCQljb250aW51ZTsNCiAJCQl9DQotCQkJbXFkX21nciA9IHEtPmRldmljZS0+ZHFt LT5vcHMuZ2V0X21xZF9tYW5hZ2VyKA0KLQkJCQlxLT5kZXZpY2UtPmRxbSwgbXFkX3R5cGUpOw0K KwkJCW1xZF9tZ3IgPSBxLT5kZXZpY2UtPmRxbS0+bXFkX21ncnNbbXFkX3R5cGVdOw0KIAkJfSBl bHNlIGlmIChwcW4tPmtxKSB7DQogCQkJcSA9IHBxbi0+a3EtPnF1ZXVlOw0KIAkJCW1xZF9tZ3Ig PSBwcW4tPmtxLT5tcWRfbWdyOw0KLS0gDQoyLjE3LjENCg0KX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KYW1kLWdmeCBtYWlsaW5nIGxpc3QKYW1kLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9hbWQtZ2Z4