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 527F1C624C6 for ; Mon, 31 Aug 2026 13:50:55 +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: Message-ID:Date: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=k54ErWEb+K9NoQeUB+UVvXq7GCTDb73dsTX1QZH5ZIU=; b=lzvXJZzTDb3QX3 FFW59AvpYu8V8bwPDAUb+T37X8BTp2JFlKMPbmd3Fjuj/+dZQOPh8Ee4bNTblkCLPMYHx7qj0BMuJ ktOA6KnhWwurR2jRYKl+kGNIvGF9hDuA4herQdC3tStSHiFBtwN/kZ9kekncuWXGDkmqTzX5xaXW5 2ap61D1jlnojpB1i+tVD0WvZcXwEJlzmYJ+JO39FAT30H2CMAnfRNrg8xrGJFjY2lTHIsewp+eaM0 ohhjiGNi09g8Q2x9mh3Fig20GF1hmO95x2/WZxWa1Hxn3hDEyzsHxWZXopayybUxchnqIBP86AM1A KXV29gPdLL5Yki2y6o4Q==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1x12PU-00000009Y6B-3h72; Mon, 31 Aug 2026 13:50:52 +0000 Received: from tor.source.kernel.org ([2600:3c04:e001:324:0:1991:8:25]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1x12PR-00000009Y41-3tDR; Mon, 31 Aug 2026 13:50:50 +0000 Received: from smtp.kernel.org (quasi.space.kernel.org [100.103.45.18]) by tor.source.kernel.org (Postfix) with ESMTP id 0CE2E60207; Mon, 31 Aug 2026 13:50:49 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id D50131F00A3E; Mon, 31 Aug 2026 13:50:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1788184248; bh=ilmLay646quhiSaTllAkjbNWVuNYgdU7ga209ABNBWo=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=XSziANUUcKR5mKtLByLdVHQKiD14anRaTAIxArztSXzS3oDLxda8Qjer7Zw50+wuE LKA0DVS7CYmeSpy0YS+Kap2e48KYMtxMWL1VQ4yXICxOlqyEFI+9n8+IIQQn4PzJRT CUreedX9LSMJ+IKn2eEzKgMAjC339gQ6XzzsaFWfl9Z9DOvSIvfFaZ5fLQXSbi+kA2 isdfZtnW14fwrlUMXlIi/iVxr4Ue6CIhfLtvTsIe7ed1sSr9w/ODt8jDtSmO6u/Yeh M2W1M7A+MeWe65FF/VcYdiJ/RRPOFXZB+2gWAz48OJXefRDql9204CJSaf0+Nm8CgW FZxMEbX5KV/kA== From: Sasha Levin To: patches@lists.linux.dev, stable@vger.kernel.org Cc: bui duc phuc , Mark Brown , Sasha Levin , lgirdwood@gmail.com, perex@perex.cz, tiwai@suse.com, heiko@sntech.de, linux-sound@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH AUTOSEL 6.18-5.10] ASoC: rockchip: rockchip_pdm: Reorder clock enable sequence Date: Mon, 31 Aug 2026 09:30:08 -0400 Message-ID: <20260831133314.4125787-580-sashal@kernel.org> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260831133314.4125787-1-sashal@kernel.org> References: <20260831133314.4125787-1-sashal@kernel.org> MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore X-stable-base: Linux 6.18.48 X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+linux-rockchip=archiver.kernel.org@lists.infradead.org RnJvbTogYnVpIGR1YyBwaHVjIDxwaHVjZHVjLmJ1aUBnbWFpbC5jb20+CgpbIFVwc3RyZWFtIGNv bW1pdCAzMTY4NzIxZDZlYzNiNjEwZWRmNmEzYzIyYWQxOTA3MjJhMjdkMjc2IF0KCkVuYWJsZSB0 aGUgJ2hjbGsnIGJ1cyBjbG9jayBiZWZvcmUgdGhlICdjbGsnIGNvbnRyb2xsZXIgY2xvY2sgZHVy aW5nCnJ1bnRpbWUgcmVzdW1lLgpUaGUgYnVzIGNsb2NrIHByb3ZpZGVzIHRoZSByZWdpc3RlciBh Y2Nlc3MgaW50ZXJmYWNlLCBzbyBlbmFibGUgaXQgYmVmb3JlCnRoZSBjb250cm9sbGVyIGNsb2Nr LiBUaGlzIGFsc28gbWFrZXMgdGhlIHJlc3VtZSBzZXF1ZW5jZSB0aGUgcmV2ZXJzZSBvZgp0aGUg c3VzcGVuZCBzZXF1ZW5jZSwgd2hpY2gga2VlcHMgdGhlIGNsb2NrIG9yZGVyaW5nIGNvbnNpc3Rl bnQuCgpTaWduZWQtb2ZmLWJ5OiBidWkgZHVjIHBodWMgPHBodWNkdWMuYnVpQGdtYWlsLmNvbT4K TGluazogaHR0cHM6Ly9wYXRjaC5tc2dpZC5saW5rLzIwMjYwNjAyMTAxNjA4LjQ1MTM3LTQtcGh1 Y2R1Yy5idWlAZ21haWwuY29tClNpZ25lZC1vZmYtYnk6IE1hcmsgQnJvd24gPGJyb29uaWVAa2Vy bmVsLm9yZz4KU2lnbmVkLW9mZi1ieTogU2FzaGEgTGV2aW4gPHNhc2hhbEBrZXJuZWwub3JnPgot LS0KCkxMTSBHZW5lcmF0ZWQgZXhwbGFuYXRpb25zLCBtYXkgYmUgY29tcGxldGVseSBib2d1czoK CkNvbm5lY3Rpb24gbG9zdCwgcmVjb25uZWN0aW5nIHRvIGh0dHBzOi8vYWdlbnRuLnVzLmFwaTUu Y3Vyc29yLnNoCihhdHRlbXB0IDEpLi4uClJldHJ5IGF0dGVtcHQgMS4uLgpDb25uZWN0aW9uIGxv c3QsIHJlY29ubmVjdGluZyB0byBodHRwczovL2FnZW50bi51cy5hcGk1LmN1cnNvci5zaAooYXR0 ZW1wdCAyKS4uLgpSZXRyeSBhdHRlbXB0IDIuLi4KQ29ubmVjdGlvbiBsb3N0LCByZWNvbm5lY3Rp bmcgdG8gaHR0cHM6Ly9hZ2VudG4udXMuYXBpNS5jdXJzb3Iuc2gKKGF0dGVtcHQgMykuLi4KUmV0 cnkgYXR0ZW1wdCAzLi4uCiMjIFBoYXNlIDE6IENvbW1pdCBNZXNzYWdlIEZvcmVuc2ljcwoKIyMj IFN0ZXAgMS4xOiBQYXJzZSB0aGUgU3ViamVjdCBMaW5lCioqUmVjb3JkOioqIGBbQVNvQzogcm9j a2NoaXA6IHJvY2tjaGlwX3BkbV1gIGBbUmVvcmRlcl1gIOKAlCBSZW9yZGVyIHRoZQpydW50aW1l LXJlc3VtZSBjbG9jayBlbmFibGUgc2VxdWVuY2UgZm9yIHRoZSBSb2NrY2hpcCBQRE0gZHJpdmVy LgoKIyMjIFN0ZXAgMS4yOiBQYXJzZSBBbGwgQ29tbWl0IE1lc3NhZ2UgVGFncwoqKlJlY29yZDoq KgotICoqRml4ZXM6Kiog4oCUIG5vdCBwcmVzZW50IChleHBlY3RlZCBmb3IgbWFudWFsIHJldmll dykKLSAqKlJlcG9ydGVkLWJ5OioqIOKAlCBub25lCi0gKipUZXN0ZWQtYnk6Kiog4oCUIG5vbmUK LSAqKlJldmlld2VkLWJ5OioqIOKAlCBub25lCi0gKipBY2tlZC1ieToqKiDigJQgbm9uZQotICoq TGluazoqKgogIGh0dHBzOi8vcGF0Y2gubXNnaWQubGluay8yMDI2MDYwMjEwMTYwOC40NTEzNy00 LXBodWNkdWMuYnVpQGdtYWlsLmNvbQotICoqQ2M6IHN0YWJsZUB2Z2VyLmtlcm5lbC5vcmc6Kiog 4oCUIG5vdCBwcmVzZW50IChleHBlY3RlZCkKLSAqKlNpZ25lZC1vZmYtYnk6KiogYnVpIGR1YyBw aHVjLCBNYXJrIEJyb3duIChBU29DIG1haW50YWluZXIpCgpOb3RhYmxlOiBubyB1c2VyIHJlcG9y dCwgc3l6Ym90LCBvciBleHBsaWNpdCBzdGFibGUgbm9taW5hdGlvbi4gTWFyawpCcm93biBhY2Nl cHRlZCB0aGUgcGF0Y2guCgojIyMgU3RlcCAxLjM6IEFuYWx5emUgdGhlIENvbW1pdCBCb2R5Cioq UmVjb3JkOioqCi0gKipCdWc6KiogYHJvY2tjaGlwX3BkbV9ydW50aW1lX3Jlc3VtZSgpYCBlbmFi bGVzIGBwZG1fY2xrYCAoY29udHJvbGxlcgogIGNsb2NrKSBiZWZvcmUgYHBkbV9oY2xrYCAoYnVz IGNsb2NrKS4KLSAqKlN5bXB0b20vZmFpbHVyZSBtb2RlOioqIE5vdCBleHBsaWNpdGx5IGRlc2Ny aWJlZCAobm8gY3Jhc2gsIGhhbmcsIG9yCiAgdXNlciByZXBvcnQpLiBUaGUgY29tbWl0IGFyZ3Vl cyB0aGF0IHJlZ2lzdGVyIGFjY2VzcyByZXF1aXJlcyB0aGUgYnVzCiAgY2xvY2ssIHNvIHJlc3Vt ZSBvcmRlcmluZyBpcyB3cm9uZyBhbmQgZG9lcyBub3QgbWlycm9yIHN1c3BlbmQuCi0gKipWZXJz aW9uIGluZm86Kiogbm9uZSBpbiB0aGUgbWVzc2FnZS4KLSAqKlJvb3QgY2F1c2U6KiogQnVzIGNs b2NrIChgaGNsa2ApIHByb3ZpZGVzIHRoZSByZWdpc3RlciBpbnRlcmZhY2U7IGl0CiAgbXVzdCBi ZSBlbmFibGVkIGJlZm9yZSB0aGUgY29udHJvbGxlciBjbG9jayAoYGNsa2ApLiBTdXNwZW5kIGRp c2FibGVzCiAgYGNsa2AgdGhlbiBgaGNsa2A7IHJlc3VtZSBzaG91bGQgcmV2ZXJzZSB0aGF0LgoK IyMjIFN0ZXAgMS40OiBEZXRlY3QgSGlkZGVuIEJ1ZyBGaXhlcwoqKlJlY29yZDoqKiBZZXMg4oCU IHRoaXMgaXMgYSBQTSBjb3JyZWN0bmVzcyBidWcgZGlzZ3Vpc2VkIGFzIG9yZGVyaW5nCmNsZWFu dXAuIFJlc3VtZSBjdXJyZW50bHkgbWlycm9ycyBzdXNwZW5kIGluc3RlYWQgb2YgcmV2ZXJzaW5n IGl0LCB3aGljaAppcyBpbmNvcnJlY3QgZm9yIGNsb2NrIGRvbWFpbnMgd2hlcmUgdGhlIGJ1cyBj bG9jayBnYXRlcyByZWdpc3RlcgphY2Nlc3MuCgotLS0KCiMjIFBoYXNlIDI6IERpZmYgQW5hbHlz aXMKCiMjIyBTdGVwIDIuMTogSW52ZW50b3J5IHRoZSBDaGFuZ2VzCioqUmVjb3JkOioqCi0gKipG aWxlczoqKiBgc291bmQvc29jL3JvY2tjaGlwL3JvY2tjaGlwX3BkbS5jYCAoKy8tIH42IGxvZ2lj YWwgbGluZXMKICBpbiBvbmUgaHVuaykKLSAqKkZ1bmN0aW9ucyBtb2RpZmllZDoqKiBgcm9ja2No aXBfcGRtX3J1bnRpbWVfcmVzdW1lKClgCi0gKipTY29wZToqKiBTaW5nbGUtZmlsZSwgc3VyZ2lj YWwgUE0gZml4CgojIyMgU3RlcCAyLjI6IENvZGUgRmxvdyBDaGFuZ2UKKipSZWNvcmQ6KioKLSAq Kkh1bmsgKHJ1bnRpbWUgcmVzdW1lKToqKgogIC0gKipCZWZvcmU6KiogZW5hYmxlIGBwZG0tPmNs a2AsIHRoZW4gYHBkbS0+aGNsa2A7IG9uIHNlY29uZCBmYWlsdXJlLAogICAgZGlzYWJsZSBgcGRt LT5jbGtgCiAgLSAqKkFmdGVyOioqIGVuYWJsZSBgcGRtLT5oY2xrYCwgdGhlbiBgcGRtLT5jbGtg OyBvbiBzZWNvbmQgZmFpbHVyZSwKICAgIGRpc2FibGUgYHBkbS0+aGNsa2AKLSAqKlBhdGggYWZm ZWN0ZWQ6KiogUnVudGltZSBQTSByZXN1bWUgYW5kIGFueXRoaW5nIHRoYXQgY2FsbHMgaXQKICAo c3lzdGVtIHNsZWVwIHJlc3VtZSB2aWEgYHBtX3J1bnRpbWVfcmVzdW1lX2FuZF9nZXQoKWApCgoj IyMgU3RlcCAyLjM6IEJ1ZyBNZWNoYW5pc20KKipSZWNvcmQ6KioKLSAqKkNhdGVnb3J5OioqIExv Z2ljIC8gUE0gY29ycmVjdG5lc3MgZml4IChjbG9jayBlbmFibGUgb3JkZXJpbmcpCi0gKipNZWNo YW5pc206KiogU3VzcGVuZCBkaXNhYmxlcyBjb250cm9sbGVyIGNsb2NrIGZpcnN0LCB0aGVuIGJ1 cwogIGNsb2NrLiBSZXN1bWUgbXVzdCBlbmFibGUgYnVzIGNsb2NrIGZpcnN0LCB0aGVuIGNvbnRy b2xsZXIgY2xvY2suCiAgQ3VycmVudCBjb2RlIGVuYWJsZXMgYm90aCBpbiB0aGUgc2FtZSBvcmRl ciBhcyBzdXNwZW5kLCB2aW9sYXRpbmcKICBzdGFuZGFyZCBjbG9jay1kb21haW4gb3JkZXJpbmcg YW5kIHRoZSBkcml2ZXLigJlzIG93biBwcm9iZSBwYXRoIChwcm9iZQogIGVuYWJsZXMgYGhjbGtg IGZpcnN0KS4KCiMjIyBTdGVwIDIuNDogRml4IFF1YWxpdHkKKipSZWNvcmQ6KioKLSBGaXggaXMg b2J2aW91c2x5IGNvcnJlY3QgYW5kIG1pbmltYWwuCi0gTWF0Y2hlcyB0aGUgcGF0dGVybiB1c2Vk IGluIGByb2NrY2hpcF9zYWkuY2AgYW5kIGByb2NrY2hpcF9pMnNfdGRtLmNgCiAgKGhjbGsgYmVm b3JlIGZ1bmN0aW9uYWwgY2xvY2sgb24gcmVzdW1lKS4KLSBSZWdyZXNzaW9uIHJpc2sgaXMgdmVy eSBsb3c6IG9ubHkgcmVvcmRlcnMgdHdvIGV4aXN0aW5nCiAgYGNsa19wcmVwYXJlX2VuYWJsZSgp YCBjYWxscyBhbmQgY29ycmVzcG9uZGluZyBlcnJvci1wYXRoIGNsZWFudXAuCgotLS0KCiMjIFBo YXNlIDM6IEdpdCBIaXN0b3J5IEludmVzdGlnYXRpb24KCiMjIyBTdGVwIDMuMTogQmxhbWUgdGhl IENoYW5nZWQgTGluZXMKKipSZWNvcmQ6KioKLSBCdWdneSBvcmRlcmluZyBpbnRyb2R1Y2VkIGlu ICoqZmMwNWE1YjIyMjUzMCoqICjigJxBU29DOiByb2NrY2hpcDogYWRkCiAgc3VwcG9ydCBmb3Ig cGRtIGNvbnRyb2xsZXLigJ0sIEp1bmUgMjAxNykuCi0gRXJyb3ItcGF0aCBjbGVhbnVwIGFkZGVk IGxhdGVyIGluICoqZWYwYTA5OGVmYjM2NioqIChEZWMgMjAyMikuCi0gQnVnIGhhcyBleGlzdGVk IHNpbmNlIGRyaXZlciBpbnRyb2R1Y3Rpb247IHByZXNlbnQgaW4gdGhpcyB0cmVlLgoKIyMjIFN0 ZXAgMy4yOiBGb2xsb3cgdGhlIEZpeGVzOiBUYWcKKipSZWNvcmQ6KiogTm8gYEZpeGVzOmAgdGFn IOKAlCBub3QgYXBwbGljYWJsZS4KCiMjIyBTdGVwIDMuMzogRmlsZSBIaXN0b3J5IGZvciBSZWxh dGVkIENoYW5nZXMKKipSZWNvcmQ6KioKLSBSZWxhdGVkIHByaW9yIGZpeDogKiplZjBhMDk4ZWZi MzY2Kiog4oCUIG1pc3NpbmcKICBgY2xrX2Rpc2FibGVfdW5wcmVwYXJlKClgIG9uIGVycm9yIHBh dGggaW4gdGhlIHNhbWUgZnVuY3Rpb24gKGFscmVhZHkKICBpbiB0aGlzIDYuMTgueSB0cmVlKS4K LSBObyBldmlkZW5jZSB0aGlzIGlzIHBhcnQgb2YgYSBtdWx0aS1wYXRjaCBkZXBlbmRlbmN5IHNl cmllcy4KLSBTdGFuZGFsb25lIGZpeC4KCiMjIyBTdGVwIDMuNDogQXV0aG9yJ3MgT3RoZXIgQ29t bWl0cwoqKlJlY29yZDoqKiBBdXRob3IgKGJ1aSBkdWMgcGh1YykgaGFzIG90aGVyIEFTb0MgY2xl YW51cC9ndWFyZCBwYXRjaGVzOwp0aGlzIGlzIGEgdGFyZ2V0ZWQgUm9ja2NoaXAgUERNIFBNIGZp eCBhY2NlcHRlZCBieSBtYWludGFpbmVyIE1hcmsKQnJvd24uCgojIyMgU3RlcCAzLjU6IERlcGVu ZGVudC9QcmVyZXF1aXNpdGUgQ29tbWl0cwoqKlJlY29yZDoqKiBObyBkZXBlbmRlbmNpZXMuIENv ZGUgc3RydWN0dXJlcyAoYHBkbS0+Y2xrYCwgYHBkbS0+aGNsa2AsCnJ1bnRpbWUgUE0gY2FsbGJh Y2tzKSBhbGwgZXhpc3QgaW4gdGhpcyB0cmVlLiBBcHBsaWVzIHN0YW5kYWxvbmUuCgotLS0KCiMj IFBoYXNlIDQ6IE1haWxpbmcgTGlzdCBhbmQgRXh0ZXJuYWwgUmVzZWFyY2gKCiMjIyBTdGVwIDQu MTogT3JpZ2luYWwgUGF0Y2ggRGlzY3Vzc2lvbgoqKlJlY29yZDoqKgotIGBiNCBkaWcgLWMgOGY3 OGY3YmMxODA2Y2AgZmFpbGVkIOKAlCBjb21taXQgbm90IGluIHRoaXMgY2hlY2tvdXQuCi0gTGlu ayBmZXRjaCBibG9ja2VkICg0MDMgLyBib3QgcHJvdGVjdGlvbikuCi0gQ291bGQgbm90IHJldHJp ZXZlIGxvcmUgdGhyZWFkIGNvbnRlbnQuCgojIyMgU3RlcCA0LjI6IFJldmlld2VycwoqKlJlY29y ZDoqKiBVTlZFUklGSUVEIOKAlCBgYjQgZGlnIC13YCBmYWlsZWQgZm9yIHRoZSBzYW1lIHJlYXNv bi4gTWFyawpCcm93buKAmXMgU2lnbmVkLW9mZi1ieSBjb25maXJtcyBtYWludGFpbmVyIGFjY2Vw dGFuY2UuCgojIyMgU3RlcCA0LjM6IEJ1ZyBSZXBvcnQgU2VhcmNoCioqUmVjb3JkOioqIE5vIGJ1 ZyByZXBvcnQsIHN5emJvdCBsaW5rLCBvciBjcmFzaCBkZXNjcmlwdGlvbiBpbiB0aGUKY29tbWl0 IG1lc3NhZ2Ugb3IgYWNjZXNzaWJsZSBsb3JlIHRocmVhZC4KCiMjIyBTdGVwIDQuNDogUmVsYXRl ZCBQYXRjaGVzIC8gU2VyaWVzCioqUmVjb3JkOioqIE1lc3NhZ2UtSUQgc3VmZml4IGA0NTEzNy00 YCBzdWdnZXN0cyBwYXRjaCA0IG9mIGEgc2VyaWVzLApidXQgbm8gcmVsYXRlZCBtYm94IGZpbGVz IGZvciB0aGlzIHBhdGNoIHdlcmUgZm91bmQgaW4gdGhlIHdvcmtzcGFjZS4KRml4IGl0c2VsZiBp cyBzZWxmLWNvbnRhaW5lZC4KCiMjIyBTdGVwIDQuNTogU3RhYmxlIE1haWxpbmcgTGlzdCBIaXN0 b3J5CioqUmVjb3JkOioqIFVOVkVSSUZJRUQg4oCUIGNvdWxkIG5vdCBzZWFyY2ggbG9yZSBkdWUg dG8gYWNjZXNzCnJlc3RyaWN0aW9ucy4gTm8gYENjOiBzdGFibGVAdmdlci5rZXJuZWwub3JnYCBp biB0aGUgY29tbWl0IG1lc3NhZ2UuCgotLS0KCiMjIFBoYXNlIDU6IENvZGUgU2VtYW50aWMgQW5h bHlzaXMKCiMjIyBTdGVwIDUuMTogS2V5IEZ1bmN0aW9ucwoqKlJlY29yZDoqKiBgcm9ja2NoaXBf cGRtX3J1bnRpbWVfcmVzdW1lKClgIChtb2RpZmllZCksIHdpdGggY2FsbGVyczoKLSBgcm9ja2No aXBfcGRtX3Byb2JlKClgICh3aGVuIHJ1bnRpbWUgUE0gZGlzYWJsZWQpCi0gYHJvY2tjaGlwX3Bk bV9wbV9vcHNgIHJ1bnRpbWUgcmVzdW1lIGNhbGxiYWNrCi0gYHJvY2tjaGlwX3BkbV9yZXN1bWUo KWAgdmlhIGBwbV9ydW50aW1lX3Jlc3VtZV9hbmRfZ2V0KClgCgojIyMgU3RlcCA1LjI6IENhbGxl cnMKKipSZWNvcmQ6KioKLSAqKlJ1bnRpbWUgUE0gaWRsZS9yZXN1bWUgY3ljbGU6KiogY29tbW9u IGF1ZGlvIHBvd2VyLW1hbmFnZW1lbnQgcGF0aAotICoqU3lzdGVtIHNsZWVwIHJlc3VtZToqKiBg cm9ja2NoaXBfcGRtX3Jlc3VtZSgpYCDihpIKICBgcG1fcnVudGltZV9yZXN1bWVfYW5kX2dldCgp YCDihpIgYHJlZ2NhY2hlX3N5bmMoKWAKLSAqKlByb2JlIGZhbGxiYWNrOioqIG9ubHkgd2hlbiBg Q09ORklHX1BNYCBkaXNhYmxlZAoKIyMjIFN0ZXAgNS4zOiBDYWxsZWVzCioqUmVjb3JkOioqIGBj bGtfcHJlcGFyZV9lbmFibGUoKWAsIGBjbGtfZGlzYWJsZV91bnByZXBhcmUoKWAsCmBkZXZfZXJy KClgCgojIyMgU3RlcCA1LjQ6IENhbGwgQ2hhaW4gLyBSZWFjaGFiaWxpdHkKKipSZWNvcmQ6KioK LSBSZXN1bWUgcGF0aCBpcyByZWFjaGFibGUgb24gUm9ja2NoaXAgYm9hcmRzIHVzaW5nIFBETSBt aWNyb3Bob25lcwogIChSSzMzMjgsIFJLMzU2OCwgUlYxMTI2KS4KLSBUcmlnZ2VyOiBydW50aW1l IFBNIHJlc3VtZSBhZnRlciBpZGxlLCBvciBzeXN0ZW0gc3VzcGVuZC9yZXN1bWUuCi0gTm90IGRp cmVjdGx5IHVzZXJzcGFjZS10cmlnZ2VyYWJsZSBhcyBhIHNlY3VyaXR5IHByaW1pdGl2ZSwgYnV0 CiAgcmVhY2hhYmxlIGR1cmluZyBub3JtYWwgYXVkaW8gdXNlIGFuZCBzeXN0ZW0gUE0uCgojIyMg U3RlcCA1LjU6IFNpbWlsYXIgUGF0dGVybnMKKipSZWNvcmQ6KioKLSAqKkNvcnJlY3QgcGF0dGVy bjoqKiBgcm9ja2NoaXBfc2FpLmNgIGFuZCBgcm9ja2NoaXBfaTJzX3RkbS5jYCBlbmFibGUKICBg aGNsa2AgYmVmb3JlIGZ1bmN0aW9uYWwgY2xvY2sgb24gcmVzdW1lLgotICoqU2FtZSBidWcgcGF0 dGVybjoqKiBgcm9ja2NoaXBfc3BkaWYuY2AgYWxzbyBlbmFibGVzIG1jbGsgYmVmb3JlIGhjbGsK ICBvbiByZXN1bWUgKG5vdCBmaXhlZCBieSB0aGlzIGNvbW1pdCkuCi0gKipQRE0gcHJvYmU6Kiog ZW5hYmxlcyBgaGNsa2AgZmlyc3QgYXQgbGluZSA2MTQuCgotLS0KCiMjIFBoYXNlIDY6IENyb3Nz LVJlZmVyZW5jaW5nIEFnYWluc3QgdGhlIExvY2FsIFRyZWUKCiMjIyBTdGVwIDYuMTogRG9lcyB0 aGUgQnVnZ3kgQ29kZSBFeGlzdD8KKipSZWNvcmQ6KiogKipZZXMuKiogTG9jYWwgdHJlZSBpcyAq KnY2LjE4LjQ0KiogKGA2LjE4LjQ0YCkuIEN1cnJlbnQKY29kZSBhdCBsaW5lcyA0MjXigJM0MzUg ZW5hYmxlcyBgcGRtLT5jbGtgIGJlZm9yZSBgcGRtLT5oY2xrYC4gQnVnIHByZXNlbnQKc2luY2Ug djQuMTMgZXJhICgyMDE3IGRyaXZlciBhZGRpdGlvbikuCgojIyMgU3RlcCA2LjI6IEJhY2twb3J0 IENvbXBsaWNhdGlvbnMKKipSZWNvcmQ6KiogRXhwZWN0ZWQgKipjbGVhbiBhcHBseSoqIOKAlCBz aW5nbGUgaHVuaywgbm8gc3RydWN0dXJhbApjaGFuZ2VzIG5lZWRlZC4gTm8gc2lnbmlmaWNhbnQg cmVjZW50IGNodXJuIGluIHRoaXMgZnVuY3Rpb24gYmV5b25kCnVucmVsYXRlZCBjbGVhbnVwcy4K CiMjIyBTdGVwIDYuMzogUmVsYXRlZCBGaXhlcyBBbHJlYWR5IFByZXNlbnQ/CioqUmVjb3JkOioq ICoqZWYwYTA5OGVmYjM2NioqIChlcnJvci1wYXRoIGNsZWFudXAgaW4gdGhlIHNhbWUgZnVuY3Rp b24pCmlzIGFscmVhZHkgaW4gdGhpcyB0cmVlLiBUaGUgY2xvY2stb3JkZXJpbmcgZml4IGlzICoq bm90KiogcHJlc2VudC4KCi0tLQoKIyMgUGhhc2UgNzogU3Vic3lzdGVtIGFuZCBNYWludGFpbmVy IENvbnRleHQKCiMjIyBTdGVwIDcuMTogU3Vic3lzdGVtIGFuZCBDcml0aWNhbGl0eQoqKlJlY29y ZDoqKiAqKkFTb0MgLyBSb2NrY2hpcCBQRE0gYXVkaW8gZHJpdmVyKiog4oCUICoqSU1QT1JUQU5U KiogZm9yCmVtYmVkZGVkIFJvY2tjaGlwIHBsYXRmb3JtcyB1c2luZyBQRE0gZGlnaXRhbCBtaWNy b3Bob25lczsgbm90IGNvcmUtCmtlcm5lbCwgYnV0IHJlbGV2YW50IHRvIHByb2R1Y3Rpb24gQVJN NjQgYm9hcmRzLgoKIyMjIFN0ZXAgNy4yOiBTdWJzeXN0ZW0gQWN0aXZpdHkKKipSZWNvcmQ6Kiog RHJpdmVyIGlzIG1hdHVyZSBidXQgc3RpbGwgcmVjZWl2ZXMgbWFpbnRlbmFuY2UgKHJ1bnRpbWUg UE0KY29udmVyc2lvbiwgd2FybmluZyBmaXhlcywgUkszNTY4L1JWMTEyNiBzdXBwb3J0KS4gQWN0 aXZlIGVub3VnaCB0aGF0IFBNCnBhdGhzIG1hdHRlci4KCi0tLQoKIyMgUGhhc2UgODogSW1wYWN0 IGFuZCBSaXNrIEFzc2Vzc21lbnQKCiMjIyBTdGVwIDguMTogV2hvIElzIEFmZmVjdGVkCioqUmVj b3JkOioqIFVzZXJzIG9mIFJvY2tjaGlwIFNvQ3Mgd2l0aCBQRE0gZW5hYmxlZCBpbiBkZXZpY2Ug dHJlZSAoZS5nLgpSSzM1NjgsIFJLMzMyOCwgUlYxMTI2KS4gQ29uZmlnL3BsYXRmb3JtLXNwZWNp ZmljLCBub3QgdW5pdmVyc2FsLgoKIyMjIFN0ZXAgOC4yOiBUcmlnZ2VyIENvbmRpdGlvbnMKKipS ZWNvcmQ6KioKLSBSdW50aW1lIFBNIHJlc3VtZSBhZnRlciBhdXRvc3VzcGVuZAotIFN5c3RlbSBz bGVlcCByZXN1bWUgKGByb2NrY2hpcF9wZG1fcmVzdW1lKClgKQotIENvbW1vbiBkdXJpbmcgYXVk aW8gdXNlIG9uIGJhdHRlcnktcG93ZXJlZC9lbWJlZGRlZCBkZXZpY2VzCi0gTm90IHVucHJpdmls ZWdlZCBhdHRhY2sgc3VyZmFjZTsgbm9ybWFsIGRldmljZSBQTSBvcGVyYXRpb24KCiMjIyBTdGVw IDguMzogRmFpbHVyZSBNb2RlIFNldmVyaXR5CioqUmVjb3JkOioqCi0gKipQb3RlbnRpYWwgZmFp bHVyZToqKiBjbG9jayBlbmFibGUvcmVzdW1lIHByb2JsZW1zLCBQRE0gY2FwdHVyZQogIGZhaWx1 cmUgYWZ0ZXIgc3VzcGVuZC9yZXN1bWUsIHBvc3NpYmxlIGhhcmR3YXJlIG1pc2JlaGF2aW9yIGlm CiAgY29udHJvbGxlciBjbG9jayBpcyBlbmFibGVkIHdpdGhvdXQgYnVzIGNsb2NrCi0gKipPYnNl cnZlZC9yZXBvcnRlZCBzZXZlcml0eToqKiAqKlVOVkVSSUZJRUQqKiDigJQgbm8gY3Jhc2ggcmVw b3J0IGluCiAgY29tbWl0IG1lc3NhZ2U7IGJ1ZyBsYXRlbnQgc2luY2UgMjAxNwotICoqQ2xhc3Np ZmljYXRpb246KiogKipNRURJVU0qKiDigJQgZnVuY3Rpb25hbCBQTS9yZXN1bWUgY29ycmVjdG5l c3Mgb24KICByZWFsIGhhcmR3YXJlLCBub3QgZGVtb25zdHJhdGVkIGNyYXNoL3NlY3VyaXR5L2Nv cnJ1cHRpb24KCiMjIyBTdGVwIDguNDogUmlzay1CZW5lZml0IFJhdGlvCioqUmVjb3JkOioqCi0g KipCZW5lZml0OioqIENvcnJlY3QgUE0gYmVoYXZpb3Igb24gcmVzdW1lOyBhbGlnbnMgd2l0aCBz aWJsaW5nCiAgUm9ja2NoaXAgZHJpdmVycyBhbmQgcHJvYmUgb3JkZXJpbmc7IG1heSBmaXggaW50 ZXJtaXR0ZW50IHBvc3QtcmVzdW1lCiAgYXVkaW8gZmFpbHVyZXMKLSAqKlJpc2s6KiogVmVyeSBs b3cg4oCUIDYtbGluZSByZW9yZGVyLCBubyBBUEkgY2hhbmdlcwotICoqUmF0aW86KiogTW9kZXJh dGUgYmVuZWZpdCwgdmVyeSBsb3cgcmlzazsgaW1wb3J0YW5jZSBpcyBzb21ld2hhdAogIHJlZHVj ZWQgYnkgbGFjayBvZiBkZW1vbnN0cmF0ZWQgdXNlciBpbXBhY3QKCi0tLQoKIyMgUGhhc2UgOTog RmluYWwgU3ludGhlc2lzCgojIyMgU3RlcCA5LjE6IEV2aWRlbmNlIENvbXBpbGUKCioqRk9SIGJh Y2twb3J0OioqCi0gUmVhbCBQTSBidWc6IHJlc3VtZSBkb2VzIG5vdCByZXZlcnNlIHN1c3BlbmQg Y2xvY2sgb3JkZXIKLSBCdXMgY2xvY2sgbXVzdCBwcmVjZWRlIGNvbnRyb2xsZXIgY2xvY2sgZm9y IHJlZ2lzdGVyIGFjY2VzcwotIFByb2JlIGFscmVhZHkgZW5hYmxlcyBgaGNsa2AgZmlyc3Q7IHJ1 bnRpbWUgcmVzdW1lIGlzIGludGVybmFsbHkKICBpbmNvbnNpc3RlbnQKLSBNYXRjaGVzIGNvcnJl Y3QgcGF0dGVybiBpbiBgcm9ja2NoaXBfc2FpYCBhbmQgYHJvY2tjaGlwX2kyc190ZG1gCi0gVXNl ZCBvbiBzeXN0ZW0gc2xlZXAgcmVzdW1lIGJlZm9yZSBgcmVnY2FjaGVfc3luYygpYAotIFNtYWxs LCBzdXJnaWNhbCwgbWFpbnRhaW5lci1yZXZpZXdlZCBmaXgKLSBCdWdneSBjb2RlIGV4aXN0cyBp biB0aGlzIDYuMTgueSB0cmVlIHNpbmNlIDIwMTcKLSBQcmlvciBmaXggaW4gc2FtZSBmdW5jdGlv biBhbHJlYWR5IGFjY2VwdGVkIGludG8gc3RhYmxlIHRyZWUKCioqQUdBSU5TVCBiYWNrcG9ydDoq KgotIE5vIHVzZXIgcmVwb3J0LCBzeXpib3QsIG9yIGRvY3VtZW50ZWQgY3Jhc2gvaGFuZwotIENv bW1pdCBkb2VzIG5vdCBkZXNjcmliZSBjb25jcmV0ZSB1c2VyLXZpc2libGUgc3ltcHRvbXMKLSBC dWcgbGF0ZW50IH45IHllYXJzIHdpdGhvdXQgcmVwb3J0ZWQgZmFpbHVyZXMKLSBTdGFibGUg4oCc aW1wb3J0YW50IGlzc3Vl4oCdIGJhciB1c3VhbGx5IHdhbnRzIGRlbW9uc3RyYXRlZCBpbXBhY3Qg KGNyYXNoLAogIGNvcnJ1cHRpb24sIHNlY3VyaXR5LCBkZWFkbG9jaykKLSBTaW1pbGFyIHdyb25n IG9yZGVyaW5nIGV4aXN0cyBpbiBgcm9ja2NoaXBfc3BkaWYuY2AgYW5kIGhhcyBhbHNvCiAgcGVy c2lzdGVkCgoqKlVOUkVTT0xWRUQ6KioKLSBMb3JlIHJldmlldyB0aHJlYWQgY29udGVudAotIFdo ZXRoZXIgcmV2aWV3ZXJzIGV4cGxpY2l0bHkgbm9taW5hdGVkIGZvciBzdGFibGUKLSBDb25jcmV0 ZSBmYWlsdXJlIHJlcG9ydHMgb24gYW55IFJvY2tjaGlwIGJvYXJkCgojIyMgU3RlcCA5LjI6IFN0 YWJsZSBSdWxlcyBDaGVja2xpc3QKMS4gT2J2aW91c2x5IGNvcnJlY3QgYW5kIHRlc3RlZD8gKipQ QVNTKiog4oCUIGxvZ2ljYWxseSBjb3JyZWN0OwogICBtYWludGFpbmVyIHNpZ25lZCBvZmY7IG5v IFRlc3RlZC1ieQoyLiBGaXhlcyBhIHJlYWwgYnVnIGFmZmVjdGluZyB1c2Vycz8gKipQQVNTKiog 4oCUIHJlYWwgUE0gb3JkZXJpbmcgYnVnLAogICB0aG91Z2ggdXNlciBpbXBhY3QgdW52ZXJpZmll ZAozLiBJbXBvcnRhbnQgaXNzdWU/ICoqQk9SREVSTElORS9QQVNTKiog4oCUIGNhbiBicmVhayBh dWRpbyBhZnRlciByZXN1bWUKICAgb24gZW1iZWRkZWQgaGFyZHdhcmU7IG5vdCBwcm92ZW4gY3Jh c2gvY29ycnVwdGlvbgo0LiBTbWFsbCBhbmQgY29udGFpbmVkPyAqKlBBU1MqKiDigJQgb25lIGZ1 bmN0aW9uLCB+NiBsaW5lcwo1LiBObyBuZXcgZmVhdHVyZXMgb3IgQVBJcz8gKipQQVNTKioKNi4g Q2FuIGFwcGx5IHRvIGxvY2FsIHRyZWU/ICoqUEFTUyoqIOKAlCBjb2RlIGV4aXN0cywgY2xlYW4g YXBwbHkgZXhwZWN0ZWQKCiMjIyBTdGVwIDkuMzogRXhjZXB0aW9uIENhdGVnb3JpZXMKKipSZWNv cmQ6KiogTm90IGEgZGV2aWNlLUlEL3F1aXJrL0RUL2J1aWxkL2RvY3MgZXhjZXB0aW9uLiBTdGFu ZGFyZApkcml2ZXIgUE0gYnVnIGZpeC4KCiMjIyBTdGVwIDkuNDogRGVjaXNpb24gUmF0aW9uYWxl CgpUaGlzIGlzIGEgZ2VudWluZSBydW50aW1lLVBNIGJ1ZyBpbiBhIGRyaXZlciB0aGF0IGV4aXN0 cyBhbmQgaXMgdXNlZCBpbgp0aGUgbG9jYWwgKio2LjE4LnkqKiB0cmVlLiBUaGUgZml4IGlzIG1p bmltYWwsIG9idmlvdXNseSBjb3JyZWN0LCBhbmQKYWxpZ25zIHRoZSBQRE0gZHJpdmVyIHdpdGgg dGhlIGVzdGFibGlzaGVkIFJvY2tjaGlwIHBhdHRlcm4gKGBoY2xrYApiZWZvcmUgZnVuY3Rpb25h bCBjbG9jayBvbiByZXN1bWUsIHJldmVyc2Ugb2Ygc3VzcGVuZCkuIFRoZSByZXN1bWUgcGF0aApp cyBleGVyY2lzZWQgZHVyaW5nIG5vcm1hbCBhdWRpbyBQTSBhbmQgc3lzdGVtIHNsZWVwIHJlc3Vt ZSBiZWZvcmUKcmVnaXN0ZXIgcmVzdG9yZS4KClRoZSBtYWluIHdlYWtuZXNzIGlzIHRoZSBhYnNl bmNlIG9mIGFueSByZXBvcnRlZCBjcmFzaCBvciB1c2VyIGZhaWx1cmUKZGVzcGl0ZSB0aGUgYnVn IGJlaW5nIHByZXNlbnQgc2luY2UgMjAxNy4gVGhhdCBsb3dlcnMgdXJnZW5jeSwgYnV0IHRoZQpm aXggaXMgc3RpbGwgYXBwcm9wcmlhdGUgZm9yIHN0YWJsZSBiZWNhdXNlOgotIGl0IGNvcnJlY3Rz IG9iamVjdGl2ZWx5IHdyb25nIFBNIG9yZGVyaW5nIG9uIGEgcmVhbCByZXN1bWUgcGF0aCwKLSBp dCBpcyB6ZXJvLXJpc2sgYW5kIHNlbGYtY29udGFpbmVkLAotIGluY29ycmVjdCBjbG9jayBvcmRl cmluZyBvbiByZXN1bWUgY2FuIGNhdXNlIGRldmljZSBtYWxmdW5jdGlvbiBhZnRlcgogIHN1c3Bl bmQgb24gUm9ja2NoaXAgUERNIGhhcmR3YXJlLAotIGEgcmVsYXRlZCBmaXggaW4gdGhlIHNhbWUg ZnVuY3Rpb24gaXMgYWxyZWFkeSBpbiB0aGlzIHN0YWJsZSB0cmVlLgoKLS0tCgojIyBWZXJpZmlj YXRpb24KCi0gKipbUGhhc2UgMV0qKiBQYXJzZWQgc3ViamVjdCwgdGFncywgYm9keTsgbm8gUmVw b3J0ZWQtYnkvc3l6Ym90L0ZpeGVzCiAgdGFncyBmb3VuZAotICoqW1BoYXNlIDJdKiogRGlmZiBh bmFseXNpczogc3dhcCBvZiB0d28gYGNsa19wcmVwYXJlX2VuYWJsZSgpYCBjYWxscwogIGFuZCBj b3JyZXNwb25kaW5nIGVycm9yIGNsZWFudXAgaW4gYHJvY2tjaGlwX3BkbV9ydW50aW1lX3Jlc3Vt ZSgpYAotICoqW1BoYXNlIDNdKiogYGdpdCBibGFtZWA6IGJ1Z2d5IG9yZGVyIGZyb20gZmMwNWE1 YjIyMjUzMCAoMjAxNyk7CiAgZWYwYTA5OGVmYjM2NiBhZGRlZCBlcnJvci1wYXRoIGNsZWFudXAg KDIwMjIpCi0gKipbUGhhc2UgM10qKiBgZ2l0IGxvZyAtLW9uZWxpbmUgLTIwIC0tCiAgc291bmQv c29jL3JvY2tjaGlwL3JvY2tjaGlwX3BkbS5jYDogY29uZmlybWVkIHJlbGF0ZWQgcHJpb3IgZml4 IGluCiAgdHJlZQotICoqW1BoYXNlIDNdKiogYGdpdCBtZXJnZS1iYXNlIC0taXMtYW5jZXN0b3Ig ZmMwNWE1YjIyMjUzMCBIRUFEYDoKICBvcmlnaW5hbCBkcml2ZXIgY29tbWl0IGlzIGluIHRoaXMg dHJlZQotICoqW1BoYXNlIDRdKiogYGI0IGRpZyAtYyA4Zjc4ZjdiYzE4MDZjYDogZmFpbGVkIOKA lCBjb21taXQgbm90IGluCiAgY2hlY2tvdXQKLSAqKltQaGFzZSA0XSoqIFdlYkZldGNoL2N1cmwg bG9yZTogYmxvY2tlZCAoNDAzL2JvdCBwcm90ZWN0aW9uKSDigJQKICB0aHJlYWQgY29udGVudCBV TlZFUklGSUVECi0gKipbUGhhc2UgNV0qKiBSZWFkIGNhbGxlcnM6IHByb2JlLCBQTSBvcHMsIGBy b2NrY2hpcF9wZG1fcmVzdW1lKClgIHZpYQogIGBwbV9ydW50aW1lX3Jlc3VtZV9hbmRfZ2V0KClg Ci0gKipbUGhhc2UgNV0qKiBDb21wYXJlZCBwYXR0ZXJucyBpbiBgcm9ja2NoaXBfc2FpLmNgLAog IGByb2NrY2hpcF9pMnNfdGRtLmNgLCBgcm9ja2NoaXBfc3BkaWYuY2AKLSAqKltQaGFzZSA2XSoq IGBnaXQgZGVzY3JpYmUgSEVBRGAgKyBNYWtlZmlsZTogdHJlZSBpcyB2Ni4xOC40NAotICoqW1Bo YXNlIDZdKiogUmVhZCBjdXJyZW50IGByb2NrY2hpcF9wZG0uY2A6IGJ1Z2d5IG9yZGVyaW5nIGNv bmZpcm1lZAogIGF0IGxpbmVzIDQyNeKAkzQzNQotICoqW1BoYXNlIDZdKiogRFQgY2hlY2s6IFBE TSBwcmVzZW50IGZvciByazM1NjgvcmszMzI4IGluCiAgYGFyY2gvYXJtNjQvYm9vdC9kdHMvcm9j a2NoaXAvYAotICoqW1BoYXNlIDhdKiogRmFpbHVyZSBtb2RlIGFzc2Vzc2VkIGFzIGZ1bmN0aW9u YWwgUE0vcmVzdW1lIGlzc3VlOyBubwogIHZlcmlmaWVkIGNyYXNoIHJlcG9ydAoKKipZRVMqKgoK IHNvdW5kL3NvYy9yb2NrY2hpcC9yb2NrY2hpcF9wZG0uYyB8IDEwICsrKysrLS0tLS0KIDEgZmls ZSBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv c291bmQvc29jL3JvY2tjaGlwL3JvY2tjaGlwX3BkbS5jIGIvc291bmQvc29jL3JvY2tjaGlwL3Jv Y2tjaGlwX3BkbS5jCmluZGV4IDAxMjkyYjYzYmY5ZDYuLjExNWU5MGQzYmJmZTAgMTAwNjQ0Ci0t LSBhL3NvdW5kL3NvYy9yb2NrY2hpcC9yb2NrY2hpcF9wZG0uYworKysgYi9zb3VuZC9zb2Mvcm9j a2NoaXAvcm9ja2NoaXBfcGRtLmMKQEAgLTQyNiwxNiArNDI2LDE2IEBAIHN0YXRpYyBpbnQgcm9j a2NoaXBfcGRtX3J1bnRpbWVfcmVzdW1lKHN0cnVjdCBkZXZpY2UgKmRldikKIAlzdHJ1Y3Qgcmtf cGRtX2RldiAqcGRtID0gZGV2X2dldF9kcnZkYXRhKGRldik7CiAJaW50IHJldDsKIAotCXJldCA9 IGNsa19wcmVwYXJlX2VuYWJsZShwZG0tPmNsayk7CisJcmV0ID0gY2xrX3ByZXBhcmVfZW5hYmxl KHBkbS0+aGNsayk7CiAJaWYgKHJldCkgewotCQlkZXZfZXJyKHBkbS0+ZGV2LCAiY2xvY2sgZW5h YmxlIGZhaWxlZCAlZFxuIiwgcmV0KTsKKwkJZGV2X2VycihwZG0tPmRldiwgImhjbG9jayBlbmFi bGUgZmFpbGVkICVkXG4iLCByZXQpOwogCQlyZXR1cm4gcmV0OwogCX0KIAotCXJldCA9IGNsa19w cmVwYXJlX2VuYWJsZShwZG0tPmhjbGspOworCXJldCA9IGNsa19wcmVwYXJlX2VuYWJsZShwZG0t PmNsayk7CiAJaWYgKHJldCkgewotCQljbGtfZGlzYWJsZV91bnByZXBhcmUocGRtLT5jbGspOwot CQlkZXZfZXJyKHBkbS0+ZGV2LCAiaGNsb2NrIGVuYWJsZSBmYWlsZWQgJWRcbiIsIHJldCk7CisJ CWNsa19kaXNhYmxlX3VucHJlcGFyZShwZG0tPmhjbGspOworCQlkZXZfZXJyKHBkbS0+ZGV2LCAi Y2xvY2sgZW5hYmxlIGZhaWxlZCAlZFxuIiwgcmV0KTsKIAkJcmV0dXJuIHJldDsKIAl9CiAKLS0g CjIuNTMuMAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CkxpbnV4LXJvY2tjaGlwIG1haWxpbmcgbGlzdApMaW51eC1yb2NrY2hpcEBsaXN0cy5pbmZyYWRl YWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgt cm9ja2NoaXAK