From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id D9DD7C433EF for ; Tue, 14 Jun 2022 16:25:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Date:Cc:To:From:Subject:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=tyFZ3pyIt2mGNCq5kn2l8yxYXrCITDouv0sYTi8059k=; b=2S8UnVYsHEjktf HyqxulOpjuPntViOFvNqRRWYPbrw03svV+AVdXpNLcVfFLHCWLMTb9uMgR4wRehK42UeZLye01USc wiX/e4AMAVoSXR0cokXSzUXIpnabSr0EnIu/MZUCz7whIQgyCIwdmSGpkoYeEJYzFwtq65yxTzTWU GjgnoBQIG7EA9oZNNHFIV7BRLIqwOuhYcBcCMwV6c+OZ6Igx6zc5J5tzjqZXLilxPgL+wUqOPX2w2 ywbUAx8BGPa+6AOuKdW4anJydyK6S7hc45TedV3aSTboZZv0q6U2SXX9JmSUbYKhJTfSTWlPtE79j 9DLjGHNMSnlI4GwfQM6Q==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1o19Ko-00AKD4-8h; Tue, 14 Jun 2022 16:24:06 +0000 Received: from madras.collabora.co.uk ([46.235.227.172]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1o19Kj-00AKAD-OP; Tue, 14 Jun 2022 16:24:04 +0000 Received: from nicolas-tpx395.localdomain (192-222-136-102.qc.cable.ebox.net [192.222.136.102]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: nicolas) by madras.collabora.co.uk (Postfix) with ESMTPSA id E455B66016B0; Tue, 14 Jun 2022 17:23:55 +0100 (BST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1655223838; bh=eitIbigdxrVKTk+nUHifN9voT+sE9CBMcckMbZjFk5c=; h=Subject:From:To:Cc:Date:In-Reply-To:References:From; b=G5gwpi1KfopbeAU7/yMuXtAhOBEMTheino+OfuBydlpo+fmkaycVLTze3PXFSzCRz XAkJzloGmrgYvT4haP0+msS9MI2sbk3o8t8V+lQBcK6ra1nBQKaVARMORQLUOoFgs7 1bRJYikasoV/Skzl5SkFkM4fVDmIlypn0LGNKvPVEr/DdsqZeXapYrMpykWGZs3BwA WpfLO9bGCfd+W6i/ynr2ujMedNKVjCRelfMWO/85ejjjBn0pETXtFGc16VAEcZ9fhU YIGaiRgyVG8jqt1E2U20t9DtlJzRlm30Zneodu+Xi99SuBLv7GOfGjNiJJ9tIbVRfS WuHRhjhdzCxlw== Message-ID: Subject: Re: [PATCH v8 14/17] media: hantro: Stop using Hantro dedicated control From: Nicolas Dufresne To: Hans Verkuil , Benjamin Gaignard , mchehab@kernel.org, ezequiel@vanguardiasur.com.ar, p.zabel@pengutronix.de, gregkh@linuxfoundation.org, mripard@kernel.org, paul.kocialkowski@bootlin.com, wens@csie.org, jernej.skrabec@gmail.com, samuel@sholland.org, andrzej.p@collabora.com Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-rockchip@lists.infradead.org, linux-staging@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, kernel@collabora.com Date: Tue, 14 Jun 2022 12:23:47 -0400 In-Reply-To: References: <20220614083614.240641-1-benjamin.gaignard@collabora.com> <20220614083614.240641-15-benjamin.gaignard@collabora.com> <958ab30f9cfbb14e4a7ea55826064e6a20d5ffd2.camel@collabora.com> User-Agent: Evolution 3.44.1 (3.44.1-1.fc36) MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220614_092402_188500_54949799 X-CRM114-Status: GOOD ( 35.77 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org TGUgbWFyZGkgMTQganVpbiAyMDIyIMOgIDE3OjQ3ICswMjAwLCBIYW5zIFZlcmt1aWwgYSDDqWNy aXTCoDoKPiAKPiBPbiA2LzE0LzIyIDE3OjQzLCBOaWNvbGFzIER1ZnJlc25lIHdyb3RlOgo+ID4g TGUgbWFyZGkgMTQganVpbiAyMDIyIMOgIDE1OjU4ICswMjAwLCBIYW5zIFZlcmt1aWwgYSDDqWNy aXTCoDoKPiA+ID4gT24gNi8xNC8yMiAxMDozNiwgQmVuamFtaW4gR2FpZ25hcmQgd3JvdGU6Cj4g PiA+ID4gVGhlIG51bWJlciBvZiBiaXRzIHRvIHNraXAgaW4gdGhlIHNsaWNlIGhlYWRlciBjYW4g YmUgY29tcHV0ZWQKPiA+ID4gPiBpbiB0aGUgZHJpdmVyIGJ5IHVzaW5nIHNwcywgcHBzIGFuZCBk ZWNvZGVfcGFyYW1zIGluZm9ybWF0aW9uLgo+ID4gPiA+IFRoaXMgYWxsb3cgdG8gcmVtb3ZlIEhh bnRybyBkZWRpY2F0ZWQgY29udHJvbC4KPiA+ID4gCj4gPiA+IGFsbG93IC0+IG1ha2VzIGl0IHBv c3NpYmxlCj4gPiA+IAo+ID4gPiA+IAo+ID4gPiA+IFNpZ25lZC1vZmYtYnk6IEJlbmphbWluIEdh aWduYXJkIDxiZW5qYW1pbi5nYWlnbmFyZEBjb2xsYWJvcmEuY29tPgo+ID4gPiA+IC0tLQo+ID4g PiA+ICBkcml2ZXJzL3N0YWdpbmcvbWVkaWEvaGFudHJvL2hhbnRyb19kcnYuYyAgICAgfCAzNiAt LS0tLS0tLS0tLQo+ID4gPiA+ICAuLi4vc3RhZ2luZy9tZWRpYS9oYW50cm8vaGFudHJvX2cyX2hl dmNfZGVjLmMgfCA2MiArKysrKysrKysrKysrKysrKystCj4gPiA+ID4gIGluY2x1ZGUvbWVkaWEv aGV2Yy1jdHJscy5oICAgICAgICAgICAgICAgICAgICB8IDEzIC0tLS0KPiA+ID4gPiAgMyBmaWxl cyBjaGFuZ2VkLCA2MSBpbnNlcnRpb25zKCspLCA1MCBkZWxldGlvbnMoLSkKPiA+ID4gPiAKPiA+ ID4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9zdGFnaW5nL21lZGlhL2hhbnRyby9oYW50cm9fZHJ2 LmMgYi9kcml2ZXJzL3N0YWdpbmcvbWVkaWEvaGFudHJvL2hhbnRyb19kcnYuYwo+ID4gPiA+IGlu ZGV4IDUzNmM4YzM3NDk1Mi4uNWFhYzNhMDkwNDgwIDEwMDY0NAo+ID4gPiA+IC0tLSBhL2RyaXZl cnMvc3RhZ2luZy9tZWRpYS9oYW50cm8vaGFudHJvX2Rydi5jCj4gPiA+ID4gKysrIGIvZHJpdmVy cy9zdGFnaW5nL21lZGlhL2hhbnRyby9oYW50cm9fZHJ2LmMKPiA+ID4gPiBAQCAtMzA0LDI2ICsz MDQsNiBAQCBzdGF0aWMgaW50IGhhbnRyb19qcGVnX3NfY3RybChzdHJ1Y3QgdjRsMl9jdHJsICpj dHJsKQo+ID4gPiA+ICAJcmV0dXJuIDA7Cj4gPiA+ID4gIH0KPiA+ID4gPiAgCj4gPiA+ID4gLXN0 YXRpYyBpbnQgaGFudHJvX2hldmNfc19jdHJsKHN0cnVjdCB2NGwyX2N0cmwgKmN0cmwpCj4gPiA+ ID4gLXsKPiA+ID4gPiAtCXN0cnVjdCBoYW50cm9fY3R4ICpjdHg7Cj4gPiA+ID4gLQo+ID4gPiA+ IC0JY3R4ID0gY29udGFpbmVyX29mKGN0cmwtPmhhbmRsZXIsCj4gPiA+ID4gLQkJCSAgIHN0cnVj dCBoYW50cm9fY3R4LCBjdHJsX2hhbmRsZXIpOwo+ID4gPiA+IC0KPiA+ID4gPiAtCXZwdV9kZWJ1 ZygxLCAic19jdHJsOiBpZCA9ICVkLCB2YWwgPSAlZFxuIiwgY3RybC0+aWQsIGN0cmwtPnZhbCk7 Cj4gPiA+ID4gLQo+ID4gPiA+IC0Jc3dpdGNoIChjdHJsLT5pZCkgewo+ID4gPiA+IC0JY2FzZSBW NEwyX0NJRF9IQU5UUk9fSEVWQ19TTElDRV9IRUFERVJfU0tJUDoKPiA+ID4gPiAtCQljdHgtPmhl dmNfZGVjLmN0cmxzLmhldmNfaGRyX3NraXBfbGVuZ3RoID0gY3RybC0+dmFsOwo+ID4gPiA+IC0J CWJyZWFrOwo+ID4gPiA+IC0JZGVmYXVsdDoKPiA+ID4gPiAtCQlyZXR1cm4gLUVJTlZBTDsKPiA+ ID4gPiAtCX0KPiA+ID4gPiAtCj4gPiA+ID4gLQlyZXR1cm4gMDsKPiA+ID4gPiAtfQo+ID4gPiA+ IC0KPiA+ID4gPiAgc3RhdGljIGNvbnN0IHN0cnVjdCB2NGwyX2N0cmxfb3BzIGhhbnRyb19jdHJs X29wcyA9IHsKPiA+ID4gPiAgCS50cnlfY3RybCA9IGhhbnRyb190cnlfY3RybCwKPiA+ID4gPiAg fTsKPiA+ID4gPiBAQCAtMzMyLDEwICszMTIsNiBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHY0bDJf Y3RybF9vcHMgaGFudHJvX2pwZWdfY3RybF9vcHMgPSB7Cj4gPiA+ID4gIAkuc19jdHJsID0gaGFu dHJvX2pwZWdfc19jdHJsLAo+ID4gPiA+ICB9Owo+ID4gPiA+ICAKPiA+ID4gPiAtc3RhdGljIGNv bnN0IHN0cnVjdCB2NGwyX2N0cmxfb3BzIGhhbnRyb19oZXZjX2N0cmxfb3BzID0gewo+ID4gPiA+ IC0JLnNfY3RybCA9IGhhbnRyb19oZXZjX3NfY3RybCwKPiA+ID4gPiAtfTsKPiA+ID4gPiAtCj4g PiA+ID4gICNkZWZpbmUgSEFOVFJPX0pQRUdfQUNUSVZFX01BUktFUlMJKFY0TDJfSlBFR19BQ1RJ VkVfTUFSS0VSX0FQUDAgfCBcCj4gPiA+ID4gIAkJCQkJIFY0TDJfSlBFR19BQ1RJVkVfTUFSS0VS X0NPTSB8IFwKPiA+ID4gPiAgCQkJCQkgVjRMMl9KUEVHX0FDVElWRV9NQVJLRVJfRFFUIHwgXAo+ ID4gPiA+IEBAIC00ODcsMTggKzQ2Myw2IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgaGFudHJvX2N0 cmwgY29udHJvbHNbXSA9IHsKPiA+ID4gPiAgCQkuY2ZnID0gewo+ID4gPiA+ICAJCQkuaWQgPSBW NEwyX0NJRF9TVEFURUxFU1NfSEVWQ19TQ0FMSU5HX01BVFJJWCwKPiA+ID4gPiAgCQl9LAo+ID4g PiA+IC0JfSwgewo+ID4gPiA+IC0JCS5jb2RlYyA9IEhBTlRST19IRVZDX0RFQ09ERVIsCj4gPiA+ ID4gLQkJLmNmZyA9IHsKPiA+ID4gPiAtCQkJLmlkID0gVjRMMl9DSURfSEFOVFJPX0hFVkNfU0xJ Q0VfSEVBREVSX1NLSVAsCj4gPiA+ID4gLQkJCS5uYW1lID0gIkhhbnRybyBIRVZDIHNsaWNlIGhl YWRlciBza2lwIGJ5dGVzIiwKPiA+ID4gPiAtCQkJLnR5cGUgPSBWNEwyX0NUUkxfVFlQRV9JTlRF R0VSLAo+ID4gPiA+IC0JCQkubWluID0gMCwKPiA+ID4gPiAtCQkJLmRlZiA9IDAsCj4gPiA+ID4g LQkJCS5tYXggPSAweDEwMCwKPiA+ID4gPiAtCQkJLnN0ZXAgPSAxLAo+ID4gPiA+IC0JCQkub3Bz ID0gJmhhbnRyb19oZXZjX2N0cmxfb3BzLAo+ID4gPiA+IC0JCX0sCj4gPiA+ID4gIAl9LCB7Cj4g PiA+ID4gIAkJLmNvZGVjID0gSEFOVFJPX1ZQOV9ERUNPREVSLAo+ID4gPiA+ICAJCS5jZmcgPSB7 Cj4gPiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvc3RhZ2luZy9tZWRpYS9oYW50cm8vaGFudHJv X2cyX2hldmNfZGVjLmMgYi9kcml2ZXJzL3N0YWdpbmcvbWVkaWEvaGFudHJvL2hhbnRyb19nMl9o ZXZjX2RlYy5jCj4gPiA+ID4gaW5kZXggZDI4NjUzZDA0ZDIwLi4zYmU4ZDZlNjBiZjAgMTAwNjQ0 Cj4gPiA+ID4gLS0tIGEvZHJpdmVycy9zdGFnaW5nL21lZGlhL2hhbnRyby9oYW50cm9fZzJfaGV2 Y19kZWMuYwo+ID4gPiA+ICsrKyBiL2RyaXZlcnMvc3RhZ2luZy9tZWRpYS9oYW50cm8vaGFudHJv X2cyX2hldmNfZGVjLmMKPiA+ID4gPiBAQCAtMTE3LDYgKzExNyw2NiBAQCBzdGF0aWMgdm9pZCBw cmVwYXJlX3RpbGVfaW5mb19idWZmZXIoc3RydWN0IGhhbnRyb19jdHggKmN0eCkKPiA+ID4gPiAg CQl2cHVfZGVidWcoMSwgIiVzOiBubyBjaHJvbWEhXG4iLCBfX2Z1bmNfXyk7Cj4gPiA+ID4gIH0K PiA+ID4gPiAgCj4gPiA+ID4gK3N0YXRpYyB1bnNpZ25lZCBpbnQgY2VpbF9sb2cyKHVuc2lnbmVk IGludCB2KQo+ID4gPiA+ICt7Cj4gPiA+ID4gKwkvKiBDb21wdXRlIENlaWwoTG9nMih2KSkKPiA+ ID4gPiArCSAqIERlcml2ZWQgZnJvbSBicmFuY2hsZXNzIGNvZGUgZm9yIGludGVnZXIgbG9nMih2 KSBmcm9tOgo+ID4gPiA+ICsJICogPGh0dHA6Ly9ncmFwaGljcy5zdGFuZm9yZC5lZHUvfnNlYW5k ZXIvYml0aGFja3MuaHRtbCNJbnRlZ2VyTG9nPgo+ID4gPiA+ICsJICovCj4gPiA+ID4gKwl1bnNp Z25lZCBpbnQgciwgc2hpZnQ7Cj4gPiA+ID4gKwo+ID4gPiA+ICsJdi0tOwo+ID4gPiA+ICsJciA9 ICh2ID4gMHhGRkZGKSA8PCA0Owo+ID4gPiA+ICsJdiA+Pj0gcjsKPiA+ID4gPiArCXNoaWZ0ID0g KHYgPiAweEZGKSA8PCAzOwo+ID4gPiA+ICsJdiA+Pj0gc2hpZnQ7Cj4gPiA+ID4gKwlyIHw9IHNo aWZ0Owo+ID4gPiA+ICsJc2hpZnQgPSAodiA+IDB4RikgPDwgMjsKPiA+ID4gPiArCXYgPj49IHNo aWZ0Owo+ID4gPiA+ICsJciB8PSBzaGlmdDsKPiA+ID4gPiArCXNoaWZ0ID0gKHYgPiAweDMpIDw8 IDE7Cj4gPiA+ID4gKwl2ID4+PSBzaGlmdDsKPiA+ID4gPiArCXIgfD0gc2hpZnQ7Cj4gPiA+ID4g KwlyIHw9ICh2ID4+IDEpOwo+ID4gPiA+ICsKPiA+ID4gPiArCXJldHVybiByICsgMTsKPiA+ID4g PiArfQo+ID4gPiAKPiA+ID4gSXNuJ3QgdGhpcyBpZGVudGljYWwgdG8gZmxzKHYgLSAxKT8gU2Vl IGFsc28gbGliL21hdGgvcmVjaXByb2NhbF9kaXYuYwo+ID4gPiB3aGVyZSB0aGlzIGlzIHVzZWQu Cj4gPiAKPiA+IFRoYW5rcyBmb3IgcG9pbnRpbmcgdGhpcyBvdXQsIEkgd2FzIHdvbmRlcmluZyBp ZiB0aGVyZSB3YXMgYW4gZXF1aXZhbGVudCwgYW5kCj4gPiBuZXZlciBrbmV3IHRoZXJlIHdhcyBh IHJlbGF0aW9uIGJldHdlZW4gbG9nMigpIGFuZCB0aGUgImxhc3Qgc2V0IGJpdCIuIE5vdCBzdXJl Cj4gPiBhYm91dCB0aGUgLTEgaGVyZSB0aG91Z2gsIGNhbiB5b3UgZXh0ZW5kID8KPiAKPiBCYXNl ZCBvbiBob3cgbGliL21hdGgvcmVjaXByb2NhbF9kaXYuYyBkaWQgaXQuIEFsc28sIHRoZSBjZWls X2xvZzIgZnVuY3Rpb24KPiBzdGFydHMgd2l0aCB2LS0sIHdoaWxlIGZscyBkb2Vzbid0LiBUaGF0 IHNhaWQsIGl0J3Mgd2lzZSB0byB2ZXJpZnkgdGhhdCB0aGF0Cj4gaXMgY29ycmVjdC4KCkp1c3Qg Zm9yIHRoZSByZWZlcmVuY2UsIGZyb20gbGliL21hdGgvcmVjaXByb2NhbF9kaXYuYzoKCgkvKiBj ZWlsKGxvZzIoZCkpICovCglsID0gZmxzKGQgLSAxKTsKClBlcmhhcHMgZmxzKCkgcmV0dXJuIHBv c2l0aW9uIHN0YXJ0aW5nIGZyb20gMSByYXRoZXIgdGhlbiAwID8KCk5pY29sYXMKCj4gCj4gUmVn YXJkcywKPiAKPiAJSGFucwo+IAo+ID4gCj4gPiA+IAo+ID4gPiBSZWdhcmRzLAo+ID4gPiAKPiA+ ID4gCUhhbnMKPiA+ID4gCj4gPiA+ID4gKwo+ID4gPiA+ICtzdGF0aWMgaW50IGNvbXB1dGVfaGVh ZGVyX3NraXBfbGVuZ2h0KHN0cnVjdCBoYW50cm9fY3R4ICpjdHgpCj4gPiA+ID4gK3sKPiA+ID4g PiArCWNvbnN0IHN0cnVjdCBoYW50cm9faGV2Y19kZWNfY3RybHMgKmN0cmxzID0gJmN0eC0+aGV2 Y19kZWMuY3RybHM7Cj4gPiA+ID4gKwljb25zdCBzdHJ1Y3QgdjRsMl9jdHJsX2hldmNfZGVjb2Rl X3BhcmFtcyAqZGVjb2RlX3BhcmFtcyA9IGN0cmxzLT5kZWNvZGVfcGFyYW1zOwo+ID4gPiA+ICsJ Y29uc3Qgc3RydWN0IHY0bDJfY3RybF9oZXZjX3NwcyAqc3BzID0gY3RybHMtPnNwczsKPiA+ID4g PiArCWNvbnN0IHN0cnVjdCB2NGwyX2N0cmxfaGV2Y19wcHMgKnBwcyA9IGN0cmxzLT5wcHM7Cj4g PiA+ID4gKwlpbnQgc2tpcCA9IDA7Cj4gPiA+ID4gKwo+ID4gPiA+ICsJaWYgKHBwcy0+ZmxhZ3Mg JiBWNEwyX0hFVkNfUFBTX0ZMQUdfT1VUUFVUX0ZMQUdfUFJFU0VOVCkKPiA+ID4gPiArCQkvKiBz aXplIG9mIHBpY19vdXRwdXRfZmxhZyAqLwo+ID4gPiA+ICsJCXNraXArKzsKPiA+ID4gPiArCj4g PiA+ID4gKwlpZiAoc3BzLT5mbGFncyAmIFY0TDJfSEVWQ19TUFNfRkxBR19TRVBBUkFURV9DT0xP VVJfUExBTkUpCj4gPiA+ID4gKwkJLyogc2l6ZSBvZiBwaWNfb3JkZXJfY250X2xzYiAqLwo+ID4g PiA+ICsJCXNraXAgKz0gMjsKPiA+ID4gPiArCj4gPiA+ID4gKwlpZiAoIShkZWNvZGVfcGFyYW1z LT5mbGFncyAmIFY0TDJfSEVWQ19ERUNPREVfUEFSQU1fRkxBR19JRFJfUElDKSkgewo+ID4gPiA+ ICsJCS8qIHNpemUgb2YgcGljX29yZGVyX2NudF9sc2IgKi8KPiA+ID4gPiArCQlza2lwICs9IHNw cy0+bG9nMl9tYXhfcGljX29yZGVyX2NudF9sc2JfbWludXM0ICsgNDsKPiA+ID4gPiArCj4gPiA+ ID4gKwkJLyogc2l6ZSBvZiBzaG9ydF90ZXJtX3JlZl9waWNfc2V0X3Nwc19mbGFnICovCj4gPiA+ ID4gKwkJc2tpcCsrOwo+ID4gPiA+ICsKPiA+ID4gPiArCQlpZiAoZGVjb2RlX3BhcmFtcy0+c2hv cnRfdGVybV9yZWZfcGljX3NldF9zaXplKQo+ID4gPiA+ICsJCQkvKiBzaXplIG9mIHN0X3JlZl9w aWNfc2V0KCBudW1fc2hvcnRfdGVybV9yZWZfcGljX3NldHMgKSAqLwo+ID4gPiA+ICsJCQlza2lw ICs9IGRlY29kZV9wYXJhbXMtPnNob3J0X3Rlcm1fcmVmX3BpY19zZXRfc2l6ZTsKPiA+ID4gPiAr CQllbHNlIGlmIChzcHMtPm51bV9zaG9ydF90ZXJtX3JlZl9waWNfc2V0cyA+IDEpCj4gPiA+ID4g KwkJCXNraXAgKz0gY2VpbF9sb2cyKHNwcy0+bnVtX3Nob3J0X3Rlcm1fcmVmX3BpY19zZXRzKTsK PiA+ID4gPiArCj4gPiA+ID4gKwkJc2tpcCArPSBkZWNvZGVfcGFyYW1zLT5sb25nX3Rlcm1fcmVm X3BpY19zZXRfc2l6ZTsKPiA+ID4gPiArCX0KPiA+ID4gPiArCj4gPiA+ID4gKwlyZXR1cm4gc2tp cDsKPiA+ID4gPiArfQo+ID4gPiA+ICsKPiA+ID4gPiAgc3RhdGljIHZvaWQgc2V0X3BhcmFtcyhz dHJ1Y3QgaGFudHJvX2N0eCAqY3R4KQo+ID4gPiA+ICB7Cj4gPiA+ID4gIAljb25zdCBzdHJ1Y3Qg aGFudHJvX2hldmNfZGVjX2N0cmxzICpjdHJscyA9ICZjdHgtPmhldmNfZGVjLmN0cmxzOwo+ID4g PiA+IEBAIC0xMzQsNyArMTk0LDcgQEAgc3RhdGljIHZvaWQgc2V0X3BhcmFtcyhzdHJ1Y3QgaGFu dHJvX2N0eCAqY3R4KQo+ID4gPiA+ICAKPiA+ID4gPiAgCWhhbnRyb19yZWdfd3JpdGUodnB1LCAm ZzJfb3V0cHV0XzhfYml0cywgMCk7Cj4gPiA+ID4gIAo+ID4gPiA+IC0JaGFudHJvX3JlZ193cml0 ZSh2cHUsICZnMl9oZHJfc2tpcF9sZW5ndGgsIGN0cmxzLT5oZXZjX2hkcl9za2lwX2xlbmd0aCk7 Cj4gPiA+ID4gKwloYW50cm9fcmVnX3dyaXRlKHZwdSwgJmcyX2hkcl9za2lwX2xlbmd0aCwgY29t cHV0ZV9oZWFkZXJfc2tpcF9sZW5naHQoY3R4KSk7Cj4gPiA+ID4gIAo+ID4gPiA+ICAJbWluX2xv ZzJfY2Jfc2l6ZSA9IHNwcy0+bG9nMl9taW5fbHVtYV9jb2RpbmdfYmxvY2tfc2l6ZV9taW51czMg KyAzOwo+ID4gPiA+ICAJbWF4X2xvZzJfY3RiX3NpemUgPSBtaW5fbG9nMl9jYl9zaXplICsgc3Bz LT5sb2cyX2RpZmZfbWF4X21pbl9sdW1hX2NvZGluZ19ibG9ja19zaXplOwo+ID4gPiA+IGRpZmYg LS1naXQgYS9pbmNsdWRlL21lZGlhL2hldmMtY3RybHMuaCBiL2luY2x1ZGUvbWVkaWEvaGV2Yy1j dHJscy5oCj4gPiA+ID4gaW5kZXggZDZjYjM3NzlkMTkwLi5lZmMwNDEyYWM0MWUgMTAwNjQ0Cj4g PiA+ID4gLS0tIGEvaW5jbHVkZS9tZWRpYS9oZXZjLWN0cmxzLmgKPiA+ID4gPiArKysgYi9pbmNs dWRlL21lZGlhL2hldmMtY3RybHMuaAo+ID4gPiA+IEBAIC00NjcsMTcgKzQ2Nyw0IEBAIHN0cnVj dCB2NGwyX2N0cmxfaGV2Y19zY2FsaW5nX21hdHJpeCB7Cj4gPiA+ID4gIAlfX3U4CXNjYWxpbmdf bGlzdF9kY19jb2VmXzMyeDMyWzJdOwo+ID4gPiA+ICB9Owo+ID4gPiA+ICAKPiA+ID4gPiAtLyog IE1QRUctY2xhc3MgY29udHJvbCBJRHMgc3BlY2lmaWMgdG8gdGhlIEhhbnRybyBkcml2ZXIgYXMg ZGVmaW5lZCBieSBWNEwyICovCj4gPiA+ID4gLSNkZWZpbmUgVjRMMl9DSURfQ09ERUNfSEFOVFJP X0JBU0UJCQkJKFY0TDJfQ1RSTF9DTEFTU19DT0RFQyB8IDB4MTIwMCkKPiA+ID4gPiAtLyoKPiA+ ID4gPiAtICogVjRMMl9DSURfSEFOVFJPX0hFVkNfU0xJQ0VfSEVBREVSX1NLSVAgLQo+ID4gPiA+ IC0gKiB0aGUgbnVtYmVyIG9mIGRhdGEgKGluIGJpdHMpIHRvIHNraXAgaW4gdGhlCj4gPiA+ID4g LSAqIHNsaWNlIHNlZ21lbnQgaGVhZGVyLgo+ID4gPiA+IC0gKiBJZiBub24tSURSLCB0aGUgYml0 cyB0byBiZSBza2lwcGVkIGdvIGZyb20gc3ludGF4IGVsZW1lbnQgInBpY19vdXRwdXRfZmxhZyIK PiA+ID4gPiAtICogdG8gYmVmb3JlIHN5bnRheCBlbGVtZW50ICJzbGljZV90ZW1wb3JhbF9tdnBf ZW5hYmxlZF9mbGFnIi4KPiA+ID4gPiAtICogSWYgSURSLCB0aGUgc2tpcHBlZCBiaXRzIGFyZSBq dXN0ICJwaWNfb3V0cHV0X2ZsYWciCj4gPiA+ID4gLSAqIChzZXBhcmF0ZV9jb2xvdXJfcGxhbmVf ZmxhZyBpcyBub3Qgc3VwcG9ydGVkKS4KPiA+ID4gPiAtICovCj4gPiA+ID4gLSNkZWZpbmUgVjRM Ml9DSURfSEFOVFJPX0hFVkNfU0xJQ0VfSEVBREVSX1NLSVAJKFY0TDJfQ0lEX0NPREVDX0hBTlRS T19CQVNFICsgMCkKPiA+ID4gPiAtCj4gPiA+ID4gICNlbmRpZgo+ID4gPiAKPiA+IAoKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJu ZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRw Oi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK