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 165BECCF2C3 for ; Fri, 16 Oct 2026 18:54:51 +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:MIME-Version:Reply-To:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:Date:References: In-Reply-To:Cc:To:Subject:From:Message-ID:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=mwdjPYqLafY/Dsc95ADxGcWvV9wQ2297hoQOneUx0vk=; b=tGdh/7SLsVQp+f wMMoMDSPSX5uDRjKjB8vbPU7iwa2Fb7IfN+fgYFXodB4iBC9V4RKW08nMlMhin//VVOqd1yTbx791 EaYDYuDB6g9ikMMjy4HC/M55V+aniC5p/4pMKIJ5IzgemAP1nqRwkQuEg0G1X2Y8NyrIX7sgBIDpe RSY1p7BGK81fbuz2IHppExIaElsZ4f5Z6rdoxDzxLAj29Gxgh+jz7PamFz+WV1YWnI5wVTH1Fjy8X Ky8dwF7M2faSnGQUFDGAYHKAcXNDq/Nu1POkde5wbuANJAFFWb/K9MdPj3hM8Cf39MXCgvIaU6cws X0pLlUhHox6ors1/5HXw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1xHn4s-00000003jen-2qJ9; Fri, 16 Oct 2026 18:54:50 +0000 Received: from tor.source.kernel.org ([172.105.4.254]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1xHn4r-00000003jeW-1617 for linux-phy@lists.infradead.org; Fri, 16 Oct 2026 18:54:49 +0000 Received: from smtp.kernel.org (quasi.space.kernel.org [100.103.45.18]) by tor.source.kernel.org (Postfix) with ESMTP id 8A11E60A8C; Fri, 16 Oct 2026 18:54:48 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id E883E1F000C4; Fri, 16 Oct 2026 18:54:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1792176888; bh=WV2zaR1ShyhyS9AqVrSSSVhqvG794ooayNEQ4/mSuNw=; h=From:Subject:Reply-To:To:Cc:In-Reply-To:References:Date; b=Wfn/phkKaSIQdrzr9uuCRdH/mcHJZlXwXfi2ZfSvC7bIQGUlDycdmVvWSFc7tS13P 9A6C7HFejQAIHKeridQQ/H1NxCkbwMxJaW1N7n3/SDpzt3BBWJdy01YbQ4POMkGjRs OD9+pnZKRJXKS5DfqJ8UUP6T1Y1Weu8/3310ive5UnDVN/gJYze4ZZ2gSPRZrtD7pL OejQq/plMLbaM/Tz7gaY6loY2OSZgWVhbxip+8g37nHbVRB3+Ceo2NFdQPOe23fFNC SiD/8mEZ9J+HR0cwzFobOeYserAsa9IQiibrNUnbe9m95uqIVIdTRU0QKspFJE+tyQ wVM5Qy+9yf5QQ== Message-ID: From: sashiko-bot@kernel.org Subject: Re: [PATCH v17 2/7] phy: rockchip: usbdp: Add reset hook support for dwc3 To: "Sebastian Reichel" Cc: linux-usb@vger.kernel.org, linux-phy@lists.infradead.org, vkoul@kernel.org, neil.armstrong@linaro.org, olteanv@gmail.com In-Reply-To: <20261016-b4-rockchip-dwc3-rockchip-glue-v17-2-876f96893e2f@collabora.com> References: <20261016-b4-rockchip-dwc3-rockchip-glue-v17-0-876f96893e2f@collabora.com> <20261016-b4-rockchip-dwc3-rockchip-glue-v17-2-876f96893e2f@collabora.com> Date: Fri, 16 Oct 2026 18:54:47 +0000 X-BeenThere: linux-phy@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Linux Phy Mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: sashiko-reviews@lists.linux.dev MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-phy" Errors-To: linux-phy-bounces+linux-phy=archiver.kernel.org@lists.infradead.org VGhhbmsgeW91IGZvciB5b3VyIGNvbnRyaWJ1dGlvbiEgU2FzaGlrbyBBSSByZXZpZXcgZm91bmQg NCBwb3RlbnRpYWwgaXNzdWUocykgdG8gY29uc2lkZXI6Ci0gW0hpZ2hdIHBoeTogcm9ja2NoaXA6 IG1pc3NpbmcgTlVMTCBjaGVjayBpbiByZXNldCBBUElzIGNhdXNlcyBwYW5pYwotIFtIaWdoXSBw aHk6IHJvY2tjaGlwOiB1c2JkcDogc3dfbW9kZSBsZWFrIGNhdXNlcyBTRXJyb3Igb24gRFdDMyBy ZW1vdmUKLSBbTWVkaXVtXSBwaHk6IHJvY2tjaGlwOiB1c2JkcDogSWdub3JlZCByZXR1cm4gdmFs dWUgb2YgZHdjMyBwcmUtcmVzZXQgaGFuZGxlciBhbGxvd3MgdW5zYWZlIFBIWSByZXNldAotIFtM b3ddIGJ1aWxkOiBtaXNzaW5nIGR1bW15IHN0dWJzIGZvciBya191ZHBoeV9yZWdpc3Rlcl9yZXNl dF9oYW5kbGVyCi0tCgpjb21taXQgYzAwMmIzMmRhZGVmNGRkZDU4MGI0NDNhN2FmYjJkZWJmMjMw NzNjYwpBdXRob3I6IFNlYmFzdGlhbiBSZWljaGVsIDxzZWJhc3RpYW4ucmVpY2hlbEBjb2xsYWJv cmEuY29tPgoKcGh5OiByb2NrY2hpcDogdXNiZHA6IEFkZCByZXNldCBob29rIHN1cHBvcnQgZm9y IGR3YzMKCldoZW4gVENQTSAoVHlwZS1DIFBvcnQgTWFuYWdlcikgdHJpZ2dlcnMgYSBvcmllbnRh dGlvbiBvciBtdXgKY2hhbmdlLCB0aGUgUEhZIG5lZWRzIHRvIHJlc2V0LiBUaGlzIHJlc3VsdHMg aW4gdGhlIFBIWSBubyBsb25nZXIKcHJvdmlkaW5nIGEgY2xvY2sgdG8gdGhlIFVTQiBjb250cm9s bGVyLiBJZiB0aGUgVVNCIGNvbnRyb2xsZXIKcmVnaXN0ZXJzIGFyZSBhY2Nlc3NlZCB3aXRob3V0 IHRoZSBjbG9jaywgU0Vycm9ycyBhcmUgZ2VuZXJhdGVkLgoKPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9waHkvcm9ja2NoaXAvcGh5LXJvY2tjaGlwLXVzYmRwLmMgYi9kcml2ZXJzL3BoeS9yb2NrY2hp cC9waHktcm9ja2NoaXAtdXNiZHAuYwo+IGluZGV4IGRiNjlkZDI0ZjczYjMuLmIzOTZmMjg2ZTc4 NTIgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9waHkvcm9ja2NoaXAvcGh5LXJvY2tjaGlwLXVzYmRw LmMKPiArKysgYi9kcml2ZXJzL3BoeS9yb2NrY2hpcC9waHktcm9ja2NoaXAtdXNiZHAuYwoKWyAu Li4gXQoKPiBAQCAtOTk1LDYgKzk5OSw0MyBAQCBzdGF0aWMgaW50IHJrX3VkcGh5X3BhcnNlX2R0 KHN0cnVjdCBya191ZHBoeSAqdWRwaHkpCj4gIAlyZXR1cm4gcmtfdWRwaHlfcmVzZXRfaW5pdCh1 ZHBoeSwgZGV2KTsKPiAgfQo+ICAKPiArc3RhdGljIGludCBya191ZHBoeV9ydW5fcmVzZXRfaGFu ZGxlcihzdHJ1Y3QgcmtfdWRwaHkgKnVkcGh5LCBib29sIHByZSkKPiArewo+ICsJaWYgKCF1ZHBo eS0+ZHdjM19yZXNldF9oYW5kbGVyKQo+ICsJCXJldHVybiAwOwo+ICsKPiArCWlmICghKHVkcGh5 LT5zd19tb2RlICYgVURQSFlfTU9ERV9VU0IpKQo+ICsJCXJldHVybiAwOwo+ICsKPiArCXJldHVy biB1ZHBoeS0+ZHdjM19yZXNldF9oYW5kbGVyKHVkcGh5LT5kd2MzX3Jlc2V0X2RhdGEsIHVkcGh5 LT5kd2MzX3Jlc2V0X3BvcnQsIHByZSk7Cj4gK30KCltTZXZlcml0eTogSGlnaF0KQ2FuIHRoZSBV RFBIWV9NT0RFX1VTQiBmbGFnIGxlYWsgaW4gdWRwaHktPnN3X21vZGUgd2hlbiBya191ZHBoeV91 c2IzX3BoeV9leGl0KCkKcmV0dXJucyBlYXJseSAoZS5nLiBpbiBoaWdoLXNwZWVkIG9yIERQLW9u bHkgbW9kZSk/CgpJZiBya191ZHBoeV91c2IzX3BoeV9leGl0KCkgcmV0dXJucyBlYXJseToKCmRy aXZlcnMvcGh5L3JvY2tjaGlwL3BoeS1yb2NrY2hpcC11c2JkcC5jOnJrX3VkcGh5X3VzYjNfcGh5 X2V4aXQoKSB7CiAgICAvKiBEUCBvbmx5IG9yIGhpZ2gtc3BlZWQgKi8KICAgIGlmICghKHVkcGh5 LT5tb2RlICYgVURQSFlfTU9ERV9VU0IpIHx8IHVkcGh5LT5ocykKICAgICAgICByZXR1cm4gMDsK CiAgICB1ZHBoeS0+c3dfbW9kZSAmPSB+VURQSFlfTU9ERV9VU0I7CiAgICAuLi4KfQoKSXQgYnlw YXNzZXMgY2xlYXJpbmcgVURQSFlfTU9ERV9VU0IsIGxlYXZpbmcgaXQgcGVyc2lzdGVudGx5IHNl dCBldmVuIGFmdGVyIHRoZQpVU0IgUEhZIGlzIGxvZ2ljYWxseSBjbG9zZWQuIFRoZW4sIGR1cmlu ZyBEV0MzIGRyaXZlciByZW1vdmFsLCBpZiBhIGNvbmN1cnJlbnQKVHlwZS1DIG11eCBldmVudCB0 cmlnZ2VycyBhIERQIFBIWSByZWluaXRpYWxpemF0aW9uLCB0aGUgbGVha2VkIHN3X21vZGUgZmxh Zwp3b3VsZCBjYXVzZSBya191ZHBoeV9ydW5fcmVzZXRfaGFuZGxlcigpIHRvIGVycm9uZW91c2x5 IGV4ZWN1dGUgdGhlIHJlc2V0CmhhbmRsZXIuIEJlY2F1c2UgcG1fcnVudGltZV9kaXNhYmxlKCkg d2FzIGNhbGxlZCwgcG1fcnVudGltZV9nZXRfaWZfYWN0aXZlKCkKcmV0dXJucyAtRUlOVkFMLCBi eXBhc3NpbmcgdGhlIFBNIHN1c3BlbnNpb24gY2hlY2ssIGFsbG93aW5nIHRoZSBmdW5jdGlvbiB0 bwphY2Nlc3MgRFdDMyByZWdpc3RlcnMgd2l0aG91dCBhIGNsb2NrIGFuZCBnZW5lcmF0aW5nIGFu IFNFcnJvci4KCj4gKwo+ICt2b2lkIHJrX3VkcGh5X3VucmVnaXN0ZXJfcmVzZXRfaGFuZGxlcihz dHJ1Y3QgcGh5ICpwaHkpCj4gK3sKPiArCXN0cnVjdCBya191ZHBoeSAqdWRwaHkgPSBwaHlfZ2V0 X2RydmRhdGEocGh5KTsKPiArCgpbU2V2ZXJpdHk6IEhpZ2hdCkRvZXMgdGhpcyBleHBvcnRlZCBB UEkgbmVlZCB0byB2YWxpZGF0ZSB0aGF0IHRoZSBwaHkgcG9pbnRlciBpcyBub3QgTlVMTCBvcgpF UlJfUFRSIGJlZm9yZSBkZXJlZmVyZW5jaW5nIGl0PwoKSWYgYSBjb25zdW1lciBkcml2ZXIgcGFz c2VzIGEgTlVMTCBwaHkgKGZvciBleGFtcGxlLCBpZiB0aGUgVVNCMyBQSFkgaXMKb3B0aW9uYWwg b3IgYWJzZW50IGFuZCB0aGUgVVNCIGNvcmUgc2V0IGR3Yy0+dXNiM19nZW5lcmljX3BoeVtpXSB0 byBOVUxMKSwKcGh5X2dldF9kcnZkYXRhKHBoeSkgd2lsbCBjYXVzZSBhbiBpbW1lZGlhdGUga2Vy bmVsIHBhbmljLiBGb2xsb3ctdXAgcGF0Y2hlcwppbiBkd2MzLXJvY2tjaGlwIG1hbnVhbGx5IGNo ZWNrIGRldl9kcml2ZXJfc3RyaW5nKHBoeS0+ZGV2LnBhcmVudCksIHdoaWNoCmFsc28gY2F1c2Vz IGEgcGFuaWMgaWYgcGh5IGlzIE5VTEwuIEFkZGluZyBhIE5VTEwgY2hlY2sgaGVyZSBhbmQgaW4K cmtfdWRwaHlfcmVnaXN0ZXJfcmVzZXRfaGFuZGxlcigpIHdvdWxkIHByZXZlbnQgdGhlc2UgcGFu aWNzIGFuZCByZWxpZXZlCmNvbnN1bWVycyBmcm9tIHBlcmZvcm1pbmcgZnJhZ2lsZSB0eXBlIGNo ZWNraW5nLgoKPiArCWd1YXJkKG11dGV4KSgmdWRwaHktPm11dGV4KTsKPiArCj4gKwl1ZHBoeS0+ ZHdjM19yZXNldF9oYW5kbGVyID0gTlVMTDsKPiArCXVkcGh5LT5kd2MzX3Jlc2V0X2RhdGEgPSBO VUxMOwo+ICsJdWRwaHktPmR3YzNfcmVzZXRfcG9ydCA9IDA7Cj4gK30KPiArRVhQT1JUX1NZTUJP TChya191ZHBoeV91bnJlZ2lzdGVyX3Jlc2V0X2hhbmRsZXIpOwo+ICsKPiArdm9pZCBya191ZHBo eV9yZWdpc3Rlcl9yZXNldF9oYW5kbGVyKHN0cnVjdCBwaHkgKnBoeSwKPiArCQkJCSAgICAgaW50 ICgqcmVzZXRfaGFuZGxlcikodm9pZCAqZGF0YSwgaW50IHBvcnQsIGJvb2wgcHJlKSwKPiArCQkJ CSAgICAgdm9pZCAqZGF0YSwgaW50IHBvcnQpCj4gK3sKPiArCXN0cnVjdCBya191ZHBoeSAqdWRw aHkgPSBwaHlfZ2V0X2RydmRhdGEocGh5KTsKPiArCgpbU2V2ZXJpdHk6IEhpZ2hdClNpbWlsYXIg dG8gcmtfdWRwaHlfdW5yZWdpc3Rlcl9yZXNldF9oYW5kbGVyKCksIHNob3VsZCB3ZSBjaGVjayBp ZiBwaHkgaXMgTlVMTApvciBFUlJfUFRSIGJlZm9yZSBkZXJlZmVyZW5jaW5nIGl0IGhlcmU/Cgo+ ICsJZ3VhcmQobXV0ZXgpKCZ1ZHBoeS0+bXV0ZXgpOwo+ICsKPiArCXVkcGh5LT5kd2MzX3Jlc2V0 X2hhbmRsZXIgPSByZXNldF9oYW5kbGVyOwo+ICsJdWRwaHktPmR3YzNfcmVzZXRfZGF0YSA9IGRh dGE7Cj4gKwl1ZHBoeS0+ZHdjM19yZXNldF9wb3J0ID0gcG9ydDsKPiArfQo+ICtFWFBPUlRfU1lN Qk9MKHJrX3VkcGh5X3JlZ2lzdGVyX3Jlc2V0X2hhbmRsZXIpOwo+ICsKPiAgc3RhdGljIGludCBy a191ZHBoeV9wb3dlcl9vbihzdHJ1Y3QgcmtfdWRwaHkgKnVkcGh5LCB1OCBtb2RlKQo+ICB7Cj4g IAlpbnQgcmV0Owo+IEBAIC0xMDA1LDI0ICsxMDQ2LDM2IEBAIHN0YXRpYyBpbnQgcmtfdWRwaHlf cG93ZXJfb24oc3RydWN0IHJrX3VkcGh5ICp1ZHBoeSwgdTggbW9kZSkKPiAgCX0KPiAgCj4gIAlp ZiAodWRwaHktPnN0YXR1cyA9PSBVRFBIWV9NT0RFX05PTkUpIHsKPiArCQlya191ZHBoeV9ydW5f cmVzZXRfaGFuZGxlcih1ZHBoeSwgdHJ1ZSk7Cj4gKwoKW1NldmVyaXR5OiBNZWRpdW1dClNob3Vs ZCB3ZSBjaGVjayB0aGUgcmV0dXJuIHZhbHVlIG9mIHJrX3VkcGh5X3J1bl9yZXNldF9oYW5kbGVy KHVkcGh5LCB0cnVlKQpoZXJlIGFuZCBhYm9ydCB0aGUgcG93ZXItb24gc2VxdWVuY2Ugb24gZmFp bHVyZT8KCklmIHRoZSBEV0MzIGNvbnRyb2xsZXIgZmFpbHMgdG8gcXVpZXNjZSBkdWUgdG8gaGFy ZHdhcmUgc3RhdGUgb3IgdGltZW91dHMsCnRoZSBoYW5kbGVyIHdpbGwgcHJvcGFnYXRlIHRoZSBl cnJvciBjb2RlLiBJZ25vcmluZyB0aGlzIGVycm9yIGFuZApwcm9jZWVkaW5nIHVuY29uZGl0aW9u YWxseSB0byBya191ZHBoeV9zZXR1cCgpIGRyb3BzIHRoZSBQSFkgY2xvY2sgd2hpbGUKdGhlIERX QzMgUElQRSBpbnRlcmZhY2UgbWlnaHQgc3RpbGwgYmUgYWN0aXZlLCBkaXJlY3RseSB2aW9sYXRp bmcgdGhlIHNhZmV0eQppbnZhcmlhbnQgdGhpcyBwYXRjaCB3YXMgaW50cm9kdWNlZCB0byBlbmZv cmNlIGFuZCBsZWFkaW5nIHRvIFNFcnJvcnMuCgo+ICAJCXJldCA9IHJrX3VkcGh5X3NldHVwKHVk cGh5KTsKPiAtCQlpZiAocmV0KQo+ICsJCWlmIChyZXQpIHsKPiArCQkJcmtfdWRwaHlfcnVuX3Jl c2V0X2hhbmRsZXIodWRwaHksIGZhbHNlKTsKPiAgCQkJcmV0dXJuIHJldDsKPiArCQl9Cj4gIAo+ ICAJCWlmICghdWRwaHktPmhzICYmIHVkcGh5LT5tb2RlICYgVURQSFlfTU9ERV9VU0IpCj4gIAkJ CXJrX3VkcGh5X3UzX3BvcnRfZGlzYWJsZSh1ZHBoeSwgZmFsc2UpOwo+ICAJCXVkcGh5LT5waHlf bmVlZHNfcmVpbml0ID0gZmFsc2U7Cj4gKwo+ICsJCXJrX3VkcGh5X3J1bl9yZXNldF9oYW5kbGVy KHVkcGh5LCBmYWxzZSk7Cj4gIAl9IGVsc2UgaWYgKHVkcGh5LT5waHlfbmVlZHNfcmVpbml0KSB7 Cj4gKwkJcmtfdWRwaHlfcnVuX3Jlc2V0X2hhbmRsZXIodWRwaHksIHRydWUpOwo+ICsKCltTZXZl cml0eTogTWVkaXVtXQpTYW1lIHF1ZXN0aW9uIGhlcmUgZHVyaW5nIHRoZSByZWluaXRpYWxpemF0 aW9uIHNlcXVlbmNlLiBEb2VzIHRoaXMgbmVlZCB0bwpoYW5kbGUgdGhlIHJldHVybiB2YWx1ZSB0 byBwcmV2ZW50IHByb2NlZWRpbmcgd2l0aCBQSFkgcmVzZXQgd2hlbiB0aGUgRFdDMyBQSVBFCmlu dGVyZmFjZSBoYXMgbm90IHN1Y2Nlc3NmdWxseSBiZWVuIGRpc2FibGVkPwoKPiAgCQlya191ZHBo eV91M19wb3J0X2Rpc2FibGUodWRwaHksIHRydWUpOwo+ICAJCXVkZWxheSgxMCk7Cj4gIAo+ICAJ CXJldCA9IHJrX3VkcGh5X2luaXQodWRwaHkpOwo+IC0JCWlmIChyZXQpCj4gKwkJaWYgKHJldCkg ewo+ICsJCQlya191ZHBoeV9ydW5fcmVzZXRfaGFuZGxlcih1ZHBoeSwgZmFsc2UpOwo+ICAJCQly ZXR1cm4gcmV0Owo+ICsJCX0KPiAgCj4gIAkJaWYgKCF1ZHBoeS0+aHMgJiYgdWRwaHktPm1vZGUg JiBVRFBIWV9NT0RFX1VTQikKPiAgCQkJcmtfdWRwaHlfdTNfcG9ydF9kaXNhYmxlKHVkcGh5LCBm YWxzZSk7Cj4gIAkJdWRwaHktPnBoeV9uZWVkc19yZWluaXQgPSBmYWxzZTsKPiArCj4gKwkJcmtf dWRwaHlfcnVuX3Jlc2V0X2hhbmRsZXIodWRwaHksIGZhbHNlKTsKPiAgCX0KPiAgCj4gIAl1ZHBo eS0+c3RhdHVzIHw9IG1vZGU7Cj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvcGh5L3JvY2tj aGlwLXVzYmRwLmggYi9pbmNsdWRlL2xpbnV4L3BoeS9yb2NrY2hpcC11c2JkcC5oCj4gbmV3IGZp bGUgbW9kZSAxMDA2NDQKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvaW5jbHVkZS9saW51eC9waHkv cm9ja2NoaXAtdXNiZHAuaAo+IEBAIC0wLDAgKzEsMTYgQEAKPiArLyogU1BEWC1MaWNlbnNlLUlk ZW50aWZpZXI6IEdQTC0yLjAtb3ItbGF0ZXIgKi8KPiArLyoKPiArICogUm9ja2NoaXAgVVNCRFAg Q29tYm8gUEhZIHdpdGggU2Ftc3VuZyBJUCBibG9jayBkcml2ZXIKPiArICoKPiArICogQ29weXJp Z2h0IChDKSAyMDI2IENvbGxhYm9yYSBMdGQKPiArICovCj4gKwo+ICsjaWZuZGVmIF9fUk9DS0NI SVBfVVNCRFAKPiArI2RlZmluZSBfX1JPQ0tDSElQX1VTQkRQCj4gKwo+ICt2b2lkIHJrX3VkcGh5 X3VucmVnaXN0ZXJfcmVzZXRfaGFuZGxlcihzdHJ1Y3QgcGh5ICpwaHkpOwo+ICt2b2lkIHJrX3Vk cGh5X3JlZ2lzdGVyX3Jlc2V0X2hhbmRsZXIoc3RydWN0IHBoeSAqcGh5LAo+ICsJCQkJICAgICBp bnQgKCpyZXNldF9oYW5kbGVyKSh2b2lkICpkYXRhLCBpbnQgcG9ydCwgYm9vbCBwcmUpLAo+ICsJ CQkJICAgICB2b2lkICpkYXRhLCBpbnQgcG9ydCk7Cj4gKwoKW1NldmVyaXR5OiBMb3ddClNob3Vs ZCB0aGlzIGhlYWRlciBwcm92aWRlICNpZiBJU19FTkFCTEVEKENPTkZJR19QSFlfUk9DS0NISVBf VVNCRFApIGd1YXJkcwphbmQgc3RhdGljIGlubGluZSBkdW1teSBmYWxsYmFja3MgZm9yIHRoZXNl IGZ1bmN0aW9ucz8KCklmIENPTkZJR19VU0JfRFdDM19ST0NLQ0hJUCBpcyBlbmFibGVkIGJ1dCBD T05GSUdfUEhZX1JPQ0tDSElQX1VTQkRQIGlzIGRpc2FibGVkLAphbnkgY2FsbGVyIGludm9raW5n IHRoZXNlIEFQSXMgZGlyZWN0bHkgd2lsbCBjYXVzZSB0aGUga2VybmVsIGJ1aWxkIHRvIGZhaWwg YXQgdGhlCmxpbmtpbmcgc3RhZ2Ugd2l0aCB1bmRlZmluZWQgcmVmZXJlbmNlIGVycm9ycy4KCj4g KyNlbmRpZgoKLS0gClNhc2hpa28gQUkgcmV2aWV3IMK3IGh0dHBzOi8vc2FzaGlrby5kZXYvIy9w YXRjaHNldC8yMDI2MTAxNi1iNC1yb2NrY2hpcC1kd2MzLXJvY2tjaGlwLWdsdWUtdjE3LTAtODc2 Zjk2ODkzZTJmQGNvbGxhYm9yYS5jb20/cGFydD0yCgotLSAKbGludXgtcGh5IG1haWxpbmcgbGlz dApsaW51eC1waHlAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwczovL2xpc3RzLmluZnJhZGVhZC5v cmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1waHkK