From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sharat Masetty Subject: Re: [PATCH 04/10] drm/msm/gpu: Convert the GPU show function to use the GPU state Date: Wed, 23 May 2018 16:56:34 +0530 Message-ID: References: <20180417224441.32355-1-jcrouse@codeaurora.org> <20180417224441.32355-5-jcrouse@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180417224441.32355-5-jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org> Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: Jordan Crouse , freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: dri-devel@lists.freedesktop.org CgpPbiA0LzE4LzIwMTggNDoxNCBBTSwgSm9yZGFuIENyb3VzZSB3cm90ZToKPiBDb252ZXJ0IHRo ZSBleGlzdGluZyBHUFUgc2hvdyBmdW5jdGlvbiB0byB1c2UgdGhlIEdQVSBzdGF0ZSB0bwo+IGR1 bXAgdGhlIGluZm9ybWF0aW9uIHJhdGhlciB0aGFuIHJlYWRpbmcgaXQgZGlyZWN0bHkgZnJvbSB0 aGUgaGFyZHdhcmUuCj4gVGhpcyB3aWxsIHJlcXVpcmUgYW4gYWRkaXRpb25hbCBzdGVwIHRvIGNh cHR1cmUgdGhlIHN0YXRlIGJlZm9yZQo+IGR1bXBpbmcgaXQgZm9yIHRoZSBleGlzdGluZyBub2Rl cyBidXQgaXQgd2lsbCBncmVhdGx5IGZhY2lsaXRhdGUgcmV1c2luZwo+IHRoZSBzYW1lIGNvZGUg Zm9yIGR1bXBpbmcgYSBwcmV2aW91c2x5IGNhcHR1cmVkIHN0YXRlIGZyb20gYSBHUFUgaGFuZy4K PiAKPiBTaWduZWQtb2ZmLWJ5OiBKb3JkYW4gQ3JvdXNlIDxqY3JvdXNlQGNvZGVhdXJvcmEub3Jn Pgo+IC0tLQo+ICAgZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYTN4eF9ncHUuYyAgIHwgMTEg Ky0tCj4gICBkcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNHh4X2dwdS5jICAgfCAxMiArLS0t Cj4gICBkcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNXh4X2dwdS5jICAgfCAxOCArLS0tLQo+ ICAgZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYWRyZW5vX2dwdS5jIHwgMzAgKysrKy0tLS0K PiAgIGRyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2FkcmVub19ncHUuaCB8ICA0ICstCj4gICBk cml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kZWJ1Z2ZzLmMgICAgICAgfCA5MiArKysrKysrKysrKysr KysrKysrKysrLS0tCj4gICBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuaCAgICAgICAgICAg fCAgMyArLQo+ICAgNyBmaWxlcyBjaGFuZ2VkLCAxMDQgaW5zZXJ0aW9ucygrKSwgNjYgZGVsZXRp b25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2EzeHhf Z3B1LmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hM3h4X2dwdS5jCj4gaW5kZXggYjcw N2I1YmNhOWFiLi40Y2ZmZWMyYjZhZGMgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL21z bS9hZHJlbm8vYTN4eF9ncHUuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2Ez eHhfZ3B1LmMKPiBAQCAtNDExLDE1ICs0MTEsNiBAQCBzdGF0aWMgY29uc3QgdW5zaWduZWQgaW50 IGEzeHhfcmVnaXN0ZXJzW10gPSB7Cj4gICAJfjAgICAvKiBzZW50aW5lbCAqLwo+ICAgfTsKPiAg IAo+IC0jaWZkZWYgQ09ORklHX0RFQlVHX0ZTCj4gLXN0YXRpYyB2b2lkIGEzeHhfc2hvdyhzdHJ1 Y3QgbXNtX2dwdSAqZ3B1LCBzdHJ1Y3Qgc2VxX2ZpbGUgKm0pCj4gLXsKPiAtCXNlcV9wcmludGYo bSwgInN0YXR1czogICAlMDh4XG4iLAo+IC0JCQlncHVfcmVhZChncHUsIFJFR19BM1hYX1JCQk1f U1RBVFVTKSk7Cj4gLQlhZHJlbm9fc2hvdyhncHUsIG0pOwo+IC19Cj4gLSNlbmRpZgo+IC0KPiAg IC8qIHdvdWxkIGJlIG5pY2UgdG8gbm90IGhhdmUgdG8gZHVwbGljYXRlIHRoZSBfc2hvdygpIHN0 dWZmIHdpdGggcHJpbnRrKCk6ICovCj4gICBzdGF0aWMgdm9pZCBhM3h4X2R1bXAoc3RydWN0IG1z bV9ncHUgKmdwdSkKPiAgIHsKPiBAQCAtNDY0LDcgKzQ1NSw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1 Y3QgYWRyZW5vX2dwdV9mdW5jcyBmdW5jcyA9IHsKPiAgIAkJLmlycSA9IGEzeHhfaXJxLAo+ICAg CQkuZGVzdHJveSA9IGEzeHhfZGVzdHJveSwKPiAgICNpZmRlZiBDT05GSUdfREVCVUdfRlMKPiAt CQkuc2hvdyA9IGEzeHhfc2hvdywKPiArCQkuc2hvdyA9IGFkcmVub19zaG93LAo+ICAgI2VuZGlm Cj4gICAJCS5ncHVfc3RhdGVfZ2V0ID0gYTN4eF9ncHVfc3RhdGVfZ2V0LAo+ICAgCQkuZ3B1X3N0 YXRlX3B1dCA9IGFkcmVub19ncHVfc3RhdGVfcHV0LAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vbXNtL2FkcmVuby9hNHh4X2dwdS5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8v YTR4eF9ncHUuYwo+IGluZGV4IDE3ZTk3ZWJjMTA3Ny4uOTVmMDhjMjJlOGQ3IDEwMDY0NAo+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2E0eHhfZ3B1LmMKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vbXNtL2FkcmVuby9hNHh4X2dwdS5jCj4gQEAgLTQ1NSwxNiArNDU1LDYgQEAgc3Rh dGljIGNvbnN0IHVuc2lnbmVkIGludCBhNHh4X3JlZ2lzdGVyc1tdID0gewo+ICAgCX4wIC8qIHNl bnRpbmVsICovCj4gICB9Owo+ICAgCj4gLSNpZmRlZiBDT05GSUdfREVCVUdfRlMKPiAtc3RhdGlj IHZvaWQgYTR4eF9zaG93KHN0cnVjdCBtc21fZ3B1ICpncHUsIHN0cnVjdCBzZXFfZmlsZSAqbSkK PiAtewo+IC0Jc2VxX3ByaW50ZihtLCAic3RhdHVzOiAgICUwOHhcbiIsCj4gLQkJCWdwdV9yZWFk KGdwdSwgUkVHX0E0WFhfUkJCTV9TVEFUVVMpKTsKPiAtCWFkcmVub19zaG93KGdwdSwgbSk7Cj4g LQo+IC19Cj4gLSNlbmRpZgo+IC0KPiAgIHN0YXRpYyBzdHJ1Y3QgbXNtX2dwdV9zdGF0ZSAqYTR4 eF9ncHVfc3RhdGVfZ2V0KHN0cnVjdCBtc21fZ3B1ICpncHUpCj4gICB7Cj4gICAJc3RydWN0IG1z bV9ncHVfc3RhdGUgKnN0YXRlID0gYWRyZW5vX2dwdV9zdGF0ZV9nZXQoZ3B1KTsKPiBAQCAtNTUx LDcgKzU0MSw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgYWRyZW5vX2dwdV9mdW5jcyBmdW5jcyA9 IHsKPiAgIAkJLmlycSA9IGE0eHhfaXJxLAo+ICAgCQkuZGVzdHJveSA9IGE0eHhfZGVzdHJveSwK PiAgICNpZmRlZiBDT05GSUdfREVCVUdfRlMKPiAtCQkuc2hvdyA9IGE0eHhfc2hvdywKPiArCQku c2hvdyA9IGFkcmVub19zaG93LAo+ICAgI2VuZGlmCj4gICAJCS5ncHVfc3RhdGVfZ2V0ID0gYTR4 eF9ncHVfc3RhdGVfZ2V0LAo+ICAgCQkuZ3B1X3N0YXRlX3B1dCA9IGFkcmVub19ncHVfc3RhdGVf cHV0LAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNXh4X2dwdS5j IGIvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYTV4eF9ncHUuYwo+IGluZGV4IDA4ZjI1Nzk4 YWJkYi4uYjA5MTBiYmU1MTkwIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRy ZW5vL2E1eHhfZ3B1LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNXh4X2dw dS5jCj4gQEAgLTEyMTUsMjIgKzEyMTUsNiBAQCBzdGF0aWMgc3RydWN0IG1zbV9ncHVfc3RhdGUg KmE1eHhfZ3B1X3N0YXRlX2dldChzdHJ1Y3QgbXNtX2dwdSAqZ3B1KQo+ICAgCXJldHVybiBzdGF0 ZTsKPiAgIH0KPiAgIAo+IC0jaWZkZWYgQ09ORklHX0RFQlVHX0ZTCj4gLXN0YXRpYyB2b2lkIGE1 eHhfc2hvdyhzdHJ1Y3QgbXNtX2dwdSAqZ3B1LCBzdHJ1Y3Qgc2VxX2ZpbGUgKm0pCj4gLXsKPiAt CXNlcV9wcmludGYobSwgInN0YXR1czogICAlMDh4XG4iLAo+IC0JCQlncHVfcmVhZChncHUsIFJF R19BNVhYX1JCQk1fU1RBVFVTKSk7Cj4gLQo+IC0JLyoKPiAtCSAqIFRlbXBvcmFyaWx5IGRpc2Fi bGUgaGFyZHdhcmUgY2xvY2sgZ2F0aW5nIGJlZm9yZSBnb2luZyBpbnRvCj4gLQkgKiBhZHJlbm9f c2hvdyB0byBhdm9pZCBpc3N1ZXMgd2hpbGUgcmVhZGluZyB0aGUgcmVnaXN0ZXJzCj4gLQkgKi8K PiAtCWE1eHhfc2V0X2h3Y2coZ3B1LCBmYWxzZSk7Cj4gLQlhZHJlbm9fc2hvdyhncHUsIG0pOwo+ IC0JYTV4eF9zZXRfaHdjZyhncHUsIHRydWUpOwo+IC19Cj4gLSNlbmRpZgo+IC0KPiAgIHN0YXRp YyBzdHJ1Y3QgbXNtX3JpbmdidWZmZXIgKmE1eHhfYWN0aXZlX3Jpbmcoc3RydWN0IG1zbV9ncHUg KmdwdSkKPiAgIHsKPiAgIAlzdHJ1Y3QgYWRyZW5vX2dwdSAqYWRyZW5vX2dwdSA9IHRvX2FkcmVu b19ncHUoZ3B1KTsKPiBAQCAtMTI2MCw3ICsxMjQ0LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBh ZHJlbm9fZ3B1X2Z1bmNzIGZ1bmNzID0gewo+ICAgCQkuaXJxID0gYTV4eF9pcnEsCj4gICAJCS5k ZXN0cm95ID0gYTV4eF9kZXN0cm95LAo+ICAgI2lmZGVmIENPTkZJR19ERUJVR19GUwo+IC0JCS5z aG93ID0gYTV4eF9zaG93LAo+ICsJCS5zaG93ID0gYWRyZW5vX3Nob3csCj4gICAJCS5kZWJ1Z2Zz X2luaXQgPSBhNXh4X2RlYnVnZnNfaW5pdCwKPiAgICNlbmRpZgo+ICAgCQkuZ3B1X2J1c3kgPSBh NXh4X2dwdV9idXN5LAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9h ZHJlbm9fZ3B1LmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hZHJlbm9fZ3B1LmMKPiBp bmRleCBiMmNjYWYyNTc2N2MuLjUyMmQ0N2FjMzZlMSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dw dS9kcm0vbXNtL2FkcmVuby9hZHJlbm9fZ3B1LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNt L2FkcmVuby9hZHJlbm9fZ3B1LmMKPiBAQCAtNDIzLDM4ICs0MjMsMzQgQEAgdm9pZCBhZHJlbm9f Z3B1X3N0YXRlX3B1dChzdHJ1Y3QgbXNtX2dwdV9zdGF0ZSAqc3RhdGUpCj4gICB9Cj4gICAKPiAg ICNpZmRlZiBDT05GSUdfREVCVUdfRlMKPiAtdm9pZCBhZHJlbm9fc2hvdyhzdHJ1Y3QgbXNtX2dw dSAqZ3B1LCBzdHJ1Y3Qgc2VxX2ZpbGUgKm0pCj4gK3ZvaWQgYWRyZW5vX3Nob3coc3RydWN0IG1z bV9ncHUgKmdwdSwgc3RydWN0IG1zbV9ncHVfc3RhdGUgKnN0YXRlLAo+ICsJCXN0cnVjdCBzZXFf ZmlsZSAqbSkKPiAgIHsKPiAgIAlzdHJ1Y3QgYWRyZW5vX2dwdSAqYWRyZW5vX2dwdSA9IHRvX2Fk cmVub19ncHUoZ3B1KTsKPiAgIAlpbnQgaTsKPiAgIAo+ICsJaWYgKElTX0VSUl9PUl9OVUxMKHN0 YXRlKSkKPiArCQlyZXR1cm47Cj4gKwo+ICsJc2VxX3ByaW50ZihtLCAic3RhdHVzOiAgICUwOHhc biIsIHN0YXRlLT5yYmJtX3N0YXR1cyk7Cj4gICAJc2VxX3ByaW50ZihtLCAicmV2aXNpb246ICVk ICglZC4lZC4lZC4lZClcbiIsCj4gICAJCQlhZHJlbm9fZ3B1LT5pbmZvLT5yZXZuLCBhZHJlbm9f Z3B1LT5yZXYuY29yZSwKPiAgIAkJCWFkcmVub19ncHUtPnJldi5tYWpvciwgYWRyZW5vX2dwdS0+ cmV2Lm1pbm9yLAo+ICAgCQkJYWRyZW5vX2dwdS0+cmV2LnBhdGNoaWQpOwo+ICAgCj4gICAJZm9y IChpID0gMDsgaSA8IGdwdS0+bnJfcmluZ3M7IGkrKykgewo+IC0JCXN0cnVjdCBtc21fcmluZ2J1 ZmZlciAqcmluZyA9IGdwdS0+cmJbaV07Cj4gLQo+ICAgCQlzZXFfcHJpbnRmKG0sICJyYiAlZDog ZmVuY2U6ICAgICVkLyVkXG4iLCBpLAo+IC0JCQlyaW5nLT5tZW1wdHJzLT5mZW5jZSwgcmluZy0+ c2Vxbm8pOwo+ICsJCQlzdGF0ZS0+cmluZ1tpXS5mZW5jZSwgc3RhdGUtPnJpbmdbaV0uc2Vxbm8p Owo+ICAgCj4gLQkJc2VxX3ByaW50ZihtLCAiICAgICAgcnB0cjogICAgICVkXG4iLAo+IC0JCQln ZXRfcnB0cihhZHJlbm9fZ3B1LCByaW5nKSk7Cj4gLQkJc2VxX3ByaW50ZihtLCAicmIgd3B0cjog ICVkXG4iLCBnZXRfd3B0cihyaW5nKSk7Cj4gKwkJc2VxX3ByaW50ZihtLCAiICAgICAgcnB0cjog ICAgICVkXG4iLCBzdGF0ZS0+cmluZ1tpXS5ycHRyKTsKPiArCQlzZXFfcHJpbnRmKG0sICJyYiB3 cHRyOiAgJWRcbiIsIHN0YXRlLT5yaW5nW2ldLndwdHIpOwo+ICAgCX0KPiAgIAo+IC0JLyogZHVt cCB0aGVzZSBvdXQgaW4gYSBmb3JtIHRoYXQgY2FuIGJlIHBhcnNlZCBieSBkZW1zbTogKi8KPiAg IAlzZXFfcHJpbnRmKG0sICJJTzpyZWdpb24gJXMgMDAwMDAwMDAgMDAwMjAwMDBcbiIsIGdwdS0+ bmFtZSk7Cj4gLQlmb3IgKGkgPSAwOyBhZHJlbm9fZ3B1LT5yZWdpc3RlcnNbaV0gIT0gfjA7IGkg Kz0gMikgewo+IC0JCXVpbnQzMl90IHN0YXJ0ID0gYWRyZW5vX2dwdS0+cmVnaXN0ZXJzW2ldOwo+ IC0JCXVpbnQzMl90IGVuZCAgID0gYWRyZW5vX2dwdS0+cmVnaXN0ZXJzW2krMV07Cj4gLQkJdWlu dDMyX3QgYWRkcjsKPiAtCj4gLQkJZm9yIChhZGRyID0gc3RhcnQ7IGFkZHIgPD0gZW5kOyBhZGRy KyspIHsKPiAtCQkJdWludDMyX3QgdmFsID0gZ3B1X3JlYWQoZ3B1LCBhZGRyKTsKPiAtCQkJc2Vx X3ByaW50ZihtLCAiSU86UiAlMDh4ICUwOHhcbiIsIGFkZHI8PDIsIHZhbCk7Cj4gLQkJfQo+ICsJ Zm9yIChpID0gMDsgaSA8IHN0YXRlLT5ucl9yZWdpc3RlcnM7IGkrKykgewo+ICsJCXNlcV9wcmlu dGYobSwgIklPOlIgJTA4eCAlMDh4XG4iLAo+ICsJCQlzdGF0ZS0+cmVnaXN0ZXJzW2kgKiAyXSA8 PCAyLAo+ICsJCQlzdGF0ZS0+cmVnaXN0ZXJzWyhpICogMikgKyAxXSk7Cj4gICAJfQo+ICAgfQo+ ICAgI2VuZGlmCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2FkcmVu b19ncHUuaCBiL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2FkcmVub19ncHUuaAo+IGluZGV4 IDBiZWIwNzhlYjY1OC4uODE1YWU5OGM3ZmQxIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9tc20vYWRyZW5vL2FkcmVub19ncHUuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRy ZW5vL2FkcmVub19ncHUuaAo+IEBAIC0yMTUsNyArMjE1LDggQEAgdm9pZCBhZHJlbm9fc3VibWl0 KHN0cnVjdCBtc21fZ3B1ICpncHUsIHN0cnVjdCBtc21fZ2VtX3N1Ym1pdCAqc3VibWl0LAo+ICAg dm9pZCBhZHJlbm9fZmx1c2goc3RydWN0IG1zbV9ncHUgKmdwdSwgc3RydWN0IG1zbV9yaW5nYnVm ZmVyICpyaW5nKTsKPiAgIGJvb2wgYWRyZW5vX2lkbGUoc3RydWN0IG1zbV9ncHUgKmdwdSwgc3Ry dWN0IG1zbV9yaW5nYnVmZmVyICpyaW5nKTsKPiAgICNpZmRlZiBDT05GSUdfREVCVUdfRlMKPiAt dm9pZCBhZHJlbm9fc2hvdyhzdHJ1Y3QgbXNtX2dwdSAqZ3B1LCBzdHJ1Y3Qgc2VxX2ZpbGUgKm0p Owo+ICt2b2lkIGFkcmVub19zaG93KHN0cnVjdCBtc21fZ3B1ICpncHUsIHN0cnVjdCBtc21fZ3B1 X3N0YXRlICpzdGF0ZSwKPiArCQlzdHJ1Y3Qgc2VxX2ZpbGUgKm0pOwo+ICAgI2VuZGlmCj4gICB2 b2lkIGFkcmVub19kdW1wX2luZm8oc3RydWN0IG1zbV9ncHUgKmdwdSk7Cj4gICB2b2lkIGFkcmVu b19kdW1wKHN0cnVjdCBtc21fZ3B1ICpncHUpOwo+IEBAIC0yMjcsNyArMjI4LDYgQEAgaW50IGFk cmVub19ncHVfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZHJtLCBzdHJ1Y3QgcGxhdGZvcm1fZGV2 aWNlICpwZGV2LAo+ICAgCQlpbnQgbnJfcmluZ3MpOwo+ICAgdm9pZCBhZHJlbm9fZ3B1X2NsZWFu dXAoc3RydWN0IGFkcmVub19ncHUgKmdwdSk7Cj4gICAKPiAtCj4gICBzdHJ1Y3QgbXNtX2dwdV9z dGF0ZSAqYWRyZW5vX2dwdV9zdGF0ZV9nZXQoc3RydWN0IG1zbV9ncHUgKmdwdSk7Cj4gICB2b2lk IGFkcmVub19ncHVfc3RhdGVfcHV0KHN0cnVjdCBtc21fZ3B1X3N0YXRlICpzdGF0ZSk7Cj4gICAK PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZGVidWdmcy5jIGIvZHJpdmVy cy9ncHUvZHJtL21zbS9tc21fZGVidWdmcy5jCj4gaW5kZXggYmE3NGNiNGY5NGRmLi5lYTIwZWIw YWQ3NDcgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZGVidWdmcy5jCj4g KysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZGVidWdmcy5jCj4gQEAgLTE2LDI2ICsxNiwx MDAgQEAKPiAgICAqLwo+ICAgCj4gICAjaWZkZWYgQ09ORklHX0RFQlVHX0ZTCj4gKyNpbmNsdWRl IDxsaW51eC9kZWJ1Z2ZzLmg+Cj4gICAjaW5jbHVkZSAibXNtX2Rydi5oIgo+ICAgI2luY2x1ZGUg Im1zbV9ncHUuaCIKPiAgICNpbmNsdWRlICJtc21fa21zLmgiCj4gICAjaW5jbHVkZSAibXNtX2Rl YnVnZnMuaCIKPiAgIAo+IC1zdGF0aWMgaW50IG1zbV9ncHVfc2hvdyhzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LCBzdHJ1Y3Qgc2VxX2ZpbGUgKm0pCj4gK3N0cnVjdCBtc21fZ3B1X3Nob3dfcHJpdiB7 Cj4gKwlzdHJ1Y3QgbXNtX2dwdV9zdGF0ZSAqc3RhdGU7Cj4gKwlzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2Owo+ICt9Owo+ICsKPiArc3RhdGljIGludCBtc21fZ3B1X3Nob3coc3RydWN0IHNlcV9maWxl ICptLCB2b2lkICphcmcpCj4gK3sKPiArCXN0cnVjdCBtc21fZ3B1X3Nob3dfcHJpdiAqc2hvd19w cml2ID0gbS0+cHJpdmF0ZTsKPiArCXN0cnVjdCBtc21fZHJtX3ByaXZhdGUgKnByaXYgPSBzaG93 X3ByaXYtPmRldi0+ZGV2X3ByaXZhdGU7Cj4gKwlzdHJ1Y3QgbXNtX2dwdSAqZ3B1ID0gcHJpdi0+ Z3B1Owo+ICsJaW50IHJldDsKPiArCj4gKwlyZXQgPSBtdXRleF9sb2NrX2ludGVycnVwdGlibGUo JnNob3dfcHJpdi0+ZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+ICsJaWYgKHJldCkKPiArCQlyZXR1cm4g cmV0OwpXaHkgZG8gd2UgbmVlZCBhIGxvY2sgaGVyZT8gU2hvdWxkbid0IHdlIGp1c3QgaW5jcmVh c2UgdGhlIHJlZiBjb3VudCBvZiAKdGhlIHNob3dfcHJpdi0+c3RhdGUgaW5zdGVhZD8KPiArCj4g KwlzZXFfcHJpbnRmKG0sICIlcyBTdGF0dXM6XG4iLCBncHUtPm5hbWUpOwo+ICsJZ3B1LT5mdW5j cy0+c2hvdyhncHUsIHNob3dfcHJpdi0+c3RhdGUsIG0pOwo+ICsKPiArCW11dGV4X3VubG9jaygm c2hvd19wcml2LT5kZXYtPnN0cnVjdF9tdXRleCk7Cj4gKwo+ICsJcmV0dXJuIDA7Cj4gK30KPiAr Cj4gK3N0YXRpYyBpbnQgbXNtX2dwdV9yZWxlYXNlKHN0cnVjdCBpbm9kZSAqaW5vZGUsIHN0cnVj dCBmaWxlICpmaWxlKQo+ICt7Cj4gKwlzdHJ1Y3Qgc2VxX2ZpbGUgKm0gPSBmaWxlLT5wcml2YXRl X2RhdGE7Cj4gKwlzdHJ1Y3QgbXNtX2dwdV9zaG93X3ByaXYgKnNob3dfcHJpdiA9IG0tPnByaXZh dGU7Cj4gKwlzdHJ1Y3QgbXNtX2RybV9wcml2YXRlICpwcml2ID0gc2hvd19wcml2LT5kZXYtPmRl dl9wcml2YXRlOwo+ICsJc3RydWN0IG1zbV9ncHUgKmdwdSA9IHByaXYtPmdwdTsKPiArCWludCBy ZXQ7Cj4gKwo+ICsJcmV0ID0gbXV0ZXhfbG9ja19pbnRlcnJ1cHRpYmxlKCZzaG93X3ByaXYtPmRl di0+c3RydWN0X211dGV4KTsKPiArCWlmIChyZXQpCj4gKwkJcmV0dXJuIHJldDsKPiArCj4gKwln cHUtPmZ1bmNzLT5ncHVfc3RhdGVfcHV0KHNob3dfcHJpdi0+c3RhdGUpOwo+ICsJbXV0ZXhfdW5s b2NrKCZzaG93X3ByaXYtPmRldi0+c3RydWN0X211dGV4KTsKPiArCj4gKwlrZnJlZShzaG93X3By aXYpOwo+ICsKPiArCXJldHVybiBzaW5nbGVfcmVsZWFzZShpbm9kZSwgZmlsZSk7Cj4gK30KPiAr Cj4gK3N0YXRpYyBpbnQgbXNtX2dwdV9vcGVuKHN0cnVjdCBpbm9kZSAqaW5vZGUsIHN0cnVjdCBm aWxlICpmaWxlKQo+ICAgewo+ICsJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGlub2RlLT5pX3By aXZhdGU7Cj4gICAJc3RydWN0IG1zbV9kcm1fcHJpdmF0ZSAqcHJpdiA9IGRldi0+ZGV2X3ByaXZh dGU7Cj4gICAJc3RydWN0IG1zbV9ncHUgKmdwdSA9IHByaXYtPmdwdTsKPiArCXN0cnVjdCBtc21f Z3B1X3Nob3dfcHJpdiAqc2hvd19wcml2Owo+ICsJaW50IHJldDsKPiAgIAo+IC0JaWYgKGdwdSkg ewo+IC0JCXNlcV9wcmludGYobSwgIiVzIFN0YXR1czpcbiIsIGdwdS0+bmFtZSk7Cj4gLQkJcG1f cnVudGltZV9nZXRfc3luYygmZ3B1LT5wZGV2LT5kZXYpOwo+IC0JCWdwdS0+ZnVuY3MtPnNob3co Z3B1LCBtKTsKPiAtCQlwbV9ydW50aW1lX3B1dF9zeW5jKCZncHUtPnBkZXYtPmRldik7Cj4gKwlp ZiAoIWdwdSkKPiArCQlyZXR1cm4gLUVOT0RFVjsKPiArCj4gKwlzaG93X3ByaXYgPSBrbWFsbG9j KHNpemVvZigqc2hvd19wcml2KSwgR0ZQX0tFUk5FTCk7Cj4gKwlpZiAoIXNob3dfcHJpdikKPiAr CQlyZXR1cm4gLUVOT01FTTsKPiArCj4gKwlyZXQgPSBtdXRleF9sb2NrX2ludGVycnVwdGlibGUo JmRldi0+c3RydWN0X211dGV4KTsKPiArCWlmIChyZXQpCj4gKwkJcmV0dXJuIHJldDsKPiArCj4g KwlwbV9ydW50aW1lX2dldF9zeW5jKCZncHUtPnBkZXYtPmRldik7Cj4gKwlzaG93X3ByaXYtPnN0 YXRlID0gZ3B1LT5mdW5jcy0+Z3B1X3N0YXRlX2dldChncHUpOwo+ICsJcG1fcnVudGltZV9wdXRf c3luYygmZ3B1LT5wZGV2LT5kZXYpOwo+ICsKPiArCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1Y3Rf bXV0ZXgpOwo+ICsKPiArCWlmIChJU19FUlIoc2hvd19wcml2LT5zdGF0ZSkpIHsKPiArCQlyZXQg PSBQVFJfRVJSKHNob3dfcHJpdi0+c3RhdGUpOwo+ICsJCWtmcmVlKHNob3dfcHJpdik7Cj4gKwkJ cmV0dXJuIHJldDsKPiAgIAl9Cj4gICAKPiAtCXJldHVybiAwOwo+ICsJc2hvd19wcml2LT5kZXYg PSBkZXY7Cj4gKwo+ICsJcmV0dXJuIHNpbmdsZV9vcGVuKGZpbGUsIG1zbV9ncHVfc2hvdywgc2hv d19wcml2KTsKPiAgIH0KPiAgIAo+ICtzdGF0aWMgY29uc3Qgc3RydWN0IGZpbGVfb3BlcmF0aW9u cyBtc21fZ3B1X2ZvcHMgPSB7Cj4gKwkub3duZXIgPSBUSElTX01PRFVMRSwKPiArCS5vcGVuID0g bXNtX2dwdV9vcGVuLAo+ICsJLnJlYWQgPSBzZXFfcmVhZCwKPiArCS5sbHNlZWsgPSBzZXFfbHNl ZWssCj4gKwkucmVsZWFzZSA9IG1zbV9ncHVfcmVsZWFzZSwKPiArfTsKPiArCj4gICBzdGF0aWMg aW50IG1zbV9nZW1fc2hvdyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3Qgc2VxX2ZpbGUg Km0pCj4gICB7Cj4gICAJc3RydWN0IG1zbV9kcm1fcHJpdmF0ZSAqcHJpdiA9IGRldi0+ZGV2X3By aXZhdGU7Cj4gQEAgLTEwNSw3ICsxNzksNiBAQCBzdGF0aWMgaW50IHNob3dfbG9ja2VkKHN0cnVj dCBzZXFfZmlsZSAqbSwgdm9pZCAqYXJnKQo+ICAgfQo+ICAgCj4gICBzdGF0aWMgc3RydWN0IGRy bV9pbmZvX2xpc3QgbXNtX2RlYnVnZnNfbGlzdFtdID0gewo+IC0JCXsiZ3B1Iiwgc2hvd19sb2Nr ZWQsIDAsIG1zbV9ncHVfc2hvd30sCj4gICAJCXsiZ2VtIiwgc2hvd19sb2NrZWQsIDAsIG1zbV9n ZW1fc2hvd30sCj4gICAJCXsgIm1tIiwgc2hvd19sb2NrZWQsIDAsIG1zbV9tbV9zaG93IH0sCj4g ICAJCXsgImZiIiwgc2hvd19sb2NrZWQsIDAsIG1zbV9mYl9zaG93IH0sCj4gQEAgLTE2MSw2ICsy MzQsOSBAQCBpbnQgbXNtX2RlYnVnZnNfaW5pdChzdHJ1Y3QgZHJtX21pbm9yICptaW5vcikKPiAg IAkJcmV0dXJuIHJldDsKPiAgIAl9Cj4gICAKPiArCWRlYnVnZnNfY3JlYXRlX2ZpbGUoImdwdSIs IFNfSVJVU1IsIG1pbm9yLT5kZWJ1Z2ZzX3Jvb3QsCj4gKwkJZGV2LCAmbXNtX2dwdV9mb3BzKTsK PiArCj4gICAJaWYgKHByaXYtPmttcy0+ZnVuY3MtPmRlYnVnZnNfaW5pdCkgewo+ICAgCQlyZXQg PSBwcml2LT5rbXMtPmZ1bmNzLT5kZWJ1Z2ZzX2luaXQocHJpdi0+a21zLCBtaW5vcik7Cj4gICAJ CWlmIChyZXQpCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2dwdS5oIGIv ZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZ3B1LmgKPiBpbmRleCA0YmU3MmE2MTJiZWMuLjQ3MGYz YmI1ZjgzNCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuaAo+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2dwdS5oCj4gQEAgLTY1LDcgKzY1LDggQEAgc3Ry dWN0IG1zbV9ncHVfZnVuY3Mgewo+ICAgCXZvaWQgKCpkZXN0cm95KShzdHJ1Y3QgbXNtX2dwdSAq Z3B1KTsKPiAgICNpZmRlZiBDT05GSUdfREVCVUdfRlMKPiAgIAkvKiBzaG93IEdQVSBzdGF0dXMg aW4gZGVidWdmczogKi8KPiAtCXZvaWQgKCpzaG93KShzdHJ1Y3QgbXNtX2dwdSAqZ3B1LCBzdHJ1 Y3Qgc2VxX2ZpbGUgKm0pOwo+ICsJdm9pZCAoKnNob3cpKHN0cnVjdCBtc21fZ3B1ICpncHUsIHN0 cnVjdCBtc21fZ3B1X3N0YXRlICpzdGF0ZSwKPiArCQkJc3RydWN0IHNlcV9maWxlICptKTsKPiAg IAkvKiBmb3IgZ2VuZXJhdGlvbiBzcGVjaWZpYyBkZWJ1Z2ZzOiAqLwo+ICAgCWludCAoKmRlYnVn ZnNfaW5pdCkoc3RydWN0IG1zbV9ncHUgKmdwdSwgc3RydWN0IGRybV9taW5vciAqbWlub3IpOwo+ ICAgI2VuZGlmCj4gCgotLSAKVGhlIFF1YWxjb21tIElubm92YXRpb24gQ2VudGVyLCBJbmMuIGlz IGEgbWVtYmVyIG9mIHRoZSBDb2RlIEF1cm9yYSBGb3J1bSwKTGludXggRm91bmRhdGlvbiBDb2xs YWJvcmF0aXZlIFByb2plY3QKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KRnJlZWRyZW5vIG1haWxpbmcgbGlzdApGcmVlZHJlbm9AbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZnJl ZWRyZW5vCg==