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 714DECD5BD1 for ; Thu, 28 May 2026 08:55:11 +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:References :In-Reply-To:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=Is174ZcwbPKjS0o4nMxyFOu0wHSMGmT7yyH1jkDVtVM=; b=lFlKWrtXyGTglC PMWVoRie2KQ8XZ5kcysYsY08Rdio0DglLSbS9NsE0kgzM/p2/ZuEsa8NUSF+NPx8ONLyJCk/VIASW u7w3xoRDFOASshDpWzZ/sSd829SJ6jvzCkwlL3I8zHhCL+L5H0UDyPlh+2oYtfsYDqrNrdJ8z1c99 JRZ3b4tqT9NCS4gHEyaRILxWdRaLcMphbpgbCJQwYnSFSUSmk0yoJ5Pjqz29QXagieudhq65/GnR2 yOv3Vq4ogj+v8WVFVwgWmQav26DaQklGXrVP0sk4SM8rD5244++FGrl797kuLSy/1PFihWPvKvvTa PDLWtlCnD9fHkrLRYcWw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1wSWWD-00000005RWs-2JH2; Thu, 28 May 2026 08:55:09 +0000 Received: from smtpout-03.galae.net ([185.246.85.4]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1wSWWA-00000005RVo-2raQ for linux-mtd@lists.infradead.org; Thu, 28 May 2026 08:55:08 +0000 Received: from smtpout-01.galae.net (smtpout-01.galae.net [212.83.139.233]) by smtpout-03.galae.net (Postfix) with ESMTPS id 6098B4E42D73; Thu, 28 May 2026 08:55:03 +0000 (UTC) Received: from mail.galae.net (mail.galae.net [212.83.136.155]) by smtpout-01.galae.net (Postfix) with ESMTPS id 2D40060495; Thu, 28 May 2026 08:55:03 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) by localhost (Mailerdaemon) with ESMTPSA id 2F6631088877F; Thu, 28 May 2026 10:54:58 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=dkim; t=1779958502; h=from:subject:date:message-id:to:cc:mime-version:content-type: content-transfer-encoding:in-reply-to:references; bh=Mms8zVeKVl4m3zXRZxt6cX5JkM7V/uTQ+FCIhnWPTuw=; b=tewPilAf9ErtzNRl134ztaKZBbhMd+BtcE9t7Nz1h6+7C3DIYKS4DtVVrP3WCJh+Nq5aMX mh3W+V6DCpel514WkiYhPuKb2uquo40VTYRC5UPGMuZuGBnVIVvVR/Rb6Us6nB4vNshfP/ nbACcBMdiYT3FDAf0sZS0h9JBGnQG2n6Kt6VXwRBlb9A2msSHUR+Ikd3mCcBvOD5JPYzj5 MRGBEAMuDd75Lrhxo/ImM4r/Gji1OAD+DSlQY++ncaPsAAAJwNPMIpB1A9XazJAhozmvbc za8xfmesB+NbJ9uydXwwezYFnH2UeicFHQcoXegtu6Y1ZxeHVrQucCx0humGlQ== From: Miquel Raynal To: Santhosh Kumar K Cc: , , , , , , , , , , , , , , , Subject: Re: [PATCH v3 08/13] spi: cadence-quadspi: add PHY tuning support In-Reply-To: <20260527175527.2247679-9-s-k6@ti.com> (Santhosh Kumar K.'s message of "Wed, 27 May 2026 23:25:22 +0530") References: <20260527175527.2247679-1-s-k6@ti.com> <20260527175527.2247679-9-s-k6@ti.com> User-Agent: mu4e 1.12.7; emacs 30.2 Date: Thu, 28 May 2026 10:54:58 +0200 Message-ID: <874ijrhq1p.fsf@bootlin.com> MIME-Version: 1.0 X-Last-TLS-Session-Version: TLSv1.3 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.9.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260528_015506_996889_AE0DECFC X-CRM114-Status: GOOD ( 30.77 ) X-BeenThere: linux-mtd@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Linux MTD discussion mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-mtd" Errors-To: linux-mtd-bounces+linux-mtd=archiver.kernel.org@lists.infradead.org T24gMjcvMDUvMjAyNiBhdCAyMzoyNToyMiArMDUzMCwgU2FudGhvc2ggS3VtYXIgSyA8cy1rNkB0 aS5jb20+IHdyb3RlOgoKPiBUaGUgQ2FkZW5jZSBRU1BJIGNvbnRyb2xsZXIgc3VwcG9ydHMgYSBk ZWxheS1saW5lIFBIWSBmb3IgaGlnaC1zcGVlZAo+IG9wZXJhdGlvbi4gV2l0aG91dCBjYWxpYnJh dGlvbiB0aGUgUEhZIGlzIHVudXNlZCBhbmQgcmVhZCBjYXB0dXJlIHJlbGllcwo+IG9uIGEgZml4 ZWQgZGVsYXksIGxpbWl0aW5nIHRocm91Z2hwdXQgYXQgZnJlcXVlbmNpZXMgYWJvdmUgdGhlIGJh c2UKPiBvcGVyYXRpbmcgc3BlZWQuCj4KPiBBZGQgYW4gZXhlY3V0ZV90dW5pbmcgY2FsbGJhY2sg dGhhdCBwZXJmb3JtcyBkZWxheS1saW5lIGNhbGlicmF0aW9uIHVzaW5nCj4gYSBrbm93biBkYXRh IHBhdHRlcm4gd3JpdHRlbiB0byBhIGRlZGljYXRlZCBmbGFzaCByZWdpb24uIFRoZSBwYXR0ZXJu IGlzCj4gZWl0aGVyIHJlYWQgZnJvbSBhIE5PUiBwYXJ0aXRpb24gaWRlbnRpZmllZCBieSB0aGUg RFQgcHJvcGVydHkKPiBjZG5zLHBoeS1wYXR0ZXJuLXBhcnRpdGlvbiwgb3Igd3JpdHRlbiB0byB0 aGUgTkFORCBwYWdlIGNhY2hlIGJlZm9yZQo+IGVhY2ggY2FsaWJyYXRpb24gcmVhZC4KPgo+IEZv ciBERFIgcHJvdG9jb2xzICg4RC04RC04RCkgYSAyRCBzd2VlcCBvZiAocnhfZGVsYXksIHR4X2Rl bGF5KSBwYWlycwo+IGlzIHBlcmZvcm1lZCB0byBmaW5kIHRoZSB3aWRlc3QgcGFzc2luZyByZWdp b24gaW4gdGhlIGNvbWJpbmVkIFJYL1RYCj4gc3BhY2UuIEJpbmFyeSBzZWFyY2ggbG9jYXRlcyB0 aGUgZ2FwIGJvdW5kYXJ5IGJldHdlZW4gcGFzc2luZyByZWdpb25zCj4gd2hlbiB0d28gc2VwYXJh dGUgd2luZG93cyBleGlzdDsgdGhlIGZpbmFsIG9wZXJhdGluZyBwb2ludCBpcyBwbGFjZWQgYXQK PiB0aGUgY2VudHJlIG9mIHRoZSBsYXJnZXIgcmVnaW9uIHdpdGggYSBzbWFsbCB0ZW1wZXJhdHVy ZS1kZXBlbmRlbnQKPiBvZmZzZXQuCj4KPiBGb3IgU0RSIHByb3RvY29scyBhIDFEIHN3ZWVwIG9m IHRoZSBSWCBkZWxheSBpcyBzdWZmaWNpZW50LiBUd28gd2luZG93cwo+IGF0IGFkamFjZW50IHJl YWRfZGVsYXkgdmFsdWVzIGFyZSBtZWFzdXJlZDsgdGhlIHdpZGVyIG9uZSdzIG1pZHBvaW50IGlz Cj4gc2VsZWN0ZWQuCj4KPiBUaGUgdHVuaW5nIGluZnJhc3RydWN0dXJlIGlzIHBsYXRmb3JtLXNw ZWNpZmljOiBvbmx5IGFtNjU0LWJhc2VkIE9TUEkKPiBjb250cm9sbGVycyBwb3B1bGF0ZSB0aGUg ZXhlY3V0ZV90dW5pbmcgaG9vay4gQWxsIG90aGVyIHBsYXRmb3JtIGRhdGEKPiBlbnRyaWVzIHJl dHVybiAtRU9QTk9UU1VQUCBhbmQgYXJlIHVuYWZmZWN0ZWQuCj4KPiBzcGktbWF4LWZyZXF1ZW5j eSBtYXkgY2FycnkgdHdvIHZhbHVlcyBpbiBEVDsgdGhlIHNlY29uZCAoaGlnaGVyKSB2YWx1ZQo+ IGlzIHRoZSB0dW5lZCB0YXJnZXQgcmF0ZSBzdG9yZWQgaW4gbWF4X2Nsa19yYXRlLiBXaGVuIG9u bHkgb25lIHZhbHVlIGlzCj4gcHJlc2VudCBtYXhfY2xrX3JhdGUgaXMgemVybyBhbmQgdHVuaW5n IGlzIHNraXBwZWQuCj4KPiBTaWduZWQtb2ZmLWJ5OiBTYW50aG9zaCBLdW1hciBLIDxzLWs2QHRp LmNvbT4KPiAtLS0KClRoZXJlIGFyZSBtb3JlIHRoYW4gMTgwMCBuZXcgbGluZXMgZm9yIHRoZSBQ SFkgdHVuaW5nIHByb2NlZHVyZS4gSSBsZWZ0CnRoYXQgZGVjaXNpb24gdG8gTWFyayBvZiBjb3Vy c2UsIGJ5IG1heWJlIHdlIHNob3VsZCBtb3ZlIHRoYXQgaW50bwphbm90aGVyIC5jIGZpbGUuCgo+ ICtzdGF0aWMgaW50IGNxc3BpX2FtNjU0X29zcGlfZXhlY3V0ZV90dW5pbmcoc3RydWN0IHNwaV9t ZW0gKm1lbSwKPiArCQkJCQkgICBzdHJ1Y3Qgc3BpX21lbV9vcCAqcmVhZF9vcCwKPiArCQkJCQkg ICBzdHJ1Y3Qgc3BpX21lbV9vcCAqd3JpdGVfb3ApCj4gK3sKPiArCXN0cnVjdCBjcXNwaV9zdCAq Y3FzcGkgPQo+ICsJCXNwaV9jb250cm9sbGVyX2dldF9kZXZkYXRhKG1lbS0+c3BpLT5jb250cm9s bGVyKTsKPiArCXN0cnVjdCBjcXNwaV9mbGFzaF9wZGF0YSAqZl9wZGF0YTsKPiArCXN0cnVjdCBk ZXZpY2UgKmRldiA9ICZjcXNwaS0+cGRldi0+ZGV2Owo+ICsJdTMyIGJhc2Vfc3BlZWQ7Cj4gKwl1 MzIgcGh5X29mZnNldCA9IDA7Cj4gKwlpbnQgcmV0Owo+ICsKPiArCWZfcGRhdGEgPSAmY3FzcGkt PmZfcGRhdGFbc3BpX2dldF9jaGlwc2VsZWN0KG1lbS0+c3BpLCAwKV07Cj4gKwo+ICsJLyoKPiAr CSAqIEEgc2Vjb25kIHNwaS1tYXgtZnJlcXVlbmN5IHZhbHVlICh0aGUgaGlnaGVyIGNsb2NrIHJh dGUpIG11c3QgYmUKPiArCSAqIHByZXNlbnQgZm9yIHRpZXJlZCBzcGVlZCBzdXBwb3J0LiAgV2l0 aG91dCBpdCB0aGVyZSBpcyBub3RoaW5nIHRvCj4gKwkgKiBjYWxpYnJhdGUgdG93YXJkcywgc28g c2tpcCB0dW5pbmcgZ3JhY2VmdWxseS4KPiArCSAqLwo+ICsJaWYgKCFmX3BkYXRhLT5tYXhfY2xr X3JhdGUpIHsKPiArCQlkZXZfZGJnKGRldiwgIk5vIGhpZ2hlciBjbG9jayByYXRlIGNvbmZpZ3Vy ZWQsIHNraXBwaW5nIHR1bmluZ1xuIik7Cj4gKwkJcmV0dXJuIDA7Cj4gKwl9Cj4gKwo+ICsJYmFz ZV9zcGVlZCA9IG1lbS0+c3BpLT5iYXNlX3NwZWVkX2h6Owo+ICsKPiArCWlmICh3cml0ZV9vcCkg ewo+ICsJCS8qCj4gKwkJICogRm9yIE5BTkQ6IHdyaXRlIHRoZSBjYWxpYnJhdGlvbiBwYXR0ZXJu IHRvIHRoZSBwYWdlIGNhY2hlLgo+ICsJCSAqIFRoaXMgdXNlcyB3cml0ZV9vcCBhdCB0aGUgc2Fm ZSBiYXNlIHNwZWVkIChiYXNlX3NwZWVkX2h6IGlzCj4gKwkJICogc3RpbGwgYWN0aXZlKSBzbyB0 aGUgd3JpdGUgaXRzZWxmIGlzIHJlbGlhYmxlLgo+ICsJCSAqLwo+ICsJCXJldCA9IGNxc3BpX3dy aXRlX3BhdHRlcm5fdG9fY2FjaGUoZl9wZGF0YSwgbWVtLCB3cml0ZV9vcCk7Cj4gKwkJaWYgKHJl dCkgewo+ICsJCQlkZXZfd2FybihkZXYsCj4gKwkJCQkgImZhaWxlZCB0byB3cml0ZSBwYXR0ZXJu IHRvIGNhY2hlOiAlZCwgc2tpcHBpbmcgdHVuaW5nXG4iLAo+ICsJCQkJIHJldCk7Cj4gKwkJCWdv dG8gb3V0Owo+ICsJCX0KPiArCj4gKwkJZl9wZGF0YS0+cGh5X3dyaXRlX29wID0gKndyaXRlX29w Owo+ICsJfSBlbHNlIHsKPiArCQlyZXQgPSBjcXNwaV9nZXRfcGh5X3BhdHRlcm5fb2Zmc2V0KGRl diwgJnBoeV9vZmZzZXQpOwo+ICsJCWlmIChyZXQpIHsKPiArCQkJZGV2X3dhcm4oZGV2LAo+ICsJ CQkJICJwYXR0ZXJuIHBhcnRpdGlvbiBub3QgZm91bmQ6ICVkLCBza2lwcGluZyB0dW5pbmdcbiIs Cj4gKwkJCQkgcmV0KTsKPiArCQkJZ290byBvdXQ7Cj4gKwkJfQo+ICsKPiArCQlyZWFkX29wLT5h ZGRyLnZhbCA9IHBoeV9vZmZzZXQ7Cj4gKwl9Cj4gKwo+ICsJLyoKPiArCSAqIFZlcmlmeSB0aGUg Y2FsaWJyYXRpb24gcGF0dGVybiBleGlzdHMgdXNpbmcgdGhlIGNvbnNlcnZhdGl2ZSBiYXNlCj4g KwkgKiBzcGVlZC4gIEF0IGhpZ2ggY2xvY2sgcmF0ZXMgdGhlIERMTCBpcyBub3QgeWV0IHRyYWlu ZWQsIHNvIERUUgo+ICsJICogZGF0YSBjYXB0dXJlIGlzIHVucmVsaWFibGUgYW5kIHRoZSByZWFk IHdvdWxkIHJldHVybiBnYXJiYWdlLgo+ICsJICogU2V0dGluZyBtYXhfZnJlcSB0byAwIGhlcmUg Y2F1c2VzIGFwcGx5X2Jhc2VfZnJlcV9jYXAoKSB0byBjYXAgdGhlCj4gKwkgKiByZWFkIHRvIGJh c2Vfc3BlZWRfaHosIHdoaWNoIGlzIHdlbGwgd2l0aGluIHJlbGlhYmxlIERUUiBtYXJnaW5zLgo+ ICsJICogbWF4X2ZyZXEgaXMgcmVzdG9yZWQgdG8gbWF4X3NwZWVkX2h6IGZvciB0aGUgdHVuaW5n LWxvb3AgcmVhZHMKPiArCSAqIGFmdGVyIGJhc2Vfc3BlZWRfaHogaXMgY2xlYXJlZCBiZWxvdy4K PiArCSAqLwo+ICsJZl9wZGF0YS0+cGh5X3JlYWRfb3AgPSAqcmVhZF9vcDsKPiArCWZfcGRhdGEt PnBoeV9yZWFkX29wLm1heF9mcmVxID0gMDsKPiArCj4gKwlyZXQgPSBjcXNwaV9waHlfY2hlY2tf cGF0dGVybihmX3BkYXRhLCBtZW0pOwo+ICsJaWYgKHJldCkgewo+ICsJCWRldl9lcnIoZGV2LCAi cGF0dGVybiBub3QgZm91bmQ6ICVkLCBza2lwcGluZyB0dW5pbmdcbiIsIHJldCk7Cj4gKwkJZ290 byBvdXQ7Cj4gKwl9Cj4gKwo+ICsJLyoKPiArCSAqIFBhdHRlcm4gY29uZmlybWVkLiAgTm93IGNs ZWFyIGJhc2Vfc3BlZWRfaHogc28gdGhhdCB0dW5pbmctbG9vcAo+ICsJICogZXhlY19vcCBjYWxs cyBydW4gYXQgbWF4X3NwZWVkX2h6LCBhbmQgcmVzdG9yZSBwaHlfcmVhZF9vcC5tYXhfZnJlcQo+ ICsJICogc28gdGhvc2UgcmVhZHMgYWxzbyB1c2UgdGhlIGZ1bGwgc3BlZWQuCj4gKwkgKi8KPiAr CW1lbS0+c3BpLT5iYXNlX3NwZWVkX2h6ID0gMDsKCklmIHRoZXJlIGlzIGEgd2F5IHRvIGF2b2lk IHRvdWNoaW5nIHRoZSBjb3JlIHBhcmFtZXRlcnMsIEkgd291bGQgYmUgZm9yCnVzaW5nIGl0LCBi dXQgbWF5YmUgaXQgaXMgc2ltcGxlciB0byBkbyBpdCB0aGlzIHdheS4KCj4gKwlmX3BkYXRhLT5w aHlfcmVhZF9vcC5tYXhfZnJlcSA9IG1lbS0+c3BpLT5tYXhfc3BlZWRfaHo7Cj4gKwo+ICsJaWYg KHJlYWRfb3AtPmNtZC5kdHIgfHwgcmVhZF9vcC0+YWRkci5kdHIgfHwgcmVhZF9vcC0+ZHVtbXku ZHRyIHx8Cj4gKwkgICAgcmVhZF9vcC0+ZGF0YS5kdHIpIHsKPiArCQlmX3BkYXRhLT51c2VfZHFz ID0gdHJ1ZTsKPiArCQljcXNwaV9waHlfcHJlX2NvbmZpZyhjcXNwaSwgZl9wZGF0YSwgZmFsc2Up Owo+ICsJCXJldCA9IGNxc3BpX3BoeV90dW5pbmdfZGRyKGZfcGRhdGEsIG1lbSk7Cj4gKwl9IGVs c2Ugewo+ICsJCWZfcGRhdGEtPnVzZV9kcXMgPSBmYWxzZTsKPiArCQljcXNwaV9waHlfcHJlX2Nv bmZpZyhjcXNwaSwgZl9wZGF0YSwgdHJ1ZSk7Cj4gKwkJcmV0ID0gY3FzcGlfcGh5X3R1bmluZ19z ZHIoZl9wZGF0YSwgbWVtKTsKPiArCX0KPiArCj4gKwlpZiAocmV0KQo+ICsJCWRldl93YXJuKGRl diwgInR1bmluZyBmYWlsZWQ6ICVkXG4iLCByZXQpOwo+ICsKPiArCWNxc3BpX3BoeV9wb3N0X2Nv bmZpZyhjcXNwaSwgZl9wZGF0YS0+cmVhZF9kZWxheSk7Cj4gKwo+ICtvdXQ6Cj4gKwkvKgo+ICsJ ICogQWx3YXlzIHJlc3RvcmUgdGhlIGNvbnNlcnZhdGl2ZSBiYXNlIHNwZWVkIGNhcC4gIE9uIHN1 Y2Nlc3MsIHdyaXRlCj4gKwkgKiBiYWNrIHRoZSB2YWxpZGF0ZWQgbWF4aW11bSBzcGVlZCBpbnRv IHRoZSBjYWxsZXIncyBvcCB0ZW1wbGF0ZXMgc28KPiArCSAqIHRoYXQgdGhvc2Ugc3BlY2lmaWMg b3BzIGJ5cGFzcyB0aGUgY2FwIGluIHN1YnNlcXVlbnQgZXhlY19vcCBjYWxscy4KPiArCSAqLwo+ ICsJbWVtLT5zcGktPmJhc2Vfc3BlZWRfaHogPSBiYXNlX3NwZWVkOwo+ICsJaWYgKCFyZXQpIHsK PiArCQlyZWFkX29wLT5tYXhfZnJlcSA9IG1lbS0+c3BpLT5tYXhfc3BlZWRfaHo7Cj4gKwkJaWYg KHdyaXRlX29wKQo+ICsJCQl3cml0ZV9vcC0+bWF4X2ZyZXEgPSBtZW0tPnNwaS0+bWF4X3NwZWVk X2h6Owo+ICsJfQoKTmVhdC4KCj4gKwo+ICsJcmV0dXJuIHJldDsKPiArfQo+ICsKPiArc3RhdGlj IGludCBjcXNwaV9tZW1fb3BfZXhlY3V0ZV90dW5pbmcoc3RydWN0IHNwaV9tZW0gKm1lbSwKPiAr CQkJCSAgICAgICBzdHJ1Y3Qgc3BpX21lbV9vcCAqcmVhZF9vcCwKPiArCQkJCSAgICAgICBzdHJ1 Y3Qgc3BpX21lbV9vcCAqd3JpdGVfb3ApCj4gK3sKPiArCXN0cnVjdCBjcXNwaV9zdCAqY3FzcGkg PQo+ICsJCXNwaV9jb250cm9sbGVyX2dldF9kZXZkYXRhKG1lbS0+c3BpLT5jb250cm9sbGVyKTsK PiArCj4gKwlpZiAoIWNxc3BpLT5kZGF0YS0+ZXhlY3V0ZV90dW5pbmcpCj4gKwkJcmV0dXJuIC1F T1BOT1RTVVBQOwo+ICsKPiArCXJldHVybiBjcXNwaS0+ZGRhdGEtPmV4ZWN1dGVfdHVuaW5nKG1l bSwgcmVhZF9vcCwgd3JpdGVfb3ApOwo+ICt9Cj4gKwo+ICBzdGF0aWMgaW50IGNxc3BpX29mX2dl dF9mbGFzaF9wZGF0YShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAo+ICAJCQkJICAgIHN0 cnVjdCBjcXNwaV9mbGFzaF9wZGF0YSAqZl9wZGF0YSwKPiAgCQkJCSAgICBzdHJ1Y3QgZGV2aWNl X25vZGUgKm5wKQo+ICB7Cj4gKwlpbnQgbmZyZXEsIHJldDsKPiArCj4gIAlpZiAob2ZfcHJvcGVy dHlfcmVhZF91MzIobnAsICJjZG5zLHJlYWQtZGVsYXkiLCAmZl9wZGF0YS0+cmVhZF9kZWxheSkp IHsKPiAgCQlkZXZfZXJyKCZwZGV2LT5kZXYsICJjb3VsZG4ndCBkZXRlcm1pbmUgcmVhZC1kZWxh eVxuIik7Cj4gIAkJcmV0dXJuIC1FTlhJTzsKPiBAQCAtMTU4NCw3ICszMzQzLDI2IEBAIHN0YXRp YyBpbnQgY3FzcGlfb2ZfZ2V0X2ZsYXNoX3BkYXRhKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBk ZXYsCj4gIAkJcmV0dXJuIC1FTlhJTzsKPiAgCX0KPiAgCj4gLQlpZiAob2ZfcHJvcGVydHlfcmVh ZF91MzIobnAsICJzcGktbWF4LWZyZXF1ZW5jeSIsICZmX3BkYXRhLT5jbGtfcmF0ZSkpIHsKPiAr CS8qCj4gKwkgKiBzcGktbWF4LWZyZXF1ZW5jeSBhY2NlcHRzIG9uZSBvciB0d28gdmFsdWVzOgo+ ICsJICogICA8bWF4LWZyZXE+ICAgICAgICAgICAgIC0gc2luZ2xlIHJhdGU7IG5vIHRpZXJlZCBz cGVlZCBzdXBwb3J0Cj4gKwkgKiAgIDxiYXNlLWZyZXEgbWF4LWZyZXE+ICAgLSBjb25zZXJ2YXRp dmUgZGVmYXVsdCBhbmQgaGlnaGVyIG1heGltdW0KPiArCSAqCj4gKwkgKiBXaXRoIHR3byB2YWx1 ZXMgdGhlIFNQSSBjb3JlIHNldHMgc3BpLT5iYXNlX3NwZWVkX2h6ID0gYmFzZS1mcmVxIGFuZAo+ ICsJICogc3BpLT5tYXhfc3BlZWRfaHogPSBtYXgtZnJlcS4gIFN0b3JlIHRoZSBzZWNvbmQgdmFs dWUgaGVyZSBhcyB0aGUKPiArCSAqIGNvbnRyb2xsZXIncyBoaWdoZXIgcmF0ZSB0YXJnZXQgZm9y IGNhbGlicmF0aW9uLgo+ICsJICovCj4gKwluZnJlcSA9IG9mX3Byb3BlcnR5X2NvdW50X3UzMl9l bGVtcyhucCwgInNwaS1tYXgtZnJlcXVlbmN5Iik7Cj4gKwlpZiAobmZyZXEgPT0gMikgewo+ICsJ CXJldCA9IG9mX3Byb3BlcnR5X3JlYWRfdTMyX2luZGV4KG5wLCAic3BpLW1heC1mcmVxdWVuY3ki LCAxLAo+ICsJCQkJCQkgJmZfcGRhdGEtPm1heF9jbGtfcmF0ZSk7Cj4gKwkJaWYgKHJldCkgewo+ ICsJCQlkZXZfZXJyKCZwZGV2LT5kZXYsICJjb3VsZG4ndCByZWFkIHNwaS1tYXgtZnJlcXVlbmN5 WzFdXG4iKTsKPiArCQkJcmV0dXJuIHJldDsKPiArCQl9Cj4gKwl9IGVsc2UgaWYgKG5mcmVxID09 IDEpIHsKPiArCQlmX3BkYXRhLT5tYXhfY2xrX3JhdGUgPSAwOwo+ICsJfSBlbHNlIHsKPiAgCQlk ZXZfZXJyKCZwZGV2LT5kZXYsICJjb3VsZG4ndCBkZXRlcm1pbmUgc3BpLW1heC1mcmVxdWVuY3lc biIpOwo+ICAJCXJldHVybiAtRU5YSU87Cj4gIAl9CgpXaHkgZG8gd2UgcmVwZWF0IHRoYXQgb3Bl cmF0aW9uIGluIHRoZSBkcml2ZXI/IENhbid0IHdlIGp1c3QgdXNlIHdoYXQKdGhlIGNvcmUgaGFz IGFscmVhZHkgZG9uZSBmb3IgdXM/IFNlZW1zIGxpa2Ugd2UgYXJlIHBhcnNpbmcgdGhlIHNhbWUK ZGF0YSB0d2ljZSAoZXZlbiBiZWZvcmUgdGhpcyBwYXRjaHNldCkuCgpUaGFua3MsCk1pcXXDqGwK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpM aW51eCBNVEQgZGlzY3Vzc2lvbiBtYWlsaW5nIGxpc3QKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5v cmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1tdGQvCg==