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 81D76C00144 for ; Mon, 1 Aug 2022 07:56:25 +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:Cc:To:Subject:Message-ID:Date:From: In-Reply-To:References:MIME-Version:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=b96ByQ4cBmb9EWi0tpKXpfmnHhU8sExyr3g3mHWC21M=; b=2JgwtB7xVPPtuF LskjRVpwLuu8bIc5Ce5GOIvRFXxZaHrlEfsq2NZ4KoWkrk0l9CE2CLre7tNDxN+QRzNfyrQ2fvIIf d5nbgPsnc5+z4nRmt7NRYIuOF0KFuT3pGNUSODWugMJvhS248CoKZqtHKqs7EBc2HbjU4UbVaGGfN 5RmYpy/nrBjU+qC4bYi+oQvJu6uqOcCfho7usRxXlrnMWs9Gydgr5ML1brZ+VrKW43GlQhi+nQZM1 VJLy2fm4WY4ZAo+ZNb2fA+SVhfPcGpM8OVsvcpUS4JLVGL/ymdHgE+6KqEn9OcKlhvYp8jWW84dNX Ko/LWuJbeEjzke7tZmbw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1oIQGn-003fgn-9p; Mon, 01 Aug 2022 07:55:21 +0000 Received: from mail-pj1-x102a.google.com ([2607:f8b0:4864:20::102a]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1oIQGj-003feL-Hc; Mon, 01 Aug 2022 07:55:19 +0000 Received: by mail-pj1-x102a.google.com with SMTP id c19-20020a17090ae11300b001f2f94ed5c6so11306720pjz.1; Mon, 01 Aug 2022 00:55:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc; bh=uetOwY75YdSkRkOmZ7kqjcqe6M7pgBJrux4C6ueh2dc=; b=C29sey2y0GPIrbCS1cC5P88q5AOwiJEWMKfpOhoEpoq5K3kncC1gldVs6rhVi8BtcE iIQ52S3NH1H9vx44xLKhIMn1zCf9/ERISI8EIe0uuXI9Bv5KEN2v3T+2uqHoSvRA7V+s N5npdgHtX8URJO/y2DQLFrGOLkeWM50IovV1QYdz956TMqBImdgZPZ3A1oddKDyAgGl9 FpCdWKV2uTsx/p/2x+ELaBcaGwMlhSymB13qKmhc/2GmHv36G1ysuEqdZ2C3hx304DCU 8gHdyrbT7OU85bAHV5I5dca7/J6R+PTZh/LjYR5AA0gfe1y5qlI3gvj5sPLJ7oshUIzv QLmg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc; bh=uetOwY75YdSkRkOmZ7kqjcqe6M7pgBJrux4C6ueh2dc=; b=tD6/o4sDdbOjbr8M3cclsygIgrI2/nxfbnaiUMMKiNTxr1jVhqq5yQoOU3Mszr4Noz JsQcudSSAOhYYAO2n9DSMZBXInh+hZJ15EjHCF6lgZ/bodjbQP5ZkugXNtJIRyRKTQEO hjUCY1WcXCEtoMW3D29OEN8/IC3hHLejOgqkZ7bvkuY83eEf8haj6Nk8njvWbzBO3AGu E0rwIGgSkUqVPazmxPcQ/osDZlcA58ufXjduYWNMIfYUGXiWEv7aZwvmR1aUux/S4yyB 9yXr3U8nNZkYCyRmMBB1le0iwPy4rFxddWwn+izaiDZ5NcD+B9IJyHc6pUX8dU9QdIop WbyA== X-Gm-Message-State: ACgBeo1tKd4L998Z0qd1QbGEwJ4te301vAcrNsmWNWy9Vvc0K3k2POZ5 wpgCtzypZu7CCZLCT2zqHc8e4z3cVX0xv9QJJjA= X-Google-Smtp-Source: AA6agR4XQs0SfniccMvwBwEbhZr9DuCZhpAzorqzz/klNEEIk+hI+XSuBOa4ULddUpASHKk37VGPc9LS8p1Pl6/mYJA= X-Received: by 2002:a17:903:268f:b0:16d:d62c:5b8b with SMTP id jf15-20020a170903268f00b0016dd62c5b8bmr13763583plb.107.1659340515630; Mon, 01 Aug 2022 00:55:15 -0700 (PDT) MIME-Version: 1.0 References: <20220722102407.2205-1-peterwu.pub@gmail.com> <20220722102407.2205-12-peterwu.pub@gmail.com> <20220730213913.GJ23307@duo.ucw.cz> In-Reply-To: <20220730213913.GJ23307@duo.ucw.cz> From: szuni chen Date: Mon, 1 Aug 2022 15:55:04 +0800 Message-ID: Subject: Re: [PATCH v6 11/13] leds: rgb: mt6370: Add MediaTek MT6370 current sink type LED Indicator support To: Pavel Machek Cc: ChiaEn Wu , Lee Jones , Daniel Thompson , Jingoo Han , Rob Herring , Krzysztof Kozlowski , Matthias Brugger , Sebastian Reichel , Chunfeng Yun , Greg Kroah-Hartman , Jonathan Cameron , Lars-Peter Clausen , Liam Girdwood , Mark Brown , Guenter Roeck , "Krogerus, Heikki" , Helge Deller , Andy Shevchenko , ChiaEn Wu , Alice Chen , ChiYuan Huang , dri-devel , Linux LED Subsystem , devicetree , linux-arm Mailing List , "moderated list:ARM/Mediatek SoC support" , Linux Kernel Mailing List , Linux PM , USB , linux-iio , "open list:FRAMEBUFFER LAYER" X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220801_005517_613454_4CDC0279 X-CRM114-Status: GOOD ( 36.46 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org SGkgUGF2ZWwsClNvcnJ5IGZvciByZXNlbmRpbmcgdGhlIG1haWwsIEkgYWRkIGFsbCByZXZpZXdl cnMgdGhpcyB0aW1lLgoKClBhdmVsIE1hY2hlayA8cGF2ZWxAdWN3LmN6PiDmlrwgMjAyMuW5tDfm nIgzMeaXpSDpgLHml6Ug5riF5pmoNTozOeWvq+mBk++8mgo+Cj4gSGkhCj4KLi4uCgo+Cj4gPiAr Y29uZmlnIExFRFNfTVQ2MzcwX1JHQgo+ID4gKyAgICAgdHJpc3RhdGUgIkxFRCBTdXBwb3J0IGZv ciBNZWRpYVRlayBNVDYzNzAgUE1JQyIKPiA+ICsgICAgIGRlcGVuZHMgb24gTUZEX01UNjM3MAo+ ID4gKyAgICAgc2VsZWN0IExJTkVBUl9SQU5HRQo+ID4gKyAgICAgaGVscAo+ID4gKyAgICAgICBT YXkgWSBoZXJlIHRvIGVuYWJsZSBzdXBwb3J0IGZvciBNVDYzNzBfUkdCIExFRCBkZXZpY2UuCj4g PiArICAgICAgIEluIE1UNjM3MCwgdGhlcmUgYXJlIGZvdXIgY2hhbm5lbCBjdXJyZW50LXNpbmsg TEVEIGRyaXZlcnMgdGhhdAo+ID4gKyAgICAgICBzdXBwb3J0IGhhcmR3YXJlIHBhdHRlcm4gZm9y IGNvbnN0YW50IGN1cnJlbnQsIFBXTSwgYW5kIGJyZWF0aCBtb2RlLgo+Cj4KPiA+ICsgICAgICAg SXNpbms0IGNoYW5uZWwgY2FuIGFsc28gYmUgdXNlZCBhcyBhIENIR19WSU4gcG93ZXIgZ29vZCAg aW5kaWNhdG9yLgo+Cj4gVGhhdCBkb2VzIG5vdCByZWFsbHkgYmVsb25nIGhlcmUuCj4KU2hvdWxk IHdlIGp1c3QgcmVtb3ZlIGl0LCBvciBkZXNjcmliZSBJc2luazQgaW4gYW5vdGhlciBwb3NpdGlv bj8KCj4gPiArc3RydWN0IG10NjM3MF9wcml2IHsKPiA+ICsgICAgIC8qIFBlciBMRUQgYWNjZXNz IGxvY2sgKi8KPiA+ICsgICAgIHN0cnVjdCBtdXRleCBsb2NrOwo+Cj4gRG8gd2UgcmVhbGx5IG5l ZWQgcGVyLWxlZCBsb2NraW5nPwo+ClNvcnJ5LCBtYXliZSB0aGUgY29tbWVudCBpcyBub3QgcHJl Y2lzZS4KVGhlIGxvY2sgaXMgdXNlZCB0byBwcmV2ZW50IExFRHMgZnJvbSBhY2Nlc3NpbmcgdGhl IEhXIGF0IHRoZSBzYW1lIHRpbWUuCgpJZiBJIHVzZQovKiBMRUQgYWNjZXNzIGxvY2ssIG9ubHkg b25lIExFRCBjYW4gYWNjZXNzIHRoZSBIVyBhdCB0aGUgc2FtZSB0aW1lICovCndpbGwgaXQgbG9v ayBiZXR0ZXI/Ck5vLCB3ZSBhcmVuJ3QuClRoZXJlIGFyZSBzaXggc3RlcHMgdHIxLCB0cjIsIHRm MSwgdGYyLCB0b24sIGFuZCB0b2ZmIGluIE1UNjM3MCBsZWQgYnJlYXRoIG1vZGUuCldlIHBhcnNl IGR1cmF0aW9uIHNldHRpbmdzIGZyb20gbm9kZSAiaHdfcGF0dGVybiIgYW5kIHNldCB0aGVtIHRv IHRoZSByZWdpc3RlcnMuCgpUaGlzIGZ1bmN0aW9uIGlzIHVzZWQgdG8gZ2VuZXJhdGUgZHVyYXRp b24gc2V0dGluZ3MgZnJvbSBod19wYXR0ZXJuLgoKVGhlIGJyaWdodG5lc3Mgb2YgdGhlIHNpeCBz dGVwcyBtZW50aW9uZWQgYWJvdmUgaW4gYnJlYXRoIG1vZGUgaXMKbGltaXRlZCB0byB0aGUgbm9k ZSAiYnJpZ2h0bmVzcyIuClRoZSB0YXJnZXQgYnJpZ2h0bmVzcyBvZiB0cjEgYW5kIHRmMSBpcyAy NSUgb2Ygbm9kZSAiYnJpZ2h0bmVzcyIsIGFuZAp0aGV5IGFyZSBhdXRvbWF0aWNhbGx5IHNldCBi eSBIVy4KCj4gPiArc3RhdGljIGludCBtdDYzNzBfaW5pdF9sZWRfcHJvcGVydGllcyhzdHJ1Y3Qg bXQ2MzcwX2xlZCAqbGVkLAo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg c3RydWN0IGxlZF9pbml0X2RhdGEgKmluaXRfZGF0YSkKPiA+ICt7Cj4gPiArICAgICBzdHJ1Y3Qg bXQ2MzcwX3ByaXYgKnByaXYgPSBsZWQtPnByaXY7Cj4gPiArICAgICBzdHJ1Y3QgZGV2aWNlICpk ZXYgPSBwcml2LT5kZXY7Cj4gPiArICAgICBzdHJ1Y3QgbGVkX2NsYXNzZGV2ICpsY2RldjsKPiA+ ICsgICAgIHN0cnVjdCBmd25vZGVfaGFuZGxlICpjaGlsZDsKPiA+ICsgICAgIGVudW0gbXQ2Mzcw X2xlZF9yYW5nZXMgc2VsX3JhbmdlOwo+ID4gKyAgICAgdTMyIG1heF91QSwgbWF4X2xldmVsOwo+ ID4gKyAgICAgY29uc3QgY2hhciAqIGNvbnN0IHN0YXRlc1tdID0geyAib2ZmIiwgImtlZXAiLCAi b24iIH07Cj4KPiBXZSdkIHJlYWxseSBwcmVmZmVyIG5vdCB0byBhZGQgImtlZXAiIC8gIm9uIiBz dXBwb3J0IHVubGVzcyB5b3UgbmVlZAo+IGl0Lgo+CkZvcmdpdmUgbWUsIGJ1dCBJIHdvdWxkIGxp a2UgdG8ga25vdyB3aHkgImtlZXAiIC8gIm9uIiBpcyBub3QgcHJlZmVycmVkLgpXZSB0aGluayB0 aGUgdXNlcnMgbWlnaHQgaGF2ZSBzb21lIGNvbmRpdGlvbnMgdGhhdCBuZWVkIHRoZW0uCgoKQmVz dCBSZWdhcmRzLApBbGljZQoKUGF2ZWwgTWFjaGVrIDxwYXZlbEB1Y3cuY3o+IOaWvCAyMDIy5bm0 N+aciDMx5pelIOmAseaXpSDmuIXmmag1OjM55a+r6YGT77yaCj4KPiBIaSEKPgo+ID4gRnJvbTog Q2hpWXVhbiBIdWFuZyA8Y3lfaHVhbmdAcmljaHRlay5jb20+Cj4gPgo+ID4gVGhlIE1lZGlhVGVr IE1UNjM3MCBpcyBhIGhpZ2hseS1pbnRlZ3JhdGVkIHNtYXJ0IHBvd2VyIG1hbmFnZW1lbnQgSUMs Cj4gPiB3aGljaCBpbmNsdWRlcyBhIHNpbmdsZSBjZWxsIExpLUlvbi9MaS1Qb2x5bWVyIHN3aXRj aGluZyBiYXR0ZXJ5Cj4gPiBjaGFyZ2VyLCBhIFVTQiBUeXBlLUMgJiBQb3dlciBEZWxpdmVyeSAo UEQpIGNvbnRyb2xsZXIsIGR1YWwKPiA+IEZsYXNoIExFRCBjdXJyZW50IHNvdXJjZXMsIGEgUkdC IExFRCBkcml2ZXIsIGEgYmFja2xpZ2h0IFdMRUQgZHJpdmVyLAo+ID4gYSBkaXNwbGF5IGJpYXMg ZHJpdmVyIGFuZCBhIGdlbmVyYWwgTERPIGZvciBwb3J0YWJsZSBkZXZpY2VzLgo+ID4KPiA+IElu IE1lZGlhVGVrIE1UNjM3MCwgdGhlcmUgYXJlIGZvdXIgY2hhbm5lbCBjdXJyZW50LXNpbmsgUkdC IExFRHMgdGhhdAo+ID4gc3VwcG9ydCBoYXJkd2FyZSBwYXR0ZXJuIGZvciBjb25zdGFudCBjdXJy ZW50LCBQV00sIGFuZCBicmVhdGggbW9kZS4KPiA+IElzaW5rNCBjaGFubmVsIGNhbiBhbHNvIGJl IHVzZWQgYXMgYSBDSEdfVklOIHBvd2VyIGdvb2QgaW5kaWNhdG9yLgo+ID4KPgo+ID4gK2NvbmZp ZyBMRURTX01UNjM3MF9SR0IKPiA+ICsgICAgIHRyaXN0YXRlICJMRUQgU3VwcG9ydCBmb3IgTWVk aWFUZWsgTVQ2MzcwIFBNSUMiCj4gPiArICAgICBkZXBlbmRzIG9uIE1GRF9NVDYzNzAKPiA+ICsg ICAgIHNlbGVjdCBMSU5FQVJfUkFOR0UKPiA+ICsgICAgIGhlbHAKPiA+ICsgICAgICAgU2F5IFkg aGVyZSB0byBlbmFibGUgc3VwcG9ydCBmb3IgTVQ2MzcwX1JHQiBMRUQgZGV2aWNlLgo+ID4gKyAg ICAgICBJbiBNVDYzNzAsIHRoZXJlIGFyZSBmb3VyIGNoYW5uZWwgY3VycmVudC1zaW5rIExFRCBk cml2ZXJzIHRoYXQKPiA+ICsgICAgICAgc3VwcG9ydCBoYXJkd2FyZSBwYXR0ZXJuIGZvciBjb25z dGFudCBjdXJyZW50LCBQV00sIGFuZCBicmVhdGggbW9kZS4KPgo+Cj4gPiArICAgICAgIElzaW5r NCBjaGFubmVsIGNhbiBhbHNvIGJlIHVzZWQgYXMgYSBDSEdfVklOIHBvd2VyIGdvb2QgIGluZGlj YXRvci4KPgo+IFRoYXQgZG9lcyBub3QgcmVhbGx5IGJlbG9uZyBoZXJlLgo+Cj4gPiArc3RydWN0 IG10NjM3MF9wcml2IHsKPiA+ICsgICAgIC8qIFBlciBMRUQgYWNjZXNzIGxvY2sgKi8KPiA+ICsg ICAgIHN0cnVjdCBtdXRleCBsb2NrOwo+Cj4gRG8gd2UgcmVhbGx5IG5lZWQgcGVyLWxlZCBsb2Nr aW5nPwo+Cj4gPiArc3RhdGljIGludCBtdDYzNzBfZ2VuX2JyZWF0aF9wYXR0ZXJuKHN0cnVjdCBt dDYzNzBfcHJpdiAqcHJpdiwKPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg c3RydWN0IGxlZF9wYXR0ZXJuICpwYXR0ZXJuLCB1MzIgbGVuLAo+ID4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB1OCAqcGF0dGVybl92YWwsIHUzMiB2YWxfbGVuKQo+ID4gK3sK PiA+ICsgICAgIGVudW0gbXQ2MzcwX2xlZF9yYW5nZXMgc2VsX3JhbmdlOwo+ID4gKyAgICAgc3Ry dWN0IGxlZF9wYXR0ZXJuICpjdXJyOwo+ID4gKyAgICAgdW5zaWduZWQgaW50IHNlbDsKPiA+ICsg ICAgIHU4IHZhbFtQX01BWF9QQVRURVJOUyAvIDJdID0ge307Cj4gPiArICAgICBpbnQgaTsKPiA+ ICsKPiA+ICsgICAgIGlmIChsZW4gPCBQX01BWF9QQVRURVJOUyAmJiB2YWxfbGVuIDwgUF9NQVhf UEFUVEVSTlMgLyAyKQo+ID4gKyAgICAgICAgICAgICByZXR1cm4gLUVJTlZBTDsKPiA+ICsKPiA+ ICsgICAgIC8qCj4gPiArICAgICAgKiBQYXR0ZXJuIGxpc3QKPiA+ICsgICAgICAqIHRyMTogYnl0 ZSAwLCBiJ1s3OiA0XQo+ID4gKyAgICAgICogdHIyOiBieXRlIDAsIGInWzM6IDBdCj4gPiArICAg ICAgKiB0ZjE6IGJ5dGUgMSwgYidbNzogNF0KPiA+ICsgICAgICAqIHRmMjogYnl0ZSAxLCBiJ1sz OiAwXQo+ID4gKyAgICAgICogdG9uOiBieXRlIDIsIGInWzc6IDRdCj4gPiArICAgICAgKiB0b2Zm OiBieXRlIDIsIGInWzM6IDBdCj4gPiArICAgICAgKi8KPiA+ICsgICAgIGZvciAoaSA9IDA7IGkg PCBQX01BWF9QQVRURVJOUzsgaSsrKSB7Cj4gPiArICAgICAgICAgICAgIGN1cnIgPSBwYXR0ZXJu ICsgaTsKPiA+ICsKPiA+ICsgICAgICAgICAgICAgc2VsX3JhbmdlID0gaSA9PSBQX0xFRF9UT0ZG ID8gUl9MRURfVE9GRiA6IFJfTEVEX1RSRk9OOwo+ID4gKwo+ID4gKyAgICAgICAgICAgICBsaW5l YXJfcmFuZ2VfZ2V0X3NlbGVjdG9yX3dpdGhpbihwcml2LT5yYW5nZXMgKyBzZWxfcmFuZ2UsCj4g PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnItPmRl bHRhX3QsICZzZWwpOwo+ID4gKwo+ID4gKyAgICAgICAgICAgICB2YWxbaSAvIDJdIHw9IHNlbCA8 PCAoNCAqICgoaSArIDEpICUgMikpOwo+ID4gKyAgICAgfQo+ID4gKwo+ID4gKyAgICAgbWVtY3B5 KHBhdHRlcm5fdmFsLCB2YWwsIDMpOwo+ID4gKwo+ID4gKyAgICAgcmV0dXJuIDA7Cj4gPiArfQo+ Cj4gSSB3b25kZXIgaG93IHRoaXMgd29ya3MuLi4geW91IGFyZSBub3QgY3JlYXRpbmcgcHJpdmF0 ZSBzeXNmcwo+IGludGVyZmFjZSwgYXJlIHlvdT8KPgo+ID4gK3N0YXRpYyBpbnQgbXQ2MzcwX2lu aXRfbGVkX3Byb3BlcnRpZXMoc3RydWN0IG10NjM3MF9sZWQgKmxlZCwKPiA+ICsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBsZWRfaW5pdF9kYXRhICppbml0X2RhdGEp Cj4gPiArewo+ID4gKyAgICAgc3RydWN0IG10NjM3MF9wcml2ICpwcml2ID0gbGVkLT5wcml2Owo+ ID4gKyAgICAgc3RydWN0IGRldmljZSAqZGV2ID0gcHJpdi0+ZGV2Owo+ID4gKyAgICAgc3RydWN0 IGxlZF9jbGFzc2RldiAqbGNkZXY7Cj4gPiArICAgICBzdHJ1Y3QgZndub2RlX2hhbmRsZSAqY2hp bGQ7Cj4gPiArICAgICBlbnVtIG10NjM3MF9sZWRfcmFuZ2VzIHNlbF9yYW5nZTsKPiA+ICsgICAg IHUzMiBtYXhfdUEsIG1heF9sZXZlbDsKPiA+ICsgICAgIGNvbnN0IGNoYXIgKiBjb25zdCBzdGF0 ZXNbXSA9IHsgIm9mZiIsICJrZWVwIiwgIm9uIiB9Owo+Cj4gV2UnZCByZWFsbHkgcHJlZmZlciBu b3QgdG8gYWRkICJrZWVwIiAvICJvbiIgc3VwcG9ydCB1bmxlc3MgeW91IG5lZWQKPiBpdC4KPgo+ ID4gKyAgICAgICAgICAgICAgICAgICAgIGlmIChyZXQpCj4gPiArICAgICAgICAgICAgICAgICAg ICAgICAgICAgICByZXR1cm4gZGV2X2Vycl9wcm9iZShkZXYsIHJldCwKPiA+ICsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsZWQgJWQsIG5vIGNvbG9y IHNwZWNpZmllZFxuIiwKPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGxlZC0+aW5kZXgpOwo+Cj4gbGVkLT5MRUQuCj4KPiA+ICsgICAgICAgICAg ICAgaWYgKG51bV9jb2xvciA8IDIpCj4gPiArICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGRl dl9lcnJfcHJvYmUoZGV2LCAtRUlOVkFMLAo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICJNdWx0aWNvbG9yIG11c3QgaW5jbHVkZQo+ID4gMiBvciBtb3JlIGxl ZCBjaGFubmVsXG4iKTsKPgo+ICJMRUQgY2hhbm5lbHMiLgo+Cj4gPiArc3RhdGljIGludCBtdDYz NzBfaXNua19pbml0X2RlZmF1bHRfc3RhdGUoc3RydWN0IG10NjM3MF9sZWQgKmxlZCkKPiA+ICt7 Cj4gPiArICAgICBzdHJ1Y3QgbXQ2MzcwX3ByaXYgKnByaXYgPSBsZWQtPnByaXY7Cj4gPiArICAg ICB1bnNpZ25lZCBpbnQgZW5hYmxlLCBsZXZlbDsKPiA+ICsgICAgIGludCByZXQ7Cj4gPiArCj4g PiArICAgICByZXQgPSBtdDYzNzBfZ2V0X2xlZF9icmlnaHRuZXNzKHByaXYsIGxlZC0+aW5kZXgs ICZsZXZlbCk7Cj4gPiArICAgICBpZiAocmV0KQo+ID4gKyAgICAgICAgICAgICByZXR1cm4gcmV0 Owo+ID4gKwo+ID4gKyAgICAgcmV0ID0gcmVnbWFwX2ZpZWxkX3JlYWQocHJpdi0+ZmllbGRzW0Zf UkdCX0VOXSwgJmVuYWJsZSk7Cj4gPiArICAgICBpZiAocmV0KQo+ID4gKyAgICAgICAgICAgICBy ZXR1cm4gcmV0Owo+ID4gKwo+ID4gKyAgICAgaWYgKCEoZW5hYmxlICYgTVQ2MzcwX0NIRU5fQklU KGxlZC0+aW5kZXgpKSkKPiA+ICsgICAgICAgICAgICAgbGV2ZWwgPSBMRURfT0ZGOwo+Cj4gSnVz dCB1c2UgMCBpbnN0ZWFkIG9mIExFRF9PRkYuCj4KPiBCZXN0IHJlZ2FyZHMsCj4gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQYXZlbAo+Cj4g LS0KPiBQZW9wbGUgb2YgUnVzc2lhLCBzdG9wIFB1dGluIGJlZm9yZSBoaXMgd2FyIG9uIFVrcmFp bmUgZXNjYWxhdGVzLgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0 cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGlu Zm8vbGludXgtYXJtLWtlcm5lbAo=