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 90EDCC433F5 for ; Wed, 18 May 2022 11:21:34 +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=xs4RybVTobEiQYVwHA2QFETrikBDsiOyxdSPrt2H0rs=; b=kKkWxevYiVYHov UbMurzJdGftx7wAmu/s14ax8qC21KabiLcM9tKNHnEc1vMVTQtsThLSffXfYUs3d4IIgPwa8W6M28 xBjnDsDUZjnx5Kfcff02i6nLlTUs6TWjJBtcB8QZKFu49lkETItINQ1wfOc5bJ4lJ4cVEhNYHqzWJ NsFskyx7vMZzRIDtPKTAWP5BTSR8NSMlhjvslLrKOVqG6Gwj45lg8Q/0Ay6/qq0lX5h0ukyNFYo12 DQ4TTSLe0Tzaqu3FL1+pVPC1jIgHz+rsYVHtM3NlAhAS/eYdIJRwi2FrnokAtk5pu46XUg3Qh4RIV 3sgMVUFoirELyGyE1Lcw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nrHiy-001Tp5-Oy; Wed, 18 May 2022 11:20:18 +0000 Received: from mail-wm1-x329.google.com ([2a00:1450:4864:20::329]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nrHiq-001Tjy-Dz; Wed, 18 May 2022 11:20:10 +0000 Received: by mail-wm1-x329.google.com with SMTP id v191-20020a1cacc8000000b00397001398c0so2985155wme.5; Wed, 18 May 2022 04:20:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=message-id:date:mime-version:user-agent:subject:content-language:to :cc:references:from:in-reply-to:content-transfer-encoding; bh=oifcGu/wBIFujV3M4+LF022wfIfIsx3++oPD8PzMcqY=; b=N9SNePuXf5WbjXfMxBu/yGNs4MutoJweY+6B+WtZgFHx4+//6BpHtFAN4vbxlkmSwW CprwhfMPBijt3VpJxQL3dn0rYsfD9W5nKSMj8CU40bMzyu/qvU5rNcE3HGrCTCvVgQEg TsqKZUCsmixVHVANdgxwShIJI+N4SW5CVWVPxT7JH61Oy9hPghK50wpgMm5rcx+t7B1C jzYsT6h7cyEvmCglzfCekVLGnLGsz215aUxNurb4A1wtIp6gt3GuTMa11jIGmXqmMWSZ Pqg3rr32gl0BJqmweQqNbTHphBMXPR5CiEQyS55C8CO115aaSe0b7l8e6kYDwB6zPBun Hdwg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:date:mime-version:user-agent:subject :content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=oifcGu/wBIFujV3M4+LF022wfIfIsx3++oPD8PzMcqY=; b=brGUYbSlKbZ1kdzxnRKEQIARr8I+1O5FftcNFfONlzK6Bz26BB9hhEbRszy/qkbG9E zdr2UadWDEAxOpx+Kgt72EebVrdLLzk8izNp72+SjueNustmWCJ83Nz8T88A7y0l78mi QlmcVvl8xvk40FGQ7AEX2+OOXZ865tMgujMCaP+z/hdjeBvKBTenVCHpa4B3Orcu5xuc 3OY+mNecomEnvtRP5/DmEl27yZBVNGGK4glxmL3cSYqekKBeGIy7cjb8dzKGTJ4fHtmt wB37/GGPJgb7X4DH5uMpW8XQcUIAs0EB9fpT4ZSYGUQc/N+V+OY6rcSfew7nvsr0rxFS oJqA== X-Gm-Message-State: AOAM530BK3ck4Llgg2mxWXb4YM7YmLWHxXgmC93UXXeDo3lt5jBK7BbT n4vGLWI7AOXMtmrBOHOKotg= X-Google-Smtp-Source: ABdhPJxTdoJHmZxhLXgmc4WLVrKyFQ/WkTPc6NtT1aGinrO7WxU3gZn55dFiMyzlWWrn0XGm3CEaXA== X-Received: by 2002:a05:600c:3d09:b0:394:7224:e6c4 with SMTP id bh9-20020a05600c3d0900b003947224e6c4mr25505459wmb.60.1652872803364; Wed, 18 May 2022 04:20:03 -0700 (PDT) Received: from [192.168.0.36] ([5.225.216.194]) by smtp.gmail.com with ESMTPSA id k13-20020a05600c1c8d00b003971fc23185sm1401427wms.20.2022.05.18.04.20.02 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 18 May 2022 04:20:02 -0700 (PDT) Message-ID: <084e5990-b970-360d-cef5-d9875a0e97b6@gmail.com> Date: Wed, 18 May 2022 13:20:01 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.8.1 Subject: Re: [PATCH v2 2/2] clocksource/drivers/timer-mediatek: Implement CPUXGPT timers Content-Language: en-US To: AngeloGioacchino Del Regno , Rob Herring Cc: daniel.lezcano@linaro.org, tglx@linutronix.de, krzysztof.kozlowski+dt@linaro.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, konrad.dybcio@somainline.org, marijn.suijten@somainline.org, martin.botka@somainline.org, ~postmarketos/upstreaming@lists.sr.ht, phone-devel@vger.kernel.org, paul.bouchara@somainline.org References: <20220509210741.12020-1-angelogioacchino.delregno@collabora.com> <20220509210741.12020-3-angelogioacchino.delregno@collabora.com> <20220517204705.GA1597201-robh@kernel.org> From: Matthias Brugger In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220518_042008_538830_418C3838 X-CRM114-Status: GOOD ( 45.56 ) 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 CgpPbiAxOC8wNS8yMDIyIDEwOjA4LCBBbmdlbG9HaW9hY2NoaW5vIERlbCBSZWdubyB3cm90ZToK PiBJbCAxNy8wNS8yMiAyMjo0NywgUm9iIEhlcnJpbmcgaGEgc2NyaXR0bzoKPj4gT24gTW9uLCBN YXkgMDksIDIwMjIgYXQgMTE6MDc6NDBQTSArMDIwMCwgQW5nZWxvR2lvYWNjaGlubyBEZWwgUmVn bm8gd3JvdGU6Cj4+PiBTb21lIE1lZGlhVGVrIHBsYXRmb3JtcyB3aXRoIGEgYnVnZ3kgVHJ1c3Ra b25lIEFURiBmaXJtd2FyZSB3aWxsIG5vdAo+Pj4gaW5pdGlhbGl6ZSB0aGUgQUFyY2g2NCBTeXN0 ZW0gVGltZXIgY29ycmVjdGx5OiBpbiB0aGVzZSBjYXNlcywgdGhlCj4+PiBTeXN0ZW0gVGltZXIg YWRkcmVzcyBpcyBjb3JyZWN0bHkgcHJvZ3JhbW1lZCwgYXMgd2VsbCBhcyB0aGUgQ05URlJRX0VM MAo+Pj4gcmVnaXN0ZXIgKHJlYWRpbmcgMTNNSHosIGFzIGl0IHNob3VsZCBiZSksIGJ1dCB0aGUg YXNzaWduZWQgaGFyZHdhcmUKPj4+IHRpbWVycyBhcmUgbmV2ZXIgc3RhcnRlZCBiZWZvcmUgKG9y IGFmdGVyKSBib290aW5nIExpbnV4Lgo+Pgo+PiBJIGJlbGlldmUgdGhlIHVwc3RyZWFtIHBvc2l0 aW9uIGluIHJlZ2FyZHMgdG8gYXJjaCB0aW1lciB3b3JrLWFyb3VuZHMgaXMKPj4gZml4IHRoZSBm aXJtd2FyZS4KPj4KPiAKPiBIZWxsbyBSb2IsCj4gCj4gdW5mb3J0dW5hdGVseSwgdGhpcyBpcyBu b3QgcG9zc2libGUgZm9yIGFsbCBib2FyZHMgYW5kL29yIGFsbCBkZXZpY2VzOiB3aGlsZQo+IGl0 J3MgcmVhbGx5IHN0cmFpZ2h0Zm9yd2FyZCB0byBhZGQgYSByZWdpc3RlciB3cml0ZSBpbiBUcnVz dFpvbmUsIGFuZCBNVDY3OTUKPiBldmVuIGhhcyBBVEYgc3VwcG9ydCB1cHN0cmVhbSwgdGhlIG1h am9yIGJsb2NrZXIgZm9yIHRoaXMgaXMgY29uc3VtZXIgZGV2aWNlcy4KPiAKPiBUaGVyZSwgeW91 IGNhbm5vdCBzaW1wbHkgZmxhc2ggYSBuZXcgQVRGIGZpcm13YXJlIGJlY2F1c2Ugc29tZSBwYXJ0 aXRpb25zIGFuZAo+IHNvbWUgZmlybXdhcmVzIGFyZSBjaGVja2VkIGFnYWluc3QgYW4gb2J2aW91 c2x5IG5vdCBwdWJsaWMgT0VNIHNpZ25hdHVyZToKPiB0YWtpbmcgYXMgYW4gZXhhbXBsZSB0aGUg ZGV2aWNlIHRoYXQgSSdtIHVzaW5nIGZvciBkZXZlbG9wbWVudCAoYSBTb255IFhwZXJpYSBNNQo+ IHNtYXJ0cGhvbmUpLCBhIGZpcm13YXJlIGZpeCB3b3VsZCBpbXBseSB0aGF0IFNvbnkgbmVlZHMg dG8gcmVsZWFzZSBhIG5ldyBUWgo+IGZ3LCB3aGljaCBpcyBub3QgZ29pbmcgdG8gaGFwcGVuIGJl Y2F1c2UgdGhhdCBkZXZpY2Ugd2FzICphYmFuZG9uZWQqIHllYXJzIGFnby4KPiAKPiBUaG91Z2gs IFNvbnkgaXMgbm90IHRoZSBvbmx5IE9FTSB0aGF0IGlzIGFmZmVjdGVkIGJ5IHRoYXQgaXNzdWU6 IGFsbCBzbWFydHBob25lcwo+IGhhdmUgdGhpcyBzaWduYXR1cmUgY2hlY2sgYWdhaW5zdCB0aGUg T0VNJ3Mga2V5cywgd2hpY2ggaXMgOTkuOSUgb2YgdGhlIE1UNjc5NQo+IGJvYXJkcy4KPiBOb3cg dGhlcmUncyBhbHNvIGFub3RoZXIgY2F0Y2g6IE1UNjc5NSBpcyAqbm90KiB0aGUgb25seSBTb0Mg dGhhdCByZXF1aXJlcyB0aGlzCj4gZml4Li4uIGl0J3MgbWFueSBvdGhlcnMgYXMgd2VsbCwgYm90 aCBBUk0gYW5kIEFSTTY0LCBhbmQgdGhlIGNvdW50IGlzIHZlcnkgbGFyZ2UhCj4gLi4uYW5kIHRo ZXJlJ3MgbW9yZTogc29tZSBvZiB0aGUgT0VNcy9PRE1zIHRoYXQgcHJvZHVjZWQgTVQ2Nzk1IGRl dmljZXMgZG9uJ3QKPiBldmVuIGV4aXN0IGFueW1vcmUhISEKPiAKPiBIZW5jZSwgdGhlIG9ubHkg d2F5IHRvIGF2b2lkIHR1cm5pbmcgYSB2ZXJ5IGxhcmdlIHBpbGUgb2YgZWxlY3Ryb25pY3MgaW50 bwo+IGUtd2FzdGUgaXMgdG8gZ2l2ZSBhIG5ldyBsaWZlIHRvIHRob3NlIGFiYW5kb25lZCBkZWlj ZXMgYnkgYWN0dWFsbHkgcHJvdmlkaW5nCj4gYSB3YXkgdG8gYm9vdCB0aGVtIC0gYW5kIHRoaXMg aXMgdGhlIG9ubHkgd2F5LCBhcyB0aGlzIGNvbW1pdCBpcyBub3QganVzdAo+IGZvciBTTVAsIGJ1 dCBhbHNvIGZvciB0aGUgYm9vdCBDUFUsIGFuZCBMaW51eCB3b24ndCB3b3JrIHdpdGhvdXQuIEF0 IGFsbC4KPiAKPiBJZiB0aGVyZSB3YXMgYW55IHdheSB0byBnZXQgdGhlIGZpcm13YXJlIGZpeGVk LCBJIHdvdWxkJ3ZlIGdvbmUgZm9yIHRoYXQsCj4gYnV0IHRoaXMgaXMgKnJlYWxseSogdGhlIG9u bHkgb3B0aW9uLgo+IAoKSSBhZ3JlZSB3aXRoIEFuZ2Vsbywgd2Ugc2hvdWxkIG1ha2Ugc3VyZSB0 aGF0IHdlIGNhbiBydW4gTGludXggb24gdGhlc2UgZGV2aWNlcywgCmFzIHRoZXkgYXJlIHRoZSBv bmx5IGF2YWlsYWJsZSBmb3IgdGhlIGdlbmVyYWwgcHVibGljLgoKQWN0dWFsbHkgd2Ugd2VyZSBm b3JjZWQgdG8gZG8gc29tZXRoaW5nIHNpbWlsYXIgZm9yIGFybTMyIGRldmljZXMgYXMgd2VsbCBb MV0uCgpSZWdhcmRzLApNYXR0aGlhcwoKWzFdIApodHRwczovL2dpdC5rZXJuZWwub3JnL3B1Yi9z Y20vbGludXgva2VybmVsL2dpdC90b3J2YWxkcy9saW51eC5naXQvdHJlZS9hcmNoL2FybS9tYWNo LW1lZGlhdGVrL21lZGlhdGVrLmM/aD12NS4xOC1yYzcjbjE5Cgo+IFJlZ2FyZHMsCj4gQW5nZWxv Cj4gCj4+IFJvYgo+Pgo+Pj4KPj4+IEluIHRoaXMgY29uZGl0aW9uLCBhbnkgY2FsbCB0byBmdW5j dGlvbiBnZXRfY3ljbGVzKCkgd2lsbCBiZSByZXR1cm5pbmcKPj4+IHplcm8sIGFzIENOVFZDVF9F TDAgd2lsbCBhbHdheXMgcmVhZCB6ZXJvLgo+Pj4KPj4+IE9uZSBjb21tb24gY3JpdGljYWwgc3lt cHRvbSBvZiB0aGF0IGlzIHRyeWluZyB0byB1c2UgdGhlIHVkZWxheSgpCj4+PiBmdW5jdGlvbiAo Y2FsbGluZyBfX2RlbGF5KCkpLCB3aGljaCBleGVjdXRlcyB0aGUgZm9sbG93aW5nIGxvb3A6Cj4+ Pgo+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHN0YXJ0ID0gZ2V0X2N5Y2xlcygpOwo+Pj4g wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHdoaWxlICgoZ2V0X2N5Y2xlcygpIC0gc3RhcnQpIDwg Y3ljbGVzKQo+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBjcHVf cmVsYXgoKTsKPj4+Cj4+PiB3aGljaCwgd2hlbiBDTlRWQ1RfRUwwIGFsd2F5cyByZWFkcyB6ZXJv LCB0cmFuc2xhdGVzIHRvOgo+Pj4KPj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB3aGlsZSgo MCAtIDApIDwgMCnCoCA9PT4gd2hpbGUoMCA8IDApCj4+Pgo+Pj4gLi4uIGdlbmVyYXRpbmcgYW4g aW5maW5pdGUgbG9vcCwgZXZlbiB0aG91Z2ggemVybyBpcyBuZXZlciBsZXNzCj4+PiB0aGFuIHpl cm8sIGJ1dCBhbHdheXMgZXF1YWwgdG8gaXQgKHRoaXMgaGFzIHRvIGJlIHJlc2VhcmNoZWQsCj4+ PiBidXQgaXQncyBvdXQgb2YgdGhlIHNjb3BlIG9mIHRoaXMgY29tbWl0KS4KPj4+Cj4+PiBUbyBm aXggdGhpcyBpc3N1ZSBvbiB0aGUgYWZmZWN0ZWQgTWVkaWFUZWsgcGxhdGZvcm1zLCB0aGUgc29s dXRpb24KPj4+IGlzIHRvIHNpbXBseSBzdGFydCB0aGUgdGltZXJzIHRoYXQgYXJlIGRlc2lnbmVk IHRvIGJlIFN5c3RlbSBUaW1lcihzKS4KPj4+IFRoZXNlIHRpbWVycywgZG93bnN0cmVhbSwgYXJl IGNhbGxlZCAiQ1BVWEdQVCIgYW5kIHRoZXJlIGlzIG9uZQo+Pj4gdGltZXIgcGVyIENQVSBjb3Jl OyBsdWNraWx5LCBpdCBpcyBub3QgbmVjZXNzYXJ5IHRvIHNldCBhIHN0YXJ0IGJpdAo+Pj4gb24g ZWFjaCBDUFVYIEdlbmVyYWwgUHVycG9zZSBUaW1lciwgYnV0IGl0J3MgY29udmVuaWVudGx5IGVu b3VnaCB0bzoKPj4+IMKgIC0gU2V0IHRoZSBjbG9jayBkaXZpZGVyIChpbnB1dCA9IDI2TUh6LCBk aXZpZGVyID0gMiwgb3V0cHV0ID0gMTNNSHopOwo+Pj4gwqAgLSBTZXQgdGhlIEVOQUJMRSBiaXQg b24gYSBnbG9iYWwgcmVnaXN0ZXIgKHN0YXJ0cyBhbGwgQ1BVWCB0aW1lcnMpLgo+Pj4KPj4+IFRo ZSBvbmx5IHNtYWxsIGh1cmRsZSB3aXRoIHRoaXMgc2V0dXAgaXMgdGhhdCBpdCdzIGFsbCBkb25l IHRocm91Z2gKPj4+IHRoZSBNQ1VTWVMgd3JhcHBlciwgd2hlcmUgaXQgaXMgbmVlZGVkLCBmb3Ig ZWFjaCByZWFkIG9yIHdyaXRlLCB0bwo+Pj4gc2VsZWN0IGEgcmVnaXN0ZXIgYWRkcmVzcyAoYnkg d3JpdGluZyBpdCB0byBhbiBpbmRleCByZWdpc3RlcikgYW5kCj4+PiB0aGVuIHRvIHBlcmZvcm0g YW55IFIvVyBvbiBhICJDT04iIHJlZ2lzdGVyLgo+Pj4KPj4+IEZvciBleGFtcGxlLCB3cml0aW5n ICIweDEiIHRvIHRoZSBDUFVYR1BUIHJlZ2lzdGVyIG9mZnNldCAweDQ6Cj4+PiAtIFdyaXRlIDB4 NCB0byBtY3VzeXMgSU5ERVggcmVnaXN0ZXIKPj4+IC0gV3JpdGUgMHgxIHRvIG1jdXN5cyBDT04g cmVnaXN0ZXIKPj4+Cj4+PiBSZWFkaW5nIGZyb20gQ1BVWEdQVCByZWdpc3RlciBvZmZzZXQgMHg0 Ogo+Pj4gLSBXcml0ZSAweDQgdG8gbWN1c3lzIElOREVYIHJlZ2lzdGVyCj4+PiAtIFJlYWQgbWN1 c3lzIENPTiByZWdpc3Rlci4KPj4+Cj4+PiBGaW5hbGx5LCBzdGFydGluZyB0aGlzIHRpbWVyIG1h a2VzIHBsYXRmb3JtcyBhZmZlY3RlZCBieSB0aGlzIGlzc3VlCj4+PiB0byB3b3JrIGNvcnJlY3Rs eS4KPj4+Cj4+PiBTaWduZWQtb2ZmLWJ5OiBBbmdlbG9HaW9hY2NoaW5vIERlbCBSZWdubyAKPj4+ IDxhbmdlbG9naW9hY2NoaW5vLmRlbHJlZ25vQGNvbGxhYm9yYS5jb20+Cj4+PiAtLS0KPj4+IMKg IGRyaXZlcnMvY2xvY2tzb3VyY2UvdGltZXItbWVkaWF0ZWsuYyB8IDExOSArKysrKysrKysrKysr KysrKysrKysrKysrKysKPj4+IMKgIDEgZmlsZSBjaGFuZ2VkLCAxMTkgaW5zZXJ0aW9ucygrKQo+ Pj4KPj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2Nsb2Nrc291cmNlL3RpbWVyLW1lZGlhdGVrLmMg Cj4+PiBiL2RyaXZlcnMvY2xvY2tzb3VyY2UvdGltZXItbWVkaWF0ZWsuYwo+Pj4gaW5kZXggN2Jj YjRhM2YyNmZiLi5hM2U5MDA0N2Y5YWMgMTAwNjQ0Cj4+PiAtLS0gYS9kcml2ZXJzL2Nsb2Nrc291 cmNlL3RpbWVyLW1lZGlhdGVrLmMKPj4+ICsrKyBiL2RyaXZlcnMvY2xvY2tzb3VyY2UvdGltZXIt bWVkaWF0ZWsuYwo+Pj4gQEAgLTIyLDYgKzIyLDE5IEBACj4+PiDCoCAjZGVmaW5lIFRJTUVSX1NZ TkNfVElDS1PCoMKgwqDCoMKgwqDCoCAoMykKPj4+ICsvKiBjcHV4IG1jdXN5cyB3cmFwcGVyICov Cj4+PiArI2RlZmluZSBDUFVYX0NPTl9SRUfCoMKgwqDCoMKgwqDCoCAweDAKPj4+ICsjZGVmaW5l IENQVVhfSURYX1JFR8KgwqDCoMKgwqDCoMKgIDB4NAo+Pj4gKwo+Pj4gKy8qIGNwdXggKi8KPj4+ ICsjZGVmaW5lIENQVVhfSURYX0dMT0JBTF9DVFJMwqDCoMKgIDB4MAo+Pj4gKyAjZGVmaW5lIENQ VVhfRU5BQkxFwqDCoMKgwqDCoMKgwqAgQklUKDApCj4+PiArICNkZWZpbmUgQ1BVWF9DTEtfRElW X01BU0vCoMKgwqAgR0VOTUFTSygxMCwgOCkKPj4+ICsgI2RlZmluZSBDUFVYX0NMS19ESVYxwqDC oMKgwqDCoMKgwqAgQklUKDgpCj4+PiArICNkZWZpbmUgQ1BVWF9DTEtfRElWMsKgwqDCoMKgwqDC oMKgIEJJVCg5KQo+Pj4gKyAjZGVmaW5lIENQVVhfQ0xLX0RJVjTCoMKgwqDCoMKgwqDCoCBCSVQo MTApCj4+PiArI2RlZmluZSBDUFVYX0lEWF9HTE9CQUxfSVJRwqDCoMKgIDB4MzAKPj4+ICsKPj4+ IMKgIC8qIGdwdCAqLwo+Pj4gwqAgI2RlZmluZSBHUFRfSVJRX0VOX1JFR8KgwqDCoMKgwqDCoMKg wqDCoCAweDAwCj4+PiDCoCAjZGVmaW5lIEdQVF9JUlFfRU5BQkxFKHZhbCnCoMKgwqDCoCBCSVQo KHZhbCkgLSAxKQo+Pj4gQEAgLTcyLDYgKzg1LDU3IEBACj4+PiDCoCBzdGF0aWMgdm9pZCBfX2lv bWVtICpncHRfc2NoZWRfcmVnIF9fcmVhZF9tb3N0bHk7Cj4+PiArc3RhdGljIHUzMiBtdGtfY3B1 eF9yZWFkbCh1MzIgcmVnX2lkeCwgc3RydWN0IHRpbWVyX29mICp0bykKPj4+ICt7Cj4+PiArwqDC oMKgIHdyaXRlbChyZWdfaWR4LCB0aW1lcl9vZl9iYXNlKHRvKSArIENQVVhfSURYX1JFRyk7Cj4+ PiArwqDCoMKgIHJldHVybiByZWFkbCh0aW1lcl9vZl9iYXNlKHRvKSArIENQVVhfQ09OX1JFRyk7 Cj4+PiArfQo+Pj4gKwo+Pj4gK3N0YXRpYyB2b2lkIG10a19jcHV4X3dyaXRlbCh1MzIgdmFsLCB1 MzIgcmVnX2lkeCwgc3RydWN0IHRpbWVyX29mICp0bykKPj4+ICt7Cj4+PiArwqDCoMKgIHdyaXRl bChyZWdfaWR4LCB0aW1lcl9vZl9iYXNlKHRvKSArIENQVVhfSURYX1JFRyk7Cj4+PiArwqDCoMKg IHdyaXRlbCh2YWwsIHRpbWVyX29mX2Jhc2UodG8pICsgQ1BVWF9DT05fUkVHKTsKPj4+ICt9Cj4+ PiArCj4+PiArc3RhdGljIHZvaWQgbXRrX2NwdXhfZGlzYWJsZV9pcnEoc3RydWN0IHRpbWVyX29m ICp0bykKPj4+ICt7Cj4+PiArwqDCoMKgIGNvbnN0IHVuc2lnbmVkIGxvbmcgKmlycV9tYXNrID0g Y3B1bWFza19iaXRzKGNwdV9wb3NzaWJsZV9tYXNrKTsKPj4+ICvCoMKgwqAgdTMyIHZhbDsKPj4+ ICsKPj4+ICvCoMKgwqAgdmFsID0gbXRrX2NwdXhfcmVhZGwoQ1BVWF9JRFhfR0xPQkFMX0lSUSwg dG8pOwo+Pj4gK8KgwqDCoCB2YWwgJj0gfigqaXJxX21hc2spOwo+Pj4gK8KgwqDCoCBtdGtfY3B1 eF93cml0ZWwodmFsLCBDUFVYX0lEWF9HTE9CQUxfSVJRLCB0byk7Cj4+PiArfQo+Pj4gKwo+Pj4g K3N0YXRpYyB2b2lkIG10a19jcHV4X2VuYWJsZV9pcnEoc3RydWN0IHRpbWVyX29mICp0bykKPj4+ ICt7Cj4+PiArwqDCoMKgIGNvbnN0IHVuc2lnbmVkIGxvbmcgKmlycV9tYXNrID0gY3B1bWFza19i aXRzKGNwdV9wb3NzaWJsZV9tYXNrKTsKPj4+ICvCoMKgwqAgdTMyIHZhbDsKPj4+ICsKPj4+ICvC oMKgwqAgdmFsID0gbXRrX2NwdXhfcmVhZGwoQ1BVWF9JRFhfR0xPQkFMX0lSUSwgdG8pOwo+Pj4g K8KgwqDCoCB2YWwgfD0gKmlycV9tYXNrOwo+Pj4gK8KgwqDCoCBtdGtfY3B1eF93cml0ZWwodmFs LCBDUFVYX0lEWF9HTE9CQUxfSVJRLCB0byk7Cj4+PiArfQo+Pj4gKwo+Pj4gK3N0YXRpYyBpbnQg bXRrX2NwdXhfY2xrZXZ0X3NodXRkb3duKHN0cnVjdCBjbG9ja19ldmVudF9kZXZpY2UgKmNsa2V2 dCkKPj4+ICt7Cj4+PiArwqDCoMKgIC8qIENsZWFyIGFueSBpcnEgKi8KPj4+ICvCoMKgwqAgbXRr X2NwdXhfZGlzYWJsZV9pcnEodG9fdGltZXJfb2YoY2xrZXZ0KSk7Cj4+PiArCj4+PiArwqDCoMKg IC8qCj4+PiArwqDCoMKgwqAgKiBEaXNhYmxpbmcgQ1BVWEdQVCB0aW1lciB3aWxsIGNyYXNoIHRo ZSBwbGF0Zm9ybSwgZXNwZWNpYWxseQo+Pj4gK8KgwqDCoMKgICogaWYgVHJ1c3RlZCBGaXJtd2Fy ZSBpcyB1c2luZyBpdCAodXN1YWxseSwgZm9yIHNsZWVwIHN0YXRlcyksCj4+PiArwqDCoMKgwqAg KiBzbyB3ZSBvbmx5IG1hc2sgdGhlIElSUSBhbmQgY2FsbCBpdCBhIGRheS4KPj4+ICvCoMKgwqDC oCAqLwo+Pj4gK8KgwqDCoCByZXR1cm4gMDsKPj4+ICt9Cj4+PiArCj4+PiArc3RhdGljIGludCBt dGtfY3B1eF9jbGtldnRfcmVzdW1lKHN0cnVjdCBjbG9ja19ldmVudF9kZXZpY2UgKmNsa2V2dCkK Pj4+ICt7Cj4+PiArwqDCoMKgIG10a19jcHV4X2VuYWJsZV9pcnEodG9fdGltZXJfb2YoY2xrZXZ0 KSk7Cj4+PiArwqDCoMKgIHJldHVybiAwOwo+Pj4gK30KPj4+ICsKPj4+IMKgIHN0YXRpYyB2b2lk IG10a19zeXN0X2Fja19pcnEoc3RydWN0IHRpbWVyX29mICp0bykKPj4+IMKgIHsKPj4+IMKgwqDC oMKgwqAgLyogQ2xlYXIgYW5kIGRpc2FibGUgaW50ZXJydXB0ICovCj4+PiBAQCAtMjgxLDYgKzM0 NSw2MCBAQCBzdGF0aWMgc3RydWN0IHRpbWVyX29mIHRvID0gewo+Pj4gwqDCoMKgwqDCoCB9LAo+ Pj4gwqAgfTsKPj4+ICtzdGF0aWMgaW50IF9faW5pdCBtdGtfY3B1eF9pbml0KHN0cnVjdCBkZXZp Y2Vfbm9kZSAqbm9kZSkKPj4+ICt7Cj4+PiArwqDCoMKgIHN0YXRpYyBzdHJ1Y3QgdGltZXJfb2Yg dG9fY3B1eDsKPj4+ICvCoMKgwqAgdTMyIGZyZXEsIHZhbDsKPj4+ICvCoMKgwqAgaW50IHJldDsK Pj4+ICsKPj4+ICvCoMKgwqAgLyoKPj4+ICvCoMKgwqDCoCAqIFRoZXJlIGFyZSBwZXItY3B1IGlu dGVycnVwdHMgZm9yIHRoZSBDUFVYIEdlbmVyYWwgUHVycG9zZSBUaW1lcgo+Pj4gK8KgwqDCoMKg ICogYnV0IHNpbmNlIHRoaXMgdGltZXIgZmVlZHMgdGhlIEFBcmNoNjQgU3lzdGVtIFRpbWVyIHdl IGNhbiByZWx5Cj4+PiArwqDCoMKgwqAgKiBvbiB0aGUgQ1BVIHRpbWVyIFBQSXMgYXMgd2VsbCwg c28gd2UgZG9uJ3QgZGVjbGFyZSBUSU1FUl9PRl9JUlEuCj4+PiArwqDCoMKgwqAgKi8KPj4+ICvC oMKgwqAgdG9fY3B1eC5mbGFncyA9IFRJTUVSX09GX0JBU0UgfCBUSU1FUl9PRl9DTE9DSzsKPj4+ ICvCoMKgwqAgdG9fY3B1eC5jbGtldnQubmFtZSA9ICJtdGstY3B1eGdwdCI7Cj4+PiArwqDCoMKg IHRvX2NwdXguY2xrZXZ0LnJhdGluZyA9IDEwOwo+Pj4gK8KgwqDCoCB0b19jcHV4LmNsa2V2dC5j cHVtYXNrID0gY3B1X3Bvc3NpYmxlX21hc2s7Cj4+PiArwqDCoMKgIHRvX2NwdXguY2xrZXZ0LnNl dF9zdGF0ZV9zaHV0ZG93biA9IG10a19jcHV4X2Nsa2V2dF9zaHV0ZG93bjsKPj4+ICvCoMKgwqAg dG9fY3B1eC5jbGtldnQudGlja19yZXN1bWUgPSBtdGtfY3B1eF9jbGtldnRfcmVzdW1lOwo+Pj4g Kwo+Pj4gK8KgwqDCoCAvKiBJZiB0aGlzIGZhaWxzLCBiYWQgdGhpbmdzIGFyZSBhYm91dCB0byBo YXBwZW4uLi4gKi8KPj4+ICvCoMKgwqAgcmV0ID0gdGltZXJfb2ZfaW5pdChub2RlLCAmdG9fY3B1 eCk7Cj4+PiArwqDCoMKgIGlmIChyZXQpIHsKPj4+ICvCoMKgwqDCoMKgwqDCoCBXQVJOKDEsICJD YW5ub3Qgc3RhcnQgQ1BVWCB0aW1lcnMuXG4iKTsKPj4+ICvCoMKgwqDCoMKgwqDCoCByZXR1cm4g cmV0Owo+Pj4gK8KgwqDCoCB9Cj4+PiArCj4+PiArwqDCoMKgIC8qCj4+PiArwqDCoMKgwqAgKiBD aGVjayBpZiB3ZSdyZSBnaXZlbiBhIGNsb2NrIHdpdGggdGhlIHJpZ2h0IGZyZXF1ZW5jeSBmb3Ig dGhpcwo+Pj4gK8KgwqDCoMKgICogdGltZXIsIG90aGVyd2lzZSB3YXJuIGJ1dCBrZWVwIGdvaW5n IHdpdGggdGhlIHNldHVwIGFueXdheSwgYXMKPj4+ICvCoMKgwqDCoCAqIHRoYXQgbWFrZXMgaXQg cG9zc2libGUgdG8gc3RpbGwgYm9vdCB0aGUga2VybmVsLCBldmVuIHRob3VnaAo+Pj4gK8KgwqDC oMKgICogaXQgbWF5IG5vdCB3b3JrIGNvcnJlY3RseSAocmFuZG9tIGxvY2t1cHMsIGV0YykuCj4+ PiArwqDCoMKgwqAgKiBUaGUgcmVhc29uIGJlaGluZCB0aGlzIGlzIHRoYXQgaGF2aW5nIGFuIGVh cmx5IFVBUlQgbWF5IG5vdCBiZQo+Pj4gK8KgwqDCoMKgICogcG9zc2libGUgZm9yIGV2ZXJ5b25l IGFuZCB0aGlzIGdpdmVzIGEgY2hhbmNlIHRvIHJldHJpZXZlIGttc2cKPj4+ICvCoMKgwqDCoCAq IGZvciBldmVudHVhbCBkZWJ1Z2dpbmcgZXZlbiBvbiBjb25zdW1lciBkZXZpY2VzLgo+Pj4gK8Kg wqDCoMKgICovCj4+PiArwqDCoMKgIGZyZXEgPSB0aW1lcl9vZl9yYXRlKCZ0b19jcHV4KTsKPj4+ ICvCoMKgwqAgaWYgKGZyZXEgPiAxMzAwMDAwMCkKPj4+ICvCoMKgwqDCoMKgwqDCoCBXQVJOKDEs ICJSZXF1ZXN0ZWQgdW5zdXBwb3J0ZWQgdGltZXIgZnJlcXVlbmN5ICV1XG4iLCBmcmVxKTsKPj4+ ICsKPj4+ICvCoMKgwqAgLyogQ2xvY2sgaW5wdXQgaXMgMjZNSHosIHNldCBESVYyIHRvIGFjaGll dmUgMTNNSHogY2xvY2sgKi8KPj4+ICvCoMKgwqAgdmFsID0gbXRrX2NwdXhfcmVhZGwoQ1BVWF9J RFhfR0xPQkFMX0NUUkwsICZ0b19jcHV4KTsKPj4+ICvCoMKgwqAgdmFsICY9IH5DUFVYX0NMS19E SVZfTUFTSzsKPj4+ICvCoMKgwqAgdmFsIHw9IENQVVhfQ0xLX0RJVjI7Cj4+PiArwqDCoMKgIG10 a19jcHV4X3dyaXRlbCh2YWwsIENQVVhfSURYX0dMT0JBTF9DVFJMLCAmdG9fY3B1eCk7Cj4+PiAr Cj4+PiArwqDCoMKgIC8qIEVuYWJsZSBhbGwgQ1BVWEdQVCB0aW1lcnMgKi8KPj4+ICvCoMKgwqAg dmFsID0gbXRrX2NwdXhfcmVhZGwoQ1BVWF9JRFhfR0xPQkFMX0NUUkwsICZ0b19jcHV4KTsKPj4+ ICvCoMKgwqAgbXRrX2NwdXhfd3JpdGVsKHZhbCB8IENQVVhfRU5BQkxFLCBDUFVYX0lEWF9HTE9C QUxfQ1RSTCwgJnRvX2NwdXgpOwo+Pj4gKwo+Pj4gK8KgwqDCoCBjbG9ja2V2ZW50c19jb25maWdf YW5kX3JlZ2lzdGVyKCZ0b19jcHV4LmNsa2V2dCwgdGltZXJfb2ZfcmF0ZSgmdG9fY3B1eCksCj4+ PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgVElNRVJfU1lOQ19USUNL UywgMHhmZmZmZmZmZik7Cj4+PiArCj4+PiArwqDCoMKgIHJldHVybiAwOwo+Pj4gK30KPj4+ICsK Pj4+IMKgIHN0YXRpYyBpbnQgX19pbml0IG10a19zeXN0X2luaXQoc3RydWN0IGRldmljZV9ub2Rl ICpub2RlKQo+Pj4gwqAgewo+Pj4gwqDCoMKgwqDCoCBpbnQgcmV0Owo+Pj4gQEAgLTMzOSwzICs0 NTcsNCBAQCBzdGF0aWMgaW50IF9faW5pdCBtdGtfZ3B0X2luaXQoc3RydWN0IGRldmljZV9ub2Rl ICpub2RlKQo+Pj4gwqAgfQo+Pj4gwqAgVElNRVJfT0ZfREVDTEFSRShtdGtfbXQ2NTc3LCAibWVk aWF0ZWssbXQ2NTc3LXRpbWVyIiwgbXRrX2dwdF9pbml0KTsKPj4+IMKgIFRJTUVSX09GX0RFQ0xB UkUobXRrX210Njc2NSwgIm1lZGlhdGVrLG10Njc2NS10aW1lciIsIG10a19zeXN0X2luaXQpOwo+ Pj4gK1RJTUVSX09GX0RFQ0xBUkUobXRrX210Njc5NSwgIm1lZGlhdGVrLG10Njc5NS1zeXN0aW1l ciIsIG10a19jcHV4X2luaXQpOwo+Pj4gLS0gCj4+PiAyLjM1LjEKPj4+Cj4+Pgo+IAo+IAoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtl cm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0 dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5l bAo=