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 6DD03C48BC3 for ; Mon, 19 Feb 2024 09:41:56 +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:Message-ID:Date: In-reply-to:Subject:Cc:To:From:References:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Owner; bh=yoT1NmiXxtUCFSVEB4j1Q2ksnq46ZC2+3f9PNmcRJk0=; b=CM3zhDjsnFlLHerQ+xI4+zURoP 2+UqiEwf3uhla7hY8yyIgqI5dzbriWuBVMO2POZmavRiMxPHg4DNI/mI1YgV6jlPYL/RBq0Asq9h7 ahH42Rw6QnCZWV5I/0/uewQ/9O+OlS1aqnwy4kdQm+atbeS5cnVcuRPY6npScDSN/L2HUdAozoFOp cly2IIhT8gNVZuLY3YBF1WoHZ+Q8P2F9vMZrj6oJyB+KxFthIfUHw1eR/hSuWRka8Zx2LBA+K8mQ1 1cheOIZZO06166H3R7BU2Y9bQGCkUJwOYzuRP2D4r+JvJxFA36O4HhIvFx1cGXJqNv7h2Yxyjjhn7 C/ANeetw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rc09h-00000009s4f-2ppt; Mon, 19 Feb 2024 09:41:45 +0000 Received: from mout-p-201.mailbox.org ([2001:67c:2050:0:465::201]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rc09e-00000009s3K-1nGR for linux-arm-kernel@lists.infradead.org; Mon, 19 Feb 2024 09:41:44 +0000 Received: from smtp1.mailbox.org (smtp1.mailbox.org [10.196.197.1]) (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) by mout-p-201.mailbox.org (Postfix) with ESMTPS id 4TdcxT5hb6z9sZH; Mon, 19 Feb 2024 10:41:33 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oltmanns.dev; s=MBO0001; t=1708335693; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=doZUdmkE8gcAaDePJY3w6dTirs9rrKDL9kH/AR+ydsY=; b=X/3HKccSZgUn6ULcE9BtF2OwLKM1jeE1MSxbU0Ltx5g/hj5GZYJ6te6QBp7GDIxb8O8Ihu ODcDaa5P0BPMG8+DHdpdkO2l+jwlylTB+l0iELPe0ZuiROoGL6znzu/LpcBDd8i1waplWU MtOETbuHV0TDmRV3s4wjz37nYZkSbj+Dul2U212y+QYf+cTG/wwV6LnltKw/TsuV3yRB6C aDAU2mU1G0uzNC65acEQ3sbRTcZrbBq0YDmEkPUOnuc5TUvUw81EWmnLkaXtx2esDqeAn0 mWGOkG/HjNxGM33D+WKOrEVn0jdYc5trTHyXGfZhhgOBezO3VyHbwfYF9dgS5g== References: <20240205-pinephone-pll-fixes-v2-0-96a46a2d8c9b@oltmanns.dev> <87wmrbxckj.fsf@oltmanns.dev> From: Frank Oltmanns To: =?utf-8?Q?Ond=C5=99ej?= Jirman Cc: Michael Turquette , Stephen Boyd , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland , Guido =?utf-8?Q?G=C3=BCnther?= , Purism Kernel Team , Neil Armstrong , Jessica Zhang , Sam Ravnborg , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Daniel Vetter , Rob Herring , Krzysztof Kozlowski , Conor Dooley , linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org Subject: Re: [PATCH v2 0/6] Pinephone video out fixes (flipping between two frames) In-reply-to: Date: Mon, 19 Feb 2024 10:41:19 +0100 Message-ID: <87r0h8n64g.fsf@oltmanns.dev> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240219_014142_634282_92DDD22B X-CRM114-Status: GOOD ( 52.30 ) 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 SGkgT25kxZllaiwKCk9uIDIwMjQtMDItMTEgYXQgMjA6MjU6MjkgKzAxMDAsIE9uZMWZZWogSmly bWFuIDxtZWdpQHhmZi5jej4gd3JvdGU6Cj4gSGkgRnJhbmssCj4KPiBPbiBTdW4sIEZlYiAxMSwg MjAyNCBhdCAwNDowOToxNlBNICswMTAwLCBGcmFuayBPbHRtYW5ucyB3cm90ZToKPj4gSGkgT25k xZllaiwKPj4KPj4gT24gMjAyNC0wMi0wNSBhdCAxNzowMjowMCArMDEwMCwgT25kxZllaiBKaXJt YW4gPG1lZ2lAeGZmLmN6PiB3cm90ZToKPj4gPiBPbiBNb24sIEZlYiAwNSwgMjAyNCBhdCAwNDo1 NDowN1BNICswMTAwLCBPbmTFmWVqIEppcm1hbiB3cm90ZToKPj4gPj4gT24gTW9uLCBGZWIgMDUs IDIwMjQgYXQgMDQ6MjI6MjNQTSArMDEwMCwgRnJhbmsgT2x0bWFubnMgd3JvdGU6Cj4+ID4+Cj4+ ID4+IFsuLi5dCj4+ID4+Cj4+ID4+IEFsc28gc3VueGktbmcgY2xrIGRyaXZlciBkb2VzIGFwcGx5 IE5NIGZhY3RvcnMgYXQgb25jZSB0byBQTExfR1BVIGNsb2NrLAo+PiA+PiB3aGljaCBjYW4gY2F1 c2Ugc3VkZGVuIGZyZXF1ZW5jeSBpbmNyZWFzZSBiZXlvbmQgaW50ZW5kZWQgb3V0cHV0IGZyZXF1 ZW5jeSwKPj4gPj4gYmVjYXVzZSBkaXZpc2lvbiBpcyBhcHBsaWVkIGltbWVkaWF0ZWx5IHdoaWxl IG11bHRpcGxpY2F0aW9uIGlzIHJlZmxlY3RlZAo+PiA+PiBzbG93bHkuCj4+ID4+Cj4+ID4+IEVn LiBpZiB5b3UncmUgY2hhbmdpbmcgZGl2aWRlciBmcm9tIDcgdG8gMSwgeW91IGNhbiBnZXQgYSBz dWRkZW4gN3ggb3V0cHV0Cj4+ID4+IGZyZXF1ZW5jeSBzcGlrZSwgYmVmb3JlIFBMTCBWQ08gbWFu YWdlcyB0byBsb3dlciB0aGUgZnJlcXVlbmN5IHRocm91Z2ggTiBjbGsKPj4gPj4gZGl2aWRlciBm ZWVkYmFjayBsb29wIGFuZCBsb2NrIG9uIGFnYWluLiBUaGlzIGNhbiBtZXNzIHVwIHdoYXRldmVy J3MgY29ubmVjdGVkCj4+ID4+IHRvIHRoZSBvdXRwdXQgcXVpdGUgYmFkbHkuCj4+ID4+Cj4+ID4+ IFlvdSdkIGhhdmUgdG8gcHV0IGxvZ2dpbmcgb24ga2VybmVsIHdyaXRlcyB0byBQTExfR1BVIHJl Z2lzdGVyIHRvIHNlZSB3aGF0Cj4+ID4+IGlzIHdyaXR0ZW4gaW4gdGhlcmUgYW5kIGlmIGRpdmlk ZXIgaXMgbG93ZXJlZCBzaWduaWZpY2FudGx5IG9uIHNvbWUgR1BVCj4+ID4+IGRldmZyZXEgZnJl cXVlbmN5IHRyYW5zaXRpb25zLgo+Pgo+PiBCeSBsb29raW5nIGF0IHRoZSBjbG9ja3MgaW4gY2xr X3N1bW1hcnkgaW4gZGVidWdmcywgdGhlIHJhdGUgb2YgUExMLUdQVQo+PiBhbHdheXMgbWF0Y2hl cyB0aGUgcmF0ZSBvZiB0aGUgR1BVIChhdCBsZWFzdCBhdCAxMjAsIDMxMiwgYW5kIDQzMiBNSHop Lgo+PiBUaGlzIGlzIGZ1cnRoZXIgdW5kZXJsaW5lZCBieSB0aGUgZmFjdCwgdGhhdCBub25lIG9m IHRoZSByYXRlcyBjYW4gYmUKPj4gYWNoaWV2ZWQgYnkgaW50ZWdlciBkaXZpZGluZyBvbmUgb2Yg dGhlIG90aGVyIHJhdGVzLiBzdW54aS1uZyB3b3VsZAo+PiBvbmx5IGZhdm9yIGEgZGlmZmVyZW50 IHJhdGUgZm9yIHBsbC1ncHUgdGhhbiB0aGUgb25lIHRoYXQgaXMgcmVxdWVzdGVkCj4+IGZvciB0 aGUgZ3B1LCBpZiBwbGwtZ3B1IGlzIGFscmVhZHkgcnVubmluZyBhdCBhIHJhdGUgc3VjaCB0aGF0 IHRoZXJlCj4+IGV4aXN0cyBhbiBNIOKIiCB7MSwgMiwgMywgNCwgNSwgNiwgNywgOH0sIHdoZXJl Cj4+ICAgcmF0ZSBvZiBwbGwtZ3B1IC8gTSA9IHJlcXVlc3RlZCBncHUgcmF0ZQo+PiBvciBpZiB0 aGUgcmVxdWVzdGVkIHJhdGUgY291bGQgbm90IGJlIHJlYWNoZWQgZGlyZWN0bHkgYnkgcGxsLWdw dS4gQm90aAo+PiBpcyBub3QgdGhlIGNhc2UgZm9yIHRoZSByYXRlcyBpbiBxdWVzdGlvbiAoMTIw LCAxOTIsIDMxMiwgYW5kIDQzMiBNSHopLgo+Pgo+PiBUaGlzIG1lYW5zIHRoYXQgdGhlIGZvbGxv d2luZyBkaXZpc29yL211bHRpcGxpZXJzIGFyZSB1c2VkIGJ5IHN1bnhpLW5nJ3MKPj4gY2N1X25t Ogo+PiBOID0gIDUsIE0gPSAxIGZvciAxMjAgTUh6IChtaW4gdmFsdWUgd2l0aG91dCBQQVRDSCA2 KQo+PiBOID0gIDgsIE0gPSAxIGZvciAxOTIgTUh6IChtaW4gdmFsdWUgYWZ0ZXIgYXBwbHlpbmcg UEFUQ0ggNikKPj4gTiA9IDEzLCBNID0gMSBmb3IgMzEyIE1Iego+PiBOID0gMTgsIE0gPSAxIGZv ciA0MzIgTUh6Cj4+Cj4+IFNvLCB3aXRoIG9yIHdpdGhvdXQgUEFUQ0ggNiwgdGhlIGRpdmlkZXIg c3RheXMgY29uc3RhbnQgYW5kIGl0J3Mgb25seQo+PiB0aGUgbXVsdGlwbGllciB0aGF0IGNoYW5n ZXMuIFRoaXMgbWVhbnMsIHRoZXJlIHNob3VsZCBiZSBubyB1bmV4cGVjdGVkCj4+IGZyZXF1ZW5j eSBzcGlrZXMsIHJpZ2h0Pwo+Cj4gTWF5YmUuIFRoYW5rcyBmb3IgZ2l2aW5nIGl0IGEgdHJ5LiBU aGVyZSBtYXkgc3RpbGwgYmUgb3RoZXIga2luZHMgb2YgZ2xpdGNoZXMKPiBldmVuIGlmIHRoZSBk aXZpc29yIHN0YXlzIHRoZSBzYW1lLiBJdCBhbGwgZGVwZW5kcyBob3cgdGhlIHJlZ2lzdGVyIHVw ZGF0ZSBpcwo+IGltcGxlbWVudGVkIGluIHRoZSBQTEwgYmxvY2suIEl0J3MgaGFyZCB0byBzYXku IEkgZ3Vlc3MsIHVubGVzcyBBbGx3aW5uZXIKPiBndWFyYW50ZWVzIGdsaXRjaGxlc3Mgb3V0cHV0 IGZyb20gYSBnaXZlbiBQTEwgd2hlbiBjaGFuZ2luZyBpdHMgcGFyYW1ldGVycywKPiB5b3UgY2Fu J3QgcmVseSBvbiB0aGUgb3V0cHV0IGJlaW5nIGNsZWFuIGR1cmluZyBjaGFuZ2VzLgo+Cj4+ID4+ IEl0J3MgYWxzbyB1bmNsZWFyIHdoYXQgaGFwcGVucyB3aGVuIEZSQUNfQ0xLX09VVCBvciBQTExf TU9ERV9TRUwgY2hhbmdlcy4KPj4KPj4gVGhvc2UgYXJlIG5vdCBjaGFuZ2VkIG9uY2UgdGhlIGNs b2NrIGlzIGluaXRpYWxpemVkLiBUaGUgYnVnIGhvd2V2ZXIKPj4gb2NjdXJzIGhvdXJzIG9yIGRh eXMgYWZ0ZXIgYm9vdGluZy4gSU1PLCB0aGlzIG1ha2VzIGl0IHVubGlrZWx5IHRoYXQgdGhpcwo+ PiBjb3VsZCBiZSB0aGUgY3VscHJpdC4KPj4KPj4gPj4gTWF5YmUgbm90IG11Y2ggYmVjYXVzZSBN IGlzIHN1cHBvc2VkIHRvIGJlIHNldCB0byAxLCBidXQgeW91IHN0aWxsIG5lZWQgdG8KPj4gPj4g Y2FyZSB3aGVuIGVuYWJsaW5nIGZyYWN0aW9uYWwgbW9kZSwgYW5kIHNldHRpbmcgTSB0byAxIGJl Y2F1c2UgdGhhdCdzIGV4YWN0bHkKPj4gPj4gdGhlIGJhZCBzY2VuYXJpbyBpZiBNIHdhcyBwcmV2 aW91c2x5IGhpZ2hlciB0aGFuIDEuCj4+ID4+Cj4+ID4+IEl0J3MgdHJpY2t5Lgo+PiA+Pgo+PiA+ PiBIYXZpbmcgR1BVIG1vZHVsZSBjbG9jayBnYXRlZCBkdXJpbmcgUExMIGNvbmZpZyBjaGFuZ2Vz IG1heSBoZWxwISBZb3UgY2FuCj4+ID4+IGRvIHRoYXQgd2l0aG91dCBsb2NraW5nIHlvdXJzZWxm IG91dCwgdW5saWtlIHdpdGggdGhlIENQVSBQTEwuCj4+ID4+Cj4+ID4+IFRoZXJlJ3MgYSBnYXRl IGVuYWJsZSBiaXQgZm9yIGl0IGF0IEdQVV9DTEtfUkVHLlNDTEtfR0FUSU5HLiAocGFnZSAxMjIp Cj4+Cj4+IFRoZSBHUFUgc2hvdWxkIGFscmVhZHkgYmUgcHJvcGVybHkgZ2F0ZWQ6Cj4+IGh0dHBz Oi8vZWxpeGlyLmJvb3RsaW4uY29tL2xpbnV4L3Y2LjcuNC9zb3VyY2UvZHJpdmVycy9jbGsvc3Vu eGktbmcvY2N1LXN1bjUwaS1hNjQuYyNMNTk5Cj4KPiBIb3cgc28/IFRoYXQncyBqdXN0IGNsb2Nr IGRlY2xhcmF0aW9uLiBIb3cgZG9lcyBpdCBndWFyYW50ZWUgdGhlIGNsb2NrIHRvIHRoZQo+IG1v ZHVsZSBpcyBnYXRlZCBkdXJpbmcgcGFyZW50IFBMTCBjb25maWd1cmF0aW9uIGNoYW5nZXM/Cj4K CllvdSdyZSBvZiBjb3Vyc2UgcmlnaHQuCgpJIG5vdyB0cmllZCB1c2luZyBhIHNpbWlsYXIgYXBw cm9hY2ggbGlrZSB0aGUgb25lIGZvciBjaGFuZ2VzIGZvciBvbgpQTEwtQ1BVLiBJdCdzIHVzaW5n IGEgbm90aWZpZXIgdG8gY29ubmVjdCB0aGUgQ1BVIHRvIHRoZSAyNCBNSHoKb3NjaWxsYXRvciBh bmQsIGFmdGVyIFBMTC1DUFUgaXMgYXQgaXRzIG5ldyByYXRlLCBjb25uZWN0aW5nIGl0IGJhY2sg dG8KUExMLUNQVS4KCkZvciB0aGUgR1BVIG15IGFwcHJvYWNoIHdhcyB0byBkaXNhYmxlIHRoZSBH UFUgcHJpb3IgdG8gY2hhbmdpbmcKUExMLUdQVSdzIHJhdGUgYW5kIHRoZW4gcmUtZW5hYmxpbmcg aXQsIG9uY2UgdGhlIHJhdGUgY2hhbmdlIGlzCmNvbXBsZXRlLiBJIHRoaW5rLCB0aGF0J3Mgd2hh dCB5b3Ugd2VyZSBwcm9wb3NpbmcsIHJpZ2h0PwoKVW5mb3J0dW5hdGVseSwgdGhpcyByZXN1bHRz IGluIGEgZnJvemVuIHBob25lIGV2ZW4gbW9yZSBxdWlja2x5LgoKQmVsb3cgaXMgbXkgY29kZS4g QWdhaW4sIGl0IGRvZXNuJ3Qgc29sdmUgdGhlIHByb2JsZW0sIGJ1dCBtYXliZQpzb21lYm9keSBj YW4gc3BvdCB3aGF0IEknbSBkb2luZyB3cm9uZy4KCkJlc3QgcmVnYXJkcywKICBGcmFuawoKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvY2xrL3N1bnhpLW5nL2NjdS1zdW41MGktYTY0LmMgYi9kcml2ZXJz L2Nsay9zdW54aS1uZy9jY3Utc3VuNTBpLWE2NC5jCmluZGV4IGQ2OGJkZjdkZDM0Mi4uNzQ1Mzgy NTlkNjdhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2Nsay9zdW54aS1uZy9jY3Utc3VuNTBpLWE2NC5j CisrKyBiL2RyaXZlcnMvY2xrL3N1bnhpLW5nL2NjdS1zdW41MGktYTY0LmMKQEAgLTk3Nyw2ICs5 NzcsMTEgQEAgc3RhdGljIHN0cnVjdCBjY3VfcmF0ZV9yZXNldF9uYiBzdW41MGlfYTY0X3BsbF92 aWRlbzBfcmVzZXRfdGNvbjBfbmIgPSB7CgogI2RlZmluZSBDQ1VfTUlQSV9EU0lfQ0xLIDB4MTY4 Cgorc3RhdGljIHN0cnVjdCBjY3VfZGl2X25iIHN1bjUwaV9hNjRfZ3B1X25iID0geworCS5jb21t b24JCT0gJmdwdV9jbGsuY29tbW9uLAorCS5kZWxheV91cwk9IDEsIC8qID8/PyAqLworfTsKKwog c3RhdGljIGludCBzdW41MGlfYTY0X2NjdV9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpw ZGV2KQogewogCXZvaWQgX19pb21lbSAqcmVnOwpAQCAtMTAyNSw2ICsxMDMwLDEwIEBAIHN0YXRp YyBpbnQgc3VuNTBpX2E2NF9jY3VfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikK IAlzdW41MGlfYTY0X3BsbF92aWRlbzBfcmVzZXRfdGNvbjBfbmIudGFyZ2V0X2NsayA9IHRjb24w X2Nsay5jb21tb24uaHcuY2xrOwogCWNjdV9yYXRlX3Jlc2V0X25vdGlmaWVyX3JlZ2lzdGVyKCZz dW41MGlfYTY0X3BsbF92aWRlbzBfcmVzZXRfdGNvbjBfbmIpOwoKKwkvKiBHYXRlIHRoZW4gdW5n YXRlIEdQVSBvbiBQTEwtR1BVIGNoYW5nZXMgKi8KKwljY3VfZGl2X25vdGlmaWVyX3JlZ2lzdGVy KHBsbF9ncHVfY2xrLmNvbW1vbi5ody5jbGssCisJCQkJICAmc3VuNTBpX2E2NF9ncHVfbmIpOwor CiAJcmV0dXJuIDA7CiB9CgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9jbGsvc3VueGktbmcvY2N1X2Rp di5jIGIvZHJpdmVycy9jbGsvc3VueGktbmcvY2N1X2Rpdi5jCmluZGV4IGNiMTBhM2VhMjNmOS4u ODM4MTNjNTRmYjJmIDEwMDY0NAotLS0gYS9kcml2ZXJzL2Nsay9zdW54aS1uZy9jY3VfZGl2LmMK KysrIGIvZHJpdmVycy9jbGsvc3VueGktbmcvY2N1X2Rpdi5jCkBAIC00LDcgKzQsOSBAQAogICog TWF4aW1lIFJpcGFyZCA8bWF4aW1lLnJpcGFyZEBmcmVlLWVsZWN0cm9ucy5jb20+CiAgKi8KCisj aW5jbHVkZSA8bGludXgvY2xrLmg+CiAjaW5jbHVkZSA8bGludXgvY2xrLXByb3ZpZGVyLmg+Cisj aW5jbHVkZSA8bGludXgvZGVsYXkuaD4KICNpbmNsdWRlIDxsaW51eC9pby5oPgoKICNpbmNsdWRl ICJjY3VfZ2F0ZS5oIgpAQCAtMTQyLDMgKzE0NCwzNyBAQCBjb25zdCBzdHJ1Y3QgY2xrX29wcyBj Y3VfZGl2X29wcyA9IHsKIAkuc2V0X3JhdGUJPSBjY3VfZGl2X3NldF9yYXRlLAogfTsKIEVYUE9S VF9TWU1CT0xfTlNfR1BMKGNjdV9kaXZfb3BzLCBTVU5YSV9DQ1UpOworCitzdGF0aWMgaW50IGNj dV9kaXZfbm90aWZpZXJfY2Ioc3RydWN0IG5vdGlmaWVyX2Jsb2NrICpuYiwKKwkJCSAgICAgICB1 bnNpZ25lZCBsb25nIGV2ZW50LCB2b2lkICpkYXRhKQoreworCXN0cnVjdCBjY3VfZGl2X25iICpk aXZfbmIgPSB0b19jY3VfZGl2X25iKG5iKTsKKworCWlmIChldmVudCA9PSBQUkVfUkFURV9DSEFO R0UpIHsKKwkJZGl2X25iLT5vcmlnaW5hbF9lbmFibGUgPSBjY3VfZGl2X2lzX2VuYWJsZWQoJmRp dl9uYi0+Y29tbW9uLT5odyk7CisJCWlmIChkaXZfbmItPm9yaWdpbmFsX2VuYWJsZSkgeworCQkJ Y2N1X2Rpdl9kaXNhYmxlKCZkaXZfbmItPmNvbW1vbi0+aHcpOworCQkJdWRlbGF5KGRpdl9uYi0+ ZGVsYXlfdXMpOworCQl9CisJfSBlbHNlIGlmIChldmVudCA9PSBQT1NUX1JBVEVfQ0hBTkdFKSB7 CisJCWlmIChkaXZfbmItPm9yaWdpbmFsX2VuYWJsZSkgeworCQkJY2N1X2Rpdl9lbmFibGUoJmRp dl9uYi0+Y29tbW9uLT5odyk7CisJCQl1ZGVsYXkoZGl2X25iLT5kZWxheV91cyk7CisJCX0KKwl9 CisKKwlyZXR1cm4gTk9USUZZX09LOworfQorCitpbnQgY2N1X2Rpdl9ub3RpZmllcl9yZWdpc3Rl cihzdHJ1Y3QgY2xrICpjbGssIHN0cnVjdCBjY3VfZGl2X25iICpkaXZfbmIpCit7CisJZGl2X25i LT5jbGtfbmIubm90aWZpZXJfY2FsbCA9IGNjdV9kaXZfbm90aWZpZXJfY2I7CisKKwlyZXR1cm4g Y2xrX25vdGlmaWVyX3JlZ2lzdGVyKGNsaywgJmRpdl9uYi0+Y2xrX25iKTsKK30KZGlmZiAtLWdp dCBhL2RyaXZlcnMvY2xrL3N1bnhpLW5nL2NjdV9kaXYuaCBiL2RyaXZlcnMvY2xrL3N1bnhpLW5n L2NjdV9kaXYuaAppbmRleCA5MGQ0OWVlOGUwY2MuLmUwOTZjN2JlNWRjYSAxMDA2NDQKLS0tIGEv ZHJpdmVycy9jbGsvc3VueGktbmcvY2N1X2Rpdi5oCisrKyBiL2RyaXZlcnMvY2xrL3N1bnhpLW5n L2NjdV9kaXYuaApAQCAtMjgzLDQgKzI4MywxNiBAQCBzdGF0aWMgaW5saW5lIHN0cnVjdCBjY3Vf ZGl2ICpod190b19jY3VfZGl2KHN0cnVjdCBjbGtfaHcgKmh3KQoKIGV4dGVybiBjb25zdCBzdHJ1 Y3QgY2xrX29wcyBjY3VfZGl2X29wczsKCitzdHJ1Y3QgY2N1X2Rpdl9uYiB7CisJc3RydWN0IG5v dGlmaWVyX2Jsb2NrCWNsa19uYjsKKwlzdHJ1Y3QgY2N1X2NvbW1vbgkqY29tbW9uOworCisJdTMy CWRlbGF5X3VzOwkvKiB1cyB0byB3YWl0IGFmdGVyIGNoYW5naW5nIHBhcmVudCByYXRlICovCisJ aW50CW9yaWdpbmFsX2VuYWJsZTsvKiBUaGlzIGlzIHNldCBieSB0aGUgbm90aWZpZXIgY2FsbGJh Y2sgKi8KK307CisKKyNkZWZpbmUgdG9fY2N1X2Rpdl9uYihfbmIpIGNvbnRhaW5lcl9vZihfbmIs IHN0cnVjdCBjY3VfZGl2X25iLCBjbGtfbmIpCisKK2ludCBjY3VfZGl2X25vdGlmaWVyX3JlZ2lz dGVyKHN0cnVjdCBjbGsgKmNsaywgc3RydWN0IGNjdV9kaXZfbmIgKm11eF9uYik7CisKICNlbmRp ZiAvKiBfQ0NVX0RJVl9IXyAqLwoKCgo+Cj4gQ0xLX1NFVF9SQVRFX1BBUkVOVCBvbmx5IGdhdGVz IG91dHB1dCBvbiByZS1wYXJlbnRpbmcsIG5vdCBvbiBwYXJlbnQgcmF0ZSBjaGFuZ2VzLAo+IGFj Y29yZGluZyB0byB0aGUgaGVhZGVyOgo+Cj4gICBodHRwczovL2VsaXhpci5ib290bGluLmNvbS9s aW51eC92Ni43LjQvc291cmNlL2luY2x1ZGUvbGludXgvY2xrLXByb3ZpZGVyLmgjTDE5Cj4KPiBZ b3UnZCBuZWVkIHBlcmhhcHMgQ0xLX1NFVF9SQVRFX0dBVEUgKmFuZCogc3RpbGwgdmVyaWZ5IHRo YXQgaXQgYWN0dWFsbHkgd29ya3MKPiBhcyBleHBlY3RlZCB2aWEgc29tZSB0cmFjaW5nIG9mIGdw dSBjbG9jayBlbmFibGUvZGlzYWJsZS9zZXRfcmF0ZSBhbmQgcGxsLWdwdQo+IHNldF9yYXRlLiBD TEtfU0VUX1JBVEVfR0FURSBzZWVtcyBjb25mdXNpbmdseSBkb2N1bW1lbnRlZDoKPgo+ICAgaHR0 cHM6Ly9lbGl4aXIuYm9vdGxpbi5jb20vbGludXgvdjYuNy40L3NvdXJjZS9kcml2ZXJzL2Nsay9j bGsuYyNMMTAzNAo+Cj4gc28gSSBkb24ndCBwYXJ0aWN1bGFybHkgdHJ1c3QgaXQgZG9lcyBleGFj bHR5IHdoYXQgdGhlIGhlYWRlciBjbGFpbXMgYW5kIHdoYXQKPiB3b3VsZCBiZSBuZWVkZWQgdG8g dGVzdCB0aGUgdGhlb3J5IHRoYXQgZ2F0aW5nIGdwdSBjbG9jayBkdXJpbmcgcmF0ZSBjaGFuZ2UK PiBtaWdodCBoZWxwLgo+Cj4ga2luZCByZWdhcmRzLAo+IAlvLgo+Cj4+IFRoYW5rIHlvdSBmb3Ig eW91ciBkZXRhaWxlZCBwcm9wb3NhbCEgSXQgd2FzIGluc2lnaHRmdWwgdG8gcmVhZC4gQnV0Cj4+ IHdoaWxlIHRob3NlIHdlcmUgYWxsIGdyZWF0IGlkZWFzLCB0aGV5IGhhdmUgYWxsIGFscmVhZHkg YmVlbiB0YWtlbiBjYXJlCj4+IG9mLiBJJ20gZnJlc2ggb3V0IG9mIGlkZWFzIGFnYWluIChleGNl cHQgZm9yIHBpbm5pbmcgdGhlIEdQVSByYXRlKS4KPj4KPj4gQWdhaW4sIHRoYW5rIHlvdSBzbyBt dWNoLAo+PiAgIEZyYW5rCj4+Cj4+ID4+Cj4+ID4+IEtpbmQgcmVnYXJkcywKPj4gPj4gCW8uCj4+ ID4+Cj4+ID4+ID4gSSB2ZXJ5IG11Y2ggYXBwcmVjaWF0ZSB5b3VyIGZlZWRiYWNrIQo+PiA+PiA+ Cj4+ID4+ID4gWzFdIGh0dHBzOi8vZ2l0bGFiLmNvbS9wb3N0bWFya2V0T1MvcG1hcG9ydHMvLS9p c3N1ZXMvODA1Cj4+ID4+ID4KPj4gPj4gPiBTaWduZWQtb2ZmLWJ5OiBGcmFuayBPbHRtYW5ucyA8 ZnJhbmtAb2x0bWFubnMuZGV2Pgo+PiA+PiA+IC0tLQo+PiA+PiA+IENoYW5nZXMgaW4gdjI6Cj4+ ID4+ID4gLSBkdHM6IEluY3JlYXNlIG1pbmltdW0gR1BVIGZyZXF1ZW5jeSB0byAxOTIgTUh6Lgo+ PiA+PiA+IC0gbmttIGFuZCBhNjQ6IEFkZCBtaW5pbXVtIGFuZCBtYXhpbXVtIHJhdGUgZm9yIFBM TC1NSVBJLgo+PiA+PiA+IC0gbmttOiBVc2UgdGhlIHNhbWUgYXBwcm9hY2ggZm9yIHNraXBwaW5n IGludmFsaWQgcmF0ZXMgaW4KPj4gPj4gPiAgIGNjdV9ua21fZmluZF9iZXN0KCkgYXMgaW4gY2N1 X25rbV9maW5kX2Jlc3Rfd2l0aF9wYXJlbnRfYWRqKCkuCj4+ID4+ID4gLSBua206IEltcHJvdmUg bmFtZXMgZm9yIHJhdGlvIHN0cnVjdCBtZW1iZXJzIGFuZCBoZW5jZSBnZXQgcmlkIG9mCj4+ID4+ ID4gICBkZXNjcmliaW5nIGNvbW1lbnRzLgo+PiA+PiA+IC0gbmttIGFuZCBhNjQ6IENvcnJlY3Qg ZGVzY3JpcHRpb24gaW4gdGhlIGNvbW1pdCBtZXNzYWdlczogTS9OIDw9IDMKPj4gPj4gPiAtIFJl bW92ZSBwYXRjaGVzIGZvciBubSBhcyB0aGV5IHdlcmUgbm90IG5lZWRlZC4KPj4gPj4gPiAtIHN0 NzcwMzogUmV3b3JrIHRoZSBjb21taXQgbWVzc2FnZSB0byBjb3ZlciBtb3JlIGJhY2tncm91bmQg Zm9yIHRoZQo+PiA+PiA+ICAgY2hhbmdlLgo+PiA+PiA+IC0gTGluayB0byB2MTogaHR0cHM6Ly9s b3JlLmtlcm5lbC5vcmcvci8yMDIzMTIxOC1waW5lcGhvbmUtcGxsLWZpeGVzLXYxLTAtZTIzOGI2 ZWQ2ZGMxQG9sdG1hbm5zLmRldgo+PiA+PiA+Cj4+ID4+ID4gLS0tCj4+ID4+ID4gRnJhbmsgT2x0 bWFubnMgKDYpOgo+PiA+PiA+ICAgICAgIGNsazogc3VueGktbmc6IG5rbTogU3VwcG9ydCBjb25z dHJhaW50cyBvbiBtL24gcmF0aW8gYW5kIHBhcmVudCByYXRlCj4+ID4+ID4gICAgICAgY2xrOiBz dW54aS1uZzogYTY0OiBBZGQgY29uc3RyYWludHMgb24gUExMLU1JUEkncyBuL20gcmF0aW8gYW5k IHBhcmVudCByYXRlCj4+ID4+ID4gICAgICAgY2xrOiBzdW54aS1uZzogbmttOiBTdXBwb3J0IG1p bmltdW0gYW5kIG1heGltdW0gcmF0ZQo+PiA+PiA+ICAgICAgIGNsazogc3VueGktbmc6IGE2NDog U2V0IG1pbmltdW0gYW5kIG1heGltdW0gcmF0ZSBmb3IgUExMLU1JUEkKPj4gPj4gPiAgICAgICBk cm0vcGFuZWw6IHN0NzcwMzogRHJpdmUgWEJENTk5IHBhbmVsIGF0IGhpZ2hlciBjbG9jayByYXRl Cj4+ID4+ID4gICAgICAgYXJtNjQ6IGR0czogYWxsd2lubmVyOiBhNjQ6IEZpeCBtaW5pbXVtIEdQ VSBPUFAgcmF0ZQo+PiA+PiA+Cj4+ID4+ID4gIGFyY2gvYXJtNjQvYm9vdC9kdHMvYWxsd2lubmVy L3N1bjUwaS1hNjQuZHRzaSB8ICA0ICsrLS0KPj4gPj4gPiAgZHJpdmVycy9jbGsvc3VueGktbmcv Y2N1LXN1bjUwaS1hNjQuYyAgICAgICAgIHwgMTQgKysrKysrKy0tLS0KPj4gPj4gPiAgZHJpdmVy cy9jbGsvc3VueGktbmcvY2N1X25rbS5jICAgICAgICAgICAgICAgIHwgMzQgKysrKysrKysrKysr KysrKysrKysrKysrKysrCj4+ID4+ID4gIGRyaXZlcnMvY2xrL3N1bnhpLW5nL2NjdV9ua20uaCAg ICAgICAgICAgICAgICB8ICA0ICsrKysKPj4gPj4gPiAgZHJpdmVycy9ncHUvZHJtL3BhbmVsL3Bh bmVsLXNpdHJvbml4LXN0NzcwMy5jIHwgMTQgKysrKystLS0tLS0KPj4gPj4gPiAgNSBmaWxlcyBj aGFuZ2VkLCA1NiBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKPj4gPj4gPiAtLS0KPj4g Pj4gPiBiYXNlLWNvbW1pdDogMDU5YzUzZTg3N2NhNmU3MjNlMTA0OTBjMjdjMTQ4N2E2M2U2NmVm ZQo+PiA+PiA+IGNoYW5nZS1pZDogMjAyMzEyMTgtcGluZXBob25lLXBsbC1maXhlcy0wY2NkZmRl MjczZTQKPj4gPj4gPgo+PiA+PiA+IEJlc3QgcmVnYXJkcywKPj4gPj4gPiAtLQo+PiA+PiA+IEZy YW5rIE9sdG1hbm5zIDxmcmFua0BvbHRtYW5ucy5kZXY+Cj4+ID4+ID4KCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGlu ZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMu aW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK