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 75D52CD4F3D for ; Thu, 21 May 2026 02:20:46 +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:Message-Id:Date: References:In-Reply-To:Cc:To:Subject:From:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=yK5Pg7mHDSIj04ukuYHjzxegh5N94VK4YT2H2LTlssY=; b=ZM6IwhVWmf8VSw B0/biCsfpYtbyqBY4X+5h4CbNcuhamkTHE0gAiNEeShNpXXFaLIZKJ59fZKHdyA7Bm2KG9XOd35Qx cxRw930375VeJbIFGUdi8xbjcyaQ9SLR778lNEn6rSEGIYrNV9wgCIjz8tZ+3F38QR9TsGq+EGPnk NBbpT0gFPeGXO6ylaSZ6LEefy3E+ayL8lT4u8xC1Dz78LCMhbDtvRRIYhqy/nkOaifm8ws4XUqeZo WVdg9V4FkaV5v+cJBGyK4+NsMNuhPCbSSgrlUOSp0yxzyItNafDgejtMwKHGt60p/I/q+KOfMR+Fp mcFakTMoDL9Qxx1RsDCg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1wPt1h-00000006RnJ-46WG; Thu, 21 May 2026 02:20:45 +0000 Received: from casper.infradead.org ([2001:8b0:10b:1236::1]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1wPt1g-00000006Rn2-41Mi for linux-phy@bombadil.infradead.org; Thu, 21 May 2026 02:20:45 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Message-Id:Date: Content-Transfer-Encoding:Content-Type:References:In-Reply-To:Cc:To:Reply-To: Subject:From:Sender:MIME-Version:Content-ID:Content-Description; bh=YS9BBaFQ0I6KFrevP9NhpEZdbOoQlN1WCDJJolgfBSQ=; b=qQgmfpV+/B715ajuXx/Gn882J8 7sKnx3wYvz5Pzt0jEYQJ6CvCVWBdpWRhLlZVqFp1svKdPZpSqPp6/kuShlsRT/2gAkCusK8rWAGHD td1x+AJuSVCWZsWaHDCRQYBUVg3H6Yml5Qak6cfLlOX9RfgjMihS0MVF2mIMdJDv95AmEMdacSg9a Dxe4RggPeV4zi/cU4JwGYLVCPjxdbUtryHiKR9t+D0fxEtGAmVNt/gH96Nj/D5PnAScQABXxkwfSy +zXXG/fuBgEb5VQFpWJUeJiBHJHx1stcxLfhokMt1B/IS8l+/pFPZ1kPE4asoJQyK9MNoO3N2yK1V n2ZMhakw==; Received: from sea.source.kernel.org ([172.234.252.31]) by casper.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1wPt1d-00000007u1m-2EzL for linux-phy@lists.infradead.org; Thu, 21 May 2026 02:20:43 +0000 Received: from smtp.kernel.org (quasi.space.kernel.org [100.103.45.18]) by sea.source.kernel.org (Postfix) with ESMTP id 6069B41B4E; Thu, 21 May 2026 02:20:26 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id B0AF01F00A3B; Thu, 21 May 2026 02:20:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1779330026; bh=YS9BBaFQ0I6KFrevP9NhpEZdbOoQlN1WCDJJolgfBSQ=; h=From:Subject:Reply-To:To:Cc:In-Reply-To:References:Date; b=cd/rUlPhAsovpYVVvDh8pm282rns5aLPPoHhudYZVOc+dR+mh9izA5R+rG83hDp41 1fdHFEZN6/S7x0XxV31EBIKVSxaxJJzmyDdIDrJ9IESqUjcb2zMcO0aHLl8LNomJyO X0NJSIVqy6FrLR89ol9KZgIjjk/QxuUPuRMbyZXVUjCj5+eGdt8HZSGP57jvNz2Nkq oFeRKYLKh/qIXmZFjauprbgDPlVrr7TqNgZsEqDAO6XhPTEaZsjf9mSf6gXnbQN6lN QKFMlkvxO0d54t+HFYidHOAPdudH+K2U2AHiOcY6T6FEuu4KevgAPHo4w9rfnto/pJ XYFbkaCtgKrKg== From: sashiko-bot@kernel.org Subject: Re: [PATCH 2/4] phy: qcom: qmp-combo: track whether the cached typec_mux mode was committed to hardware To: "Michael Scott" Cc: devicetree@vger.kernel.org, olteanv@gmail.com, conor+dt@kernel.org, neil.armstrong@linaro.org, linux-phy@lists.infradead.org, robh@kernel.org, vkoul@kernel.org In-Reply-To: <20260521003615.1260844-3-mike.scott@oss.qualcomm.com> References: <20260521003615.1260844-3-mike.scott@oss.qualcomm.com> Date: Thu, 21 May 2026 02:20:25 +0000 Message-Id: <20260521022025.B0AF01F00A3B@smtp.kernel.org> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.9.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260521_032041_916985_F1D968C2 X-CRM114-Status: GOOD ( 27.18 ) 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 NSBwb3RlbnRpYWwgaXNzdWUocykgdG8gY29uc2lkZXI6CgpOZXcgaXNzdWVzOgotIFtIaWdoXSBU aGUgcGF0Y2ggaXMgYSBjb21wbGV0ZSBsb2dpY2FsIG5vLW9wIGFuZCBmYWlscyB0byBhbHRlciB0 aGUgaGFyZHdhcmUgcHJvZ3JhbW1pbmcgZmxvdyBpbiB0aGUgZGVzY3JpYmVkIGZhaWx1cmUgc2Nl bmFyaW8uCi0gW01lZGl1bV0gVGhlIHBhdGNoIHVuY29uZGl0aW9uYWxseSBtYXJrcyBgcW1wcGh5 X21vZGVfY29tbWl0dGVkID0gdHJ1ZWAgaW4gYHFtcF9jb21ib190eXBlY19tdXhfc2V0KClgLCBp Z25vcmluZyBoYXJkd2FyZSByZXByb2dyYW1taW5nIGZhaWx1cmVzLgoKUHJlLWV4aXN0aW5nIGlz c3VlczoKLSBbSGlnaF0gYHFtcF9jb21ib19jb21faW5pdCgpYCBpbmNvcnJlY3RseSBkZWNyZW1l bnRzIGBpbml0X2NvdW50YCBvbiBmYWlsdXJlIHdoZW4gYGZvcmNlID09IHRydWVgLCBjb3JydXB0 aW5nIHJlZmVyZW5jZSBjb3VudHMuCi0gW0hpZ2hdIFRPQ1RPVSByYWNlIGNvbmRpdGlvbiBpbiBg cW1wX2NvbWJvX3VzYl9leGl0KClgIGNhdXNlcyBgdXNiX2luaXRfY291bnRgIGludGVnZXIgdW5k ZXJmbG93LgotIFtIaWdoXSBEZWxheWVkIFBIWSBtb2RlIHN3aXRjaGVzIGFyZSBwZXJtYW5lbnRs eSBkcm9wcGVkIGlmIHRoZSBEUCBQSFkgaXMgYWN0aXZlbHkgcG93ZXJlZCBvbi4KLS0KCmNvbW1p dCA2ODkyZGJhZDQ3M2Q3MDM2NDYzYjhhODFmNTM5ZjNlYTViYmY1NWQ0CkF1dGhvcjogTWljaGFl bCBTY290dCA8bWlrZS5zY290dEBvc3MucXVhbGNvbW0uY29tPgpTdWJqZWN0OiBwaHk6IHFjb206 IHFtcC1jb21ibzogdHJhY2sgd2hldGhlciB0aGUgY2FjaGVkIHR5cGVjX211eCBtb2RlIHdhcyBj b21taXR0ZWQgdG8gaGFyZHdhcmUKClRoaXMgcGF0Y2ggYXR0ZW1wdHMgdG8gZml4IGFuIGlzc3Vl IHdoZXJlIHRoZSB0eXBlY19tdXhfc2V0IGZ1bmN0aW9uCmJhaWxzIG91dCBlYXJseSBhbmQgZmFp bHMgdG8gcmVwcm9ncmFtIGhhcmR3YXJlIGlmIGNhbGxlZCBiZWZvcmUKcGh5X2luaXQuIEl0IGFk ZHMgYSBjb21taXR0ZWQgZmxhZyB0byB0cmFjayBpZiB0aGUgY2FjaGVkIG1vZGUgbWF0Y2hlcwp0 aGUgYWN0dWFsIGhhcmR3YXJlIHN0YXRlLgoKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9waHkvcXVh bGNvbW0vcGh5LXFjb20tcW1wLWNvbWJvLmMgYi9kcml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNv bS1xbXAtY29tYm8uYwo+IGluZGV4IDQwNTc1ODNjMGNmZWIuLjliNmRhNzgzY2U2MDcgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9waHkvcXVhbGNvbW0vcGh5LXFjb20tcW1wLWNvbWJvLmMKPiArKysg Yi9kcml2ZXJzL3BoeS9xdWFsY29tbS9waHktcWNvbS1xbXAtY29tYm8uYwo+IEBAIC0zNzQ3LDYg KzM3NDgsOSBAQCBzdGF0aWMgaW50IHFtcF9jb21ib19jb21faW5pdChzdHJ1Y3QgcW1wX2NvbWJv ICpxbXAsIGJvb2wgZm9yY2UpCj4gIAlxcGh5X3NldGJpdHMocW1wLT5wY3MsIGNmZy0+cmVnc1tR UEhZX1BDU19QT1dFUl9ET1dOX0NPTlRST0xdLAo+ICAJCQlTV19QV1JETik7Cj4gIAo+ICsJLyog Y29tX2luaXQoKSBqdXN0IHByb2dyYW1tZWQgcmVnaXN0ZXJzIGZyb20gcW1wLT5xbXBwaHlfbW9k ZS4gKi8KPiArCXFtcC0+cW1wcGh5X21vZGVfY29tbWl0dGVkID0gdHJ1ZTsKPiArCj4gIAlyZXR1 cm4gMDsKPiAgCj4gIGVycl9hc3NlcnRfcmVzZXQ6Cj4gIAlyZXNldF9jb250cm9sX2J1bGtfYXNz ZXJ0KGNmZy0+bnVtX3Jlc2V0cywgcW1wLT5yZXNldHMpOwo+ICBlcnJfZGlzYWJsZV9yZWd1bGF0 b3JzOgo+ICAJcmVndWxhdG9yX2J1bGtfZGlzYWJsZShjZmctPm51bV92cmVncywgcW1wLT52cmVn cyk7Cj4gIGVycl9kZWNyZW1lbnRfY291bnQ6Cj4gIAlxbXAtPmluaXRfY291bnQtLTsKPiAgCj4g IAlyZXR1cm4gcmV0Owo+ICB9CgpbU2V2ZXJpdHk6IEhpZ2hdClRoaXMgaXMgYSBwcmUtZXhpc3Rp bmcgaXNzdWUsIGJ1dCBkb2VzIHRoaXMgZXJyb3IgcGF0aCBjb3JydXB0IHRoZSByZWZlcmVuY2UK Y291bnQgd2hlbiBjYWxsZWQgd2l0aCBmb3JjZSA9PSB0cnVlPwoKSWYgcW1wX2NvbWJvX2NvbV9p bml0KCkgaXMgY2FsbGVkIHdpdGggZm9yY2UgPSB0cnVlLCB0aGUgc2hvcnQtY2lyY3VpdApldmFs dWF0aW9uIGJ5cGFzc2VzIGluY3JlbWVudGluZyBxbXAtPmluaXRfY291bnQ6CgogICAgaWYgKCFm b3JjZSAmJiBxbXAtPmluaXRfY291bnQrKykKICAgICAgICByZXR1cm4gMDsKCkhvd2V2ZXIsIGlm IGEgc3Vic2VxdWVudCBvcGVyYXRpb24gbGlrZSByZWd1bGF0b3JfYnVsa19lbmFibGUoKSBmYWls cywgdGhlCmVycm9yIHBhdGgganVtcHMgdG8gZXJyX2RlY3JlbWVudF9jb3VudCBhbmQgdW5jb25k aXRpb25hbGx5IGRlY3JlbWVudHMgaXQuCgpDb3VsZCB0aGlzIHVuZGVyZmxvdyBpbml0X2NvdW50 IHRvIC0xLCBwZXJtYW5lbnRseSBicmVha2luZyB0aGUgaW5pdGlhbGl6YXRpb24Kc3RhdGUgbWFj aGluZSBzaW5jZSBzdWJzZXF1ZW50IGNoZWNrcyBsaWtlIGBpZiAocW1wLT5pbml0X2NvdW50Kysp YCB3aWxsIHNlZQp0cnV0aHkgdmFsdWVzPwoKWyAuLi4gXQoKPiBAQCAtNDUwNyw5ICs0NTExLDIy IEBAIHN0YXRpYyBpbnQgcW1wX2NvbWJvX3R5cGVjX211eF9zZXQoc3RydWN0IHR5cGVjX211eF9k ZXYgKm11eCwgc3RydWN0IHR5cGVjX211eF9zCj4gIAkJbmV3X21vZGUgPSBRTVBQSFlfTU9ERV9V U0IzX09OTFk7Cj4gIAl9Cj4gIAo+ICsJLyoKPiArCSAqIEZhc3QtcGF0aCBiYWlsIG9ubHkgd2hl biB0aGUgY2FjaGVkIG1vZGUgaXMgYWxzbyBrbm93biB0byBiZQo+ICsJICogY29tbWl0dGVkIHRv IGhhcmR3YXJlLiBUaGUgY2FjaGUgbWF5IGJlIGFoZWFkIG9mIHRoZSBoYXJkd2FyZQo+ICsJICog aWYgYSB0eXBlY19tdXhfc2V0IGFycml2ZWQgd2hpbGUgdGhlIFBIWSBoYWQgbm90IHlldCBiZWVu Cj4gKwkgKiBpbml0aWFsaXNlZCAoaW5pdF9jb3VudCA9PSAwKTsgaW4gdGhhdCBjYXNlIHRoZSBj YWNoZSB1cGRhdGUKPiArCSAqIGJlbG93IHdhcyB0aGUgb25seSB0aGluZyB0aGF0IHJhbiwgYW5k IHdlIHN0aWxsIG5lZWQgdG8gZHJpdmUKPiArCSAqIHRoZSByZWdpc3RlcnMgd2hlbiB0aGUgUEhZ IGRvZXMgY29tZSB1cC4KPiArCSAqLwo+ICAJaWYgKG5ld19tb2RlID09IHFtcC0+cW1wcGh5X21v ZGUpIHsKPiAtCQlkZXZfZGJnKHFtcC0+ZGV2LCAidHlwZWNfbXV4X3NldDogc2FtZSBxbXBwaHkg bW9kZSwgYmFpbCBvdXRcbiIpOwo+IC0JCXJldHVybiAwOwo+ICsJCWlmIChxbXAtPnFtcHBoeV9t b2RlX2NvbW1pdHRlZCkgewo+ICsJCQlkZXZfZGJnKHFtcC0+ZGV2LAo+ICsJCQkJInR5cGVjX211 eF9zZXQ6IHNhbWUgcW1wcGh5IG1vZGUgKGNvbW1pdHRlZCksIGJhaWwgb3V0XG4iKTsKPiArCQkJ cmV0dXJuIDA7Cj4gKwkJfQo+ICsJCWRldl9kYmcocW1wLT5kZXYsCj4gKwkJCSJ0eXBlY19tdXhf c2V0OiBzYW1lIHFtcHBoeSBtb2RlIGJ1dCB1bmNvbW1pdHRlZDsgcmVwcm9ncmFtbWluZ1xuIik7 Cj4gIAl9Cj4gIAo+ICAJaWYgKHFtcC0+cW1wcGh5X21vZGUgIT0gUU1QUEhZX01PREVfVVNCM19P TkxZICYmIHFtcC0+ZHBfcG93ZXJlZF9vbikgewo+ICAJCWRldl9lcnIocW1wLT5kZXYsICJEUCBQ SFkgaXMgc3RpbGwgaW4gdXNlLCBkZWxheWluZyBzd2l0Y2hcbiIpOwo+ICAJCXJldHVybiAwOwo+ ICAJfQoKW1NldmVyaXR5OiBIaWdoXQpUaGlzIGlzIGEgcHJlLWV4aXN0aW5nIGlzc3VlLCBidXQg ZG9lcyB0aGlzIGVhcmx5IHJldHVybiBwZXJtYW5lbnRseSBkcm9wCmRlbGF5ZWQgUEhZIG1vZGUg c3dpdGNoZXM/CgpJZiBhIHN3aXRjaCB0byBRTVBQSFlfTU9ERV9VU0IzX09OTFkgaXMgcmVxdWVz dGVkIGJ1dCB0aGUgRFAgUEhZIGlzIGFjdGl2ZWx5CnBvd2VyZWQgb24sIHRoaXMgYnJhbmNoIGJh aWxzIG91dCBlYXJseSwgbG9ncyBhIG1lc3NhZ2UsIGFuZCByZXR1cm5zIDAuCgpCZWNhdXNlIGl0 IHJldHVybnMgc3VjY2VzcyB3aXRob3V0IHVwZGF0aW5nIHFtcC0+cW1wcGh5X21vZGUgb3Igc2No ZWR1bGluZyBhCmRlbGF5ZWQgd29yayB0byBhcHBseSB0aGUgc3dpdGNoIGxhdGVyLCB0aGUgVHlw ZS1DIGZyYW1ld29yayBhc3N1bWVzIHRoZSBtb2RlCndhcyBzdWNjZXNzZnVsbHkgYXBwbGllZC4K CkRvZXMgdGhpcyBjYXVzZSBhIHBlcm1hbmVudCBkZXN5bmNocm9uaXphdGlvbiBiZXR3ZWVuIHNv ZnR3YXJlIHN0YXRlIGFuZApoYXJkd2FyZSwga2VlcGluZyB0aGUgRFAgUEhZIHBvd2VyZWQgd2hl biBpdCBzaG91bGQgYmUgZGlzYWJsZWQ/Cgo+IEBAIC00NTIxLDYgKzQ1MzgsNyBAQCBzdGF0aWMg aW50IHFtcF9jb21ib190eXBlY19tdXhfc2V0KHN0cnVjdCB0eXBlY19tdXhfZGV2ICptdXgsIHN0 cnVjdCB0eXBlY19tdXhfcwo+ICAJCXFtcC0+cW1wcGh5X21vZGUsIG5ld19tb2RlKTsKPiAgCj4g IAlxbXAtPnFtcHBoeV9tb2RlID0gbmV3X21vZGU7Cj4gKwlxbXAtPnFtcHBoeV9tb2RlX2NvbW1p dHRlZCA9IGZhbHNlOwo+ICAKPiAgCWlmIChxbXAtPmluaXRfY291bnQpIHsKCltTZXZlcml0eTog SGlnaF0KSXMgdGhpcyBwYXRjaCBlZmZlY3RpdmVseSBhIGxvZ2ljYWwgbm8tb3AgaW4gdGhlIGZh aWx1cmUgc2NlbmFyaW8gaXQKZGVzY3JpYmVzPwoKSWYgdHlwZWNfbXV4X3NldCgpIGlzIGNhbGxl ZCBiZWZvcmUgcGh5X2luaXQoKSAod2hlbiBpbml0X2NvdW50IGlzIDApLCB0aGUKZWFybHkgYmFp bC1vdXQgaXMgYnlwYXNzZWQgYmVjYXVzZSBxbXBwaHlfbW9kZV9jb21taXR0ZWQgaXMgZmFsc2Uu IEhvd2V2ZXIsCnRoZSBjb2RlIHRoZW4gcmVhY2hlcyB0aGUgYGlmIChxbXAtPmluaXRfY291bnQp YCBjaGVjayBoZXJlLCB3aGljaCBldmFsdWF0ZXMKdG8gZmFsc2UsIGNhdXNpbmcgdGhlIGZ1bmN0 aW9uIHRvIHJldHVybiB3aXRob3V0IHRvdWNoaW5nIHRoZSBoYXJkd2FyZSBhbnl3YXkuCgpXaGVu IHBoeV9pbml0KCkgZXZlbnR1YWxseSBleGVjdXRlcywgcW1wX2NvbWJvX2NvbV9pbml0KCkgY29y cmVjdGx5IHN5bmNzCmhhcmR3YXJlIHRvIHRoZSBjYWNoZWQgbW9kZSBhbmQgdW5jb25kaXRpb25h bGx5IHNldHMKcW1wcGh5X21vZGVfY29tbWl0dGVkID0gdHJ1ZS4KClN1YnNlcXVlbnQgY2FsbHMg dG8gdHlwZWNfbXV4X3NldCgpIHdpdGggdGhlIHNhbWUgbW9kZSB3aWxsIHNlZQpxbXBwaHlfbW9k ZV9jb21taXR0ZWQgPT0gdHJ1ZSBhbmQgYmFpbCBvdXQgZWFybHksIGV4YWN0bHkgYXMgdGhleSBk aWQgYmVmb3JlCnRoaXMgcGF0Y2guIERvZXMgdGhpcyBtZWFuIHRoZSBoYXJkd2FyZSBzdGF0ZSBy ZW1haW5zIHVuY2hhbmdlZCBmcm9tIHRoZQpwcmUtcGF0Y2ggYmVoYXZpb3I/Cgo+ICAJCWlmIChx bXAtPnVzYl9pbml0X2NvdW50KQpbIC4uLiBdCj4gIAkJCWlmIChxbXAtPmRwX2luaXRfY291bnQp Cj4gIAkJCQljZmctPmRwX2F1eF9pbml0KHFtcCk7Cj4gIAkJfQo+ICsKPiArCQkvKiBSZXByb2dy YW0gY29tcGxldGU7IGNhY2hlIG5vdyByZWZsZWN0cyBoYXJkd2FyZS4gKi8KPiArCQlxbXAtPnFt cHBoeV9tb2RlX2NvbW1pdHRlZCA9IHRydWU7Cj4gIAl9CgpbU2V2ZXJpdHk6IE1lZGl1bV0KSXMg aXQgc2FmZSB0byB1bmNvbmRpdGlvbmFsbHkgbWFyayB0aGUgaGFyZHdhcmUgc3RhdGUgYXMgY29t bWl0dGVkIGhlcmU/CgpUaGUgY29kZSBjYWxscyBxbXBfY29tYm9fY29tX2luaXQocW1wLCB0cnVl KSBlYXJsaWVyIGluIHRoaXMgYmxvY2sgdG8gYXBwbHkKaGFyZHdhcmUgY2hhbmdlcywgYnV0IGln bm9yZXMgaXRzIHJldHVybiB2YWx1ZS4gSWYgcW1wX2NvbWJvX2NvbV9pbml0KCkgZmFpbHMsCnRo ZSBoYXJkd2FyZSBzdGF0ZSByZW1haW5zIHVuY29uZmlndXJlZCwgYnV0IHRoaXMgZmxhZyBpcyBi bGluZGx5IHNldCB0byB0cnVlLgoKV291bGQgdGhpcyBwcmV2ZW50IGFueSBzdWJzZXF1ZW50IGF0 dGVtcHRzIHRvIGNvcnJlY3QgdGhlIGhhcmR3YXJlIHN0YXRlLApzaW5jZSBmdXR1cmUgY2FsbHMg d2lsbCB0cmlnZ2VyIHRoZSBlYXJseSBiYWlsLW91dCBvbgpxbXAtPnFtcHBoeV9tb2RlX2NvbW1p dHRlZD8KCgpbU2V2ZXJpdHk6IEhpZ2hdClRoaXMgaXNuJ3QgYSBidWcgaW50cm9kdWNlZCBieSB0 aGlzIHBhdGNoLCBidXQgaXMgdGhlcmUgYSB0aW1lLW9mLWNoZWNrIHRvCnRpbWUtb2YtdXNlIHJh Y2UgY29uZGl0aW9uIGluIHFtcF9jb21ib191c2JfZXhpdCgpIHRoYXQgY2FuIHVuZGVyZmxvdwp1 c2JfaW5pdF9jb3VudD8KCklmIHFtcC0+dXNiX2luaXRfY291bnQgaXMgY2hlY2tlZCBvdXRzaWRl IHRoZSBwaHlfbXV0ZXggaW4KcW1wX2NvbWJvX3VzYl9leGl0KCksIGEgY29uY3VycmVudCBUeXBl LUMgbW9kZSBzd2l0Y2ggY291bGQgb2NjdXI6CgpUaHJlYWQgMTogcW1wX2NvbWJvX3VzYl9leGl0 KCkKICAgIGlmIChxbXAtPnVzYl9pbml0X2NvdW50ID09IDApCiAgICAgICAgcmV0dXJuOwogICAg Ly8gUHJlZW1wdGVkIGJlZm9yZSBhY3F1aXJpbmcgcGh5X211dGV4CgpUaHJlYWQgMjogcW1wX2Nv bWJvX3R5cGVjX211eF9zZXQoKQogICAgbXV0ZXhfbG9jaygmcW1wLT5waHlfbXV0ZXgpOwogICAg Ly8gU3dpdGNoZXMgdG8gUU1QUEhZX01PREVfRFBfT05MWQogICAgcW1wLT51c2JfaW5pdF9jb3Vu dC0tOyAvLyBOb3cgMAogICAgbXV0ZXhfdW5sb2NrKCZxbXAtPnBoeV9tdXRleCk7CgpUaHJlYWQg MSByZXN1bWVzOgogICAgbXV0ZXhfbG9jaygmcW1wLT5waHlfbXV0ZXgpOwogICAgLi4uCiAgICBx bXAtPnVzYl9pbml0X2NvdW50LS07IC8vIFVuZGVyZmxvd3MgdG8gVUlOVF9NQVgKCkNvdWxkIHRo aXMgcGVybWFuZW50bHkgYnJlYWsgc3Vic2VxdWVudCBwb3dlciBtYW5hZ2VtZW50IGxvZ2ljIGFu ZCBhbGxvdwp1bmNsb2NrZWQgaGFyZHdhcmUgYWNjZXNzZXM/CgotLSAKU2FzaGlrbyBBSSByZXZp ZXcgwrcgaHR0cHM6Ly9zYXNoaWtvLmRldi8jL3BhdGNoc2V0LzIwMjYwNTIxMDAzNjE1LjEyNjA4 NDQtMS1taWtlLnNjb3R0QG9zcy5xdWFsY29tbS5jb20/cGFydD0yCgotLSAKbGludXgtcGh5IG1h aWxpbmcgbGlzdApsaW51eC1waHlAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwczovL2xpc3RzLmlu ZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1waHkK