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 X-Spam-Level: X-Spam-Status: No, score=-8.2 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id D5974C433E2 for ; Thu, 28 May 2020 13:22:58 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id B093A207BC for ; Thu, 28 May 2020 13:22:58 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org B093A207BC Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=arm.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id A7E1E6E530; Thu, 28 May 2020 13:22:56 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by gabe.freedesktop.org (Postfix) with ESMTP id E6EAF6E530 for ; Thu, 28 May 2020 13:22:45 +0000 (UTC) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 8F078D6E; Thu, 28 May 2020 06:22:45 -0700 (PDT) Received: from [192.168.1.84] (unknown [172.31.20.19]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 1028C3F52E; Thu, 28 May 2020 06:22:43 -0700 (PDT) Subject: Re: [PATCH 04/15] drm/panfrost: introduce panfrost_devfreq struct To: =?UTF-8?B?Q2zDqW1lbnQgUMOpcm9u?= , Rob Herring , Tomeu Vizoso , Alyssa Rosenzweig , Viresh Kumar , Nishanth Menon , Stephen Boyd , Maxime Ripard , Chen-Yu Tsai References: <20200510165538.19720-1-peron.clem@gmail.com> <20200510165538.19720-5-peron.clem@gmail.com> From: Steven Price Message-ID: <1fe4ae0b-a861-d36b-db5b-755b05e44e29@arm.com> Date: Thu, 28 May 2020 14:22:41 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0 MIME-Version: 1.0 In-Reply-To: <20200510165538.19720-5-peron.clem@gmail.com> Content-Language: en-GB X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" T24gMTAvMDUvMjAyMCAxNzo1NSwgQ2zDqW1lbnQgUMOpcm9uIHdyb3RlOgo+IEludHJvZHVjZSBh IHByb3BlciBwYW5mcm9zdF9kZXZmcmVxIHRvIGRlYWwgd2l0aCBkZXZmcmVxIHZhcmlhYmxlcy4K PiAKPiBTaWduZWQtb2ZmLWJ5OiBDbMOpbWVudCBQw6lyb24gPHBlcm9uLmNsZW1AZ21haWwuY29t PgoKUmV2aWV3ZWQtYnk6IFN0ZXZlbiBQcmljZSA8c3RldmVuLnByaWNlQGFybS5jb20+Cgo+IC0t LQo+ICAgZHJpdmVycy9ncHUvZHJtL3BhbmZyb3N0L3BhbmZyb3N0X2RldmZyZXEuYyB8IDc2ICsr KysrKysrKysrKy0tLS0tLS0tLQo+ICAgZHJpdmVycy9ncHUvZHJtL3BhbmZyb3N0L3BhbmZyb3N0 X2RldmZyZXEuaCB8IDIwICsrKysrLQo+ICAgZHJpdmVycy9ncHUvZHJtL3BhbmZyb3N0L3BhbmZy b3N0X2RldmljZS5oICB8IDExICstLQo+ICAgZHJpdmVycy9ncHUvZHJtL3BhbmZyb3N0L3BhbmZy b3N0X2pvYi5jICAgICB8ICA2ICstCj4gICA0IGZpbGVzIGNoYW5nZWQsIDY2IGluc2VydGlvbnMo KyksIDQ3IGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcGFu ZnJvc3QvcGFuZnJvc3RfZGV2ZnJlcS5jIGIvZHJpdmVycy9ncHUvZHJtL3BhbmZyb3N0L3BhbmZy b3N0X2RldmZyZXEuYwo+IGluZGV4IGRmN2I3MWRhOWE4NC4uOTYyNTUwMzYzMzkxIDEwMDY0NAo+ IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9wYW5mcm9zdC9wYW5mcm9zdF9kZXZmcmVxLmMKPiArKysg Yi9kcml2ZXJzL2dwdS9kcm0vcGFuZnJvc3QvcGFuZnJvc3RfZGV2ZnJlcS5jCj4gQEAgLTEwLDIz ICsxMCwyMyBAQAo+ICAgI2luY2x1ZGUgInBhbmZyb3N0X2RldmljZS5oIgo+ICAgI2luY2x1ZGUg InBhbmZyb3N0X2RldmZyZXEuaCIKPiAgIAo+IC1zdGF0aWMgdm9pZCBwYW5mcm9zdF9kZXZmcmVx X3VwZGF0ZV91dGlsaXphdGlvbihzdHJ1Y3QgcGFuZnJvc3RfZGV2aWNlICpwZmRldikKPiArc3Rh dGljIHZvaWQgcGFuZnJvc3RfZGV2ZnJlcV91cGRhdGVfdXRpbGl6YXRpb24oc3RydWN0IHBhbmZy b3N0X2RldmZyZXEgKnBmZGV2ZnJlcSkKPiAgIHsKPiAgIAlrdGltZV90IG5vdzsKPiAgIAlrdGlt ZV90IGxhc3Q7Cj4gICAKPiAtCWlmICghcGZkZXYtPmRldmZyZXEuZGV2ZnJlcSkKPiArCWlmICgh cGZkZXZmcmVxLT5kZXZmcmVxKQo+ICAgCQlyZXR1cm47Cj4gICAKPiAgIAlub3cgPSBrdGltZV9n ZXQoKTsKPiAtCWxhc3QgPSBwZmRldi0+ZGV2ZnJlcS50aW1lX2xhc3RfdXBkYXRlOwo+ICsJbGFz dCA9IHBmZGV2ZnJlcS0+dGltZV9sYXN0X3VwZGF0ZTsKPiAgIAo+IC0JaWYgKGF0b21pY19yZWFk KCZwZmRldi0+ZGV2ZnJlcS5idXN5X2NvdW50KSA+IDApCj4gLQkJcGZkZXYtPmRldmZyZXEuYnVz eV90aW1lICs9IGt0aW1lX3N1Yihub3csIGxhc3QpOwo+ICsJaWYgKGF0b21pY19yZWFkKCZwZmRl dmZyZXEtPmJ1c3lfY291bnQpID4gMCkKPiArCQlwZmRldmZyZXEtPmJ1c3lfdGltZSArPSBrdGlt ZV9zdWIobm93LCBsYXN0KTsKPiAgIAllbHNlCj4gLQkJcGZkZXYtPmRldmZyZXEuaWRsZV90aW1l ICs9IGt0aW1lX3N1Yihub3csIGxhc3QpOwo+ICsJCXBmZGV2ZnJlcS0+aWRsZV90aW1lICs9IGt0 aW1lX3N1Yihub3csIGxhc3QpOwo+ICAgCj4gLQlwZmRldi0+ZGV2ZnJlcS50aW1lX2xhc3RfdXBk YXRlID0gbm93Owo+ICsJcGZkZXZmcmVxLT50aW1lX2xhc3RfdXBkYXRlID0gbm93Owo+ICAgfQo+ ICAgCj4gICBzdGF0aWMgaW50IHBhbmZyb3N0X2RldmZyZXFfdGFyZ2V0KHN0cnVjdCBkZXZpY2Ug KmRldiwgdW5zaWduZWQgbG9uZyAqZnJlcSwKPiBAQCAtNDcsMzAgKzQ3LDMxIEBAIHN0YXRpYyBp bnQgcGFuZnJvc3RfZGV2ZnJlcV90YXJnZXQoc3RydWN0IGRldmljZSAqZGV2LCB1bnNpZ25lZCBs b25nICpmcmVxLAo+ICAgCXJldHVybiAwOwo+ICAgfQo+ICAgCj4gLXN0YXRpYyB2b2lkIHBhbmZy b3N0X2RldmZyZXFfcmVzZXQoc3RydWN0IHBhbmZyb3N0X2RldmljZSAqcGZkZXYpCj4gK3N0YXRp YyB2b2lkIHBhbmZyb3N0X2RldmZyZXFfcmVzZXQoc3RydWN0IHBhbmZyb3N0X2RldmZyZXEgKnBm ZGV2ZnJlcSkKPiAgIHsKPiAtCXBmZGV2LT5kZXZmcmVxLmJ1c3lfdGltZSA9IDA7Cj4gLQlwZmRl di0+ZGV2ZnJlcS5pZGxlX3RpbWUgPSAwOwo+IC0JcGZkZXYtPmRldmZyZXEudGltZV9sYXN0X3Vw ZGF0ZSA9IGt0aW1lX2dldCgpOwo+ICsJcGZkZXZmcmVxLT5idXN5X3RpbWUgPSAwOwo+ICsJcGZk ZXZmcmVxLT5pZGxlX3RpbWUgPSAwOwo+ICsJcGZkZXZmcmVxLT50aW1lX2xhc3RfdXBkYXRlID0g a3RpbWVfZ2V0KCk7Cj4gICB9Cj4gICAKPiAgIHN0YXRpYyBpbnQgcGFuZnJvc3RfZGV2ZnJlcV9n ZXRfZGV2X3N0YXR1cyhzdHJ1Y3QgZGV2aWNlICpkZXYsCj4gICAJCQkJCSAgIHN0cnVjdCBkZXZm cmVxX2Rldl9zdGF0dXMgKnN0YXR1cykKPiAgIHsKPiAgIAlzdHJ1Y3QgcGFuZnJvc3RfZGV2aWNl ICpwZmRldiA9IGRldl9nZXRfZHJ2ZGF0YShkZXYpOwo+ICsJc3RydWN0IHBhbmZyb3N0X2RldmZy ZXEgKnBmZGV2ZnJlcSA9ICZwZmRldi0+cGZkZXZmcmVxOwo+ICAgCj4gLQlwYW5mcm9zdF9kZXZm cmVxX3VwZGF0ZV91dGlsaXphdGlvbihwZmRldik7Cj4gKwlwYW5mcm9zdF9kZXZmcmVxX3VwZGF0 ZV91dGlsaXphdGlvbihwZmRldmZyZXEpOwo+ICAgCj4gICAJc3RhdHVzLT5jdXJyZW50X2ZyZXF1 ZW5jeSA9IGNsa19nZXRfcmF0ZShwZmRldi0+Y2xvY2spOwo+IC0Jc3RhdHVzLT50b3RhbF90aW1l ID0ga3RpbWVfdG9fbnMoa3RpbWVfYWRkKHBmZGV2LT5kZXZmcmVxLmJ1c3lfdGltZSwKPiAtCQkJ CQkJICAgcGZkZXYtPmRldmZyZXEuaWRsZV90aW1lKSk7Cj4gKwlzdGF0dXMtPnRvdGFsX3RpbWUg PSBrdGltZV90b19ucyhrdGltZV9hZGQocGZkZXZmcmVxLT5idXN5X3RpbWUsCj4gKwkJCQkJCSAg IHBmZGV2ZnJlcS0+aWRsZV90aW1lKSk7Cj4gICAKPiAtCXN0YXR1cy0+YnVzeV90aW1lID0ga3Rp bWVfdG9fbnMocGZkZXYtPmRldmZyZXEuYnVzeV90aW1lKTsKPiArCXN0YXR1cy0+YnVzeV90aW1l ID0ga3RpbWVfdG9fbnMocGZkZXZmcmVxLT5idXN5X3RpbWUpOwo+ICAgCj4gLQlwYW5mcm9zdF9k ZXZmcmVxX3Jlc2V0KHBmZGV2KTsKPiArCXBhbmZyb3N0X2RldmZyZXFfcmVzZXQocGZkZXZmcmVx KTsKPiAgIAo+IC0JZGV2X2RiZyhwZmRldi0+ZGV2LCAiYnVzeSAlbHUgdG90YWwgJWx1ICVsdSAl JSBmcmVxICVsdSBNSHpcbiIsIHN0YXR1cy0+YnVzeV90aW1lLAo+IC0JCXN0YXR1cy0+dG90YWxf dGltZSwKPiArCWRldl9kYmcocGZkZXYtPmRldiwgImJ1c3kgJWx1IHRvdGFsICVsdSAlbHUgJSUg ZnJlcSAlbHUgTUh6XG4iLAo+ICsJCXN0YXR1cy0+YnVzeV90aW1lLCBzdGF0dXMtPnRvdGFsX3Rp bWUsCj4gICAJCXN0YXR1cy0+YnVzeV90aW1lIC8gKHN0YXR1cy0+dG90YWxfdGltZSAvIDEwMCks Cj4gICAJCXN0YXR1cy0+Y3VycmVudF9mcmVxdWVuY3kgLyAxMDAwIC8gMTAwMCk7Cj4gICAKPiBA QCAtOTEsNiArOTIsNyBAQCBpbnQgcGFuZnJvc3RfZGV2ZnJlcV9pbml0KHN0cnVjdCBwYW5mcm9z dF9kZXZpY2UgKnBmZGV2KQo+ICAgCXN0cnVjdCBkZXZpY2UgKmRldiA9ICZwZmRldi0+cGRldi0+ ZGV2Owo+ICAgCXN0cnVjdCBkZXZmcmVxICpkZXZmcmVxOwo+ICAgCXN0cnVjdCB0aGVybWFsX2Nv b2xpbmdfZGV2aWNlICpjb29saW5nOwo+ICsJc3RydWN0IHBhbmZyb3N0X2RldmZyZXEgKnBmZGV2 ZnJlcSA9ICZwZmRldi0+cGZkZXZmcmVxOwo+ICAgCj4gICAJcmV0ID0gZGV2X3BtX29wcF9vZl9h ZGRfdGFibGUoZGV2KTsKPiAgIAlpZiAocmV0ID09IC1FTk9ERVYpIC8qIE9wdGlvbmFsLCBjb250 aW51ZSB3aXRob3V0IGRldmZyZXEgKi8KPiBAQCAtOTgsNyArMTAwLDcgQEAgaW50IHBhbmZyb3N0 X2RldmZyZXFfaW5pdChzdHJ1Y3QgcGFuZnJvc3RfZGV2aWNlICpwZmRldikKPiAgIAllbHNlIGlm IChyZXQpCj4gICAJCXJldHVybiByZXQ7Cj4gICAKPiAtCXBhbmZyb3N0X2RldmZyZXFfcmVzZXQo cGZkZXYpOwo+ICsJcGFuZnJvc3RfZGV2ZnJlcV9yZXNldChwZmRldmZyZXEpOwo+ICAgCj4gICAJ Y3VyX2ZyZXEgPSBjbGtfZ2V0X3JhdGUocGZkZXYtPmNsb2NrKTsKPiAgIAo+IEBAIC0xMTYsNTMg KzExOCw1OSBAQCBpbnQgcGFuZnJvc3RfZGV2ZnJlcV9pbml0KHN0cnVjdCBwYW5mcm9zdF9kZXZp Y2UgKnBmZGV2KQo+ICAgCQlkZXZfcG1fb3BwX29mX3JlbW92ZV90YWJsZShkZXYpOwo+ICAgCQly ZXR1cm4gUFRSX0VSUihkZXZmcmVxKTsKPiAgIAl9Cj4gLQlwZmRldi0+ZGV2ZnJlcS5kZXZmcmVx ID0gZGV2ZnJlcTsKPiArCXBmZGV2ZnJlcS0+ZGV2ZnJlcSA9IGRldmZyZXE7Cj4gICAKPiAgIAlj b29saW5nID0gb2ZfZGV2ZnJlcV9jb29saW5nX3JlZ2lzdGVyKGRldi0+b2Zfbm9kZSwgZGV2ZnJl cSk7Cj4gICAJaWYgKElTX0VSUihjb29saW5nKSkKPiAgIAkJRFJNX0RFVl9JTkZPKGRldiwgIkZh aWxlZCB0byByZWdpc3RlciBjb29saW5nIGRldmljZVxuIik7Cj4gICAJZWxzZQo+IC0JCXBmZGV2 LT5kZXZmcmVxLmNvb2xpbmcgPSBjb29saW5nOwo+ICsJCXBmZGV2ZnJlcS0+Y29vbGluZyA9IGNv b2xpbmc7Cj4gICAKPiAgIAlyZXR1cm4gMDsKPiAgIH0KPiAgIAo+ICAgdm9pZCBwYW5mcm9zdF9k ZXZmcmVxX2Zpbmkoc3RydWN0IHBhbmZyb3N0X2RldmljZSAqcGZkZXYpCj4gICB7Cj4gLQlpZiAo cGZkZXYtPmRldmZyZXEuY29vbGluZykKPiAtCQlkZXZmcmVxX2Nvb2xpbmdfdW5yZWdpc3Rlcihw ZmRldi0+ZGV2ZnJlcS5jb29saW5nKTsKPiArCXN0cnVjdCBwYW5mcm9zdF9kZXZmcmVxICpwZmRl dmZyZXEgPSAmcGZkZXYtPnBmZGV2ZnJlcTsKPiArCj4gKwlpZiAocGZkZXZmcmVxLT5jb29saW5n KQo+ICsJCWRldmZyZXFfY29vbGluZ191bnJlZ2lzdGVyKHBmZGV2ZnJlcS0+Y29vbGluZyk7Cj4g ICAJZGV2X3BtX29wcF9vZl9yZW1vdmVfdGFibGUoJnBmZGV2LT5wZGV2LT5kZXYpOwo+ICAgfQo+ ICAgCj4gICB2b2lkIHBhbmZyb3N0X2RldmZyZXFfcmVzdW1lKHN0cnVjdCBwYW5mcm9zdF9kZXZp Y2UgKnBmZGV2KQo+ICAgewo+IC0JaWYgKCFwZmRldi0+ZGV2ZnJlcS5kZXZmcmVxKQo+ICsJc3Ry dWN0IHBhbmZyb3N0X2RldmZyZXEgKnBmZGV2ZnJlcSA9ICZwZmRldi0+cGZkZXZmcmVxOwo+ICsK PiArCWlmICghcGZkZXZmcmVxLT5kZXZmcmVxKQo+ICAgCQlyZXR1cm47Cj4gICAKPiAtCXBhbmZy b3N0X2RldmZyZXFfcmVzZXQocGZkZXYpOwo+ICsJcGFuZnJvc3RfZGV2ZnJlcV9yZXNldChwZmRl dmZyZXEpOwo+ICAgCj4gLQlkZXZmcmVxX3Jlc3VtZV9kZXZpY2UocGZkZXYtPmRldmZyZXEuZGV2 ZnJlcSk7Cj4gKwlkZXZmcmVxX3Jlc3VtZV9kZXZpY2UocGZkZXZmcmVxLT5kZXZmcmVxKTsKPiAg IH0KPiAgIAo+ICAgdm9pZCBwYW5mcm9zdF9kZXZmcmVxX3N1c3BlbmQoc3RydWN0IHBhbmZyb3N0 X2RldmljZSAqcGZkZXYpCj4gICB7Cj4gLQlpZiAoIXBmZGV2LT5kZXZmcmVxLmRldmZyZXEpCj4g KwlzdHJ1Y3QgcGFuZnJvc3RfZGV2ZnJlcSAqcGZkZXZmcmVxID0gJnBmZGV2LT5wZmRldmZyZXE7 Cj4gKwo+ICsJaWYgKCFwZmRldmZyZXEtPmRldmZyZXEpCj4gICAJCXJldHVybjsKPiAgIAo+IC0J ZGV2ZnJlcV9zdXNwZW5kX2RldmljZShwZmRldi0+ZGV2ZnJlcS5kZXZmcmVxKTsKPiArCWRldmZy ZXFfc3VzcGVuZF9kZXZpY2UocGZkZXZmcmVxLT5kZXZmcmVxKTsKPiAgIH0KPiAgIAo+IC12b2lk IHBhbmZyb3N0X2RldmZyZXFfcmVjb3JkX2J1c3koc3RydWN0IHBhbmZyb3N0X2RldmljZSAqcGZk ZXYpCj4gK3ZvaWQgcGFuZnJvc3RfZGV2ZnJlcV9yZWNvcmRfYnVzeShzdHJ1Y3QgcGFuZnJvc3Rf ZGV2ZnJlcSAqcGZkZXZmcmVxKQo+ICAgewo+IC0JcGFuZnJvc3RfZGV2ZnJlcV91cGRhdGVfdXRp bGl6YXRpb24ocGZkZXYpOwo+IC0JYXRvbWljX2luYygmcGZkZXYtPmRldmZyZXEuYnVzeV9jb3Vu dCk7Cj4gKwlwYW5mcm9zdF9kZXZmcmVxX3VwZGF0ZV91dGlsaXphdGlvbihwZmRldmZyZXEpOwo+ ICsJYXRvbWljX2luYygmcGZkZXZmcmVxLT5idXN5X2NvdW50KTsKPiAgIH0KPiAgIAo+IC12b2lk IHBhbmZyb3N0X2RldmZyZXFfcmVjb3JkX2lkbGUoc3RydWN0IHBhbmZyb3N0X2RldmljZSAqcGZk ZXYpCj4gK3ZvaWQgcGFuZnJvc3RfZGV2ZnJlcV9yZWNvcmRfaWRsZShzdHJ1Y3QgcGFuZnJvc3Rf ZGV2ZnJlcSAqcGZkZXZmcmVxKQo+ICAgewo+ICAgCWludCBjb3VudDsKPiAgIAo+IC0JcGFuZnJv c3RfZGV2ZnJlcV91cGRhdGVfdXRpbGl6YXRpb24ocGZkZXYpOwo+IC0JY291bnQgPSBhdG9taWNf ZGVjX2lmX3Bvc2l0aXZlKCZwZmRldi0+ZGV2ZnJlcS5idXN5X2NvdW50KTsKPiArCXBhbmZyb3N0 X2RldmZyZXFfdXBkYXRlX3V0aWxpemF0aW9uKHBmZGV2ZnJlcSk7Cj4gKwljb3VudCA9IGF0b21p Y19kZWNfaWZfcG9zaXRpdmUoJnBmZGV2ZnJlcS0+YnVzeV9jb3VudCk7Cj4gICAJV0FSTl9PTihj b3VudCA8IDApOwo+ICAgfQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcGFuZnJvc3Qv cGFuZnJvc3RfZGV2ZnJlcS5oIGIvZHJpdmVycy9ncHUvZHJtL3BhbmZyb3N0L3BhbmZyb3N0X2Rl dmZyZXEuaAo+IGluZGV4IDA2MTFiZWZmYzhkMC4uMDY5N2Y4ZDVhYTM0IDEwMDY0NAo+IC0tLSBh L2RyaXZlcnMvZ3B1L2RybS9wYW5mcm9zdC9wYW5mcm9zdF9kZXZmcmVxLmgKPiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vcGFuZnJvc3QvcGFuZnJvc3RfZGV2ZnJlcS5oCj4gQEAgLTQsMTMgKzQsMjkg QEAKPiAgICNpZm5kZWYgX19QQU5GUk9TVF9ERVZGUkVRX0hfXwo+ICAgI2RlZmluZSBfX1BBTkZS T1NUX0RFVkZSRVFfSF9fCj4gICAKPiArI2luY2x1ZGUgPGxpbnV4L2t0aW1lLmg+Cj4gKwo+ICtz dHJ1Y3QgZGV2ZnJlcTsKPiArc3RydWN0IHRoZXJtYWxfY29vbGluZ19kZXZpY2U7Cj4gKwo+ICtz dHJ1Y3QgcGFuZnJvc3RfZGV2aWNlOwo+ICsKPiArc3RydWN0IHBhbmZyb3N0X2RldmZyZXEgewo+ ICsJc3RydWN0IGRldmZyZXEgKmRldmZyZXE7Cj4gKwlzdHJ1Y3QgdGhlcm1hbF9jb29saW5nX2Rl dmljZSAqY29vbGluZzsKPiArCWt0aW1lX3QgYnVzeV90aW1lOwo+ICsJa3RpbWVfdCBpZGxlX3Rp bWU7Cj4gKwlrdGltZV90IHRpbWVfbGFzdF91cGRhdGU7Cj4gKwlhdG9taWNfdCBidXN5X2NvdW50 Owo+ICt9Owo+ICsKPiAgIGludCBwYW5mcm9zdF9kZXZmcmVxX2luaXQoc3RydWN0IHBhbmZyb3N0 X2RldmljZSAqcGZkZXYpOwo+ICAgdm9pZCBwYW5mcm9zdF9kZXZmcmVxX2Zpbmkoc3RydWN0IHBh bmZyb3N0X2RldmljZSAqcGZkZXYpOwo+ICAgCj4gICB2b2lkIHBhbmZyb3N0X2RldmZyZXFfcmVz dW1lKHN0cnVjdCBwYW5mcm9zdF9kZXZpY2UgKnBmZGV2KTsKPiAgIHZvaWQgcGFuZnJvc3RfZGV2 ZnJlcV9zdXNwZW5kKHN0cnVjdCBwYW5mcm9zdF9kZXZpY2UgKnBmZGV2KTsKPiAgIAo+IC12b2lk IHBhbmZyb3N0X2RldmZyZXFfcmVjb3JkX2J1c3koc3RydWN0IHBhbmZyb3N0X2RldmljZSAqcGZk ZXYpOwo+IC12b2lkIHBhbmZyb3N0X2RldmZyZXFfcmVjb3JkX2lkbGUoc3RydWN0IHBhbmZyb3N0 X2RldmljZSAqcGZkZXYpOwo+ICt2b2lkIHBhbmZyb3N0X2RldmZyZXFfcmVjb3JkX2J1c3koc3Ry dWN0IHBhbmZyb3N0X2RldmZyZXEgKmRldmZyZXEpOwo+ICt2b2lkIHBhbmZyb3N0X2RldmZyZXFf cmVjb3JkX2lkbGUoc3RydWN0IHBhbmZyb3N0X2RldmZyZXEgKmRldmZyZXEpOwo+ICAgCj4gICAj ZW5kaWYgLyogX19QQU5GUk9TVF9ERVZGUkVRX0hfXyAqLwo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vcGFuZnJvc3QvcGFuZnJvc3RfZGV2aWNlLmggYi9kcml2ZXJzL2dwdS9kcm0vcGFu ZnJvc3QvcGFuZnJvc3RfZGV2aWNlLmgKPiBpbmRleCBjMzBjNzE5YTgwNTkuLjJlZmE1OWM5ZDFj NSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vcGFuZnJvc3QvcGFuZnJvc3RfZGV2aWNl LmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZnJvc3QvcGFuZnJvc3RfZGV2aWNlLmgKPiBA QCAtMTMsNiArMTMsOCBAQAo+ICAgI2luY2x1ZGUgPGRybS9kcm1fbW0uaD4KPiAgICNpbmNsdWRl IDxkcm0vZ3B1X3NjaGVkdWxlci5oPgo+ICAgCj4gKyNpbmNsdWRlICJwYW5mcm9zdF9kZXZmcmVx LmgiCj4gKwo+ICAgc3RydWN0IHBhbmZyb3N0X2RldmljZTsKPiAgIHN0cnVjdCBwYW5mcm9zdF9t bXU7Cj4gICBzdHJ1Y3QgcGFuZnJvc3Rfam9iX3Nsb3Q7Cj4gQEAgLTEwNywxNCArMTA5LDcgQEAg c3RydWN0IHBhbmZyb3N0X2RldmljZSB7Cj4gICAJc3RydWN0IGxpc3RfaGVhZCBzaHJpbmtlcl9s aXN0Owo+ICAgCXN0cnVjdCBzaHJpbmtlciBzaHJpbmtlcjsKPiAgIAo+IC0Jc3RydWN0IHsKPiAt CQlzdHJ1Y3QgZGV2ZnJlcSAqZGV2ZnJlcTsKPiAtCQlzdHJ1Y3QgdGhlcm1hbF9jb29saW5nX2Rl dmljZSAqY29vbGluZzsKPiAtCQlrdGltZV90IGJ1c3lfdGltZTsKPiAtCQlrdGltZV90IGlkbGVf dGltZTsKPiAtCQlrdGltZV90IHRpbWVfbGFzdF91cGRhdGU7Cj4gLQkJYXRvbWljX3QgYnVzeV9j b3VudDsKPiAtCX0gZGV2ZnJlcTsKPiArCXN0cnVjdCBwYW5mcm9zdF9kZXZmcmVxIHBmZGV2ZnJl cTsKPiAgIH07Cj4gICAKPiAgIHN0cnVjdCBwYW5mcm9zdF9tbXUgewo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vcGFuZnJvc3QvcGFuZnJvc3Rfam9iLmMgYi9kcml2ZXJzL2dwdS9kcm0v cGFuZnJvc3QvcGFuZnJvc3Rfam9iLmMKPiBpbmRleCA2M2UzMmE5ZjI3NDkuLmE2N2YzZWFjNmE1 OCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vcGFuZnJvc3QvcGFuZnJvc3Rfam9iLmMK PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZnJvc3QvcGFuZnJvc3Rfam9iLmMKPiBAQCAtMTU1 LDcgKzE1NSw3IEBAIHN0YXRpYyB2b2lkIHBhbmZyb3N0X2pvYl9od19zdWJtaXQoc3RydWN0IHBh bmZyb3N0X2pvYiAqam9iLCBpbnQganMpCj4gICAJfQo+ICAgCj4gICAJY2ZnID0gcGFuZnJvc3Rf bW11X2FzX2dldChwZmRldiwgJmpvYi0+ZmlsZV9wcml2LT5tbXUpOwo+IC0JcGFuZnJvc3RfZGV2 ZnJlcV9yZWNvcmRfYnVzeShwZmRldik7Cj4gKwlwYW5mcm9zdF9kZXZmcmVxX3JlY29yZF9idXN5 KCZwZmRldi0+cGZkZXZmcmVxKTsKPiAgIAo+ICAgCWpvYl93cml0ZShwZmRldiwgSlNfSEVBRF9O RVhUX0xPKGpzKSwgamNfaGVhZCAmIDB4RkZGRkZGRkYpOwo+ICAgCWpvYl93cml0ZShwZmRldiwg SlNfSEVBRF9ORVhUX0hJKGpzKSwgamNfaGVhZCA+PiAzMik7Cj4gQEAgLTQxNSw3ICs0MTUsNyBA QCBzdGF0aWMgdm9pZCBwYW5mcm9zdF9qb2JfdGltZWRvdXQoc3RydWN0IGRybV9zY2hlZF9qb2Ig KnNjaGVkX2pvYikKPiAgIAl9Cj4gICAJc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmcGZkZXYtPmpz LT5qb2JfbG9jaywgZmxhZ3MpOwo+ICAgCj4gLQlwYW5mcm9zdF9kZXZmcmVxX3JlY29yZF9pZGxl KHBmZGV2KTsKPiArCXBhbmZyb3N0X2RldmZyZXFfcmVjb3JkX2lkbGUoJnBmZGV2LT5wZmRldmZy ZXEpOwo+ICAgCXBhbmZyb3N0X2RldmljZV9yZXNldChwZmRldik7Cj4gICAKPiAgIAlmb3IgKGkg PSAwOyBpIDwgTlVNX0pPQl9TTE9UUzsgaSsrKQo+IEBAIC00NzgsNyArNDc4LDcgQEAgc3RhdGlj IGlycXJldHVybl90IHBhbmZyb3N0X2pvYl9pcnFfaGFuZGxlcihpbnQgaXJxLCB2b2lkICpkYXRh KQo+ICAgCQkJCXBmZGV2LT5qb2JzW2pdID0gTlVMTDsKPiAgIAo+ICAgCQkJCXBhbmZyb3N0X21t dV9hc19wdXQocGZkZXYsICZqb2ItPmZpbGVfcHJpdi0+bW11KTsKPiAtCQkJCXBhbmZyb3N0X2Rl dmZyZXFfcmVjb3JkX2lkbGUocGZkZXYpOwo+ICsJCQkJcGFuZnJvc3RfZGV2ZnJlcV9yZWNvcmRf aWRsZSgmcGZkZXYtPnBmZGV2ZnJlcSk7Cj4gICAKPiAgIAkJCQlkbWFfZmVuY2Vfc2lnbmFsX2xv Y2tlZChqb2ItPmRvbmVfZmVuY2UpOwo+ICAgCQkJCXBtX3J1bnRpbWVfcHV0X2F1dG9zdXNwZW5k KHBmZGV2LT5kZXYpOwo+IAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJp LWRldmVsCg==