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 8B97BE7D0A4 for ; Thu, 21 Sep 2023 18:40:02 +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=52TYguhxt8nZfpU+xSA73AR07bL2BIzQulR/+ubsR30=; b=PFILMBjUYpBulZ jXtYxVKAEp3AoGQC1rHNozVKPwG8ZXNX5n90VbUGvKKQlSjhsn4dJfOa8SkD3ejo/AD2oRG4tAbNx ZYWECjHGaNv84bqHMBaCzrOY3mqtio7xdj7U3+KXA6B+ODMXX+EfKajrPbCun4Wihy9RS5niSmYLQ wIrYX41u63TgYQBYoI1ctJAZaPnC3JARbd1LUCtc6YKKxDNPu9kZA+tGTnTIsgSNM/KiTZqCkIAjU UsGx/Ts994PyTWu6ORxQQzcjXSqoWW9krXYHJ8jeEKDxYvtkBqHKx81QScIg0QsaZmrWNiSbYbSP7 Y1FjPt7eRQoANivPEHgg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qjOaK-006qBl-0c; Thu, 21 Sep 2023 18:39:32 +0000 Received: from madras.collabora.co.uk ([2a00:1098:0:82:1000:25:2eeb:e5ab]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qjOaG-006qAL-2q for linux-arm-kernel@lists.infradead.org; Thu, 21 Sep 2023 18:39:31 +0000 Received: from nicolas-tpx395.localdomain (unknown [IPv6:2606:6d00:15:bae9::7a9]) (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 E39766607298; Thu, 21 Sep 2023 19:39:22 +0100 (BST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1695321564; bh=a9w6Nq4Jq+CiIItmdQmNdUTXQeCnQw026LO9PbyOm2A=; h=Subject:From:To:Cc:Date:In-Reply-To:References:From; b=UWr1uXRIecF5pkPQgoLvo9uiTqB5Rf/c/15gZVFjfENO36zN2wBi8dZIvEnb0GP8g F01s+6Hl19OpxLVnlEq+nOj3vKonSJpOmMHCq3p83fcb7oGZa6hDlOMcNXvM1aZf2p DqKWyd6xD55q3sEoxzznAhbnETEgQLmD/f1UbQ6JMuNIJu8GhJBBlPUd/pTLsD42xS 92OrXlN9ixFvMWU/9CNq9bIH2YDciPx1zHDsjyiB0wjy0V3r2ClS4pRczkyJ0C4Oct tMGY5CO78/nH0fyu30dgIfzMv9yPy7kWq2L4Rp5vHt9vM8AhRyhsHBz0CKWVaSteCX 4kgZvBYVZk3Fw== Message-ID: <522e5f3bd4f43a5718ae88133b8d5d187c470f74.camel@collabora.com> Subject: Re: [PATCH v12 1/7] media: v4l2: Add ignore_streaming flag From: Nicolas Dufresne To: Hans Verkuil , Sebastian Fricke , Mauro Carvalho Chehab , Nas Chung , Sascha Hauer , Fabio Estevam , Rob Herring , Shawn Guo , Philipp Zabel , Jackson Lee , Krzysztof Kozlowski , NXP Linux Team , Conor Dooley , Pengutronix Kernel Team Cc: devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Robert Beckett , linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, kernel@collabora.com, Tomasz Figa Date: Thu, 21 Sep 2023 14:39:13 -0400 In-Reply-To: References: <20230915-wave5_v12_on_media_master-v12-0-92fc66cd685d@collabora.com> <20230915-wave5_v12_on_media_master-v12-1-92fc66cd685d@collabora.com> <179e88f04257f21b6b723e935231de70415b3301.camel@collabora.com> User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230921_113929_217811_815E07D6 X-CRM114-Status: GOOD ( 67.21 ) 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 TGUgbWVyY3JlZGkgMjAgc2VwdGVtYnJlIDIwMjMgw6AgMTY6NDkgKzAyMDAsIEhhbnMgVmVya3Vp bCBhIMOpY3JpdMKgOgo+IE9uIDIwLzA5LzIwMjMgMTY6MDgsIE5pY29sYXMgRHVmcmVzbmUgd3Jv dGU6Cj4gPiBjYyBUb21hc3ogRmlnYQo+ID4gCj4gPiBMZSBtZXJjcmVkaSAyMCBzZXB0ZW1icmUg MjAyMyDDoCAxNDo1OSArMDIwMCwgSGFucyBWZXJrdWlsIGEgw6ljcml0wqA6Cj4gPiA+IE9uIDE1 LzA5LzIwMjMgMjM6MTEsIFNlYmFzdGlhbiBGcmlja2Ugd3JvdGU6Cj4gPiA+ID4gQWRkIGEgbmV3 IGZsYWcgdG8gdGhlIGBzdHJ1Y3QgdjRsMl9tMm1fZGV2YCB0byB0b2dnbGUgd2hldGhlciBhIHF1 ZXVlCj4gPiA+ID4gbXVzdCBiZSBzdHJlYW1pbmcgaW4gb3JkZXIgdG8gYWxsb3cgcXVldWluZyBq b2JzIHRvIHRoZSByZWFkeSBxdWV1ZS4KPiA+ID4gPiBDdXJyZW50bHksIGJvdGggcXVldWVzIChD QVBUVVJFICYgT1VUUFVUKSBtdXN0IGJlIHN0cmVhbWluZyBpbiBvcmRlciB0bwo+ID4gPiA+IGFs bG93IGFkZGluZyBuZXcgam9icy4gVGhpcyBiZWhhdmlvciBsaW1pdHMgdGhlIHVzYWJpbGl0eSBv ZiBNMk0gZm9yCj4gPiA+ID4gc29tZSBkcml2ZXJzLCBhcyB0aGVzZSBoYXZlIHRvIGJlIGFibGUs IHRvIHBlcmZvcm0gYW5hbHlzaXMgb2YgdGhlCj4gPiA+IAo+ID4gPiBhYmxlLCB0byAtPiBhYmxl IHRvCj4gPiA+IAo+ID4gPiA+IHNlcXVlbmNlIHRvIGVuc3VyZSwgdGhhdCB1c2Vyc3BhY2UgcHJl cGFyZXMgdGhlIENBUFRVUkUgcXVldWUgY29ycmVjdGx5Lgo+ID4gPiAKPiA+ID4gZW5zdXJlLCB0 aGF0IC0+IGVuc3VyZSB0aGF0Cj4gPiA+IAo+ID4gPiA+IAo+ID4gPiA+IFNpZ25lZC1vZmYtYnk6 IFNlYmFzdGlhbiBGcmlja2UgPHNlYmFzdGlhbi5mcmlja2VAY29sbGFib3JhLmNvbT4KPiA+ID4g PiBTaWduZWQtb2ZmLWJ5OiBOaWNvbGFzIER1ZnJlc25lIDxuaWNvbGFzLmR1ZnJlc25lQGNvbGxh Ym9yYS5jb20+Cj4gPiA+ID4gLS0tCj4gPiA+ID4gIGluY2x1ZGUvbWVkaWEvdjRsMi1tZW0ybWVt LmggfCAxNyArKysrKysrKysrKysrKysrKwo+ID4gPiA+ICAxIGZpbGUgY2hhbmdlZCwgMTcgaW5z ZXJ0aW9ucygrKQo+ID4gPiA+IAo+ID4gPiA+IGRpZmYgLS1naXQgYS9pbmNsdWRlL21lZGlhL3Y0 bDItbWVtMm1lbS5oIGIvaW5jbHVkZS9tZWRpYS92NGwyLW1lbTJtZW0uaAo+ID4gPiA+IGluZGV4 IGQ2YzhlYjJiNTIwMS4uOTdhNDhlNjFlMzU4IDEwMDY0NAo+ID4gPiA+IC0tLSBhL2luY2x1ZGUv bWVkaWEvdjRsMi1tZW0ybWVtLmgKPiA+ID4gPiArKysgYi9pbmNsdWRlL21lZGlhL3Y0bDItbWVt Mm1lbS5oCj4gPiA+ID4gQEAgLTU3LDYgKzU3LDE2IEBAIHN0cnVjdCB2NGwyX20ybV9kZXY7Cj4g PiA+ID4gICAqIEByZHlfc3BpbmxvY2s6IHNwaW4gbG9jayB0byBwcm90ZWN0IHRoZSBzdHJ1Y3Qg dXNhZ2UKPiA+ID4gPiAgICogQG51bV9yZHk6CW51bWJlciBvZiBidWZmZXJzIHJlYWR5IHRvIGJl IHByb2Nlc3NlZAo+ID4gPiA+ICAgKiBAYnVmZmVyZWQ6CWlzIHRoZSBxdWV1ZSBidWZmZXJlZD8K PiA+ID4gPiArICogQGlnbm9yZV9zdHJlYW1pbmc6IERpY3RhdGVzIHdoZXRoZXIgdGhlIHF1ZXVl IG11c3QgYmUgc3RyZWFtaW5nIGZvciBhIGpvYiB0bwo+ID4gPiA+ICsgKgkJICAgICAgYmUgcXVl dWVkLgo+ID4gPiA+ICsgKgkJICAgICAgVGhpcyBpcyB1c2VmdWwsIGZvciBleGFtcGxlLCB3aGVu IHRoZSBkcml2ZXIgcmVxdWlyZXMgdG8KPiA+ID4gPiArICoJCSAgICAgIGluaXRpYWxpemUgdGhl IHNlcXVlbmNlIHdpdGggYSBmaXJtd2FyZSwgd2hlcmUgb25seSBhCj4gPiA+ID4gKyAqCQkgICAg ICBxdWV1ZWQgT1VUUFVUIHF1ZXVlIGJ1ZmZlciBhbmQgU1RSRUFNT04gb24gdGhlIE9VVFBVVAo+ ID4gPiA+ICsgKgkJICAgICAgcXVldWUgaXMgcmVxdWlyZWQgdG8gcGVyZm9ybSB0aGUgYW5seXNp cyBvZiB0aGUgYml0c3RyZWFtCj4gPiA+ID4gKyAqCQkgICAgICBoZWFkZXIuCj4gPiA+ID4gKyAq CQkgICAgICBUaGlzIG1lYW5zIHRoZSBkcml2ZXIgaXMgcmVzcG9uc2libGUgZm9yIGltcGxlbWVu dGluZyB0aGUKPiA+ID4gPiArICoJCSAgICAgIGpvYl9yZWFkeSBjYWxsYmFjayBjb3JyZWN0bHkg dG8gbWFrZSBzdXJlIHRoYXQgcmVxdWlyZW1lbnRzCj4gPiA+ID4gKyAqCQkgICAgICBmb3IgYWN0 dWFsIGRlY29kaW5nIGFyZSBtZXQuCj4gPiA+IAo+ID4gPiBUaGlzIGlzIGEgYmFkIGRlc2NyaXB0 aW9uIGFuZCBmaWVsZCBuYW1lLgo+ID4gCj4gPiBJIHdvbmRlciB3aGF0J3MgeW91ciBvcGluaW9u IGFib3V0IHRoZSBidWZmZXJlZCBvbmUgdGhlbiA6LUQKPiAKPiBFdmVuIHdvcnNlIDotKQo+IAo+ IEkgc3RpbGwgZG9uJ3QgcmVhbGx5IHVuZGVyc3RhbmQgd2hhdCB0aGF0IGRvZXMuIFBhdGNoZXMg d2VsY29tZS4KPiAKPiA+IAo+ID4gPiAKPiA+ID4gQmFzaWNhbGx5IHdoYXQgdGhpcyBmaWVsZCBk b2VzIGlzIHRoYXQsIGlmIHRydWUsIHRoZSBzdHJlYW1pbmcgc3RhdGUgb2YgdGhlCj4gPiA+IGNh cHR1cmUgcXVldWUgaXMgaWdub3JlZC4gU28ganVzdCBjYWxsIGl0IHRoYXQ6IGlnbm9yZV9jYXBf c3RyZWFtaW5nLgo+ID4gPiAKPiA+ID4gQW5kIGV4cGxhaW4gdGhhdCwgaWYgdHJ1ZSwgam9iX3Jl YWR5KCkgd2lsbCBiZSBjYWxsZWQgZXZlbiBpZiB0aGUgY2FwdHVyZQo+ID4gPiBxdWV1ZSBpcyBu b3Qgc3RyZWFtaW5nLCBhbmQgdGhhdCB0aGF0IGNhbiBiZSB1c2VkIHRvIGFsbG93IGhhcmR3YXJl IHRvCj4gPiA+IGFuYWx5emUgdGhlIGJpdHN0cmVhbSBoZWFkZXIgdGhhdCBhcnJpdmVzIG9uIHRo ZSBPVVRQVVQgcXVldWUuCj4gPiAKPiA+IEFjay4KPiA+IAo+ID4gPiAKPiA+ID4gQWxzbywgZG9l c24ndCB0aGlzIGZpZWxkIGJlbG9uZyB0byBzdHJ1Y3QgdjRsMl9tMm1fY3R4PyBJdCBtYWtlcyBu byBzZW5zZQo+ID4gPiBmb3IgdGhlIG91dHB1dCBxdWV1ZSwgdGhpcyBpcyByZWFsbHkgYSBjb25m aWd1cmF0aW9uIGZvciB0aGUgbTJtIGNvbnRleHQgYXMKPiA+ID4gYSB3aG9sZS4KPiA+IAo+ID4g VW5sZXNzIHdlIGNvbWUgdXAgd2l0aCBhIGNvbXBsZXRlbHkgbmV3IHR5cGUgb2YgTTJNIHRoYXQg Y2FuIGJlaGF2ZSBsaWtlIGEgZ2FwCj4gPiBmaWxsZXIgKGxpa2UgYSB2aWRlbyByYXRlIG0ybSks IGl0IGluZGVlZCBtYWtlcyBubyBzZW5zZSBmb3Igb3V0cHV0LiBJJ20ganVzdAo+ID4gaWxsdXN0 cmF0aW5nIHRoYXQgdGhpcyBpcyB0cnVlICJub3ciIGJ1dCBzb21lb25lIGNhbiBjb21lIHVwIHdp dGggdmFsaWQKPiA+IGV4cGVjdGF0aW9uLiBTbyBJIGFncmVlIHdpdGggeW91LCB3ZSBjYW4gbW92 ZSBpdCB1cCBpbiB0aGUgaGllcmFyY2h5Lgo+ID4gCj4gPiBSZWNlbnRseSBvdmVyIElSQyBhbmQg b3RoZXIgdGhyZWFkcywgVG9tYXN6IHJhaXNlZCBhIGNvbmNlcm4gdGhhdCBDT0RFQ3Mgd2hlcmUK PiA+IGludHJvZHVjaW5nIHRvbyBtdWNoIGNvbXBsZXhpdHkgaW50byBNMk0uIEFuZCBJIGJlbGll dmUgYnVmZmVyZWQgKHdoaWNoIGlzCj4gPiBiYXJlbHkgZG9jdW1lbnRlZCkgYW5kIHRoaXMgbWVj aGFuaXNtIHdhcyBiZWluZyBwb2ludGVkLgo+ID4gCj4gPiBNeSB0YWtlIG9uIHRoYXQgaXMgdGhh dCBhZGRpbmcgYm9vbGVhbiBjb25maWd1cmF0aW9uIGlzIHdoYXQgaW50cm9kdWNlCj4gPiBjb21w bGV4aXR5LCBhbmQgd2UgY2FuIGZpeCBpdCBieSBkb2luZyBsZXNzIGluIHRoZSBtMm0uIEFmdGVy IHRoaXMgZGlzY3Vzc2lvbiwgSQo+ID4gY2FtZSB3aXRoIHRoZSBpZGVhIHRoYXQgd2Ugc2hvdWxk IHJlbW92ZSBidWZmZXJlZCBhbmQgaWdub3JlX3N0cmVhbWluZy4gRm9yCj4gPiBkcml2ZXJzIHRo YXQgZG9uJ3QgaW1wbGVtZW50IGpvYl9yZWFkeSwgdGhpcyBsb2dpYyB3b3VsZCBiZSBtb3ZlZCBp bnNpZGUgdGhlCj4gPiBkZWZhdWx0IGltcGxlbWVudGF0aW9uLiBXZSBjYW4gdGhlbiBhZGQgYSBo ZWxwZXIgdG8gY2hlY2sgdGhlIGNvbW1vbiBjb25kaXRpb25zLgo+ID4gCj4gPiBUaGUgYWx0ZXJu YXRpdmUgc3VnZ2VzdGVkIGJ5IFRvbWFzeiwgd2FzIHRvIGxheWVyIHR3byBvcHMuIFdlJ2QgaGF2 ZSBhCj4gPiBkZXZpY2VfcmVhZHkoKSBvcHMgYW5kIGl0cyBkZWZhdWx0IGltcGxlbWVudGF0aW9u IHdvdWxkIGluY2x1ZGUgdGhlIGNoZWNrIHdlCj4gPiBoYXZlIGFuZCB3b3VsZCBjYWxsIGpvYl9y ZWFkeSgpLiBQZXJzb25hbGx5LCBJJ2QgcmF0aGVyIHJlbW92ZSB0aGVuIGFkZCwgYnV0IEkKPiA+ IHVuZGVyc3RhZHQgdGhlIHJlYXNvbmluZyBhbmQgd291bGQgYmUgZmluZSBjb21taXR0aW5nIHRv IHRoYXQgaW5zdGVhZC4KPiA+IAo+ID4gSSdkIGxpa2UgeW91ciBmZWVkYmFjayBvbiB0aGlzIHBy b3Bvc2FsLiBJZiB0aGlzIGlzIHNvbWV0aGluZyB3ZSB3YW50LCBJJ2xsIGRvCj4gPiB0aGlzIHBy aW9yIHRvIFYxMywgb3RoZXJ3aXNlIHdlIHdpbGwgYWRkcmVzcyB5b3VyIGNvbW1lbnRzIGFuZCBm aXggdGhlIGFkZGVkCj4gPiBtZWNoYW5pc20uIEkgdGhpbmsgdGhvdWdoIHRoYXQgd2UgYWdyZWUg dGhhdCBmb3IgZGVjb2RlcnMsIHRoaXMgaXMgbmljZSBhZGRpdGlvbgo+ID4gdG8gbm90IGhhdmUg dG8gdHJpZ2dlciB3b3JrIG1hbnVhbGx5IGZyb20gdmIyIG9wcy4KPiAKPiBJdCBjb21lcyBkb3du IHRvIGEgbWF0dGVyIG9mIHRhc3RlLCBJIGd1ZXNzLiBJIHBlcnNvbmFsbHkgdGhpbmsgdGhhdCB1 c2luZyBib29scwo+IHRvIHR3ZWFrIHRoZSBiZWhhdmlvciBvZiBhIGZyYW1ld29yayBkb2VzIG5v dCBuZWNlc3NhcmlseSBpbmNyZWFzZSBjb21wbGV4aXR5LAo+IHByb3ZpZGVkIGl0IGlzIGNsZWFy bHkgZG9jdW1lbnRlZCB3aGF0IGl0IGRvZXMgYW5kIHdoeSBpdCBpcyBuZWVkZWQuCj4gCj4gSSB0 aGluayBhbiBpZ25vcmVfY2FwX3N0cmVhbWluZyBib29sIGlzIHByZXR0eSBzdHJhaWdodGZvcndh cmQgYW5kIGhhcyBtaW5pbWFsCj4gaW1wYWN0IGluIHRoZSBjb2RlLiBBcyBsb25nIGFzIHRoZXJl IGFyZSBnb29kIGNvbW1lbnRzLgoKU28gZm9yIHdhdmU1IHdlIHdpbGwgb3B0IGZvciB0aGlzIGFu ZCBhcHBseSB5b3VyIHN1Z2dlc3RlZCBjaGFuZ2VzLiBBbmQgSSBtYXkKY29tZSBiYWNrIGxhdGVy IG9uIHRoZSBzdWJqZWN0LgoKPiAKPiBUaGUgJ2J1ZmZlcmVkJyBmbGFnIGlzIHdlcmUgdGhpcyBj bGVhcmx5IGZhaWxlZCBjb21wbGV0ZWx5LCBzaW5jZSBJIGNvdWxkbid0IGZpZ3VyZQo+IG91dCB3 aGF0IGl0IGlzIHN1cHBvc2VkIHRvIGRvLiBCdXQgdGhhdCBpcyBub3QgYmVjYXVzZSBpdCBtYWtl cyB0aGUgY29kZSBtb3JlCj4gY29tcGxleCwgaXQgaXMganVzdCBiZWNhdXNlIG9mIHNob2RkeSBk b2N1bWVudGF0aW9uIGFuZCBuYW1pbmcuCj4gCj4gUXVpdGUgb2Z0ZW4gaW1wbGVtZW50aW5nIHR3 ZWFrcyBsaWtlIHRoYXQgYXJlIHF1aXRlIGVhc3kgaW4gYSBmcmFtZXdvcmssIHNpbmNlCj4geW91 IGhhdmUgYWxsIHRoZSBpbmZvcm1hdGlvbiByZWFkaWx5IGF2YWlsYWJsZS4gSW4gYSBkcml2ZXIg aXQgY2FuIHF1aWNrbHkgYmVjb21lCj4gbWVzc3kuCgpJbiB0aGlzIGNhc2UsICJidWZmZXJlZCIg aXMgdXNlZCB0byBkaXNhYmxlIHRoZSBjaGVja3MgZm9yIGhhdmluZyBhdCBsZWFzdCBvbmUKYnVm ZmVyIGluIHRoZSByZWFkeSBxdWV1ZXMuIEluIG1vc3QgY2FzZXMsIGlmIHlvdSBkb24ndCBoYXZl IGF0IGxlYXN0IDEgcGVuZGluZwpjYXB0dXJlIGFuZCAxIHBlbmRpbmcgb3V0cHV0IGJ1ZmZlciwg dGhlcmUgaXMgbm8gcG9pbnQgaW4gY2FsbGluZyBkZXZpY2VfcnVuLgoKSW4gcmVhbGl0eSwgZHJp dmVycyB3aWxsIGFkZCB1c2UgY2FzZSBzcGVjaWZpYyBjaGVja3MgaW4gdGhlaXIgam9iX3JlYWR5 KCkKaW1wbGVtZW50YXRpb24uIEZvciBkZWNvZGVycywgdGhlIGNhc2VzIEkgY2FuIHRoaW5rIG9m IGFyZToKCi0gT24gY2FwdHVyZSBpZiB5b3UgaGF2ZW4ndCBwYXJzZWQgdGhlIHN0cmVhbSBoZWFk ZXIKLSBPbiBjYXB0dXJlIGlmIHRoZSBkcml2ZXIgcmVtb3ZlcyB0aGVtIGZyb20gcmVhZHkgcXVl dWUgYXMgYSB3YXkgdG8gdHJhY2sgd2hpY2gKb25lIGFyZSBjb25zaWRlcmVkIGZyZWUgYW5kIG1h eSBiZSB1c2VkIGF0IGFueSB0aW1lIGJ5IHRoZSBmaXJtd2FyZQotIE9uIG91dHB1dCBxdWV1ZSwg aWYgeW91IG5lZWQgZGV2aWNlX3J1bigpIHRvIGJlIGNhbGxlZCB0byBjb21wbGV0ZSB0aGUgZHJh aW4KdGhlIHJlb3JkZXIgcXVldWUKCllldCwgeW91IHdhbnQgdGhpcyBjaGVjayBhZnRlciBzdHJl YW0gaGVhZGVycyBhcmUgcGFyc2VkLCBvciB3aGVuZXZlciBhIG5ldwpiaXRzdHJlYW0gZGVjb2Rl IG9wZXJhdGlvbiBpcyB0byBiZSBxdWV1ZWQgaW4gdGhlIGZpcm13YXJlLiBTbyB0aGlzIGNoZWNr IGdldHMKcmUtaW1wbGVtZW50ZWQsIGJ1dCBkeW5hbWljYWxseSwgaW4gYWxsIGRlY29kZXJzLgoK RGVpbnRlcmxhY2VycyBtYXkgbmVlZHMgdGhpcyB0b28gd2l0aCBzb21lIGFsZ29yaXRobXMgKHRo ZSBvbmUgdGhhdCBpbnRyb2R1Y2UKZGVsYXlzIGF0IGxlYXN0KS4gSXRzIG5vdCBjbGVhciB0byBt ZSB3aHkgaXQgd2FzIGNhbGxlZCBidWZmZXJlZCwKaWdub3JlX3JkeV9xdWV1ZSBtaWdodCBoYXZl IGJlZW4gYW4gb3B0aW9uLCB0aG91Z2ggSSdtIG5vdCBmdWxseSBjb25maWRlbnQuIE5vdGUKdGhh dCBNMk0gY2FuIGJlIGNvbmZ1c2luZywgc2luY2Ugd2hlbmV2ZXIgeW91IGFzayBmb3IgbGFzdCBz b21ldGhpbmcsIGl0cyBhbHdheXMKcmVsYXRpdmUgdG8gdGhlIHJlYWR5IHF1ZXVlLCBhbmQgbWF5 IG5vdCBtYWtlIGEgbG90IG9mIHNlbnNlIGluIHRoZSBjb250ZXh0IGl0CmlzIHVzZWQuCgo+IAo+ IEZvciBjb2RlYyBzdXBwb3J0IHRoZXJlIGFyZSBhIG51bWJlciBvZiBpc3N1ZXMgdGhhdCBpbmNy ZWFzZSBjb21wbGV4aXR5Ogo+IGltcGxlbWVudGluZyBzdXBwb3J0IGZvciB0aGUgTEFTVCBmbGFn IGFuZCBldmVudHMsIGFuZCBzdXBwb3J0aW5nIGJ1ZmZlcnMKPiB0aGF0IGNhbiBiZSBoZWxkLiBF c3BlY2lhbGx5IHNpbmNlIGRyaXZlciBpbXBsZW1lbnRhdGlvbnMgdGVuZCB0byB2YXJ5Lgo+IAo+ IEkndmUgYmVlbiBleHBlcmltZW50aW5nIHdpdGggc29tZSBjbGVhbnVwcyBhbmQgY2hhbmdlcyBp biB2NGwyLW1lbTJtZW0uYwo+IChodHRwczovL2dpdC5saW51eHR2Lm9yZy9odmVya3VpbC9tZWRp YV90cmVlLmdpdC9sb2cvP2g9ZW5jLWRlYy1jbWQpLCBtYWlubHkKPiBzdXJyb3VuZGluZyB0aGUg aGFuZGxpbmcgb2YgdGhlIExBU1QgZmxhZy4gTm90ZTogdGhpcyBpcyBmYWlsaW5nIHRoZSBjb21w bGlhbmNlCj4gdGVzdHMsIEkgaGF2ZW4ndCBoYWQgdGhlIHRpbWUgdG8gcHVyc3VlIHRoaXMgZnVy dGhlci4KPiAKPiBJJ20gbm90IHN1cmUgd2hldGhlciB0aGUgYmVzdCBhcHByb2FjaCBpcyB0byBt b3ZlIHRoaW5ncyBvdXQgb2YgdGhlIG0ybSBmcmFtZXdvcmssCj4gb3IgbW92ZSB0aGluZ3MgaW50 byB0aGUgbTJtIGZyYW1ld29yaywgb3IgYWRkIGEgbW9yZSBjb2RlYy1zcGVjaWZpYyBsYXllciBv biB0b3AKPiBvZiB0aGUgbTJtIGZyYW1ld29yaywgb3IgYSBjb21iaW5hdGlvbiBvZiBhbGwgb2Yg dGhlc2UuCj4gCj4gSXQgaXMgc29tZXRoaW5nIHRoYXQgbmVlZHMgZXhwZXJpbWVudGF0aW9uLCBq dXN0IHNlZSB3aGF0IHdvcmtzLgoKSSBjYW4gc2VlIHlvdSBoYXZlIG9taXR0ZWQgbWFya19zdG9w cGVkKCkgY2FsbGVzIHdoZW4gcmVmYWN0b3JpbmcsIHdoaWNoIG1ha2VzCnRoZXNlIHBhdGNoZXMg Y2hhbmdlIHRoZSBiZWhhdmlvdXIuIENvdWxkIGJlIHJlbGF0ZWQuCgpUaGlzIGlzIG5vIGxvbmdl ciBzdHJpY3RseSByZWxhdGVkIHRvIHRoaXMgcGF0Y2gsIGJ1dCBJIHRoaW5rIGNtZF9zdG9wKCkK aW1wbGVtZW50YXRpb24gKGV2ZW4gYWZ0ZXIgeW91ciBjaGFuZ2VzKSBhcmUgbWlzcy1maXQgZm9y IGRyaXZlciB0aGF0IHNwZWFrcyB0bwpmaXJtd2FyZS4gQXMgdGhlIGZpcm13YXJlIGlzIGJlaW5n IG1hZGUgYXdhcmUgb2YgdGhlIGZyZWUgYnVmZmVycywgeW91IGNhbid0Cmp1c3QgY2hlcnJ5LXBp Y2sgZnJvbSB0aGUgY2FwdHVyZSBxdWV1ZSwgeW91IGhhdmUgdG8gc3luY2hyb25pc2UgeW91ciBz dGF0ZSB3aXRoCnRoZSBmaXJtd2FyZSB3aGlsZSBkcmFpbmluZy4gVGhlIGhlbHBlciBzaG91bGQg YmUgc3BsaXQgaW4gdHdvIHBhcnRzIEkgc3VwcG9zZSwKYnV0IGN1dHRpbmcgdGhlIGxpbmUgaXNu J3QgZWFzeS4KClRocmVhZCBzYWZlIHVzYWdlIG9mIHRoZSBudW1lcm91cyBib29sZWFuIGltcGxp Y2F0ZWQgaW4gdGhlIGRyYWluaW5nIHN0YXRlIGlzCmFsc28gZGlmZmljdWx0LiBUaGVyZSBpcyBu byBvdGhlciBvcHRpb24gdGhlbiBpbnRyb2R1Y2UgYSBtdXRleCBvciBzcGlubG9jayAoaWYKdGhl IHN0YXRlIGlzIG5lZWRlZCBpbiBqb2JfcmVhZHkoKSBpbXBsZW1lbnRhdGlvbikgdG8gbWFrZSB0 aGlzIHRocmVhZCBzYWZlIGFuZApyZWxpYWJsZS4KCj4gCj4gQnV0IGZvciB0aGlzIHNwZWNpZmlj IGZsYWc6IEkgdGhpbmsgaXQgaXMgZmluZSB0byBwdXQgdGhhdCBpbiB0aGUgbTJtIGZyYW1ld29y aywKPiBqdXN0IGRvY3VtZW50IGFuZCBuYW1lIGl0IHdlbGwuCgpBY2suCgo+IAo+IFJlZ2FyZHMs Cj4gCj4gCUhhbnMKPiAKPiA+IAo+ID4gcmVnYXJkcywKPiA+IE5pY29sYXMKPiA+IAo+ID4gPiAK PiA+ID4gPiAgICoKPiA+ID4gPiAgICogUXVldWUgZm9yIGJ1ZmZlcnMgcmVhZHkgdG8gYmUgcHJv Y2Vzc2VkIGFzIHNvb24gYXMgdGhpcwo+ID4gPiA+ICAgKiBpbnN0YW5jZSByZWNlaXZlcyBhY2Nl c3MgdG8gdGhlIGRldmljZS4KPiA+ID4gPiBAQCAtNjksNiArNzksNyBAQCBzdHJ1Y3QgdjRsMl9t Mm1fcXVldWVfY3R4IHsKPiA+ID4gPiAgCXNwaW5sb2NrX3QJCXJkeV9zcGlubG9jazsKPiA+ID4g PiAgCXU4CQkJbnVtX3JkeTsKPiA+ID4gPiAgCWJvb2wJCQlidWZmZXJlZDsKPiA+ID4gPiArCWJv b2wJCQlpZ25vcmVfc3RyZWFtaW5nOwo+ID4gPiA+ICB9Owo+ID4gPiA+ICAKPiA+ID4gPiAgLyoq Cj4gPiA+ID4gQEAgLTU2NCw2ICs1NzUsMTIgQEAgc3RhdGljIGlubGluZSB2b2lkIHY0bDJfbTJt X3NldF9kc3RfYnVmZmVyZWQoc3RydWN0IHY0bDJfbTJtX2N0eCAqbTJtX2N0eCwKPiA+ID4gPiAg CW0ybV9jdHgtPmNhcF9xX2N0eC5idWZmZXJlZCA9IGJ1ZmZlcmVkOwo+ID4gPiA+ICB9Cj4gPiA+ ID4gIAo+ID4gPiA+ICtzdGF0aWMgaW5saW5lIHZvaWQgdjRsMl9tMm1fc2V0X2RzdF9pZ25vcmVf c3RyZWFtaW5nKHN0cnVjdCB2NGwyX20ybV9jdHggKm0ybV9jdHgsCj4gPiA+ID4gKwkJCQkJCSAg ICAgYm9vbCBpZ25vcmVfc3RyZWFtaW5nKQo+ID4gPiA+ICt7Cj4gPiA+ID4gKwltMm1fY3R4LT5j YXBfcV9jdHguaWdub3JlX3N0cmVhbWluZyA9IGlnbm9yZV9zdHJlYW1pbmc7Cj4gPiA+ID4gK30K PiA+ID4gPiArCj4gPiA+IAo+ID4gPiBJIHRoaW5rIHRoaXMgaXMgb3ZlcmtpbGwsIGVzcC4gd2hl biB0aGUgZmllbGQgaXMgbW92ZWQgdG8gbTJtX2N0eC4gSnVzdCBjbGVhcmx5Cj4gPiA+IGRvY3Vt ZW50IHRoYXQgZHJpdmVycyBjYW4gc2V0IHRoaXMuCj4gPiA+IAo+ID4gPiBSZWdhcmRzLAo+ID4g PiAKPiA+ID4gCUhhbnMKPiA+ID4gCj4gPiA+ID4gIC8qKgo+ID4gPiA+ICAgKiB2NGwyX20ybV9j dHhfcmVsZWFzZSgpIC0gcmVsZWFzZSBtMm0gY29udGV4dAo+ID4gPiA+ICAgKgo+ID4gPiA+IAo+ ID4gPiAKPiA+IAo+IAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlz dHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2xpbnV4LWFybS1rZXJuZWwK