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=-16.4 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI, MENTIONS_GIT_HOSTING,SPF_HELO_NONE,SPF_PASS,UNWANTED_LANGUAGE_BODY, URIBL_BLOCKED autolearn=unavailable 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 CE082C433DB for ; Thu, 7 Jan 2021 10:25:45 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (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 6F14A2312F for ; Thu, 7 Jan 2021 10:25:45 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 6F14A2312F Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id: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=v2xarulq0Njarq51NOH5XOgNv4nt3fX/Sa9wo/sDsag=; b=ZHK4WiAd6jtLzDjclNJUqEY/r uPF9Hjt4EglnC9jkpAFSmlK3KTTXZGyki/VjB2mf9onCfxxs88cwHojpLj2F6R3MTmm2YcKDKoBJd UH+OWQTJXzgfVUJaHxMvQ/RFLAr6JuuA3IEvoTE/xBeC8hn66cgf9QV6rFKH0AU/0yWPE3qjrFTJs NQ8eM4tIthHVQoa87vTQF2gGXnSWOtcxuPYJkuP787dpbyNAV/5OH/c5Z0lspU7T6PVPAt0sdvNxA udSqEoeGtE03wiySOTsfxjfYl6qdXJiswr9Vs5iKtTg/iYCrvFpfFFr/hqyULN+i7YaiVgO7ZssfJ LjIdLXXLw==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kxSU0-0001yd-Qp; Thu, 07 Jan 2021 10:25:32 +0000 Received: from mail.kernel.org ([198.145.29.99]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kxSTw-0001xD-Ny; Thu, 07 Jan 2021 10:25:30 +0000 Received: by mail.kernel.org (Postfix) with ESMTPSA id B01052313B; Thu, 7 Jan 2021 10:25:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1610015128; bh=lrVNmjK/AZCpYBgu0dgdNTPyw20HiS8UxKhqGUFg0Zc=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=FFECKUGzMPj8u6PIm2izCz3Ka74m3qfvpdUi56g+TItkwlg+892Uz1lpBB1KMK0yw Pj9LqrNUu6YtPJUVBZg2d/IhhT85KHtdDRLRA7BHYmOanFmaogYIwFxsPfGn9qqHUv 70BTgddr7bUHpxmoDU7qiSpgnsA7U66mroLgxLeotsoezpKCKFuYlyQQWe7H/jVp+O GH5oBFX4VOkwwLn2cE0OllTiLrGlRZInVDECfOPYpHR3XqAjCb1HqpH1oEFHN5uW+o +TYLk6qJRG/SLULr0PS477VxZB7lHs09a8KA1e33XmqizSxTOKAuxaDsy3z4RP1eqQ Tga/UhPjc/ebA== Received: by mail-ej1-f52.google.com with SMTP id qw4so8882139ejb.12; Thu, 07 Jan 2021 02:25:27 -0800 (PST) X-Gm-Message-State: AOAM533bL/MfBvN216mYunsTUzAossa8bnPOu84OBhssL2pZXWyyLwrD yqDm8bOO7mm2j+HGlRKMzzTZLlKwxWvoXn0zyg== X-Google-Smtp-Source: ABdhPJwL9jsIf4Ymk01C8MtZet4m2qZAn1gdbr/wPxCWbP4RsApk74NMiO4zHAq/rtky13ceLXZNKxezz9A/o7fXGHE= X-Received: by 2002:a17:906:a106:: with SMTP id t6mr5842777ejy.63.1610015126143; Thu, 07 Jan 2021 02:25:26 -0800 (PST) MIME-Version: 1.0 References: <1609989081-29353-1-git-send-email-yongqiang.niu@mediatek.com> <1609989081-29353-8-git-send-email-yongqiang.niu@mediatek.com> In-Reply-To: <1609989081-29353-8-git-send-email-yongqiang.niu@mediatek.com> From: Chun-Kuang Hu Date: Thu, 7 Jan 2021 18:25:14 +0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v9, 07/11] drm/mediatek: separate gamma module To: Yongqiang Niu X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210107_052528_914044_65CFFE54 X-CRM114-Status: GOOD ( 28.98 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Mark Rutland , DTML , Daniel Vetter , David Airlie , linux-kernel , DRI Development , Project_Global_Chrome_Upstream_Group@mediatek.com, Matthias Brugger , Rob Herring , "moderated list:ARM/Mediatek SoC support" , Philipp Zabel , Hsin-Yi Wang , CK Hu , Linux ARM Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org SGksIFlvbmdxaWFuZzoKCllvbmdxaWFuZyBOaXUgPHlvbmdxaWFuZy5uaXVAbWVkaWF0ZWsuY29t PiDmlrwgMjAyMeW5tDHmnIg35pelIOmAseWbmyDkuIrljYgxMToxMuWvq+mBk++8mgo+Cj4gbXQ4 MTgzIGdhbW1hIG1vZHVsZSB3aWxsIGRpZmZlcmVudCB3aXRoIG10ODE3Mwo+IHNlcGFyYXRlIGdh bW1hIGZvciBhZGQgcHJpdmF0ZSBkYXRhCgpJJ3ZlIGFwcGxpZWQgc2VyaWVzICJEZWNvdXBsZSBN ZWRpYXRlayBEUk0gc3ViIGRyaXZlciIgWzFdIGludG8KbWVkaWF0ZWstZHJtLW5leHQgWzJdIGFu ZCB0aGlzIHBhdGNoIHdvdWxkIGNvbmZsaWN0IHdpdGgKbWVkaWF0ZWstZHJtLW5leHQsIHNvIHBs ZWFzZSByZWJhc2UgdGhpcyBzZXJpZXMgb250bwptZWRpYXRlay1kcm0tbmV4dC4KClsxXSBodHRw czovL3BhdGNod29yay5rZXJuZWwub3JnL3Byb2plY3QvbGludXgtbWVkaWF0ZWsvbGlzdC8/c2Vy aWVzPTM5OTkxNQpbMl0gaHR0cHM6Ly9naXQua2VybmVsLm9yZy9wdWIvc2NtL2xpbnV4L2tlcm5l bC9naXQvY2h1bmt1YW5nLmh1L2xpbnV4LmdpdC9sb2cvP2g9bWVkaWF0ZWstZHJtLW5leHQKClJl Z2FyZHMsCkNodW4tS3VhbmcuCgo+Cj4gU2lnbmVkLW9mZi1ieTogWW9uZ3FpYW5nIE5pdSA8eW9u Z3FpYW5nLm5pdUBtZWRpYXRlay5jb20+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9tZWRpYXRl ay9NYWtlZmlsZSAgICAgICAgICAgfCAgIDEgKwo+ICBkcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsv bXRrX2Rpc3BfZ2FtbWEuYyAgIHwgMTg1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiAg ZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZGRwX2NvbXAuYyB8ICA1OCArLS0tLS0t LS0KPiAgZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZGRwX2NvbXAuaCB8ICAgMSAr Cj4gIGRyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2Rydi5jICAgICAgfCAgIDQgKy0K PiAgZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZHJ2LmggICAgICB8ICAgMSArCj4g IDYgZmlsZXMgY2hhbmdlZCwgMTkyIGluc2VydGlvbnMoKyksIDU4IGRlbGV0aW9ucygtKQo+ICBj cmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kaXNwX2dhbW1h LmMKPgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvTWFrZWZpbGUgYi9k cml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvTWFrZWZpbGUKPiBpbmRleCBhODkyZWRlLi4xN2EwOGUy IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9NYWtlZmlsZQo+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9NYWtlZmlsZQo+IEBAIC0xLDYgKzEsNyBAQAo+ICAj IFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBHUEwtMi4wCj4KPiAgbWVkaWF0ZWstZHJtLXkgOj0g bXRrX2Rpc3BfY29sb3IubyBcCj4gKyAgICAgICAgICAgICAgICAgbXRrX2Rpc3BfZ2FtbWEubyBc Cj4gICAgICAgICAgICAgICAgICAgbXRrX2Rpc3Bfb3ZsLm8gXAo+ICAgICAgICAgICAgICAgICAg IG10a19kaXNwX3JkbWEubyBcCj4gICAgICAgICAgICAgICAgICAgbXRrX2RybV9jcnRjLm8gXAo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2Rpc3BfZ2FtbWEuYyBi L2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZGlzcF9nYW1tYS5jCj4gbmV3IGZpbGUgbW9k ZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwLi44NTAxODIxCj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZGlzcF9nYW1tYS5jCj4gQEAgLTAsMCArMSwx ODUgQEAKPiArLyoKPiArICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6Cj4gKyAqCj4gKyAqIENv cHlyaWdodCAoYykgMjAyMCBNZWRpYVRlayBJbmMuCj4gKyAqLwo+ICsKPiArI2luY2x1ZGUgPGxp bnV4L2Nsay5oPgo+ICsjaW5jbHVkZSA8bGludXgvY29tcG9uZW50Lmg+Cj4gKyNpbmNsdWRlIDxs aW51eC9vZl9kZXZpY2UuaD4KPiArI2luY2x1ZGUgPGxpbnV4L29mX2lycS5oPgo+ICsjaW5jbHVk ZSA8bGludXgvcGxhdGZvcm1fZGV2aWNlLmg+Cj4gKyNpbmNsdWRlIDxsaW51eC9zb2MvbWVkaWF0 ZWsvbXRrLWNtZHEuaD4KPiArCj4gKyNpbmNsdWRlICJtdGtfZHJtX2NydGMuaCIKPiArI2luY2x1 ZGUgIm10a19kcm1fZGRwX2NvbXAuaCIKPiArCj4gKyNkZWZpbmUgRElTUF9HQU1NQV9FTiAgICAg ICAgICAgICAgICAgICAgICAgICAgMHgwMDAwCj4gKyNkZWZpbmUgR0FNTUFfRU4gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCSVQoMCkKPiArI2RlZmluZSBESVNQX0dBTU1B X0NGRyAgICAgICAgICAgICAgICAgICAgICAgICAweDAwMjAKPiArI2RlZmluZSBHQU1NQV9MVVRf RU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJJVCgxKQo+ICsjZGVmaW5lIERJ U1BfR0FNTUFfU0laRSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDMwCj4gKyNk ZWZpbmUgRElTUF9HQU1NQV9MVVQgICAgICAgICAgICAgICAgICAgICAgICAgMHgwNzAwCj4gKwo+ ICsjZGVmaW5lIExVVF8xMEJJVF9NQVNLICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDNmZgo+ ICsKPiArc3RydWN0IG10a19kaXNwX2dhbW1hX2RhdGEgewo+ICsgICAgICAgdTMyIHJlc2VydmVk Owo+ICt9Owo+ICsKPiArLyoqCj4gKyAqIHN0cnVjdCBtdGtfZGlzcF9nYW1tYSAtIERJU1BfR0FN TUEgZHJpdmVyIHN0cnVjdHVyZQo+ICsgKiBAZGRwX2NvbXAgLSBzdHJ1Y3R1cmUgY29udGFpbmlu ZyB0eXBlIGVudW0gYW5kIGhhcmR3YXJlIHJlc291cmNlcwo+ICsgKiBAY3J0YyAtIGFzc29jaWF0 ZWQgY3J0YyB0byByZXBvcnQgaXJxIGV2ZW50cyB0bwo+ICsgKi8KPiArc3RydWN0IG10a19kaXNw X2dhbW1hIHsKPiArICAgICAgIHN0cnVjdCBtdGtfZGRwX2NvbXAgICAgICAgICAgICAgICAgICAg ICBkZHBfY29tcDsKPiArICAgICAgIGNvbnN0IHN0cnVjdCBtdGtfZGlzcF9nYW1tYV9kYXRhICAg ICAgICAqZGF0YTsKPiArfTsKPiArCj4gK3N0YXRpYyBpbmxpbmUgc3RydWN0IG10a19kaXNwX2dh bW1hICpjb21wX3RvX2dhbW1hKHN0cnVjdCBtdGtfZGRwX2NvbXAgKmNvbXApCj4gK3sKPiArICAg ICAgIHJldHVybiBjb250YWluZXJfb2YoY29tcCwgc3RydWN0IG10a19kaXNwX2dhbW1hLCBkZHBf Y29tcCk7Cj4gK30KPiArCj4gK3ZvaWQgbXRrX2dhbW1hX3NldChzdHJ1Y3QgbXRrX2RkcF9jb21w ICpjb21wLCBzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKnN0YXRlKQo+ICt7Cj4gKyAgICAgICB1bnNp Z25lZCBpbnQgaSwgcmVnOwo+ICsgICAgICAgc3RydWN0IGRybV9jb2xvcl9sdXQgKmx1dDsKPiAr ICAgICAgIHZvaWQgX19pb21lbSAqbHV0X2Jhc2U7Cj4gKyAgICAgICB1MzIgd29yZDsKPiArCj4g KyAgICAgICBpZiAoc3RhdGUtPmdhbW1hX2x1dCkgewo+ICsgICAgICAgICAgICAgICByZWcgPSBy ZWFkbChjb21wLT5yZWdzICsgRElTUF9HQU1NQV9DRkcpOwo+ICsgICAgICAgICAgICAgICByZWcg PSByZWcgfCBHQU1NQV9MVVRfRU47Cj4gKyAgICAgICAgICAgICAgIHdyaXRlbChyZWcsIGNvbXAt PnJlZ3MgKyBESVNQX0dBTU1BX0NGRyk7Cj4gKyAgICAgICAgICAgICAgIGx1dF9iYXNlID0gY29t cC0+cmVncyArIERJU1BfR0FNTUFfTFVUOwo+ICsgICAgICAgICAgICAgICBsdXQgPSAoc3RydWN0 IGRybV9jb2xvcl9sdXQgKilzdGF0ZS0+Z2FtbWFfbHV0LT5kYXRhOwo+ICsgICAgICAgICAgICAg ICBmb3IgKGkgPSAwOyBpIDwgTVRLX0xVVF9TSVpFOyBpKyspIHsKPiArICAgICAgICAgICAgICAg ICAgICAgICB3b3JkID0gKCgobHV0W2ldLnJlZCA+PiA2KSAmIExVVF8xMEJJVF9NQVNLKSA8PCAy MCkgKwo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCgobHV0W2ldLmdyZWVuID4+ IDYpICYgTFVUXzEwQklUX01BU0spIDw8IDEwKSArCj4gKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAoKGx1dFtpXS5ibHVlID4+IDYpICYgTFVUXzEwQklUX01BU0spOwo+ICsgICAgICAg ICAgICAgICAgICAgICAgIHdyaXRlbCh3b3JkLCAobHV0X2Jhc2UgKyBpICogNCkpOwo+ICsgICAg ICAgICAgICAgICB9Cj4gKyAgICAgICB9Cj4gK30KPiArCj4gK3N0YXRpYyB2b2lkIG10a19nYW1t YV9jb25maWcoc3RydWN0IG10a19kZHBfY29tcCAqY29tcCwgdW5zaWduZWQgaW50IHcsCj4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgaCwgdW5zaWduZWQgaW50IHZy ZWZyZXNoLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGJwYywg c3RydWN0IGNtZHFfcGt0ICpjbWRxX3BrdCkKPiArewo+ICsgICAgICAgc3RydWN0IG10a19kaXNw X2dhbW1hICpnYW1tYSA9IGNvbXBfdG9fZ2FtbWEoY29tcCk7Cj4gKwo+ICsgICAgICAgbXRrX2Rk cF93cml0ZShjbWRxX3BrdCwgaCA8PCAxNiB8IHcsIGNvbXAsIERJU1BfR0FNTUFfU0laRSk7Cj4g Kwo+ICsgICAgICAgbXRrX2RpdGhlcl9zZXQoY29tcCwgYnBjLCBESVNQX0dBTU1BX0NGRywgY21k cV9wa3QpOwo+ICt9Cj4gKwo+ICtzdGF0aWMgdm9pZCBtdGtfZ2FtbWFfc3RhcnQoc3RydWN0IG10 a19kZHBfY29tcCAqY29tcCkKPiArewo+ICsgICAgICAgd3JpdGVsKEdBTU1BX0VOLCBjb21wLT5y ZWdzICArIERJU1BfR0FNTUFfRU4pOwo+ICt9Cj4gKwo+ICtzdGF0aWMgdm9pZCBtdGtfZ2FtbWFf c3RvcChzdHJ1Y3QgbXRrX2RkcF9jb21wICpjb21wKQo+ICt7Cj4gKyAgICAgICB3cml0ZWxfcmVs YXhlZCgweDAsIGNvbXAtPnJlZ3MgKyBESVNQX0dBTU1BX0VOKTsKPiArfQo+ICsKPiArc3RhdGlj IGNvbnN0IHN0cnVjdCBtdGtfZGRwX2NvbXBfZnVuY3MgbXRrX2Rpc3BfZ2FtbWFfZnVuY3MgPSB7 Cj4gKyAgICAgICAuZ2FtbWFfc2V0ID0gbXRrX2dhbW1hX3NldCwKPiArICAgICAgIC5jb25maWcg PSBtdGtfZ2FtbWFfY29uZmlnLAo+ICsgICAgICAgLnN0YXJ0ID0gbXRrX2dhbW1hX3N0YXJ0LAo+ ICsgICAgICAgLnN0b3AgPSBtdGtfZ2FtbWFfc3RvcCwKPiArfTsKPiArCj4gK3N0YXRpYyBpbnQg bXRrX2Rpc3BfZ2FtbWFfYmluZChzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBkZXZpY2UgKm1h c3RlciwKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqZGF0YSkKPiArewo+ ICsgICAgICAgc3RydWN0IG10a19kaXNwX2dhbW1hICpwcml2ID0gZGV2X2dldF9kcnZkYXRhKGRl dik7Cj4gKyAgICAgICBzdHJ1Y3QgZHJtX2RldmljZSAqZHJtX2RldiA9IGRhdGE7Cj4gKyAgICAg ICBpbnQgcmV0Owo+ICsKPiArICAgICAgIHJldCA9IG10a19kZHBfY29tcF9yZWdpc3Rlcihkcm1f ZGV2LCAmcHJpdi0+ZGRwX2NvbXApOwo+ICsgICAgICAgaWYgKHJldCA8IDApIHsKPiArICAgICAg ICAgICAgICAgZGV2X2VycihkZXYsICJGYWlsZWQgdG8gcmVnaXN0ZXIgY29tcG9uZW50ICVwT0Y6 ICVkXG4iLAo+ICsgICAgICAgICAgICAgICAgICAgICAgIGRldi0+b2Zfbm9kZSwgcmV0KTsKPiAr ICAgICAgICAgICAgICAgcmV0dXJuIHJldDsKPiArICAgICAgIH0KPiArCj4gKyAgICAgICByZXR1 cm4gMDsKPiArfQo+ICsKPiArc3RhdGljIHZvaWQgbXRrX2Rpc3BfZ2FtbWFfdW5iaW5kKHN0cnVj dCBkZXZpY2UgKmRldiwgc3RydWN0IGRldmljZSAqbWFzdGVyLAo+ICsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB2b2lkICpkYXRhKQo+ICt7Cj4gKyAgICAgICBzdHJ1Y3QgbXRrX2Rp c3BfZ2FtbWEgKnByaXYgPSBkZXZfZ2V0X2RydmRhdGEoZGV2KTsKPiArICAgICAgIHN0cnVjdCBk cm1fZGV2aWNlICpkcm1fZGV2ID0gZGF0YTsKPiArCj4gKyAgICAgICBtdGtfZGRwX2NvbXBfdW5y ZWdpc3Rlcihkcm1fZGV2LCAmcHJpdi0+ZGRwX2NvbXApOwo+ICt9Cj4gKwo+ICtzdGF0aWMgY29u c3Qgc3RydWN0IGNvbXBvbmVudF9vcHMgbXRrX2Rpc3BfZ2FtbWFfY29tcG9uZW50X29wcyA9IHsK PiArICAgICAgIC5iaW5kICAgPSBtdGtfZGlzcF9nYW1tYV9iaW5kLAo+ICsgICAgICAgLnVuYmlu ZCA9IG10a19kaXNwX2dhbW1hX3VuYmluZCwKPiArfTsKPiArCj4gK3N0YXRpYyBpbnQgbXRrX2Rp c3BfZ2FtbWFfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKPiArewo+ICsgICAg ICAgc3RydWN0IGRldmljZSAqZGV2ID0gJnBkZXYtPmRldjsKPiArICAgICAgIHN0cnVjdCBtdGtf ZGlzcF9nYW1tYSAqcHJpdjsKPiArICAgICAgIGludCBjb21wX2lkOwo+ICsgICAgICAgaW50IHJl dDsKPiArCj4gKyAgICAgICBwcml2ID0gZGV2bV9remFsbG9jKGRldiwgc2l6ZW9mKCpwcml2KSwg R0ZQX0tFUk5FTCk7Cj4gKyAgICAgICBpZiAoIXByaXYpCj4gKyAgICAgICAgICAgICAgIHJldHVy biAtRU5PTUVNOwo+ICsKPiArICAgICAgIGNvbXBfaWQgPSBtdGtfZGRwX2NvbXBfZ2V0X2lkKGRl di0+b2Zfbm9kZSwgTVRLX0RJU1BfR0FNTUEpOwo+ICsgICAgICAgaWYgKGNvbXBfaWQgPCAwKSB7 Cj4gKyAgICAgICAgICAgICAgIGRldl9lcnIoZGV2LCAiRmFpbGVkIHRvIGlkZW50aWZ5IGJ5IGFs aWFzOiAlZFxuIiwgY29tcF9pZCk7Cj4gKyAgICAgICAgICAgICAgIHJldHVybiBjb21wX2lkOwo+ ICsgICAgICAgfQo+ICsKPiArICAgICAgIHJldCA9IG10a19kZHBfY29tcF9pbml0KGRldiwgZGV2 LT5vZl9ub2RlLCAmcHJpdi0+ZGRwX2NvbXAsIGNvbXBfaWQsCj4gKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAmbXRrX2Rpc3BfZ2FtbWFfZnVuY3MpOwo+ICsgICAgICAgaWYgKHJldCkg ewo+ICsgICAgICAgICAgICAgICBpZiAocmV0ICE9IC1FUFJPQkVfREVGRVIpCj4gKyAgICAgICAg ICAgICAgICAgICAgICAgZGV2X2VycihkZXYsICJGYWlsZWQgdG8gaW5pdGlhbGl6ZSBjb21wb25l bnQ6ICVkXG4iLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0KTsKPiArCj4g KyAgICAgICAgICAgICAgIHJldHVybiByZXQ7Cj4gKyAgICAgICB9Cj4gKwo+ICsgICAgICAgcHJp di0+ZGF0YSA9IG9mX2RldmljZV9nZXRfbWF0Y2hfZGF0YShkZXYpOwo+ICsKPiArICAgICAgIHBs YXRmb3JtX3NldF9kcnZkYXRhKHBkZXYsIHByaXYpOwo+ICsKPiArICAgICAgIHJldCA9IGNvbXBv bmVudF9hZGQoZGV2LCAmbXRrX2Rpc3BfZ2FtbWFfY29tcG9uZW50X29wcyk7Cj4gKyAgICAgICBp ZiAocmV0KQo+ICsgICAgICAgICAgICAgICBkZXZfZXJyKGRldiwgIkZhaWxlZCB0byBhZGQgY29t cG9uZW50OiAlZFxuIiwgcmV0KTsKPiArCj4gKyAgICAgICByZXR1cm4gcmV0Owo+ICt9Cj4gKwo+ ICtzdGF0aWMgaW50IG10a19kaXNwX2dhbW1hX3JlbW92ZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNl ICpwZGV2KQo+ICt7Cj4gKyAgICAgICBjb21wb25lbnRfZGVsKCZwZGV2LT5kZXYsICZtdGtfZGlz cF9nYW1tYV9jb21wb25lbnRfb3BzKTsKPiArCj4gKyAgICAgICByZXR1cm4gMDsKPiArfQo+ICsK PiArc3RhdGljIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgbXRrX2Rpc3BfZ2FtbWFfZHJpdmVy X2R0X21hdGNoW10gPSB7Cj4gKyAgICAgICB7IC5jb21wYXRpYmxlID0gIm1lZGlhdGVrLG10ODE3 My1kaXNwLWdhbW1hIn0sCj4gKyAgICAgICB7fSwKPiArfTsKPiArTU9EVUxFX0RFVklDRV9UQUJM RShvZiwgbXRrX2Rpc3BfZ2FtbWFfZHJpdmVyX2R0X21hdGNoKTsKPiArCj4gK3N0cnVjdCBwbGF0 Zm9ybV9kcml2ZXIgbXRrX2Rpc3BfZ2FtbWFfZHJpdmVyID0gewo+ICsgICAgICAgLnByb2JlICAg ICAgICAgID0gbXRrX2Rpc3BfZ2FtbWFfcHJvYmUsCj4gKyAgICAgICAucmVtb3ZlICAgICAgICAg PSBtdGtfZGlzcF9nYW1tYV9yZW1vdmUsCj4gKyAgICAgICAuZHJpdmVyICAgICAgICAgPSB7Cj4g KyAgICAgICAgICAgICAgIC5uYW1lICAgPSAibWVkaWF0ZWstZGlzcC1nYW1tYSIsCj4gKyAgICAg ICAgICAgICAgIC5vd25lciAgPSBUSElTX01PRFVMRSwKPiArICAgICAgICAgICAgICAgLm9mX21h dGNoX3RhYmxlID0gbXRrX2Rpc3BfZ2FtbWFfZHJpdmVyX2R0X21hdGNoLAo+ICsgICAgICAgfSwK PiArfTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fZGRw X2NvbXAuYyBiL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2RkcF9jb21wLmMKPiBp bmRleCAzMDY0ZWFjLi4wMzU4OWM5IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tZWRp YXRlay9tdGtfZHJtX2RkcF9jb21wLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsv bXRrX2RybV9kZHBfY29tcC5jCj4gQEAgLTU1LDExICs1NSw2IEBACj4gICNkZWZpbmUgRElUSEVS X1JFTEFZX01PREUgICAgICAgICAgICAgICAgICAgICAgQklUKDApCj4gICNkZWZpbmUgRElTUF9E SVRIRVJfU0laRSAgICAgICAgICAgICAgICAgICAgICAgMHgwMDMwCj4KPiAtI2RlZmluZSBESVNQ X0dBTU1BX0VOICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAKPiAtI2RlZmluZSBESVNQ X0dBTU1BX0NGRyAgICAgICAgICAgICAgICAgICAgICAgICAweDAwMjAKPiAtI2RlZmluZSBESVNQ X0dBTU1BX1NJWkUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAzMAo+IC0jZGVm aW5lIERJU1BfR0FNTUFfTFVUICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDcwMAo+IC0KPiAg I2RlZmluZSBMVVRfMTBCSVRfTUFTSyAgICAgICAgICAgICAgICAgICAgICAgICAweDAzZmYKPgo+ ICAjZGVmaW5lIE9EX1JFTEFZTU9ERSAgICAgICAgICAgICAgICAgICAgICAgICAgIEJJVCgwKQo+ IEBAIC02OCw5ICs2Myw2IEBACj4KPiAgI2RlZmluZSBBQUxfRU4gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBCSVQoMCkKPgo+IC0jZGVmaW5lIEdBTU1BX0VOICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIEJJVCgwKQo+IC0jZGVmaW5lIEdBTU1BX0xVVF9FTiAgICAgICAgICAg ICAgICAgICAgICAgICAgIEJJVCgxKQo+IC0KPiAgI2RlZmluZSBESVNQX0RJVEhFUklORyAgICAg ICAgICAgICAgICAgICAgICAgICBCSVQoMikKPiAgI2RlZmluZSBESVRIRVJfTFNCX0VSUl9TSElG VF9SKHgpICAgICAgICAgICAgICAoKCh4KSAmIDB4NykgPDwgMjgpCj4gICNkZWZpbmUgRElUSEVS X09WRkxXX0JJVF9SKHgpICAgICAgICAgICAgICAgICAgKCgoeCkgJiAweDcpIDw8IDI0KQo+IEBA IC0yODAsNDcgKzI3Miw2IEBAIHN0YXRpYyB2b2lkIG10a19kaXRoZXJfc3RvcChzdHJ1Y3QgbXRr X2RkcF9jb21wICpjb21wKQo+ICAgICAgICAgd3JpdGVsX3JlbGF4ZWQoMHgwLCBjb21wLT5yZWdz ICsgRElTUF9ESVRIRVJfRU4pOwo+ICB9Cj4KPiAtc3RhdGljIHZvaWQgbXRrX2dhbW1hX2NvbmZp ZyhzdHJ1Y3QgbXRrX2RkcF9jb21wICpjb21wLCB1bnNpZ25lZCBpbnQgdywKPiAtICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBoLCB1bnNpZ25lZCBpbnQgdnJlZnJlc2gs Cj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgYnBjLCBzdHJ1Y3Qg Y21kcV9wa3QgKmNtZHFfcGt0KQo+IC17Cj4gLSAgICAgICBtdGtfZGRwX3dyaXRlKGNtZHFfcGt0 LCBoIDw8IDE2IHwgdywgY29tcCwgRElTUF9HQU1NQV9TSVpFKTsKPiAtICAgICAgIG10a19kaXRo ZXJfc2V0KGNvbXAsIGJwYywgRElTUF9HQU1NQV9DRkcsIGNtZHFfcGt0KTsKPiAtfQo+IC0KPiAt c3RhdGljIHZvaWQgbXRrX2dhbW1hX3N0YXJ0KHN0cnVjdCBtdGtfZGRwX2NvbXAgKmNvbXApCj4g LXsKPiAtICAgICAgIHdyaXRlbChHQU1NQV9FTiwgY29tcC0+cmVncyAgKyBESVNQX0dBTU1BX0VO KTsKPiAtfQo+IC0KPiAtc3RhdGljIHZvaWQgbXRrX2dhbW1hX3N0b3Aoc3RydWN0IG10a19kZHBf Y29tcCAqY29tcCkKPiAtewo+IC0gICAgICAgd3JpdGVsX3JlbGF4ZWQoMHgwLCBjb21wLT5yZWdz ICArIERJU1BfR0FNTUFfRU4pOwo+IC19Cj4gLQo+IC1zdGF0aWMgdm9pZCBtdGtfZ2FtbWFfc2V0 KHN0cnVjdCBtdGtfZGRwX2NvbXAgKmNvbXAsCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICBz dHJ1Y3QgZHJtX2NydGNfc3RhdGUgKnN0YXRlKQo+IC17Cj4gLSAgICAgICB1bnNpZ25lZCBpbnQg aSwgcmVnOwo+IC0gICAgICAgc3RydWN0IGRybV9jb2xvcl9sdXQgKmx1dDsKPiAtICAgICAgIHZv aWQgX19pb21lbSAqbHV0X2Jhc2U7Cj4gLSAgICAgICB1MzIgd29yZDsKPiAtCj4gLSAgICAgICBp ZiAoc3RhdGUtPmdhbW1hX2x1dCkgewo+IC0gICAgICAgICAgICAgICByZWcgPSByZWFkbChjb21w LT5yZWdzICsgRElTUF9HQU1NQV9DRkcpOwo+IC0gICAgICAgICAgICAgICByZWcgPSByZWcgfCBH QU1NQV9MVVRfRU47Cj4gLSAgICAgICAgICAgICAgIHdyaXRlbChyZWcsIGNvbXAtPnJlZ3MgKyBE SVNQX0dBTU1BX0NGRyk7Cj4gLSAgICAgICAgICAgICAgIGx1dF9iYXNlID0gY29tcC0+cmVncyAr IERJU1BfR0FNTUFfTFVUOwo+IC0gICAgICAgICAgICAgICBsdXQgPSAoc3RydWN0IGRybV9jb2xv cl9sdXQgKilzdGF0ZS0+Z2FtbWFfbHV0LT5kYXRhOwo+IC0gICAgICAgICAgICAgICBmb3IgKGkg PSAwOyBpIDwgTVRLX0xVVF9TSVpFOyBpKyspIHsKPiAtICAgICAgICAgICAgICAgICAgICAgICB3 b3JkID0gKCgobHV0W2ldLnJlZCA+PiA2KSAmIExVVF8xMEJJVF9NQVNLKSA8PCAyMCkgKwo+IC0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCgobHV0W2ldLmdyZWVuID4+IDYpICYgTFVU XzEwQklUX01BU0spIDw8IDEwKSArCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo KGx1dFtpXS5ibHVlID4+IDYpICYgTFVUXzEwQklUX01BU0spOwo+IC0gICAgICAgICAgICAgICAg ICAgICAgIHdyaXRlbCh3b3JkLCAobHV0X2Jhc2UgKyBpICogNCkpOwo+IC0gICAgICAgICAgICAg ICB9Cj4gLSAgICAgICB9Cj4gLX0KPiAtCj4gIHN0YXRpYyBjb25zdCBzdHJ1Y3QgbXRrX2RkcF9j b21wX2Z1bmNzIGRkcF9hYWwgPSB7Cj4gICAgICAgICAuZ2FtbWFfc2V0ID0gbXRrX2dhbW1hX3Nl dCwKPiAgICAgICAgIC5jb25maWcgPSBtdGtfYWFsX2NvbmZpZywKPiBAQCAtMzQxLDEzICsyOTIs NiBAQCBzdGF0aWMgdm9pZCBtdGtfZ2FtbWFfc2V0KHN0cnVjdCBtdGtfZGRwX2NvbXAgKmNvbXAs Cj4gICAgICAgICAuc3RvcCA9IG10a19kaXRoZXJfc3RvcCwKPiAgfTsKPgo+IC1zdGF0aWMgY29u c3Qgc3RydWN0IG10a19kZHBfY29tcF9mdW5jcyBkZHBfZ2FtbWEgPSB7Cj4gLSAgICAgICAuZ2Ft bWFfc2V0ID0gbXRrX2dhbW1hX3NldCwKPiAtICAgICAgIC5jb25maWcgPSBtdGtfZ2FtbWFfY29u ZmlnLAo+IC0gICAgICAgLnN0YXJ0ID0gbXRrX2dhbW1hX3N0YXJ0LAo+IC0gICAgICAgLnN0b3Ag PSBtdGtfZ2FtbWFfc3RvcCwKPiAtfTsKPiAtCj4gIHN0YXRpYyBjb25zdCBzdHJ1Y3QgbXRrX2Rk cF9jb21wX2Z1bmNzIGRkcF9vZCA9IHsKPiAgICAgICAgIC5jb25maWcgPSBtdGtfb2RfY29uZmln LAo+ICAgICAgICAgLnN0YXJ0ID0gbXRrX29kX3N0YXJ0LAo+IEBAIC0zOTYsNyArMzQwLDcgQEAg c3RydWN0IG10a19kZHBfY29tcF9tYXRjaCB7Cj4gICAgICAgICBbRERQX0NPTVBPTkVOVF9EU0kx XSAgICA9IHsgTVRLX0RTSSwgICAgICAgICAgICAxLCBOVUxMIH0sCj4gICAgICAgICBbRERQX0NP TVBPTkVOVF9EU0kyXSAgICA9IHsgTVRLX0RTSSwgICAgICAgICAgICAyLCBOVUxMIH0sCj4gICAg ICAgICBbRERQX0NPTVBPTkVOVF9EU0kzXSAgICA9IHsgTVRLX0RTSSwgICAgICAgICAgICAzLCBO VUxMIH0sCj4gLSAgICAgICBbRERQX0NPTVBPTkVOVF9HQU1NQV0gICA9IHsgTVRLX0RJU1BfR0FN TUEsICAgICAwLCAmZGRwX2dhbW1hIH0sCj4gKyAgICAgICBbRERQX0NPTVBPTkVOVF9HQU1NQV0g ICA9IHsgTVRLX0RJU1BfR0FNTUEsICAgICAwLCBOVUxMIH0sCj4gICAgICAgICBbRERQX0NPTVBP TkVOVF9PRDBdICAgICA9IHsgTVRLX0RJU1BfT0QsICAgICAgICAwLCAmZGRwX29kIH0sCj4gICAg ICAgICBbRERQX0NPTVBPTkVOVF9PRDFdICAgICA9IHsgTVRLX0RJU1BfT0QsICAgICAgICAxLCAm ZGRwX29kIH0sCj4gICAgICAgICBbRERQX0NPTVBPTkVOVF9PVkwwXSAgICA9IHsgTVRLX0RJU1Bf T1ZMLCAgICAgICAwLCBOVUxMIH0sCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tZWRp YXRlay9tdGtfZHJtX2RkcF9jb21wLmggYi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2Ry bV9kZHBfY29tcC5oCj4gaW5kZXggNWFhNTJiNy4uMTc4ZmFlOSAxMDA2NDQKPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kZHBfY29tcC5oCj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL21lZGlhdGVrL210a19kcm1fZGRwX2NvbXAuaAo+IEBAIC0xNzksNiArMTc5LDcgQEAg aW50IG10a19kZHBfY29tcF9pbml0KHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IGRldmljZV9u b2RlICpjb21wX25vZGUsCj4gIHZvaWQgbXRrX2RkcF9jb21wX3VucmVnaXN0ZXIoc3RydWN0IGRy bV9kZXZpY2UgKmRybSwgc3RydWN0IG10a19kZHBfY29tcCAqY29tcCk7Cj4gIHZvaWQgbXRrX2Rp dGhlcl9zZXQoc3RydWN0IG10a19kZHBfY29tcCAqY29tcCwgdW5zaWduZWQgaW50IGJwYywKPiAg ICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBDRkcsIHN0cnVjdCBjbWRxX3BrdCAqY21k cV9wa3QpOwo+ICt2b2lkIG10a19nYW1tYV9zZXQoc3RydWN0IG10a19kZHBfY29tcCAqY29tcCwg c3RydWN0IGRybV9jcnRjX3N0YXRlICpzdGF0ZSk7Cj4gIGVudW0gbXRrX2RkcF9jb21wX3R5cGUg bXRrX2RkcF9jb21wX2dldF90eXBlKGVudW0gbXRrX2RkcF9jb21wX2lkIGNvbXBfaWQpOwo+ICB2 b2lkIG10a19kZHBfd3JpdGUoc3RydWN0IGNtZHFfcGt0ICpjbWRxX3BrdCwgdW5zaWduZWQgaW50 IHZhbHVlLAo+ICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgbXRrX2RkcF9jb21wICpjb21wLCB1 bnNpZ25lZCBpbnQgb2Zmc2V0KTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21lZGlh dGVrL210a19kcm1fZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kcnYu Ywo+IGluZGV4IDJmNzE3ZGYuLjM3ZmVjMjUgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L21lZGlhdGVrL210a19kcm1fZHJ2LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsv bXRrX2RybV9kcnYuYwo+IEBAIC00ODgsMTEgKzQ4OCwxMiBAQCBzdGF0aWMgaW50IG10a19kcm1f cHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKPiAgICAgICAgICAgICAgICAgcHJp dmF0ZS0+Y29tcF9ub2RlW2NvbXBfaWRdID0gb2Zfbm9kZV9nZXQobm9kZSk7Cj4KPiAgICAgICAg ICAgICAgICAgLyoKPiAtICAgICAgICAgICAgICAgICogQ3VycmVudGx5IG9ubHkgdGhlIENPTE9S LCBPVkwsIFJETUEsIERTSSwgYW5kIERQSSBibG9ja3MgaGF2ZQo+ICsgICAgICAgICAgICAgICAg KiBDdXJyZW50bHkgb25seSB0aGUgQ09MT1IsIEdBTU1BLCBPVkwsIFJETUEsIERTSSwgYW5kIERQ SSBibG9ja3MgaGF2ZQo+ICAgICAgICAgICAgICAgICAgKiBzZXBhcmF0ZSBjb21wb25lbnQgcGxh dGZvcm0gZHJpdmVycyBhbmQgaW5pdGlhbGl6ZSB0aGVpciBvd24KPiAgICAgICAgICAgICAgICAg ICogRERQIGNvbXBvbmVudCBzdHJ1Y3R1cmUuIFRoZSBvdGhlcnMgYXJlIGluaXRpYWxpemVkIGhl cmUuCj4gICAgICAgICAgICAgICAgICAqLwo+ICAgICAgICAgICAgICAgICBpZiAoY29tcF90eXBl ID09IE1US19ESVNQX0NPTE9SIHx8Cj4gKyAgICAgICAgICAgICAgICAgICBjb21wX3R5cGUgPT0g TVRLX0RJU1BfR0FNTUEgfHwKPiAgICAgICAgICAgICAgICAgICAgIGNvbXBfdHlwZSA9PSBNVEtf RElTUF9PVkwgfHwKPiAgICAgICAgICAgICAgICAgICAgIGNvbXBfdHlwZSA9PSBNVEtfRElTUF9P VkxfMkwgfHwKPiAgICAgICAgICAgICAgICAgICAgIGNvbXBfdHlwZSA9PSBNVEtfRElTUF9SRE1B IHx8Cj4gQEAgLTYwNiw2ICs2MDcsNyBAQCBzdGF0aWMgU0lNUExFX0RFVl9QTV9PUFMobXRrX2Ry bV9wbV9vcHMsIG10a19kcm1fc3lzX3N1c3BlbmQsCj4gIHN0YXRpYyBzdHJ1Y3QgcGxhdGZvcm1f ZHJpdmVyICogY29uc3QgbXRrX2RybV9kcml2ZXJzW10gPSB7Cj4gICAgICAgICAmbXRrX2RkcF9k cml2ZXIsCj4gICAgICAgICAmbXRrX2Rpc3BfY29sb3JfZHJpdmVyLAo+ICsgICAgICAgJm10a19k aXNwX2dhbW1hX2RyaXZlciwKPiAgICAgICAgICZtdGtfZGlzcF9vdmxfZHJpdmVyLAo+ICAgICAg ICAgJm10a19kaXNwX3JkbWFfZHJpdmVyLAo+ICAgICAgICAgJm10a19kcGlfZHJpdmVyLAo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kcnYuaCBiL2RyaXZl cnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2Rydi5oCj4gaW5kZXggNWQ3NzFjZi4uYmJkMzYy YiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9kcnYuaAo+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2Rydi5oCj4gQEAgLTQ4LDYg KzQ4LDcgQEAgc3RydWN0IG10a19kcm1fcHJpdmF0ZSB7Cj4KPiAgZXh0ZXJuIHN0cnVjdCBwbGF0 Zm9ybV9kcml2ZXIgbXRrX2RkcF9kcml2ZXI7Cj4gIGV4dGVybiBzdHJ1Y3QgcGxhdGZvcm1fZHJp dmVyIG10a19kaXNwX2NvbG9yX2RyaXZlcjsKPiArZXh0ZXJuIHN0cnVjdCBwbGF0Zm9ybV9kcml2 ZXIgbXRrX2Rpc3BfZ2FtbWFfZHJpdmVyOwo+ICBleHRlcm4gc3RydWN0IHBsYXRmb3JtX2RyaXZl ciBtdGtfZGlzcF9vdmxfZHJpdmVyOwo+ICBleHRlcm4gc3RydWN0IHBsYXRmb3JtX2RyaXZlciBt dGtfZGlzcF9yZG1hX2RyaXZlcjsKPiAgZXh0ZXJuIHN0cnVjdCBwbGF0Zm9ybV9kcml2ZXIgbXRr X2RwaV9kcml2ZXI7Cj4gLS0KPiAxLjguMS4xLmRpcnR5Cj4gX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KPiBMaW51eC1tZWRpYXRlayBtYWlsaW5nIGxpc3QK PiBMaW51eC1tZWRpYXRla0BsaXN0cy5pbmZyYWRlYWQub3JnCj4gaHR0cDovL2xpc3RzLmluZnJh ZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1tZWRpYXRlawoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTGludXgtbWVkaWF0ZWsgbWFpbGluZyBs aXN0CkxpbnV4LW1lZGlhdGVrQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJh ZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1tZWRpYXRlawo=