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 D0DD1C54EE9 for ; Thu, 8 Sep 2022 15:55:31 +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-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:From:References:Cc:To:Subject: MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=vCnH2lzSVWjtOsr9MVmJNtHwDTMIQ+AXEQxSp1GM13k=; b=mRaBz4mz/8PFGI wpS7z7y3oKChdmh4V/hNFcd9hZRjjiA8kCSVfE7lWm9OHXmykgibEkytbWHqjy4rH5OuQYYS73493 bqGjVLNcJuBT2NDxLRxyhE1U6Ztp8c+v5M/isbYf7lsg1I0wAjLxt95m0/cfPSKNQWxLoDsvSWeby mzw6alXVtTNOT5/ZHG1XIBwzgv92HzSbXLFJ8bkEIhSfJxvC7RppuvvMZ08tK5n5MMEIi/qG018W2 09ReMKefVxk3wTyhwftKEcBOa11xG0kTKLQb/CdAA4Lsf+Vz4qBwnmvRiHniQFQahoetILsnP+bs+ tzQEooSs2Gs0whypj9Gw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1oWJqv-005Rou-36; Thu, 08 Sep 2022 15:54:07 +0000 Received: from mail-wr1-x431.google.com ([2a00:1450:4864:20::431]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1oWJpU-005Qru-Ng for linux-arm-kernel@lists.infradead.org; Thu, 08 Sep 2022 15:52:41 +0000 Received: by mail-wr1-x431.google.com with SMTP id b17so13494974wrq.3 for ; Thu, 08 Sep 2022 08:52:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20210112.gappssmtp.com; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date; bh=EBSJBt/4rQeZDrPhVl92JJf+1TNIVaSARc45/lfhD5k=; b=kAbENSgl5oBuyAsqN9csM5nPWPbMNDsODznGSODjKr4XRlpAuZL6v+RFXt1qNuv4q0 qd6k40C8yqN3BLXLyELPOQ33a59jMF3dRBbipe1WZTXnYX/UVEO1JojmosuG1RzDhqyA 2VUb2KNGDBzAvH3E0vtIoBCt0lOnAYLVcE40i4OLdDGbYnH2ZCrRa8DpxZHQEtrzoDBP +GMAdJcTZ6o7MaV4+Edze/0uwd1uwgjBJB9i8iEpiRstBSmfPl5GX2izLnfNI2ciR9VJ GELo9Dyb0jeyh8E2xo5xrVGjqwIo/ap54f32M36JJMIOLiW1O2IXqgyfL6pTX049x3h4 +w/Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date; bh=EBSJBt/4rQeZDrPhVl92JJf+1TNIVaSARc45/lfhD5k=; b=kJGES1BLUAAVuy5C6SwpvEmkEJHuVT8rpgn2OEHx36qONIFh94gS9W2wEFr3oK9jY9 s8hJlmj9taA5eJmvrGVaW+pwsgHot+CErzVttGa7rQn1wdwwswokmQN37sOGw0kRClkk v+stayspUQi+7aejiFyMZwgmXOWWXXIJ0z7rfSdnepJzn9wKeAZgSPiyKtZNDXkAlZP6 ORTEhFLmcHTZLizZBO0pWXpieGfPLe2FQb0unnnAZMSE2s8DqBOOwiIBLV7itI+LCJEr HRYH00m3ViZnCkMPK+S4LQG5LqtQgi0sA667RjoQnDuiDeL7aqdhotCQ1qF2l9v1JHyu w6yA== X-Gm-Message-State: ACgBeo3CDCqV3rAzyOiE+dfXgADLZgciqfilvElKpdoeuuHlAvzCzxeq nTkdzQdKok63CNN22tD3d9Q5AQ== X-Google-Smtp-Source: AA6agR4HtMD485TQhY3FS7WjuK4l4FWt4RBZAxXc90hNyiyULvd42jHlYtgBPSBjMyr8H+5QGmUwjA== X-Received: by 2002:adf:f54a:0:b0:228:951a:2949 with SMTP id j10-20020adff54a000000b00228951a2949mr5428850wrp.240.1662652352815; Thu, 08 Sep 2022 08:52:32 -0700 (PDT) Received: from [10.1.4.17] (laubervilliers-658-1-213-31.w90-63.abo.wanadoo.fr. [90.63.244.31]) by smtp.gmail.com with ESMTPSA id y8-20020adfe6c8000000b00228de58ae2bsm8665682wrm.12.2022.09.08.08.52.30 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 08 Sep 2022 08:52:31 -0700 (PDT) Message-ID: Date: Thu, 8 Sep 2022 17:52:29 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.13.0 Subject: Re: [PATCH v3 4/4] thermal: mediatek: add another get_temp ops for thermal sensors Content-Language: en-US To: Daniel Lezcano , matthias.bgg@gmail.com Cc: rafael@kernel.org, fparent@baylibre.com, amitk@kernel.org, devicetree@vger.kernel.org, krzysztof.kozlowski+dt@linaro.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-mediatek@lists.infradead.org, linux-pm@vger.kernel.org, robh+dt@kernel.org, rui.zhang@intel.com, Michael Kao , Hsin-Yi Wang References: <20220901133950.115122-1-aouledameur@baylibre.com> <20220901133950.115122-5-aouledameur@baylibre.com> From: Amjad Ouled-Ameur In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220908_085236_817275_88ECB405 X-CRM114-Status: GOOD ( 29.42 ) 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-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org SGkgRGFuaWVsLAoKVGhhbmsgeW91IGZvciB0aGUgcmV2aWV3LgoKT24gOS84LzIyIDExOjA3LCBE YW5pZWwgTGV6Y2FubyB3cm90ZToKPgo+IEhpIEFtamFkLAo+Cj4gT24gMDEvMDkvMjAyMiAxNToz OSwgQW1qYWQgT3VsZWQtQW1ldXIgd3JvdGU6Cj4+IFByb3ZpZGUgdGhlcm1hbCB6b25lIHRvIHJl YWQgdGhlcm1hbCBzZW5zb3IgaW4gdGhlIFNvQy4gV2UgY2FuIHJlYWQgCj4+IGFsbCB0aGUKPj4g dGhlcm1hbCBzZW5zb3JzIHZhbHVlIGluIHRoZSBTb0MgYnkgdGhlIG5vZGUgL3N5cy9jbGFzcy90 aGVybWFsLwo+Pgo+PiBJbiBtdGtfdGhlcm1hbF9iYW5rX3RlbXBlcmF0dXJlLCByZXR1cm4gLUVB R0FJTiBpbnN0ZWFkIG9mIC1FQUNDRVNTCj4+IG9uIHRoZSBmaXJzdCByZWFkIG9mIHNlbnNvciB0 aGF0IG9mdGVuIGFyZSBib2d1cyB2YWx1ZXMuCj4+IFRoaXMgY2FuIGF2b2lkIGZvbGxvd2luZyB3 YXJuaW5nIG9uIGJvb3Q6Cj4+Cj4+IMKgwqAgdGhlcm1hbCB0aGVybWFsX3pvbmU2OiBmYWlsZWQg dG8gcmVhZCBvdXQgdGhlcm1hbCB6b25lICgtMTMpCj4+Cj4+IFNpZ25lZC1vZmYtYnk6IE1pY2hh ZWwgS2FvIDxtaWNoYWVsLmthb0BtZWRpYXRlay5jb20+Cj4+IFNpZ25lZC1vZmYtYnk6IEhzaW4t WWkgV2FuZyA8aHNpbnlpQGNocm9taXVtLm9yZz4KPj4gU2lnbmVkLW9mZi1ieTogQW1qYWQgT3Vs ZWQtQW1ldXIgPGFvdWxlZGFtZXVyQGJheWxpYnJlLmNvbT4KPj4gLS0tCj4+IENoYW5nZXMgaW4g VjM6Cj4+IC0gVXNlIHByb3BlciB0eXBlcy4KPj4gLSBVc2UgZGV2bV9rbWFsbG9jKCkgaW5zdGVh ZCBvZiBrbWFsbG9jKCkuCj4+IC0gRml4IHRhYnMgYW5kIHNwYWNlcy4KPj4KPj4gwqAgZHJpdmVy cy90aGVybWFsL210a190aGVybWFsLmMgfCAxMDAgKysrKysrKysrKysrKysrKysrKysrKysrKyst LS0tLS0tLQo+PiDCoCAxIGZpbGUgY2hhbmdlZCwgNzYgaW5zZXJ0aW9ucygrKSwgMjQgZGVsZXRp b25zKC0pCj4+Cj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3RoZXJtYWwvbXRrX3RoZXJtYWwuYyAK Pj4gYi9kcml2ZXJzL3RoZXJtYWwvbXRrX3RoZXJtYWwuYwo+PiBpbmRleCAwODhjMzg4ZGEyNDEu LjU5MDE3ODdjNTdmNSAxMDA2NDQKPj4gLS0tIGEvZHJpdmVycy90aGVybWFsL210a190aGVybWFs LmMKPj4gKysrIGIvZHJpdmVycy90aGVybWFsL210a190aGVybWFsLmMKPj4gQEAgLTI1OSw2ICsy NTksMTEgQEAgZW51bSBtdGtfdGhlcm1hbF92ZXJzaW9uIHsKPj4gwqAgwqAgc3RydWN0IG10a190 aGVybWFsOwo+PiDCoCArc3RydWN0IG10a190aGVybWFsX3pvbmUgewo+PiArwqDCoMKgIHN0cnVj dCBtdGtfdGhlcm1hbCAqbXQ7Cj4+ICvCoMKgwqAgaW50IGlkOwo+PiArfTsKPj4gKwo+PiDCoCBz dHJ1Y3QgdGhlcm1hbF9iYW5rX2NmZyB7Cj4+IMKgwqDCoMKgwqAgdW5zaWduZWQgaW50IG51bV9z ZW5zb3JzOwo+PiDCoMKgwqDCoMKgIGNvbnN0IGludCAqc2Vuc29yczsKPj4gQEAgLTcwOSw2ICs3 MTQsMzIgQEAgc3RhdGljIHZvaWQgbXRrX3RoZXJtYWxfcHV0X2Jhbmsoc3RydWN0IAo+PiBtdGtf dGhlcm1hbF9iYW5rICpiYW5rKQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgbXV0ZXhfdW5sb2NrKCZt dC0+bG9jayk7Cj4+IMKgIH0KPj4gwqAgK3N0YXRpYyBpbnQgX2dldF9zZW5zb3JfdGVtcChzdHJ1 Y3QgbXRrX3RoZXJtYWwgKm10LCBpbnQgaWQpCj4+ICt7Cj4+ICvCoMKgwqAgdTMyIHJhdzsKPj4g K8KgwqDCoCBpbnQgdGVtcDsKPj4gKwo+PiArwqDCoMKgIGNvbnN0IHN0cnVjdCBtdGtfdGhlcm1h bF9kYXRhICpjb25mID0gbXQtPmNvbmY7Cj4+ICsKPj4gK8KgwqDCoCByYXcgPSByZWFkbChtdC0+ dGhlcm1hbF9iYXNlICsgY29uZi0+bXNyW2lkXSk7Cj4+ICsKPj4gK8KgwqDCoCBpZiAobXQtPmNv bmYtPnZlcnNpb24gPT0gTVRLX1RIRVJNQUxfVjEpCj4+ICvCoMKgwqDCoMKgwqDCoCB0ZW1wID0g cmF3X3RvX21jZWxzaXVzX3YxKG10LCBpZCwgcmF3KTsKPj4gK8KgwqDCoCBlbHNlCj4+ICvCoMKg wqDCoMKgwqDCoCB0ZW1wID0gcmF3X3RvX21jZWxzaXVzX3YyKG10LCBpZCwgcmF3KTsKPgo+IENh biB5b3Ugc2V0IGEgY2FsbGJhY2sgYXQgaW5pdCB0aW1lIGluc3RlYWQgb2YgY2hlY2tpbmcgdGhl IHZlcnNpb24gYXQgCj4gZWFjaCBnZXRfc2Vuc29yX3RlbXAoKSA/Cj4KR29vZCBpZGVhLCB3aWxs IGFkZCBpdCBpbiB2NC4KPj4gK8KgwqDCoCAvKgo+PiArwqDCoMKgwqAgKiBUaGUgZmlyc3QgcmVh ZCBvZiBhIHNlbnNvciBvZnRlbiBjb250YWlucyB2ZXJ5IGhpZ2ggYm9ndXMKPj4gK8KgwqDCoMKg ICogdGVtcGVyYXR1cmUgdmFsdWUuIEZpbHRlciB0aGVzZSBvdXQgc28gdGhhdCB0aGUgc3lzdGVt IGRvZXMKPj4gK8KgwqDCoMKgICogbm90IGltbWVkaWF0ZWx5IHNodXQgZG93bi4KPj4gK8KgwqDC oMKgICovCj4+ICsKPj4gK8KgwqDCoCBpZiAodGVtcCA+IDIwMDAwMCkKPj4gK8KgwqDCoMKgwqDC oMKgIHJldHVybiAtRUFHQUlOOwo+PiArwqDCoMKgIGVsc2UKPj4gK8KgwqDCoMKgwqDCoMKgIHJl dHVybiB0ZW1wOwo+PiArfQo+PiArCj4+IMKgIC8qKgo+PiDCoMKgICogbXRrX3RoZXJtYWxfYmFu a190ZW1wZXJhdHVyZSAtIGdldCB0aGUgdGVtcGVyYXR1cmUgb2YgYSBiYW5rCj4+IMKgwqAgKiBA YmFuazrCoMKgwqAgVGhlIGJhbmsKPj4gQEAgLTcyMSwyNiArNzUyLDkgQEAgc3RhdGljIGludCBt dGtfdGhlcm1hbF9iYW5rX3RlbXBlcmF0dXJlKHN0cnVjdCAKPj4gbXRrX3RoZXJtYWxfYmFuayAq YmFuaykKPj4gwqDCoMKgwqDCoCBzdHJ1Y3QgbXRrX3RoZXJtYWwgKm10ID0gYmFuay0+bXQ7Cj4+ IMKgwqDCoMKgwqAgY29uc3Qgc3RydWN0IG10a190aGVybWFsX2RhdGEgKmNvbmYgPSBtdC0+Y29u ZjsKPj4gwqDCoMKgwqDCoCBpbnQgaSwgdGVtcCA9IElOVF9NSU4sIG1heCA9IElOVF9NSU47Cj4+ IC3CoMKgwqAgdTMyIHJhdzsKPj4gwqAgwqDCoMKgwqDCoCBmb3IgKGkgPSAwOyBpIDwgY29uZi0+ YmFua19kYXRhW2JhbmstPmlkXS5udW1fc2Vuc29yczsgaSsrKSB7Cj4+IC3CoMKgwqDCoMKgwqDC oCByYXcgPSByZWFkbChtdC0+dGhlcm1hbF9iYXNlICsgY29uZi0+bXNyW2ldKTsKPj4gLQo+PiAt wqDCoMKgwqDCoMKgwqAgaWYgKG10LT5jb25mLT52ZXJzaW9uID09IE1US19USEVSTUFMX1YxKSB7 Cj4+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHRlbXAgPSByYXdfdG9fbWNlbHNpdXNfdjEoCj4+ IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgbXQsIGNvbmYtPmJhbmtfZGF0YVtiYW5r LT5pZF0uc2Vuc29yc1tpXSwgcmF3KTsKPj4gLcKgwqDCoMKgwqDCoMKgIH0gZWxzZSB7Cj4+IC3C oMKgwqDCoMKgwqDCoMKgwqDCoMKgIHRlbXAgPSByYXdfdG9fbWNlbHNpdXNfdjIoCj4+IC3CoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgbXQsIGNvbmYtPmJhbmtfZGF0YVtiYW5rLT5pZF0u c2Vuc29yc1tpXSwgcmF3KTsKPj4gLcKgwqDCoMKgwqDCoMKgIH0KPj4gLQo+PiAtwqDCoMKgwqDC oMKgwqAgLyoKPj4gLcKgwqDCoMKgwqDCoMKgwqAgKiBUaGUgZmlyc3QgcmVhZCBvZiBhIHNlbnNv ciBvZnRlbiBjb250YWlucyB2ZXJ5IGhpZ2ggYm9ndXMKPj4gLcKgwqDCoMKgwqDCoMKgwqAgKiB0 ZW1wZXJhdHVyZSB2YWx1ZS4gRmlsdGVyIHRoZXNlIG91dCBzbyB0aGF0IHRoZSBzeXN0ZW0gZG9l cwo+PiAtwqDCoMKgwqDCoMKgwqDCoCAqIG5vdCBpbW1lZGlhdGVseSBzaHV0IGRvd24uCj4+IC3C oMKgwqDCoMKgwqDCoMKgICovCj4+IC3CoMKgwqDCoMKgwqDCoCBpZiAodGVtcCA+IDIwMDAwMCkK Pj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdGVtcCA9IDA7Cj4+ICvCoMKgwqDCoMKgwqDCoCB0 ZW1wID0gX2dldF9zZW5zb3JfdGVtcChtdCwgaSk7Cj4+IMKgIMKgwqDCoMKgwqDCoMKgwqDCoCBp ZiAodGVtcCA+IG1heCkKPj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgbWF4ID0gdGVtcDsK Pj4gQEAgLTc1MSw3ICs3NjUsOCBAQCBzdGF0aWMgaW50IG10a190aGVybWFsX2JhbmtfdGVtcGVy YXR1cmUoc3RydWN0IAo+PiBtdGtfdGhlcm1hbF9iYW5rICpiYW5rKQo+PiDCoCDCoCBzdGF0aWMg aW50IG10a19yZWFkX3RlbXAodm9pZCAqZGF0YSwgaW50ICp0ZW1wZXJhdHVyZSkKPj4gwqAgewo+ PiAtwqDCoMKgIHN0cnVjdCBtdGtfdGhlcm1hbCAqbXQgPSBkYXRhOwo+PiArwqDCoMKgIHN0cnVj dCBtdGtfdGhlcm1hbF96b25lICp0eiA9IGRhdGE7Cj4+ICvCoMKgwqAgc3RydWN0IG10a190aGVy bWFsICptdCA9IHR6LT5tdDsKPj4gwqDCoMKgwqDCoCBpbnQgaTsKPj4gwqDCoMKgwqDCoCBpbnQg dGVtcG1heCA9IElOVF9NSU47Cj4+IMKgIEBAIC03NzAsMTAgKzc4NSwyOCBAQCBzdGF0aWMgaW50 IG10a19yZWFkX3RlbXAodm9pZCAqZGF0YSwgaW50IAo+PiAqdGVtcGVyYXR1cmUpCj4+IMKgwqDC oMKgwqAgcmV0dXJuIDA7Cj4+IMKgIH0KPj4gwqAgK3N0YXRpYyBpbnQgbXRrX3JlYWRfc2Vuc29y X3RlbXAodm9pZCAqZGF0YSwgaW50ICp0ZW1wZXJhdHVyZSkKPj4gK3sKPj4gK8KgwqDCoCBzdHJ1 Y3QgbXRrX3RoZXJtYWxfem9uZSAqdHogPSBkYXRhOwo+PiArwqDCoMKgIHN0cnVjdCBtdGtfdGhl cm1hbCAqbXQgPSB0ei0+bXQ7Cj4+ICvCoMKgwqAgaW50IGlkID0gdHotPmlkIC0gMTsKPj4gKwo+ PiArwqDCoMKgIGlmIChpZCA8IDApCj4+ICvCoMKgwqDCoMKgwqDCoCByZXR1cm4gLUVBQ0NFUzsK Pj4gKwo+PiArwqDCoMKgICp0ZW1wZXJhdHVyZSA9IF9nZXRfc2Vuc29yX3RlbXAobXQsIGlkKTsK Pj4gKwo+PiArwqDCoMKgIHJldHVybiAwOwo+PiArfQo+PiArCj4+IMKgIHN0YXRpYyBjb25zdCBz dHJ1Y3QgdGhlcm1hbF96b25lX29mX2RldmljZV9vcHMgbXRrX3RoZXJtYWxfb3BzID0gewo+PiDC oMKgwqDCoMKgIC5nZXRfdGVtcCA9IG10a19yZWFkX3RlbXAsCj4+IMKgIH07Cj4+Cj4+ICtzdGF0 aWMgY29uc3Qgc3RydWN0IHRoZXJtYWxfem9uZV9vZl9kZXZpY2Vfb3BzIAo+PiBtdGtfdGhlcm1h bF9zZW5zb3Jfb3BzID0gewo+PiArwqDCoMKgIC5nZXRfdGVtcCA9IG10a19yZWFkX3NlbnNvcl90 ZW1wLAo+PiArfTsKPgo+IFBsZWFzZSByZXNwaW4gYWdhaW5zdCBsaW51eC1uZXh0LCB0aGUgdGhl cm1hbF96b25lX29mX2RldmljZV9vcHMgCj4gc3RydWN0dXJlIGRvZXMgbm8gbG9uZ2VyIGV4aXN0 LiBUaGUgY29udmVyc2lvbiBpcyB0cml2aWFsLCBoZXJlIGlzIGEgCj4gZXhhbXBsZToKPgo+IGh0 dHBzOi8vbG9yZS5rZXJuZWwub3JnL2FsbC8yMDIyMDgwNDIyNDM0OS4xOTI2NzUyLTIxLWRhbmll bC5sZXpjYW5vQGxpbmV4cC5vcmcvIAo+Cj4KU3VyZSwgd2lsbCBkby4KPgo+PiDCoCBzdGF0aWMg dm9pZCBtdGtfdGhlcm1hbF9pbml0X2Jhbmsoc3RydWN0IG10a190aGVybWFsICptdCwgaW50IG51 bSwKPj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdTMyIGFwbWl4ZWRf cGh5c19iYXNlLCB1MzIgYXV4YWRjX3BoeXNfYmFzZSwKPj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgaW50IGN0cmxfaWQpCj4+IEBAIC0xMDcyLDYgKzExMDUsNyBAQCBz dGF0aWMgaW50IG10a190aGVybWFsX3Byb2JlKHN0cnVjdCAKPj4gcGxhdGZvcm1fZGV2aWNlICpw ZGV2KQo+PiDCoMKgwqDCoMKgIHU2NCBhdXhhZGNfcGh5c19iYXNlLCBhcG1peGVkX3BoeXNfYmFz ZTsKPj4gwqDCoMKgwqDCoCBzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHpkZXY7Cj4+IMKg wqDCoMKgwqAgdm9pZCBfX2lvbWVtICphcG1peGVkX2Jhc2UsICphdXhhZGNfYmFzZTsKPj4gK8Kg wqDCoCBzdHJ1Y3QgbXRrX3RoZXJtYWxfem9uZSAqdHo7Cj4+IMKgIMKgwqDCoMKgwqAgbXQgPSBk ZXZtX2t6YWxsb2MoJnBkZXYtPmRldiwgc2l6ZW9mKCptdCksIEdGUF9LRVJORUwpOwo+PiDCoMKg wqDCoMKgIGlmICghbXQpCj4+IEBAIC0xMTYxLDExICsxMTk1LDI5IEBAIHN0YXRpYyBpbnQgbXRr X3RoZXJtYWxfcHJvYmUoc3RydWN0IAo+PiBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCj4+IMKgIMKg wqDCoMKgwqAgcGxhdGZvcm1fc2V0X2RydmRhdGEocGRldiwgbXQpOwo+PiDCoCAtwqDCoMKgIHR6 ZGV2ID0gZGV2bV90aGVybWFsX3pvbmVfb2Zfc2Vuc29yX3JlZ2lzdGVyKCZwZGV2LT5kZXYsIDAs IG10LAo+PiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgJm10a190aGVybWFsX29wcyk7Cj4+IC3CoMKgwqAgaWYgKElTX0VSUih0emRldikp IHsKPj4gLcKgwqDCoMKgwqDCoMKgIHJldCA9IFBUUl9FUlIodHpkZXYpOwo+PiAtwqDCoMKgwqDC oMKgwqAgZ290byBlcnJfZGlzYWJsZV9jbGtfcGVyaV90aGVybTsKPj4gK8KgwqDCoCBmb3IgKGkg PSAwOyBpIDwgbXQtPmNvbmYtPm51bV9zZW5zb3JzICsgMTsgaSsrKSB7Cj4+ICvCoMKgwqDCoMKg wqDCoCB0eiA9IGRldm1fa21hbGxvYygmcGRldi0+ZGV2LCBzaXplb2YoKnR6KSwgR0ZQX0tFUk5F TCk7Cj4+ICvCoMKgwqDCoMKgwqDCoCBpZiAoIXR6KQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCByZXR1cm4gLUVOT01FTTsKPj4gKwo+PiArwqDCoMKgwqDCoMKgwqAgdHotPm10ID0gbXQ7Cj4+ ICvCoMKgwqDCoMKgwqDCoCB0ei0+aWQgPSBpOwo+PiArCj4+ICvCoMKgwqDCoMKgwqDCoCB0emRl diA9IGRldm1fdGhlcm1hbF96b25lX29mX3NlbnNvcl9yZWdpc3RlcigmcGRldi0+ZGV2LCBpLCAK Pj4gdHosIChpID09IDApID8KPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgJm10a190aGVybWFsX29wcyA6Cj4+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgICZtdGtfdGhlcm1hbF9zZW5zb3Jfb3BzKTsKPj4gKwo+PiArwqDCoMKgwqDCoMKgwqAgaWYg KElTX0VSUih0emRldikpIHsKPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaWYgKFBUUl9FUlIo dHpkZXYpID09IC1FTk9ERVYpIHsKPj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBk ZXZfd2FybigmcGRldi0+ZGV2LAo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAic2Vuc29yICVkIG5vdCByZWdpc3RlcmVkIGluIHRoZXJtYWwgem9uZSBpbiAKPj4g ZHRcbiIsIGkpOwo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNvbnRpbnVlOwo+ PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB9Cj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGlm IChQVFJfRVJSKHR6ZGV2KSA9PSAtRUFDQ0VTKSB7Cj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgcmV0ID0gUFRSX0VSUih0emRldik7Cj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgZ290byBlcnJfZGlzYWJsZV9jbGtfcGVyaV90aGVybTsKPj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqAgfQo+PiArwqDCoMKgwqDCoMKgwqAgfQo+PiDCoMKgwqDCoMKgIH0KPj4gwqAg wqDCoMKgwqDCoCByZXQgPSBkZXZtX3RoZXJtYWxfYWRkX2h3bW9uX3N5c2ZzKHR6ZGV2KTsKPgo+ ClJlZ2FyZHMsCgpBbWphZAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxA bGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK