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 0F1A0C3DA6F for ; Fri, 25 Aug 2023 15:43:49 +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:Message-ID:References:In-Reply-To:Subject:Cc:To:From :Date:MIME-Version:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=XYi/LCwOwcLnFA2h/445yHzxslBMJ/aAiaD7n42IP+k=; b=nHpdJCUxLB4MRmzFQEB6ewQcor l5lbW7CEgaajjFDJObEAGar1REfgg7qUb3XD1fE8DVwtJeX2LRDPVB4/y4kZOjn+75S8huRBfHPk+ 4+MCutcHhrgbZo3NISNjDAjxer1LMVJmmSo8DnxihBeMumrTaJNRD16rLIVLyklXhi4kENyM1hZv/ f+nQSoY2CyHO/fNfz75XOaMXvaJTMxTgFrvUjzYBDSlScUwRrC044TFJbPi8oO2DLh5WU39aAdnNl 2WFQJmoEe8PaoLCopwMZeJ6B1m6kPhh+eQCN+RA+e8HGFbh4EVLA3run0tEXbkrvl7hCoIIlW92VK MuEboTIQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qZYxz-005hT5-0R; Fri, 25 Aug 2023 15:43:19 +0000 Received: from dfw.source.kernel.org ([139.178.84.217]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qZYxv-005hSj-0q; Fri, 25 Aug 2023 15:43:17 +0000 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 78EA860D3D; Fri, 25 Aug 2023 15:43:14 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7AEAAC433C7; Fri, 25 Aug 2023 15:43:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1692978193; bh=G9n/YPFGOVSkbEMJy6OZc/r3PTQEJOCu7MoRuHGRBqQ=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=Y7KI8dqWWKtEC8q2IiKsLvTqqQ7GnFkrnEH23Hw+QAQlKTvGA01ZNoDwsn98W4mgE O2N+gXOxmgQ0WQVSkSYbszV9VMDWETufTkVAjQALTWyR2+EWmUEMT5rU1o5ycIodnW AAsU3VNB5eQF1b4OoJ3Tc1e+I699bsezD/ANKhYLOXBJspIYC02bQUx7AyUqIDA7Ow MY94ukBRbq9Ci1MQJS9GEza4eflcCyYrTp/g3/2nEXisyk8uv+qdAWJZO27u5fH13g qhS/TKQLxOuoQ2o3LnaI+NXxoqklWDcKPZnRTyPTNgi8N//f/Gxa/CyWRAijik+tdL Xsu9rmemZXONQ== MIME-Version: 1.0 Date: Fri, 25 Aug 2023 17:42:59 +0200 From: Michael Walle To: =?UTF-8?Q?N=C3=ADcolas_F=2E_R=2E_A=2E_Prado?= Cc: angelogioacchino.delregno@collabora.com, airlied@gmail.com, amergnat@baylibre.com, chunkuang.hu@kernel.org, ck.hu@mediatek.com, daniel@ffwll.ch, dri-devel@lists.freedesktop.org, ehristev@collabora.com, kernel@collabora.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-mediatek@lists.infradead.org, matthias.bgg@gmail.com, p.zabel@pengutronix.de, wenst@chromium.org Subject: Re: [PATCH v7 09/11] drm/mediatek: dp: Add support for embedded DisplayPort aux-bus In-Reply-To: <5b438dba-9b85-4448-bc89-08a11ddb822a@notapiano> References: <20230725073234.55892-10-angelogioacchino.delregno@collabora.com> <20230825120109.3132209-1-mwalle@kernel.org> <5b438dba-9b85-4448-bc89-08a11ddb822a@notapiano> Message-ID: X-Sender: mwalle@kernel.org X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230825_084315_393422_0B7B0E54 X-CRM114-Status: GOOD ( 37.04 ) 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 SGkgTmljb2xhcywKCj4+ID4gRm9yIHRoZSBlRFAgY2FzZSB3ZSBjYW4gc3VwcG9ydCB1c2luZyBh dXgtYnVzIG9uIE1lZGlhVGVrIERQOiB0aGlzCj4+ID4gZ2l2ZXMgdXMgdGhlIHBvc3NpYmlsaXR5 IHRvIGRlY2xhcmUgb3VyIHBhbmVsIGFzIGdlbmVyaWMgInBhbmVsLWVkcCIKPj4gPiB3aGljaCB3 aWxsIGF1dG9tYXRpY2FsbHkgY29uZmlndXJlIHRoZSB0aW1pbmdzIGFuZCBhdmFpbGFibGUgbW9k ZXMKPj4gPiB2aWEgdGhlIEVESUQgdGhhdCB3ZSByZWFkIGZyb20gaXQuCj4+ID4KPj4gPiBUbyBk byB0aGlzLCBtb3ZlIHRoZSBwYW5lbCBwYXJzaW5nIGF0IHRoZSBlbmQgb2YgdGhlIHByb2JlIGZ1 bmN0aW9uCj4+ID4gc28gdGhhdCB0aGUgaGFyZHdhcmUgaXMgaW5pdGlhbGl6ZWQgYmVmb3JlaGFu ZCBhbmQgYWxzbyBpbml0aWFsaXplCj4+ID4gdGhlIERQVFggQVVYIGJsb2NrIGFuZCBwb3dlciBi b3RoIG9uIGFzLCB3aGVuIHdlIHBvcHVsYXRlIHRoZQo+PiA+IGF1eC1idXMsIHRoZSBwYW5lbCBk cml2ZXIgd2lsbCB0cmlnZ2VyIGFuIEVESUQgcmVhZCB0byBwZXJmb3JtCj4+ID4gcGFuZWwgZGV0 ZWN0aW9uLgo+PiA+Cj4+ID4gTGFzdCBidXQgbm90IGxlYXN0LCBzaW5jZSBub3cgdGhlIEFVWCB0 cmFuc2ZlcnMgY2FuIGhhcHBlbiBpbiB0aGUKPj4gPiBzZXBhcmF0ZWQgYXV4LWJ1cywgaXQgd2Fz IG5lY2Vzc2FyeSB0byBhZGQgYW4gZXhjbHVzaW9uIGZvciB0aGUKPj4gPiBjYWJsZV9wbHVnZ2Vk X2luIGNoZWNrIGluIGBtdGtfZHBfYXV4X3RyYW5zZmVyKClgIGFuZCB0aGUgZWFzaWVzdAo+PiA+ IHdheSB0byBkbyB0aGlzIGlzIHRvIHNpbXBseSBpZ25vcmUgY2hlY2tpbmcgdGhhdCB3aGVuIHRo ZSBicmlkZ2UKPj4gPiB0eXBlIGlzIGVEUC4KPj4gCj4+IFRoaXMgcGF0Y2ggYnJlYWtzIG15IGJv YXJkIGJhc2VkIG9uIHRoZSBNVDgxOTUgd2hpY2ggb25seSBoYXMgb25lCj4+IERpc3BsYXlQb3J0 IG91dHB1dCBwb3J0LiBJIHN1c3BlY3QgaXQgbWlnaHQgYWxzbyBicmVhayB0aGUgCj4+IG10ODE5 NS1jaGVycnkKPj4gYm9hcmQuCj4gCj4gRG8geW91IG1lYW4gdGhhdCB5b3VyIGJvYXJkIGRvZXMg bm90IGhhdmUgYW4gaW50ZXJuYWwgZGlzcGxheSwgb25seSB0aGUgCj4gb25lCj4gb3V0cHV0IHBv cnQ/IElmIHNvLCB3aHkgYXJlIHlvdSBlbmFibGluZyB0aGUgbm9kZXMgZm9yIHRoZSBpbnRlcm5h bCAKPiBkaXNwbGF5IHBhdGgKPiBpbiB5b3VyIGJvYXJkIHNwZWNpZmljIERUPwoKV2VsbCwgdGhh dCBkZXBlbmRzLiBUaGUgYm9hcmQgYWN0dWFsbHkgaGFzIGFuIGVEUCBzb2NrZXQsIGJ1dCBiZWNh dXNlIHdlCmFyZSBhbiBPRU0sIHRoZXJlIG1pZ2h0IGJlIG5vIGRpc3BsYXkgY29ubmVjdGVkIHRv IGl0LiAoQW5kIEkgaGF2ZW4ndAp0cmllZCBpdCB5ZXQpLiBJdCBzaG91bGQgcHJvYmFibHkgZ28g aW50byBhbiBvd24gZGV2aWNlIHRyZWUgb3Igb3ZlcmxheQppZiBpdCBpcyB1c2VkLiBJIGFncmVl LiBCdXQgaXQgbG9va2VkIGxpa2UgaXQgd2FzIGF1dG8tZGV0ZWN0YWJsZSAoaXQKZXZlbiBoYXMg YSBIRFAgcGluIG9uIHRoZSBlRFAgc29ja2V0LCBub3Qgc3VyZSBhYm91dCBpdHMgdXNlIGNhc2Uu LikKCkJ1dCB0aGUgcmVhbCByZWFzb24gSSd2ZSBlbmFibGVkIGl0IHdhcyBiZWNhdXNlIEknbGwg Z2V0IGFuIGtlcm5lbApvb3BzIG90aGVyd2lzZS4gSSB0aG91Z2h0IGl0IG1pZ2h0IGJlIHNvbWUg cXVpcmsgdGhhdCB5b3UnbGwgbmVlZCBib3RoLApiZWNhdXNlIGVEUCB3aWxsIHJlZ2lzdGVyIGV2 ZW4gaWYgdGhlcmVzIG5vIGRpc3BsYXkgLSBhcyB5b3UndmUKbWVudGlvbmVkIGJlbG93LgoKSGVy ZSdzIHRoZSBzcGxhdDoKWyAgICAzLjIzNzA2NF0gbWVkaWF0ZWstZHJtIG1lZGlhdGVrLWRybS4x MC5hdXRvOiBib3VuZCAKMWMxMTAwMDAudnBwLW1lcmdlIChvcHMgbXRrX2Rpc3BfbWVyZ2VfY29t cG9uZW50X29wcykKWyAgICAzLjIzODI3NF0gbWVkaWF0ZWstZHJtIG1lZGlhdGVrLWRybS44LmF1 dG86IE5vdCBjcmVhdGluZyBjcnRjIDAgCmJlY2F1c2UgY29tcG9uZW50IDggaXMgZGlzYWJsZWQg b3IgbWlzc2luZwpbICAgIDMuMjM5NTA0XSBtZWRpYXRlay1kcm0gbWVkaWF0ZWstZHJtLjguYXV0 bzogTm90IGNyZWF0aW5nIGNydGMgMCAKYmVjYXVzZSBjb21wb25lbnQgOSBpcyBkaXNhYmxlZCBv ciBtaXNzaW5nClsgICAgMy4yNDA3NDFdIFVuYWJsZSB0byBoYW5kbGUga2VybmVsIE5VTEwgcG9p bnRlciBkZXJlZmVyZW5jZSBhdCAKdmlydHVhbCBhZGRyZXNzIDAwMDAwMDAwMDAwMDA0YTAKWyAg ICAzLjI0MTg0MV0gTWVtIGFib3J0IGluZm86ClsgICAgMy4yNDIxOTJdICAgRVNSID0gMHgwMDAw MDAwMDk2MDAwMDA0ClsgICAgMy4yNDI2NjJdICAgRUMgPSAweDI1OiBEQUJUIChjdXJyZW50IEVM KSwgSUwgPSAzMiBiaXRzClsgICAgMy4yNDMzMjhdICAgU0VUID0gMCwgRm5WID0gMApbICAgIDMu MjQzNzEwXSAgIEVBID0gMCwgUzFQVFcgPSAwClsgICAgMy4yNDQxMDRdICAgRlNDID0gMHgwNDog bGV2ZWwgMCB0cmFuc2xhdGlvbiBmYXVsdApbICAgIDMuMjQ0NzE3XSBEYXRhIGFib3J0IGluZm86 ClsgICAgMy4yNDUwNzhdICAgSVNWID0gMCwgSVNTID0gMHgwMDAwMDAwNCwgSVNTMiA9IDB4MDAw MDAwMDAKWyAgICAzLjI0NTc2NV0gICBDTSA9IDAsIFduUiA9IDAsIFRuRCA9IDAsIFRhZ0FjY2Vz cyA9IDAKWyAgICAzLjI0NjM5OF0gICBHQ1MgPSAwLCBPdmVybGF5ID0gMCwgRGlydHlCaXQgPSAw LCBYcyA9IDAKWyAgICAzLjI0NzA2M10gWzAwMDAwMDAwMDAwMDA0YTBdIHVzZXIgYWRkcmVzcyBi dXQgYWN0aXZlX21tIGlzIHN3YXBwZXIKWyAgICAzLjI0Nzg2MF0gSW50ZXJuYWwgZXJyb3I6IE9v cHM6IDAwMDAwMDAwOTYwMDAwMDQgWyMxXSBTTVAKWyAgICAzLjI0ODU1OV0gTW9kdWxlcyBsaW5r ZWQgaW46ClsgICAgMy4yNDg5NDVdIENQVTogNCBQSUQ6IDExIENvbW06IGt3b3JrZXIvdTE2OjAg Tm90IHRhaW50ZWQgCjYuNS4wLXJjNy1uZXh0LTIwMjMwODIxKyAjMjIyNQpbICAgIDMuMjQ5OTcw XSBIYXJkd2FyZSBuYW1lOiBLb250cm9uIDMuNSItU0JDLWkxMjAwIChEVCkKWyAgICAzLjI1MDYx NF0gV29ya3F1ZXVlOiBldmVudHNfdW5ib3VuZCBkZWZlcnJlZF9wcm9iZV93b3JrX2Z1bmMKWyAg ICAzLjI1MTM0N10gcHN0YXRlOiA2MDQwMDAwOSAoblpDdiBkYWlmICtQQU4gLVVBTyAtVENPIC1E SVQgLVNTQlMgCkJUWVBFPS0tKQpbICAgIDMuMjUyMjIwXSBwYyA6IG10a19kcm1fY3J0Y19kbWFf ZGV2X2dldCsweDgvMHgxOApbICAgIDMuMjUyODI0XSBsciA6IG10a19kcm1fYmluZCsweDQ1OC8w eDU1OApbICAgIDMuMjUzMzI2XSBzcCA6IGZmZmY4MDAwODJiMjNhMjAKWyAgICAzLjI1Mzc0MV0g eDI5OiBmZmZmODAwMDgyYjIzYTIwIHgyODogZmZmZjAwMDAwMmM3ODg4MCB4Mjc6IApmZmZmODAw MDgxNjQ2NmQwClsgICAgMy4yNTQ2MzVdIHgyNjogZmZmZjAwMDAwMmM2ZjAxMCB4MjU6IDAwMDAw MDAwMDAwMDAwMDMgeDI0OiAKMDAwMDAwMDAwMDAwMDAwMApbICAgIDMuMjU1NTI5XSB4MjM6IGZm ZmYwMDAwMDJjNzg4ODAgeDIyOiAwMDAwMDAwMDAwMDAwMDAyIHgyMTogCjAwMDAwMDAwMDAwMDAw MDAKWyAgICAzLjI1NjQyM10geDIwOiBmZmZmMDAwMDA2NTE2ODAwIHgxOTogZmZmZjAwMDAwMmM3 ODg4MCB4MTg6IApmZmZmZmZmZmZmZmZmZmZmClsgICAgMy4yNTczMTddIHgxNzogNmY2MzIwNjU3 Mzc1NjE2MyB4MTY6IDY1NjIyMDMwMjA2Mzc0NzIgeDE1OiAKNjMyMDY3NmU2OTc0NjE2NQpbICAg IDMuMjU4MjExXSB4MTQ6IDcyNjMyMDc0NmY0ZTIwM2EgeDEzOiA2NzZlNjk3MzczNjk2ZDIwIHgx MjogCjcyNmYyMDY0NjU2YzYyNjEKWyAgICAzLjI1OTEwNl0geDExOiA3MzY5NjQyMDczNjkyMDM5 IHgxMDogZmZmZjgwMDA4Mjc1YzBjMCB4OSA6IApmZmZmODAwMDgwOTFlYmY4ClsgICAgMy4yNjAw MDBdIHg4IDogMDAwMDAwMDBmZmZmZWZmZiB4NyA6IGZmZmY4MDAwODI3NWMwYzAgeDYgOiAKODAw MDAwMDBmZmZmZjAwMApbICAgIDMuMjYwODk1XSB4NSA6IDAwMDAwMDAwMDAwMGJmZjQgeDQgOiAw MDAwMDAwMDAwMDAwMDAwIHgzIDogCmZmZmYwMDAwMDY1MTZhZTAKWyAgICAzLjI2MTc4OV0geDIg OiBmZmZmMDAwMDA2NTE2YWUwIHgxIDogMDAwMDAwMDAwMDAwMDAwMCB4MCA6IAowMDAwMDAwMDAw MDAwMDAwClsgICAgMy4yNjI2ODRdIENhbGwgdHJhY2U6ClsgICAgMy4yNjI5OTFdICBtdGtfZHJt X2NydGNfZG1hX2Rldl9nZXQrMHg4LzB4MTgKWyAgICAzLjI2MzU0OV0gIHRyeV90b19icmluZ191 cF9hZ2dyZWdhdGVfZGV2aWNlKzB4MTZjLzB4MWUwClsgICAgMy4yNjQyMjddICBfX2NvbXBvbmVu dF9hZGQrMHhhYy8weDE4MApbICAgIDMuMjY0NzA4XSAgY29tcG9uZW50X2FkZCsweDFjLzB4MzAK WyAgICAzLjI2NTE1OF0gIG10a19kaXNwX3JkbWFfcHJvYmUrMHgxN2MvMHgyNzAKWyAgICAzLjI2 NTY5NV0gIHBsYXRmb3JtX3Byb2JlKzB4NzAvMHhkMApbICAgIDMuMjY2MTU1XSAgcmVhbGx5X3By b2JlKzB4MTUwLzB4MmMwClsgICAgMy4yNjY2MTVdICBfX2RyaXZlcl9wcm9iZV9kZXZpY2UrMHg4 MC8weDE0MApbICAgIDMuMjY3MTYyXSAgZHJpdmVyX3Byb2JlX2RldmljZSsweDQ0LzB4MTcwClsg ICAgMy4yNjc2ODddICBfX2RldmljZV9hdHRhY2hfZHJpdmVyKzB4YzAvMHgxNDgKWyAgICAzLjI2 ODI0NV0gIGJ1c19mb3JfZWFjaF9kcnYrMHg4OC8weGYwClsgICAgMy4yNjg3MjddICBfX2Rldmlj ZV9hdHRhY2grMHhhNC8weDE5OApbICAgIDMuMjY5MjA4XSAgZGV2aWNlX2luaXRpYWxfcHJvYmUr MHgxYy8weDMwClsgICAgMy4yNjk3MzJdICBidXNfcHJvYmVfZGV2aWNlKzB4YjQvMHhjMApbICAg IDMuMjcwMjE0XSAgZGVmZXJyZWRfcHJvYmVfd29ya19mdW5jKzB4OTAvMHhkMApbICAgIDMuMjcw NzgzXSAgcHJvY2Vzc19vbmVfd29yaysweDE0NC8weDNhMApbICAgIDMuMjcxMjg5XSAgd29ya2Vy X3RocmVhZCsweDJhYy8weDRiOApbICAgIDMuMjcxNzYxXSAga3RocmVhZCsweGVjLzB4ZjgKWyAg ICAzLjI3MjE0NV0gIHJldF9mcm9tX2ZvcmsrMHgxMC8weDIwClsgICAgMy4yNzI1OTddIENvZGU6 IDgxNGY3ODU4IGZmZmY4MDAwIGFhMWUwM2U5IGQ1MDMyMDFmIChmOTQyNTAwMCkKWyAgICAzLjI3 MzM2MV0gLS0tWyBlbmQgdHJhY2UgMDAwMDAwMDAwMDAwMDAwMCBdLS0tCgpIZXJlJ3MgdGhlIGNv bXBsZXRlIGJvb3Rsb2c6Cmh0dHBzOi8vcGFzdGViaW4uY29tL3Jhdy9TZWtNWUJqNAoKQW55IGhl bHAgaXMgd2hlcmUgdG8gbG9vayBpcyBhcHByZWNpYXRlZC4KCj4+IFdoaWxlIHRoZSBtZWRpYXRl ay1kcGkgZHJpdmVyIGZpbmRzIHRoZSBEUCBwb3J0Ogo+PiBbICAgIDMuMTMxNjQ1XSBtZWRpYXRl ay1kcGkgMWMxMTMwMDAuZHAtaW50ZjogRm91bmQgYnJpZGdlIG5vZGU6IAo+PiAvc29jL2RwLXR4 QDFjNjAwMDAwCj4+IAo+PiBUaGUgcHJvYmluZyBvZiB0aGUgZURQIGlzIGRlZmVycmVkOgo+PiBb ICAgMTMuMjg5MDA5XSBwbGF0Zm9ybSAxYzAxNTAwMC5kcC1pbnRmOiBkZWZlcnJlZCBwcm9iZSBw ZW5kaW5nCj4+IAo+PiBTbyBJIGRvbid0IGtub3cgd2h5LCBidXQgdG8gbWFrZSBkcF9pbnRmMSB3 b3JrLCBpdCBzZWVtcyB0aGF0IGRwX2ludGYwCj4+IG11c3QgYmUgcHJvYmVkIHN1Y2Nlc3NmdWxs eS4gQWZ0ZXIgdGhpcyBwYXRjaCwgdGhlIGVkcCAod2hpY2ggaXMKPj4gY29ubmVjdGVkIHRvIHRo ZSBkcF9pbnRmMSkgcHJvYmUgd2lsbCByZXR1cm4gd2l0aCBhbiAtRU5PREVWIGFuZAo+PiB0aGUg cHJldmlvdXMgY2FsbCB0byBkZXZtX2RybV9icmlkZ2VfYWRkKCkgd2lsbCBiZSByb2xsZWQgYmFj ay4KPiAKPiBUaGUgTWVkaWFUZWsgRFJNIGRyaXZlciB1c2VzIHRoZSBjb21wb25lbnQgZnJhbWV3 b3JrLCBzbyBpdCB3YWl0cyBmb3IgCj4gYWxsIG9mIGl0cwo+IGNvbXBvbmVudHMgdG8gcmVnaXN0 ZXIgdW50aWwgaXQgYmluZHMgdGhlbSBhbGwgKHdoaWNoIGluY2x1ZGVzIGJvdGggCj4gaW50ZjAg YW5kCj4gaW50ZjEsIHVubGVzcyB0aGV5J3JlIGRpc2FibGVkIG9uIHRoZSBEVCkuCgpPaCB3aXRo ICJJIGRvbid0IGtub3cgd2h5LCBidXQgdG8gbWFrZSBkcF9pbnRmMSB3b3JrLi4iIEkgbWVhbnQg dGhlIApzcGxhdAphYm92ZS4gSSBmaWd1cmVkIHRoYXQgZHBpIHdvbid0IHByb2JlIGlmIGEgZGVw ZW5kZW5jeSBpcyBzdGlsbCBkZWZlcnJlZCAKOykKCi1taWNoYWVsCgo+IEl0J3MgdHJ1ZSB0aGF0 IGJlZm9yZSB0aGlzIHBhdGNoIG5vIHBhbmVsIGJlaW5nIGZvdW5kIGZvciBlZHAtdHggCj4gd291 bGRuJ3QKPiBwcmV2ZW50IGl0IHRvIHByb2JlLCBidXQgaXQgcmVhbGx5IHNob3VsZC4KPiAKPiBU aGFua3MsCj4gTsOtY29sYXMKPiAKPj4gCj4+IEJlZm9yZSB0aGlzIHBhdGNoLCBicmlkZ2VfYWRk KCkgd2FzIGNhbGxlZCBpbiBhbnkgY2FzZSAoaW4gdGhlCj4+IGVycm9yIGNhc2Ugd2l0aCBuZXh0 X2JyaWRnZSA9IE5VTEwpIGFuZCB0aGUgbWVkaWF0ZWstZHBpIHByb2JlZAo+PiBsaWtlIHRoYXQ6 Cj4+IAo+PiBbICAgIDMuMTIxMDExXSBtZWRpYXRlay1kcGkgMWMwMTUwMDAuZHAtaW50ZjogRm91 bmQgYnJpZGdlIG5vZGU6IAo+PiAvc29jL2VkcC10eEAxYzUwMDAwMAo+PiBbICAgIDMuMTIyMTEx XSBtZWRpYXRlay1kcGkgMWMxMTMwMDAuZHAtaW50ZjogRm91bmQgYnJpZGdlIG5vZGU6IAo+PiAv c29jL2RwLXR4QDFjNjAwMDAwCj4+IAo+PiBFdmVudHVhbGx5IHJlc3VsdGluZyBpbiBhIGZyYW1l YnVmZmVyIGRldmljZToKPj4gWyAgICA0LjQ1MTA4MV0gbWVkaWF0ZWstZHJtIG1lZGlhdGVrLWRy bS44LmF1dG86IFtkcm1dIGZiMDogCj4+IG1lZGlhdGVrZHJtZmIgZnJhbWUgYnVmZmVyIGRldmlj ZQo+PiAKPj4gCj4+IE5CLCBzb21laG93IHRoaXMgc2VyaWVzIGJyb2tlIHRoZSBpbml0aWFsIGRp c3BsYXkgb3V0cHV0LiBJIGFsd2F5cyAKPj4gaGF2ZQo+PiB0byByZXBsdWcgdGhlIERpc3BsYXlQ b3J0IHRvIGdldCBzb21lIG91dHB1dC4gSSdsbCBkaWcgZGVlcGVyIGludG8gCj4+IHRoYXQKPj4g bGF0ZXIuCj4+IAo+PiAuLgo+PiAKPj4gPiBAQCAtMjUxOSwyMSArMjU1MywxNCBAQCBzdGF0aWMg aW50IG10a19kcF9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQo+PiA+ICAJCXJl dHVybiBkZXZfZXJyX3Byb2JlKGRldiwgbXRrX2RwLT5pcnEsCj4+ID4gIAkJCQkgICAgICJmYWls ZWQgdG8gcmVxdWVzdCBkcCBpcnEgcmVzb3VyY2VcbiIpOwo+PiA+Cj4+ID4gLQltdGtfZHAtPm5l eHRfYnJpZGdlID0gZGV2bV9kcm1fb2ZfZ2V0X2JyaWRnZShkZXYsIGRldi0+b2Zfbm9kZSwgMSwg MCk7Cj4+ID4gLQlpZiAoSVNfRVJSKG10a19kcC0+bmV4dF9icmlkZ2UpICYmCj4+ID4gLQkgICAg UFRSX0VSUihtdGtfZHAtPm5leHRfYnJpZGdlKSA9PSAtRU5PREVWKQo+PiA+IC0JCW10a19kcC0+ bmV4dF9icmlkZ2UgPSBOVUxMOwo+PiAKPj4gSW4gbXkgY2FzZSwgdGhpcyBicmFuY2ggd2FzIHRh a2VuLgo+PiAKPj4gLW1pY2hhZWwKPj4gCj4+ID4gLQllbHNlIGlmIChJU19FUlIobXRrX2RwLT5u ZXh0X2JyaWRnZSkpCj4+ID4gLQkJcmV0dXJuIGRldl9lcnJfcHJvYmUoZGV2LCBQVFJfRVJSKG10 a19kcC0+bmV4dF9icmlkZ2UpLAo+PiA+IC0JCQkJICAgICAiRmFpbGVkIHRvIGdldCBicmlkZ2Vc biIpOwo+PiA+IC0KPj4gPiAgCXJldCA9IG10a19kcF9kdF9wYXJzZShtdGtfZHAsIHBkZXYpOwo+ PiA+ICAJaWYgKHJldCkKPj4gPiAgCQlyZXR1cm4gZGV2X2Vycl9wcm9iZShkZXYsIHJldCwgIkZh aWxlZCB0byBwYXJzZSBkdFxuIik7Cj4+ID4KPj4gPiAtCWRybV9kcF9hdXhfaW5pdCgmbXRrX2Rw LT5hdXgpOwo+PiA+ICAJbXRrX2RwLT5hdXgubmFtZSA9ICJhdXhfbXRrX2RwIjsKPj4gPiArCW10 a19kcC0+YXV4LmRldiA9IGRldjsKPj4gPiAgCW10a19kcC0+YXV4LnRyYW5zZmVyID0gbXRrX2Rw X2F1eF90cmFuc2ZlcjsKPj4gPiArCWRybV9kcF9hdXhfaW5pdCgmbXRrX2RwLT5hdXgpOwo+PiA+ Cj4+ID4gIAlzcGluX2xvY2tfaW5pdCgmbXRrX2RwLT5pcnFfdGhyZWFkX2xvY2spOwo+PiA+Cgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1hcm0t a2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcK aHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0ta2Vy bmVsCg==