From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?Christian_K=c3=b6nig?= Subject: Re: [PATCH] drm/amdgpu: support dpm level modification under virtualization v2 Date: Wed, 10 Apr 2019 16:01:45 +0200 Message-ID: <72f356d9-f3bd-9031-a6dc-5622ac086aa8@gmail.com> References: <1554901357-10377-1-git-send-email-yttao@amd.com> Reply-To: christian.koenig-5C7GfCeVMHo@public.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1554901357-10377-1-git-send-email-yttao-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: Yintian Tao , amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org QW0gMTAuMDQuMTkgdW0gMTU6MDIgc2NocmllYiBZaW50aWFuIFRhbzoKPiBVbmRlciB2ZWdhMTAg dmlydHVhbHV6YXRpb24sIHNtdSBpcCBibG9jayB3aWxsIG5vdCBiZSBhZGRlZC4KPiBUaGVyZWZv cmUsIHdlIG5lZWQgYWRkIHBwIGNsayBxdWVyeSBhbmQgZm9yY2UgZHBtIGxldmVsIGZ1bmN0aW9u Cj4gYXQgYW1kZ3B1X3ZpcnRfb3BzIHRvIHN1cHBvcnQgdGhlIGZlYXR1cmUuCj4KPiB2MjogYWRk IGdldF9wcF9jbGsgZXhpc3RlbmNlIGNoZWNrIGFuZCB1c2Uga3phbGxvYyB0byBhbGxvY2F0ZSBi dWYKPgo+IENoYW5nZS1JZDogSTcxMzQxOWM1N2I4NTQwODJmNmY3MzlmMWQzMmEwNTVjNzExNWU2 MjAKPiBTaWduZWQtb2ZmLWJ5OiBZaW50aWFuIFRhbyA8eXR0YW9AYW1kLmNvbT4KPiAtLS0KPiAg IGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9kZXZpY2UuYyB8ICAxICsKPiAgIGRy aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9rbXMuYyAgICB8ICA0ICsrCj4gICBkcml2 ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfcG0uYyAgICAgfCAxNSArKysrKysKPiAgIGRy aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92aXJ0LmMgICB8IDQ5ICsrKysrKysrKysr KysrKysrKysKPiAgIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92aXJ0LmggICB8 IDExICsrKysrCj4gICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9teGdwdV9haS5jICAgICAg fCA3OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiAgIGRyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L214Z3B1X2FpLmggICAgICB8ICA2ICsrKwo+ICAgNyBmaWxlcyBjaGFuZ2VkLCAx NjQgaW5zZXJ0aW9ucygrKQo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1L2FtZGdwdV9kZXZpY2UuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9k ZXZpY2UuYwo+IGluZGV4IDNmZjg4OTkuLmJiMGZkNWEgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2RldmljZS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJt L2FtZC9hbWRncHUvYW1kZ3B1X2RldmljZS5jCj4gQEAgLTI0ODYsNiArMjQ4Niw3IEBAIGludCBh bWRncHVfZGV2aWNlX2luaXQoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsCj4gICAJbXV0ZXhf aW5pdCgmYWRldi0+dmlydC52Zl9lcnJvcnMubG9jayk7Cj4gICAJaGFzaF9pbml0KGFkZXYtPm1u X2hhc2gpOwo+ICAgCW11dGV4X2luaXQoJmFkZXYtPmxvY2tfcmVzZXQpOwo+ICsJbXV0ZXhfaW5p dCgmYWRldi0+dmlydC5kcG1fbXV0ZXgpOwo+ICAgCj4gICAJYW1kZ3B1X2RldmljZV9jaGVja19h cmd1bWVudHMoYWRldik7Cj4gICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvYW1kZ3B1X2ttcy5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2tt cy5jCj4gaW5kZXggNjE5MDQ5NS4uMjllYzI4ZiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9hbWRncHVfa21zLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9hbWRncHVfa21zLmMKPiBAQCAtNzI3LDYgKzcyNywxMCBAQCBzdGF0aWMgaW50IGFtZGdw dV9pbmZvX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsIHN0cnVjdCBk cm1fZmlsZQo+ICAgCQlpZiAoYWRldi0+cG0uZHBtX2VuYWJsZWQpIHsKPiAgIAkJCWRldl9pbmZv Lm1heF9lbmdpbmVfY2xvY2sgPSBhbWRncHVfZHBtX2dldF9zY2xrKGFkZXYsIGZhbHNlKSAqIDEw Owo+ICAgCQkJZGV2X2luZm8ubWF4X21lbW9yeV9jbG9jayA9IGFtZGdwdV9kcG1fZ2V0X21jbGso YWRldiwgZmFsc2UpICogMTA7Cj4gKwkJfSBlbHNlIGlmIChhbWRncHVfc3Jpb3ZfdmYoYWRldikg JiYgYW1kZ2ltX2lzX2h3cGVyZihhZGV2KSAmJgo+ICsJCQkgICBhZGV2LT52aXJ0Lm9wcy0+Z2V0 X3BwX2Nsaykgewo+ICsJCQlkZXZfaW5mby5tYXhfZW5naW5lX2Nsb2NrID0gYW1kZ3B1X3ZpcnRf Z2V0X3NjbGsoYWRldiwgZmFsc2UpICogMTA7Cj4gKwkJCWRldl9pbmZvLm1heF9tZW1vcnlfY2xv Y2sgPSBhbWRncHVfdmlydF9nZXRfbWNsayhhZGV2LCBmYWxzZSkgKiAxMDsKPiAgIAkJfSBlbHNl IHsKPiAgIAkJCWRldl9pbmZvLm1heF9lbmdpbmVfY2xvY2sgPSBhZGV2LT5jbG9jay5kZWZhdWx0 X3NjbGsgKiAxMDsKPiAgIAkJCWRldl9pbmZvLm1heF9tZW1vcnlfY2xvY2sgPSBhZGV2LT5jbG9j ay5kZWZhdWx0X21jbGsgKiAxMDsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvYW1kZ3B1X3BtLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfcG0u Ywo+IGluZGV4IDU1NDAyNTkuLjAxNjJkMWUgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2FtZC9hbWRncHUvYW1kZ3B1X3BtLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdw dS9hbWRncHVfcG0uYwo+IEBAIC0zODAsNiArMzgwLDE3IEBAIHN0YXRpYyBzc2l6ZV90IGFtZGdw dV9zZXRfZHBtX2ZvcmNlZF9wZXJmb3JtYW5jZV9sZXZlbChzdHJ1Y3QgZGV2aWNlICpkZXYsCj4g ICAJCWdvdG8gZmFpbDsKPiAgIAl9Cj4gICAKPiArICAgICAgICBpZiAoYW1kZ3B1X3NyaW92X3Zm KGFkZXYpKSB7Cj4gKyAgICAgICAgICAgICAgICBpZiAoYW1kZ2ltX2lzX2h3cGVyZihhZGV2KSAm Jgo+ICsgICAgICAgICAgICAgICAgICAgIGFkZXYtPnZpcnQub3BzLT5mb3JjZV9kcG1fbGV2ZWwp IHsKPiArICAgICAgICAgICAgICAgICAgICAgICAgbXV0ZXhfbG9jaygmYWRldi0+cG0ubXV0ZXgp Owo+ICsgICAgICAgICAgICAgICAgICAgICAgICBhZGV2LT52aXJ0Lm9wcy0+Zm9yY2VfZHBtX2xl dmVsKGFkZXYsIGxldmVsKTsKPiArICAgICAgICAgICAgICAgICAgICAgICAgbXV0ZXhfdW5sb2Nr KCZhZGV2LT5wbS5tdXRleCk7Cj4gKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjb3Vu dDsKPiArICAgICAgICAgICAgICAgIH0gZWxzZQo+ICsgICAgICAgICAgICAgICAgICAgICAgICBy ZXR1cm4gLUVJTlZBTDsKPiArICAgICAgICB9Cj4gKwo+ICAgCWlmIChjdXJyZW50X2xldmVsID09 IGxldmVsKQo+ICAgCQlyZXR1cm4gY291bnQ7Cj4gICAKPiBAQCAtODQzLDYgKzg1NCwxMCBAQCBz dGF0aWMgc3NpemVfdCBhbWRncHVfZ2V0X3BwX2RwbV9zY2xrKHN0cnVjdCBkZXZpY2UgKmRldiwK PiAgIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGRldiA9IGRldl9nZXRfZHJ2ZGF0YShkZXYpOwo+ICAg CXN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2ID0gZGRldi0+ZGV2X3ByaXZhdGU7Cj4gICAKPiAr CWlmIChhbWRncHVfc3Jpb3ZfdmYoYWRldikgJiYgYW1kZ2ltX2lzX2h3cGVyZihhZGV2KSAmJgo+ ICsJICAgIGFkZXYtPnZpcnQub3BzLT5nZXRfcHBfY2xrKQo+ICsJCXJldHVybiBhZGV2LT52aXJ0 Lm9wcy0+Z2V0X3BwX2NsayhhZGV2LCBQUF9TQ0xLLCBidWYpOwo+ICsKPiAgIAlpZiAoaXNfc3Vw cG9ydF9zd19zbXUoYWRldikpCj4gICAJCXJldHVybiBzbXVfcHJpbnRfY2xrX2xldmVscygmYWRl di0+c211LCBQUF9TQ0xLLCBidWYpOwo+ICAgCWVsc2UgaWYgKGFkZXYtPnBvd2VycGxheS5wcF9m dW5jcy0+cHJpbnRfY2xvY2tfbGV2ZWxzKQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v YW1kL2FtZGdwdS9hbWRncHVfdmlydC5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1k Z3B1X3ZpcnQuYwo+IGluZGV4IDQ2MmEwNGUuLmVmZGI2YjcgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZpcnQuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9hbWQvYW1kZ3B1L2FtZGdwdV92aXJ0LmMKPiBAQCAtMzc1LDQgKzM3NSw1MyBAQCB2b2lkIGFt ZGdwdV92aXJ0X2luaXRfZGF0YV9leGNoYW5nZShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldikK PiAgIAl9Cj4gICB9Cj4gICAKPiArc3RhdGljIHVpbnQzMl90IHBhcnNlX2NsayhjaGFyICpidWYs IGJvb2wgbWluKQo+ICt7Cj4gKyAgICAgICAgY2hhciAqcHRyID0gYnVmOwo+ICsgICAgICAgIHVp bnQzMl90IGNsayA9IDA7Cj4gKwo+ICsgICAgICAgIGRvIHsKPiArICAgICAgICAgICAgICAgIHB0 ciA9IHN0cmNocihwdHIsICc6Jyk7Cj4gKyAgICAgICAgICAgICAgICBpZiAoIXB0cikKPiArICAg ICAgICAgICAgICAgICAgICAgICAgYnJlYWs7Cj4gKyAgICAgICAgICAgICAgICBwdHIrPTI7Cj4g KyAgICAgICAgICAgICAgICBjbGsgPSBzaW1wbGVfc3RydG91bChwdHIsIE5VTEwsIDEwKTsKPiAr ICAgICAgICB9IHdoaWxlICghbWluKTsKPiArCj4gKyAgICAgICAgcmV0dXJuIGNsayAqIDEwMDsK PiArfQo+ICsKPiArdWludDMyX3QgYW1kZ3B1X3ZpcnRfZ2V0X3NjbGsoc3RydWN0IGFtZGdwdV9k ZXZpY2UgKmFkZXYsIGJvb2wgbG93ZXN0KQo+ICt7Cj4gKyAgICAgICAgY2hhciAqYnVmID0gTlVM TDsKPiArCXVpbnQzMl90IGNsayA9IDA7Cj4gKwo+ICsJYnVmID0ga3phbGxvYyhQQUdFX1NJWkUs IEdGUF9LRVJORUwpOwo+ICsJaWYgKE5VTEwgPT0gYnVmKQoKQWNjb3JkaW5nIHRvIGNvZGluZyBz dHlsZSBydWxlcyB0aGF0IHNob3VsZCBiZSAiaWYgKCFidWYpIi4KCj4gKwkJcmV0dXJuIC1FSU5W QUw7CgpQbGVhc2UgcmV0dXJuIC1FTk9NRU0gaGVyZS4KCj4gKwo+ICsgICAgICAgIGFkZXYtPnZp cnQub3BzLT5nZXRfcHBfY2xrKGFkZXYsIFBQX1NDTEssIGJ1Zik7Cj4gKyAgICAgICAgY2xrID0g cGFyc2VfY2xrKGJ1ZiwgbG93ZXN0KTsKCkxvb2tzIGxpa2UgeW91IGFyZSB1c2luZyBzcGFjZXMg aW5zdGVhZCBvZiB0YWJzIGhlcmUuCgo+ICsKPiArCWtmcmVlKGJ1Zik7Cj4gKwo+ICsJcmV0dXJu IGNsazsKPiArfQo+ICsKPiArdWludDMyX3QgYW1kZ3B1X3ZpcnRfZ2V0X21jbGsoc3RydWN0IGFt ZGdwdV9kZXZpY2UgKmFkZXYsIGJvb2wgbG93ZXN0KQo+ICt7Cj4gKyAgICAgICAgY2hhciAqYnVm ID0gTlVMTDsKPiArCXVpbnQzMl90IGNsayA9IDA7Cj4gKwo+ICsJYnVmID0ga3phbGxvYyhQQUdF X1NJWkUsIEdGUF9LRVJORUwpOwo+ICsJaWYgKE5VTEwgPT0gYnVmKQo+ICsJCXJldHVybiAtRUlO VkFMOwo+ICsKPiArICAgICAgICBhZGV2LT52aXJ0Lm9wcy0+Z2V0X3BwX2NsayhhZGV2LCBQUF9N Q0xLLCBidWYpOwo+ICsgICAgICAgIGNsayA9IHBhcnNlX2NsayhidWYsIGxvd2VzdCk7CgpEaXRv LgoKCkFwYXJ0IGZyb20gdGhhdCBsb29rcyBnb29kIHRvIG1lIG9mIGhhbmQsCkNocmlzdGlhbi4K Cj4gKwo+ICsJa2ZyZWUoYnVmKTsKPiArCj4gKwlyZXR1cm4gY2xrOwo+ICt9Cj4gICAKPiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZpcnQuaCBiL2RyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92aXJ0LmgKPiBpbmRleCA3MjJkZWVmLi41ODQ5 NDdiIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92aXJ0 LmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdmlydC5oCj4gQEAg LTU3LDYgKzU3LDggQEAgc3RydWN0IGFtZGdwdV92aXJ0X29wcyB7Cj4gICAJaW50ICgqcmVzZXRf Z3B1KShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldik7Cj4gICAJaW50ICgqd2FpdF9yZXNldCko c3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpOwo+ICAgCXZvaWQgKCp0cmFuc19tc2cpKHN0cnVj dCBhbWRncHVfZGV2aWNlICphZGV2LCB1MzIgcmVxLCB1MzIgZGF0YTEsIHUzMiBkYXRhMiwgdTMy IGRhdGEzKTsKPiArCWludCAoKmdldF9wcF9jbGspKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2 LCB1MzIgdHlwZSwgY2hhciAqYnVmKTsKPiArCWludCAoKmZvcmNlX2RwbV9sZXZlbCkoc3RydWN0 IGFtZGdwdV9kZXZpY2UgKmFkZXYsIHUzMiBsZXZlbCk7Cj4gICB9Owo+ICAgCj4gICAvKgo+IEBA IC04Myw2ICs4NSw4IEBAIGVudW0gQU1ER0lNX0ZFQVRVUkVfRkxBRyB7Cj4gICAJQU1ER0lNX0ZF QVRVUkVfR0lNX0xPQURfVUNPREVTICAgPSAweDIsCj4gICAJLyogVlJBTSBMT1NUIGJ5IEdJTSAq Lwo+ICAgCUFNREdJTV9GRUFUVVJFX0dJTV9GTFJfVlJBTUxPU1QgPSAweDQsCj4gKwkvKiBIVyBQ RVJGIFNJTSBpbiBHSU0gKi8KPiArCUFNREdJTV9GRUFUVVJFX0hXX1BFUkZfU0lNVUxBVElPTiA9 ICgxIDw8IDMpLAo+ICAgfTsKPiAgIAo+ICAgc3RydWN0IGFtZF9zcmlvdl9tc2dfcGYydmZfaW5m b19oZWFkZXIgewo+IEBAIC0yNTIsNiArMjU2LDggQEAgc3RydWN0IGFtZGdwdV92aXJ0IHsKPiAg IAlzdHJ1Y3QgYW1kZ3B1X3ZmX2Vycm9yX2J1ZmZlciAgIHZmX2Vycm9yczsKPiAgIAlzdHJ1Y3Qg YW1kZ3B1X3ZpcnRfZndfcmVzZXJ2ZQlmd19yZXNlcnZlOwo+ICAgCXVpbnQzMl90IGdpbV9mZWF0 dXJlOwo+ICsJLyogcHJvdGVjdCBEUE0gZXZlbnRzIHRvIEdJTSAqLwo+ICsJc3RydWN0IG11dGV4 ICAgICAgICAgICAgICAgICAgICBkcG1fbXV0ZXg7Cj4gICB9Owo+ICAgCj4gICAjZGVmaW5lIGFt ZGdwdV9zcmlvdl9lbmFibGVkKGFkZXYpIFwKPiBAQCAtMjc4LDYgKzI4NCw5IEBAIHN0YXRpYyBp bmxpbmUgYm9vbCBpc192aXJ0dWFsX21hY2hpbmUodm9pZCkKPiAgICNlbmRpZgo+ICAgfQo+ICAg Cj4gKyNkZWZpbmUgYW1kZ2ltX2lzX2h3cGVyZihhZGV2KSBcCj4gKwkoKGFkZXYpLT52aXJ0Lmdp bV9mZWF0dXJlICYgQU1ER0lNX0ZFQVRVUkVfSFdfUEVSRl9TSU1VTEFUSU9OKQo+ICsKPiAgIGJv b2wgYW1kZ3B1X3ZpcnRfbW1pb19ibG9ja2VkKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KTsK PiAgIHZvaWQgYW1kZ3B1X3ZpcnRfaW5pdF9zZXR0aW5nKHN0cnVjdCBhbWRncHVfZGV2aWNlICph ZGV2KTsKPiAgIHVpbnQzMl90IGFtZGdwdV92aXJ0X2tpcV9ycmVnKHN0cnVjdCBhbWRncHVfZGV2 aWNlICphZGV2LCB1aW50MzJfdCByZWcpOwo+IEBAIC0yOTUsNSArMzA0LDcgQEAgaW50IGFtZGdw dV92aXJ0X2Z3X3Jlc2VydmVfZ2V0X2NoZWNrc3VtKHZvaWQgKm9iaiwgdW5zaWduZWQgbG9uZyBv Ympfc2l6ZSwKPiAgIAkJCQkJdW5zaWduZWQgaW50IGtleSwKPiAgIAkJCQkJdW5zaWduZWQgaW50 IGNoa3N1bSk7Cj4gICB2b2lkIGFtZGdwdV92aXJ0X2luaXRfZGF0YV9leGNoYW5nZShzdHJ1Y3Qg YW1kZ3B1X2RldmljZSAqYWRldik7Cj4gK3VpbnQzMl90IGFtZGdwdV92aXJ0X2dldF9zY2xrKHN0 cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LCBib29sIGxvd2VzdCk7Cj4gK3VpbnQzMl90IGFtZGdw dV92aXJ0X2dldF9tY2xrKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LCBib29sIGxvd2VzdCk7 Cj4gICAKPiAgICNlbmRpZgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdw dS9teGdwdV9haS5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvbXhncHVfYWkuYwo+IGlu ZGV4IDczODUxZWIuLjhkYmFkNDkgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvbXhncHVfYWkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L214Z3B1 X2FpLmMKPiBAQCAtMTU3LDYgKzE1Nyw4MiBAQCBzdGF0aWMgdm9pZCB4Z3B1X2FpX21haWxib3hf dHJhbnNfbXNnIChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwKPiAgIAl4Z3B1X2FpX21haWxi b3hfc2V0X3ZhbGlkKGFkZXYsIGZhbHNlKTsKPiAgIH0KPiAgIAo+ICtzdGF0aWMgaW50IHhncHVf YWlfZ2V0X3BwX2NsayhzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgdTMyIHR5cGUsIGNoYXIg KmJ1ZikKPiArewo+ICsgICAgICAgIGludCByID0gMDsKPiArICAgICAgICB1MzIgcmVxLCB2YWws IHNpemU7Cj4gKwo+ICsgICAgICAgIGlmICghYW1kZ2ltX2lzX2h3cGVyZihhZGV2KSB8fCBidWYg PT0gTlVMTCkKPiArICAgICAgICAgICAgICAgIHJldHVybiAtRUJBRFJRQzsKPiArCj4gKyAgICAg ICAgc3dpdGNoKHR5cGUpIHsKPiArICAgICAgICBjYXNlIFBQX1NDTEs6Cj4gKyAgICAgICAgICAg ICAgICByZXEgPSBJREhfSVJRX0dFVF9QUF9TQ0xLOwo+ICsgICAgICAgICAgICAgICAgYnJlYWs7 Cj4gKyAgICAgICAgY2FzZSBQUF9NQ0xLOgo+ICsgICAgICAgICAgICAgICAgcmVxID0gSURIX0lS UV9HRVRfUFBfTUNMSzsKPiArICAgICAgICAgICAgICAgIGJyZWFrOwo+ICsgICAgICAgIGRlZmF1 bHQ6Cj4gKyAgICAgICAgICAgICAgICByZXR1cm4gLUVCQURSUUM7Cj4gKyAgICAgICAgfQo+ICsK PiArICAgICAgICBtdXRleF9sb2NrKCZhZGV2LT52aXJ0LmRwbV9tdXRleCk7Cj4gKwo+ICsgICAg ICAgIHhncHVfYWlfbWFpbGJveF90cmFuc19tc2coYWRldiwgcmVxLCAwLCAwLCAwKTsKPiArCj4g KyAgICAgICAgciA9IHhncHVfYWlfcG9sbF9tc2coYWRldiwgSURIX1NVQ0NFU1MpOwo+ICsgICAg ICAgIGlmICghciAmJiBhZGV2LT5md192cmFtX3VzYWdlLnZhICE9IE5VTEwpIHsKPiArICAgICAg ICAgICAgICAgIHZhbCA9IFJSRUczMl9OT19LSVEoCj4gKyAgICAgICAgICAgICAgICAgICAgICAg IFNPQzE1X1JFR19PRkZTRVQoTkJJTywgMCwKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBtbUJJRl9CWF9QRjBfTUFJTEJPWF9NU0dCVUZfUkNWX0RXMSkpOwo+ICsg ICAgICAgICAgICAgICAgc2l6ZSA9IHN0cm5sZW4oKCgoY2hhciAqKWFkZXYtPnZpcnQuZndfcmVz ZXJ2ZS5wX3BmMnZmKSArCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsKSwg UEFHRV9TSVpFKTsKPiArCj4gKyAgICAgICAgICAgICAgICBpZiAoc2l6ZSA8IFBBR0VfU0laRSkK PiArICAgICAgICAgICAgICAgICAgICAgICAgc3RyY3B5KGJ1ZiwoKGNoYXIgKilhZGV2LT52aXJ0 LmZ3X3Jlc2VydmUucF9wZjJ2ZiArIHZhbCkpOwo+ICsgICAgICAgICAgICAgICAgZWxzZQo+ICsg ICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gMDsKPiArCj4gKyAgICAgICAgICAgICAgICBy ID0gc2l6ZTsKPiArICAgICAgICAgICAgICAgIGdvdG8gb3V0Owo+ICsgICAgICAgIH0KPiArCj4g KyAgICAgICAgciA9IHhncHVfYWlfcG9sbF9tc2coYWRldiwgSURIX0ZBSUwpOwo+ICsgICAgICAg IGlmKHIpCj4gKyAgICAgICAgICAgICAgICBwcl9pbmZvKCIlcyBEUE0gcmVxdWVzdCBmYWlsZWQi LAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAodHlwZSA9PSBQUF9TQ0xLKT8gIlNDTEsiIDog Ik1DTEsiKTsKPiArCj4gK291dDoKPiArICAgICAgICBtdXRleF91bmxvY2soJmFkZXYtPnZpcnQu ZHBtX211dGV4KTsKPiArICAgICAgICByZXR1cm4gcjsKPiArfQo+ICsKPiArc3RhdGljIGludCB4 Z3B1X2FpX2ZvcmNlX2RwbV9sZXZlbChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgdTMyIGxl dmVsKQo+ICt7Cj4gKyAgICAgICAgaW50IHIgPSAwOwo+ICsgICAgICAgIHUzMiByZXEgPSBJREhf SVJRX0ZPUkNFX0RQTV9MRVZFTDsKPiArCj4gKyAgICAgICAgaWYgKCFhbWRnaW1faXNfaHdwZXJm KGFkZXYpKQo+ICsgICAgICAgICAgICAgICAgcmV0dXJuIC1FQkFEUlFDOwo+ICsKPiArICAgICAg ICBtdXRleF9sb2NrKCZhZGV2LT52aXJ0LmRwbV9tdXRleCk7Cj4gKyAgICAgICAgeGdwdV9haV9t YWlsYm94X3RyYW5zX21zZyhhZGV2LCByZXEsIGxldmVsLCAwLCAwKTsKPiArCj4gKyAgICAgICAg ciA9IHhncHVfYWlfcG9sbF9tc2coYWRldiwgSURIX1NVQ0NFU1MpOwo+ICsgICAgICAgIGlmICgh cikKPiArICAgICAgICAgICAgICAgIGdvdG8gb3V0Owo+ICsKPiArICAgICAgICByID0geGdwdV9h aV9wb2xsX21zZyhhZGV2LCBJREhfRkFJTCk7Cj4gKyAgICAgICAgaWYgKCFyKQo+ICsgICAgICAg ICAgICAgICAgcHJfaW5mbygiRFBNIHJlcXVlc3QgZmFpbGVkIik7Cj4gKyAgICAgICAgZWxzZQo+ ICsgICAgICAgICAgICAgICAgcHJfaW5mbygiTWFpbGJveCBpcyBicm9rZW4iKTsKPiArCj4gK291 dDoKPiArICAgICAgICBtdXRleF91bmxvY2soJmFkZXYtPnZpcnQuZHBtX211dGV4KTsKPiArICAg ICAgICByZXR1cm4gcjsKPiArfQo+ICsKPiAgIHN0YXRpYyBpbnQgeGdwdV9haV9zZW5kX2FjY2Vz c19yZXF1ZXN0cyhzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwKPiAgIAkJCQkJZW51bSBpZGhf cmVxdWVzdCByZXEpCj4gICB7Cj4gQEAgLTM3NSw0ICs0NTEsNiBAQCBjb25zdCBzdHJ1Y3QgYW1k Z3B1X3ZpcnRfb3BzIHhncHVfYWlfdmlydF9vcHMgPSB7Cj4gICAJLnJlc2V0X2dwdSA9IHhncHVf YWlfcmVxdWVzdF9yZXNldCwKPiAgIAkud2FpdF9yZXNldCA9IE5VTEwsCj4gICAJLnRyYW5zX21z ZyA9IHhncHVfYWlfbWFpbGJveF90cmFuc19tc2csCj4gKwkuZ2V0X3BwX2NsayA9IHhncHVfYWlf Z2V0X3BwX2NsaywKPiArCS5mb3JjZV9kcG1fbGV2ZWwgPSB4Z3B1X2FpX2ZvcmNlX2RwbV9sZXZl bCwKPiAgIH07Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L214Z3B1 X2FpLmggYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9teGdwdV9haS5oCj4gaW5kZXggYjRh OWNlZS4uMzlkMTUxYiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9t eGdwdV9haS5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvbXhncHVfYWkuaAo+ IEBAIC0zNSw2ICszNSwxMCBAQCBlbnVtIGlkaF9yZXF1ZXN0IHsKPiAgIAlJREhfUkVMX0dQVV9G SU5JX0FDQ0VTUywKPiAgIAlJREhfUkVRX0dQVV9SRVNFVF9BQ0NFU1MsCj4gICAKPiArCUlESF9J UlFfRk9SQ0VfRFBNX0xFVkVMID0gMTAsCj4gKwlJREhfSVJRX0dFVF9QUF9TQ0xLLAo+ICsJSURI X0lSUV9HRVRfUFBfTUNMSywKPiArCj4gICAJSURIX0xPR19WRl9FUlJPUiAgICAgICA9IDIwMCwK PiAgIH07Cj4gICAKPiBAQCAtNDMsNiArNDcsOCBAQCBlbnVtIGlkaF9ldmVudCB7Cj4gICAJSURI X1JFQURZX1RPX0FDQ0VTU19HUFUsCj4gICAJSURIX0ZMUl9OT1RJRklDQVRJT04sCj4gICAJSURI X0ZMUl9OT1RJRklDQVRJT05fQ01QTCwKPiArCUlESF9TVUNDRVNTLAo+ICsJSURIX0ZBSUwsCj4g ICAJSURIX0VWRU5UX01BWAo+ICAgfTsKPiAgIAoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KYW1kLWdmeCBtYWlsaW5nIGxpc3QKYW1kLWdmeEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9hbWQtZ2Z4