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 D784BCD343F for ; Fri, 15 May 2026 16:10:59 +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=QmlkWbhxriDz2bYTI5L1Rqy1+DP7pYt2JexiWrepuuM=; b=yUnOxRCUA29r2a Vkbdy4SYfKTFU9KDG94HMrcp9UgoZve4v0qqeJsR177VOf4RQ+Pu9PQY0WvjIFEThgkdPXrFdKojG qIdQkTsJ644+6D8SLzjWqqVV3cAb3m662CUUJ5BTDGKaowR2E1FTrmQb72nnKEcXWo480P9F378rE 7W+OwJfz1fXqwK2eP8kvV0TrV3y1ceQ7rlB/hSEtJkW4asaTwHltsGz42exTwKiFmM25tCvBsbT/S GfLZEOH6obOFw5ZXmh7W6K7BaYu14PX0ARos5YEIfggG+/NEJiSIBhC0ybzFwhxcjYNf73C/iIyuN 4hrSD+TQh9IACQ42WsNg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1wNv7j-00000008pQF-28Gw; Fri, 15 May 2026 16:10:51 +0000 Received: from sea.source.kernel.org ([172.234.252.31]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1wNv7g-00000008pPg-2OuY for linux-amlogic@lists.infradead.org; Fri, 15 May 2026 16:10:50 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sea.source.kernel.org (Postfix) with ESMTP id 042BE4453F; Fri, 15 May 2026 16:10:48 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id C0701C2BCF7; Fri, 15 May 2026 16:10:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1778861447; bh=qsLgjDvIOn9rSny34MySIXn7PibJ62qnkcjSA2dccdU=; h=From:Subject:Reply-To:To:Cc:In-Reply-To:References:Date:From; b=Hw1WIsfUYYsU9WOJuUk3F283PhI4XnMxJBYCpp0bbuf0RWACd8wdel+RSd2SZXavB HNTzGMp696n3tI2+miCibKwuFm/gMhb2ADjbe2NCMvgZVSFox/EddDDuqnRxfHzy9z N7bKLiBMFKD9xcvMZeRHHlbvd9Py8UiJLffkwLpCJoaOUF6OJTiZAwzGejHJLPpYRI nukoCCRV7iHb1bL8PCo68LEhK4DEWfxdEVunuBNYHc7vGfWtsa55dA+QYd5ABfhxRo j+DuMoMHydev0e1KEjUdoeCOnXLg72Lu1VLYLkZ52fp8dlB0WvrRz8GYLXpMe1sIxb NPA4ZGwB3nLbw== From: sashiko-bot@kernel.org Subject: Re: [PATCH 2/4] ASoC: meson: aiu-encoder-i2s: use gx_iface and gx_stream structures To: "Valerio Setti" Cc: neil.armstrong@linaro.org, linux-amlogic@lists.infradead.org In-Reply-To: <20260515-reshape-aiu-as-axg-v1-2-53b457784ff3@baylibre.com> References: <20260515-reshape-aiu-as-axg-v1-2-53b457784ff3@baylibre.com> Date: Fri, 15 May 2026 16:10:47 +0000 Message-Id: <20260515161047.C0701C2BCF7@smtp.kernel.org> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.9.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260515_091048_654845_CBE9537C X-CRM114-Status: GOOD ( 24.19 ) X-BeenThere: linux-amlogic@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: 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-amlogic" Errors-To: linux-amlogic-bounces+linux-amlogic=archiver.kernel.org@lists.infradead.org VGhhbmsgeW91IGZvciB5b3VyIGNvbnRyaWJ1dGlvbiEgU2FzaGlrbyBBSSByZXZpZXcgZm91bmQg NyBwb3RlbnRpYWwgaXNzdWUocykgdG8gY29uc2lkZXI6Ci0gW0hpZ2hdIERvdWJsZSBmcmVlIC8g VXNlLUFmdGVyLUZyZWUgbWVtb3J5IGNvcnJ1cHRpb24gb24gREFJIHByb2JlIGZhaWx1cmUgcGF0 aC4KLSBbSGlnaF0gU2xlZXBpbmcgaW4gYXRvbWljIGNvbnRleHQgd2l0aGluIHRoZSBQQ00gdHJp Z2dlciBjYWxsYmFjay4KLSBbSGlnaF0gQ3VzdG9tIGludGVyZmFjZSByYXRlIHN5bW1ldHJ5IGxv Z2ljIHBlcm1hbmVudGx5IGxvY2tzIHRoZSBzYW1wbGUgcmF0ZS4KLSBbSGlnaF0gSW5jb21wbGV0 ZSBwYXJhbWV0ZXIgc3ltbWV0cnkgYWxsb3dzIGNvbmN1cnJlbnQgc3RyZWFtcyB0byBjb3JydXB0 IHRoZSBzaGFyZWQgaGFyZHdhcmUgY2xvY2sgZGl2aWRlci4KLSBbSGlnaF0gVW5zYWZlIGhhcmR3 YXJlIHNvZnQtcmVzZXRzIGluIGBod19wYXJhbXNgIGNvcnJ1cHQgYWN0aXZlIHN0cmVhbXMuCi0g W01lZGl1bV0gRGF0YSByYWNlIGluIG1hbnVhbCByYXRlIHN5bW1ldHJ5IGVuZm9yY2VtZW50Lgot IFtNZWRpdW1dIEludGVnZXIgdW5kZXJmbG93IHdoZW4gcHJvZ3JhbW1pbmcgdGhlIGNsb2NrIGRp dmlkZXIgZHVlIHRvIHVuaW5pdGlhbGl6ZWQgc3lzY2xrLgotLQoKY29tbWl0IGVkNWJiMjUyOTM0 YWVhNWUyMjA1ZDNiNTg5ZDI1NTZkY2RiZWQ4MWYKQXV0aG9yOiBWYWxlcmlvIFNldHRpIDx2c2V0 dGlAYmF5bGlicmUuY29tPgpTdWJqZWN0OiBBU29DOiBtZXNvbjogYWl1LWVuY29kZXItaTJzOiB1 c2UgZ3hfaWZhY2UgYW5kIGd4X3N0cmVhbSBzdHJ1Y3R1cmVzCgpUaGlzIGNvbW1pdCB0cmFuc2l0 aW9ucyB0aGUgQUlVIEkyUyBlbmNvZGVyIHRvIHVzZSBneF9pZmFjZSBhbmQgZ3hfc3RyZWFtCnN0 cnVjdHVyZXMsIG1vdmluZyBjbG9jayBoYW5kbGluZyBhbmQgcmF0ZSBzeW1tZXRyeSBpbnRvIHRo ZSBod19wYXJhbXMKYW5kIHRyaWdnZXIgY2FsbGJhY2tzLgoKPiBkaWZmIC0tZ2l0IGEvc291bmQv c29jL21lc29uL2FpdS1lbmNvZGVyLWkycy5jIGIvc291bmQvc29jL21lc29uL2FpdS1lbmNvZGVy LWkycy5jCj4gaW5kZXggM2I0MDYxNTA4YzE4MC4uMzlhY2NkMzk2YWZmYiAxMDA2NDQKPiAtLS0g YS9zb3VuZC9zb2MvbWVzb24vYWl1LWVuY29kZXItaTJzLmMKPiArKysgYi9zb3VuZC9zb2MvbWVz b24vYWl1LWVuY29kZXItaTJzLmMKWyAuLi4gXQo+IEBAIC0xNDIsMjQgKzE0NCwxOCBAQCBzdGF0 aWMgaW50IGFpdV9lbmNvZGVyX2kyc19zZXRfbW9yZV9kaXYoc3RydWN0IHNuZF9zb2NfY29tcG9u ZW50ICpjb21wb25lbnQsCj4gIH0KPiAgCj4gIHN0YXRpYyBpbnQgYWl1X2VuY29kZXJfaTJzX3Nl dF9jbG9ja3Moc3RydWN0IHNuZF9zb2NfY29tcG9uZW50ICpjb21wb25lbnQsCj4gLQkJCQkgICAg ICBzdHJ1Y3Qgc25kX3BjbV9od19wYXJhbXMgKnBhcmFtcykKPiArCQkJCSAgICAgIHN0cnVjdCBn eF9zdHJlYW0gKnRzKQo+ICB7Cj4gIAlzdHJ1Y3QgYWl1ICphaXUgPSBzbmRfc29jX2NvbXBvbmVu dF9nZXRfZHJ2ZGF0YShjb21wb25lbnQpOwo+IC0JdW5zaWduZWQgaW50IHNyYXRlID0gcGFyYW1z X3JhdGUocGFyYW1zKTsKPiAgCXVuc2lnbmVkIGludCBmcywgYnM7Cj4gIAlpbnQgcmV0Owo+ICAK PiAgCS8qIEdldCB0aGUgb3ZlcnNhbXBsaW5nIGZhY3RvciAqLwo+IC0JZnMgPSBESVZfUk9VTkRf Q0xPU0VTVChjbGtfZ2V0X3JhdGUoYWl1LT5pMnMuY2xrc1tNQ0xLXS5jbGspLCBzcmF0ZSk7Cj4g KwlmcyA9IERJVl9ST1VORF9DTE9TRVNUKHRzLT5pZmFjZS0+bWNsa19yYXRlLCB0cy0+aWZhY2Ut PnJhdGUpOwo+ICAKPiAgCWlmIChmcyAlIDY0KQo+ICAJCXJldHVybiAtRUlOVkFMOwoKSWYgdGhl IG1hY2hpbmUgZHJpdmVyIGRvZXMgbm90IGNhbGwgYWl1X2VuY29kZXJfaTJzX3NldF9zeXNjbGso KSwKaWZhY2UtPm1jbGtfcmF0ZSByZW1haW5zIDAuIFRoaXMgY2F1c2VzIGZzIHRvIGV2YWx1YXRl IHRvIDAsIHdoaWNoIHBhc3Nlcwp0aGUgbW9kdWxvIGNoZWNrIHNpbmNlIDAgJSA2NCBpcyAwLgoK V2hlbiBicyA9IGZzIC8gNjQgKHdoaWNoIGlzIDApIGlzIHBhc3NlZCBpbnRvIGFpdV9lbmNvZGVy X2kyc19zZXRfbW9yZV9kaXYoKSwKZG9lcyBicyAtIDEgdW5kZXJmbG93IHRvIDB4ZmZmZmZmZmY/ CgpJZiBzbywgRklFTERfUFJFUChBSVVfQ0xLX0NUUkxfTU9SRV9JMlNfRElWLCBicyAtIDEpIG1p Z2h0IG1hc2sgdGhlCnVuZGVyZmxvd2VkIHZhbHVlIGFuZCB3cml0ZSBhIGNvcnJ1cHRlZCBzdGF0 ZSB0byB0aGUgY2xvY2sgY29udHJvbCByZWdpc3Rlci4KClsgLi4uIF0KPiBAQCAtMTg4LDI1ICsx ODQsNTUgQEAgc3RhdGljIGludCBhaXVfZW5jb2Rlcl9pMnNfaHdfcGFyYW1zKHN0cnVjdCBzbmRf cGNtX3N1YnN0cmVhbSAqc3Vic3RyZWFtLAo+ICAJCQkJICAgICBzdHJ1Y3Qgc25kX3BjbV9od19w YXJhbXMgKnBhcmFtcywKPiAgCQkJCSAgICAgc3RydWN0IHNuZF9zb2NfZGFpICpkYWkpCj4gIHsK PiArCXN0cnVjdCBneF9zdHJlYW0gKnRzID0gc25kX3NvY19kYWlfZ2V0X2RtYV9kYXRhKGRhaSwg c3Vic3RyZWFtKTsKPiArCXN0cnVjdCBneF9pZmFjZSAqaWZhY2UgPSB0cy0+aWZhY2U7Cj4gIAlz dHJ1Y3Qgc25kX3NvY19jb21wb25lbnQgKmNvbXBvbmVudCA9IGRhaS0+Y29tcG9uZW50Owo+ICAJ aW50IHJldDsKPiAgCj4gLQkvKiBEaXNhYmxlIHRoZSBjbG9jayB3aGlsZSBjaGFuZ2luZyB0aGUg c2V0dGluZ3MgKi8KPiAtCWFpdV9lbmNvZGVyX2kyc19kaXZpZGVyX2VuYWJsZShjb21wb25lbnQs IGZhbHNlKTsKClRoZSByZW1vdmFsIG9mIGFpdV9lbmNvZGVyX2kyc19kaXZpZGVyX2VuYWJsZShj b21wb25lbnQsIGZhbHNlKSBtZWFucwp0aGlzIGZ1bmN0aW9uIG5vdyBwZXJmb3JtcyBwaXBlbGlu ZSBzb2Z0LXJlc2V0cyAoQUlVX1JTVF9TT0ZUX0kyU19GQVNUKQphbmQgbW9kaWZpZXMgY2xvY2sg ZGl2aWRlcnMgd2hpbGUgdGhlIGhhcmR3YXJlIG1pZ2h0IGJlIGFjdGl2ZWx5IHJ1bm5pbmcgYQpj b25jdXJyZW50IHN0cmVhbS4KCkNhbiB0aGlzIGNvcnJ1cHQgdGhlIGJpdC1jbG9jayBvciBjYXVz ZSBwaXBlbGluZSBsb2NrdXBzIG9uIHRoZSBhY3RpdmUKc3RyZWFtPwoKPiArCS8qIEVuZm9yY2Ug aW50ZXJmYWNlIHdpZGUgcmF0ZSBzeW1tZXRyeS4gKi8KPiArCWlmIChpZmFjZS0+cmF0ZSAmJiAo aWZhY2UtPnJhdGUgIT0gcGFyYW1zX3JhdGUocGFyYW1zKSkpIHsKPiArCQlkZXZfZXJyKGRhaS0+ ZGV2LCAiY2FuJ3Qgc2V0IGlmYWNlIHJhdGUgKCVkICE9ICVkKVxuIiwKPiArCQkJaWZhY2UtPnJh dGUsIHBhcmFtc19yYXRlKHBhcmFtcykpOwo+ICsJCXJldHVybiAtRUlOVkFMOwo+ICsJfQo+ICsK PiArCWlmYWNlLT5yYXRlID0gcGFyYW1zX3JhdGUocGFyYW1zKTsKPiArCXRzLT5waHlzaWNhbF93 aWR0aCA9IHBhcmFtc19waHlzaWNhbF93aWR0aChwYXJhbXMpOwo+ICsJdHMtPndpZHRoID0gcGFy YW1zX3dpZHRoKHBhcmFtcyk7Cj4gKwl0cy0+Y2hhbm5lbHMgPSBwYXJhbXNfY2hhbm5lbHMocGFy YW1zKTsKCkFMU0EgcGVybWl0cyBjb25jdXJyZW50IGh3X3BhcmFtcyBpb2N0bHMgb24gaW5kZXBl bmRlbnQgc3Vic3RyZWFtcywgc3VjaAphcyBwbGF5YmFjayBhbmQgY2FwdHVyZS4gU2luY2UgdGhl IHJhdGUgY2hlY2sgYW5kIGFzc2lnbm1lbnQgYXJlIHBlcmZvcm1lZAp3aXRob3V0IG11dHVhbCBl eGNsdXNpb24sIGNvdWxkIHR3byB0aHJlYWRzIHNpbXVsdGFuZW91c2x5IHNlZSBpZmFjZS0+cmF0 ZQphcyAwIGFuZCBvdmVyd3JpdGUgZWFjaCBvdGhlcidzIGNvbmZpZ3VyYXRpb24/CgpBZGRpdGlv bmFsbHksIHRoaXMgbG9naWMgZW5mb3JjZXMgc3ltbWV0cnkgZm9yIHRoZSBzYW1wbGUgcmF0ZSwg YnV0IGlnbm9yZXMKY2hhbm5lbCBjb3VudCBhbmQgcGh5c2ljYWwgd2lkdGguCgpJZiBhIHBsYXli YWNrIHN0cmVhbSBpcyBhY3RpdmVseSBydW5uaW5nIGF0IDE2LWJpdCAyLWNoYW5uZWwsIGFuZCBh IGNhcHR1cmUKc3RyZWFtIGlzIGNvbmN1cnJlbnRseSBjb25maWd1cmVkIHRvIDE2LWJpdCA4LWNo YW5uZWwsIGl0IGFwcGVhcnMKYWl1X2VuY29kZXJfaTJzX3NldF9tb3JlX2RpdigpIHdpbGwgcmVj YWxjdWxhdGUgYW5kIG92ZXJ3cml0ZSB0aGUgc2hhcmVkCmhhcmR3YXJlIGNsb2NrIGRpdmlkZXIg QUlVX0NMS19DVFJMX01PUkVfSTJTX0RJVi4KCkNvdWxkIHRoaXMgc2lsZW50bHkgY29ycnVwdCB0 aGUgYXVkaW8gZGF0YSBvZiB0aGUgYWN0aXZlbHkgcGxheWluZyBzdHJlYW0/CgpbIC4uLiBdCj4g IHN0YXRpYyB2b2lkIGFpdV9lbmNvZGVyX2kyc19zaHV0ZG93bihzdHJ1Y3Qgc25kX3BjbV9zdWJz dHJlYW0gKnN1YnN0cmVhbSwKPiAgCQkJCSAgICAgc3RydWN0IHNuZF9zb2NfZGFpICpkYWkpCj4g IHsKPiAgCXN0cnVjdCBhaXUgKmFpdSA9IHNuZF9zb2NfY29tcG9uZW50X2dldF9kcnZkYXRhKGRh aS0+Y29tcG9uZW50KTsKPiArCXN0cnVjdCBneF9zdHJlYW0gKnRzID0gc25kX3NvY19kYWlfZ2V0 X2RtYV9kYXRhKGRhaSwgc3Vic3RyZWFtKTsKPiArCXN0cnVjdCBneF9pZmFjZSAqaWZhY2UgPSB0 cy0+aWZhY2U7Cj4gKwo+ICsJaWYgKCFzbmRfc29jX2RhaV9hY3RpdmUoZGFpKSkKPiArCQlpZmFj ZS0+cmF0ZSA9IDA7CgpUaGUgQVNvQyBjb3JlIGludm9rZXMgdGhlIHNodXRkb3duIGNhbGxiYWNr IGJlZm9yZSBkZWNyZW1lbnRpbmcgdGhlIHN0cmVhbSdzCmFjdGl2ZSBjb3VudC4KCkJlY2F1c2Ug b2YgdGhpcywgZG9lcyBzbmRfc29jX2RhaV9hY3RpdmUoZGFpKSBhbHdheXMgZXZhbHVhdGUgdG8g YXQgbGVhc3QgMQpkdXJpbmcgdGhlIHNodXRkb3duIG9mIHRoZSBmaW5hbCBzdHJlYW0/CgpJZiBz bywgaWZhY2UtPnJhdGUgd2lsbCBuZXZlciBiZSByZXNldCB0byAwLCB3aGljaCB3b3VsZCBjYXVz ZSBzdWJzZXF1ZW50CnN0cmVhbXMgd2l0aCBkaWZmZXJlbnQgc2FtcGxlIHJhdGVzIHRvIHBlcm1h bmVudGx5IGZhaWwgd2l0aCAtRUlOVkFMIHVudGlsCnRoZSBkcml2ZXIgaXMgcmVsb2FkZWQuCgpb IC4uLiBdCj4gK3N0YXRpYyBpbnQgYWl1X2VuY29kZXJfaTJzX3RyaWdnZXIoc3RydWN0IHNuZF9w Y21fc3Vic3RyZWFtICpzdWJzdHJlYW0sCj4gKwkJCQkgICBpbnQgY21kLAo+ICsJCQkJICAgc3Ry dWN0IHNuZF9zb2NfZGFpICpkYWkpCj4gK3sKPiArCXN0cnVjdCBneF9zdHJlYW0gKnRzID0gc25k X3NvY19kYWlfZ2V0X2RtYV9kYXRhKGRhaSwgc3Vic3RyZWFtKTsKPiArCWludCByZXQ7Cj4gKwo+ ICsJc3dpdGNoIChjbWQpIHsKPiArCWNhc2UgU05EUlZfUENNX1RSSUdHRVJfU1RBUlQ6Cj4gKwlj YXNlIFNORFJWX1BDTV9UUklHR0VSX1JFU1VNRToKPiArCWNhc2UgU05EUlZfUENNX1RSSUdHRVJf UEFVU0VfUkVMRUFTRToKPiArCQlyZXQgPSBneF9zdHJlYW1fc3RhcnQodHMpOwo+ICsJCWJyZWFr Owo+ICsJY2FzZSBTTkRSVl9QQ01fVFJJR0dFUl9TVVNQRU5EOgo+ICsJY2FzZSBTTkRSVl9QQ01f VFJJR0dFUl9QQVVTRV9QVVNIOgo+ICsJY2FzZSBTTkRSVl9QQ01fVFJJR0dFUl9TVE9QOgo+ICsJ CWd4X3N0cmVhbV9zdG9wKHRzKTsKPiArCQlyZXQgPSAwOwo+ICsJCWJyZWFrOwoKVGhlIFBDTSB0 cmlnZ2VyIGNhbGxiYWNrIHR5cGljYWxseSBleGVjdXRlcyBpbiBhbiBhdG9taWMgY29udGV4dCB3 aXRoIHRoZQpQQ00gc3RyZWFtIHNwaW5sb2NrIGhlbGQgYW5kIGhhcmR3YXJlIGludGVycnVwdHMg ZGlzYWJsZWQsIHVubGVzcyB0aGUgREFJCmlzIGV4cGxpY2l0bHkgbWFya2VkIHdpdGggbm9uYXRv bWljID0gMS4KCkxvb2tpbmcgYXQgZ3hfc3RyZWFtX3N0YXJ0KCkgYW5kIGd4X3N0cmVhbV9zdG9w KCksIHRoZXkgYm90aCB1bmNvbmRpdGlvbmFsbHkKYWNxdWlyZSBhIHNsZWVwaW5nIGxvY2sgdmlh IG11dGV4X2xvY2soJnRzLT5sb2NrKS4KCkRvZXMgYWNxdWlyaW5nIGEgbXV0ZXggaW4gdGhpcyBh dG9taWMgY29udGV4dCB0cmlnZ2VyIGEgc2NoZWR1bGluZyB3aGlsZQphdG9taWMga2VybmVsIHBh bmljPwoKWyAuLi4gXQo+ICtzdGF0aWMgaW50IGFpdV9lbmNvZGVyX2kyc19yZW1vdmVfZGFpKHN0 cnVjdCBzbmRfc29jX2RhaSAqZGFpKQo+ICt7Cj4gKwlpbnQgc3RyZWFtOwo+ICsKPiArCWZvcl9l YWNoX3BjbV9zdHJlYW1zKHN0cmVhbSkgewo+ICsJCXN0cnVjdCBneF9zdHJlYW0gKnRzID0gc25k X3NvY19kYWlfZG1hX2RhdGFfZ2V0KGRhaSwgc3RyZWFtKTsKPiArCj4gKwkJaWYgKHRzKQo+ICsJ CQlneF9zdHJlYW1fZnJlZSh0cyk7Cj4gKwl9Cj4gKwo+ICsJcmV0dXJuIDA7Cj4gK30KPiArCj4g K3N0YXRpYyBpbnQgYWl1X2VuY29kZXJfaTJzX3Byb2JlX2RhaShzdHJ1Y3Qgc25kX3NvY19kYWkg KmRhaSkKPiArewo+ICsJc3RydWN0IGFpdSAqYWl1ID0gc25kX3NvY19kYWlfZ2V0X2RydmRhdGEo ZGFpKTsKPiArCXN0cnVjdCBneF9pZmFjZSAqaWZhY2UgPSAmYWl1LT5pMnMuaWZhY2U7Cj4gKwlp bnQgc3RyZWFtOwo+ICsKPiArCWZvcl9lYWNoX3BjbV9zdHJlYW1zKHN0cmVhbSkgewo+ICsJCXN0 cnVjdCBneF9zdHJlYW0gKnRzOwo+ICsKPiArCQlpZiAoIXNuZF9zb2NfZGFpX2dldF93aWRnZXQo ZGFpLCBzdHJlYW0pKQo+ICsJCQljb250aW51ZTsKPiArCj4gKwkJdHMgPSBneF9zdHJlYW1fYWxs b2MoaWZhY2UpOwo+ICsJCWlmICghdHMpIHsKPiArCQkJYWl1X2VuY29kZXJfaTJzX3JlbW92ZV9k YWkoZGFpKTsKPiArCQkJcmV0dXJuIC1FTk9NRU07Cj4gKwkJfQo+ICsJCXNuZF9zb2NfZGFpX2Rt YV9kYXRhX3NldChkYWksIHN0cmVhbSwgdHMpOwo+ICsJfQoKSWYgZ3hfc3RyZWFtX2FsbG9jKCkg ZmFpbHMgZm9yIHRoZSBzZWNvbmQgc3RyZWFtIGluCmFpdV9lbmNvZGVyX2kyc19wcm9iZV9kYWko KSwgaXQgY2FsbHMgYWl1X2VuY29kZXJfaTJzX3JlbW92ZV9kYWkoKSB0byBjbGVhbgp1cCB0aGUg YWxyZWFkeSBhbGxvY2F0ZWQgc3RyZWFtcy4KClNpbmNlIGFpdV9lbmNvZGVyX2kyc19yZW1vdmVf ZGFpKCkgcmV0cmlldmVzIHRoZSBneF9zdHJlYW0gYW5kIGZyZWVzIGl0LCBidXQKZG9lcyBub3Qg Y2xlYXIgdGhlIHBvaW50ZXIgdmlhIHNuZF9zb2NfZGFpX2RtYV9kYXRhX3NldChkYWksIHN0cmVh bSwgTlVMTCksCnRoZSBzbmRfc29jX2RhaSBzdHJ1Y3R1cmUgd2lsbCBzdGlsbCBjb250YWluIGEg ZGFuZ2xpbmcgcG9pbnRlci4KCklmIGEgc3Vic2VxdWVudCBkZWZlcnJlZCBwcm9iZSByZXRyeSBm YWlscyBhbGxvY2F0aW9uIGFnYWluLCB3aWxsCnJlbW92ZV9kYWkoKSBmZXRjaCB0aGUgc2FtZSBk YW5nbGluZyBwb2ludGVyIGFuZCBwYXNzIGl0IHRvIGd4X3N0cmVhbV9mcmVlKCkKYSBzZWNvbmQg dGltZSwgcmVzdWx0aW5nIGluIGEgZG91YmxlLWZyZWUgbWVtb3J5IGNvcnJ1cHRpb24/CgotLSAK U2FzaGlrbyBBSSByZXZpZXcgwrcgaHR0cHM6Ly9zYXNoaWtvLmRldi8jL3BhdGNoc2V0LzIwMjYw NTE1LXJlc2hhcGUtYWl1LWFzLWF4Zy12MS0wLTUzYjQ1Nzc4NGZmM0BiYXlsaWJyZS5jb20/cGFy dD0yCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51 eC1hbWxvZ2ljIG1haWxpbmcgbGlzdApsaW51eC1hbWxvZ2ljQGxpc3RzLmluZnJhZGVhZC5vcmcK aHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hbWxvZ2lj Cg==