From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kishon Vijay Abraham I Subject: Re: [PATCH v2] extcon: Split out extcon header file for consumer and provider device Date: Mon, 23 Oct 2017 10:35:54 +0530 Message-ID: References: <1507630671-23536-1-git-send-email-cw00.choi@samsung.com> <59DEE429.2000608@samsung.com> <59E6B90F.8000808@samsung.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <59E6B90F.8000808@samsung.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=m.gmane.org@lists.infradead.org To: Chanwoo Choi Cc: balbi@kernel.org, linux-usb@vger.kernel.org, heiko@sntech.de, b.zolnierkie@samsung.com, gregkh@linuxfoundation.org, yoshihiro.shimoda.uh@renesas.com, linux-pm@vger.kernel.org, sre@kernel.org, krzk@kernel.org, linux-kernel@vger.kernel.org, linux-renesas-soc@vger.kernel.org, linux-rockchip@lists.infradead.org, wens@csie.org, myungjoo.ham@samsung.com, chanwoo@kernel.org, maxime.ripard@free-electrons.com, lee.jones@linaro.org, linux-arm-kernel@lists.infradead.org List-Id: linux-rockchip.vger.kernel.org CgpPbiBXZWRuZXNkYXkgMTggT2N0b2JlciAyMDE3IDA3OjQ0IEFNLCBDaGFud29vIENob2kgd3Jv dGU6Cj4gR2VudGx5IFBpbmcuCj4gCj4gRGVhciBLaXNob24sCj4gCj4gQ291bGQgeW91IHBsZWFz ZSByZXZpZXcgdGhpcyBwYXRjaCBmb3IgJ2RyaXZlcnMvcGh5LyonPwoKc29ycnkgZm9yIHRoZSBk ZWxheS4uIGhlcmUgaXQgaXMKCkFja2VkLWJ5OiBLaXNob24gVmlqYXkgQWJyYWhhbSBJIDxraXNo b25AdGkuY29tPgo+IAo+IFJlZ2FyZHMsCj4gQ2hhbndvbyBDaG9pCj4gCj4gT24gMjAxN+uFhCAx MOyblCAxMuydvCAxMjo0MCwgQ2hhbndvbyBDaG9pIHdyb3RlOgo+PiBEZWFyIEtpc2hvbiwKPj4K Pj4gQ291bGQgeW91IHBsZWFzZSByZXZpZXcgdGhpcyBwYXRjaD8KPj4gQWZ0ZXIgdGhhdCwgSSds bCBtYWtlIHRoZSBpbW11dGFibGUgYnJhbmQgYW5kIHRoZW4gc2VuZCB0aGUgcHVsbCByZXF1ZXN0 Cj4+IGZvciBwb3dlcl9zdXBwbHksIG1mZCwgcGh5LCB1c2IgYW5kIGV4dGNvbiBmcmFtZXdvcmsu Cj4+Cj4+IE9uIDIwMTfrhYQgMTDsm5QgMTDsnbwgMTk6MTcsIENoYW53b28gQ2hvaSB3cm90ZToK Pj4+IFRoZSBleHRjb24gaGFzIHR3byB0eXBlIG9mIGV4dGNvbiBkZXZpY2VzIGFzIGZvbGxvd2lu Zy4KPj4+IC0gJ2V4dGNvbiBwcm92aWRlciBkZWl2Y2UnIGFkZHMgbmV3IGV4dGNvbiBkZXZpY2Ug YW5kIGRldGVjdCB0aGUKPj4+ICAgIHN0YXRlL3Byb3BlcnRpZXMgb2YgZXh0ZXJuYWwgY29ubmVj dG9yLiBBbHNvLCBpdCBub3RpZmllcyB0aGUKPj4+ICAgIHN0YXRlL3Byb3BlcnRpZXMgdG8gdGhl IGV4dGNvbiBjb25zdW1lciBkZXZpY2UuCj4+PiAtICdleHRjb24gY29uc3VtZXIgZGV2aWNlJyBn ZXRzIHRoZSBjaGFuZ2Ugc3RhdGUvcHJvcGVydGllcwo+Pj4gICAgZnJvbSBleHRjb24gcHJvdmlk ZXIgZGV2aWNlLgo+Pj4gUHJpb3IgdG8gdGhhdCwgaW5jbHVkZS9saW51eC9leHRjb24uaCBjb250 YWlucyBhbGwgZXhwb3J0ZWQgQVBJIGZvcgo+Pj4gYm90aCBwcm92aWRlciBhbmQgY29uc3VtZXIg ZGV2aWNlIGRyaXZlci4gVG8gY2xhcmlmeSB0aGUgbWVhbmluZyBvZgo+Pj4gaGVhZGVyIGZpbGUg YW5kIHRvIHJlbW92ZSB0aGUgd3JvbmcgdXNlLWNhc2Ugb24gY29uc3VtZXIgZGV2aWNlLAo+Pj4g dGhpcyBwYXRjaCBzZXBhcmF0ZXMgaW50byBleHRjb24uaCBhbmQgZXh0Y29uLXByb3ZpZGVyLmgu Cj4+Pgo+Pj4gW0Rlc2NyaXB0aW9uIGZvciBpbmNsdWRlL2xpbnV4L3tleHRjb24uaHxleHRjb24t cHJvdmlkZXIuaH1dCj4+PiAtIGV4dGNvbi5oIGluY2x1ZGVzIHRoZSBleHRjb24gQVBJIGFuZCBk YXRhIHN0cnVjdHVyZSBmb3IgZXh0Y29uIGNvbnN1bWVyCj4+PiAgIGRldmljZSBkcml2ZXIuIFRo aXMgaGVhZGVyIGZpbGUgY29udGFpbnMgdGhlIGZvbGxvd2luZyBBUElzOgo+Pj4gICA6IFJlZ2lz dGVyL3VucmVnaXN0ZXIgdGhlIG5vdGlmaWVyIHRvIGNhdGNoIHRoZSBjaGFuZ2Ugb2YgZXh0Y29u IGRldmljZQo+Pj4gICA6IEdldCB0aGUgZXh0Y29uIGRldmljZSBpbnN0YW5jZQo+Pj4gICA6IEdl dCB0aGUgZXh0Y29uIGRldmljZSBuYW1lCj4+PiAgIDogR2V0IHRoZSBzdGF0ZSBvZiBlYWNoIGV4 dGVybmFsIGNvbm5lY3Rvcgo+Pj4gICA6IEdldCB0aGUgcHJvcGVydHkgdmFsdWUgb2YgZWFjaCBl eHRlcm5hbCBjb25uZWN0b3IKPj4+ICAgOiBHZXQgdGhlIHByb3BlcnR5IGNhcGFiaWxpdHkgb2Yg ZWFjaCBleHRlcm5hbCBjb25uZWN0b3IKPj4+Cj4+PiAtIGV4dGNvbi1wcm92aWRlci5oIGluY2x1 ZGVzIHRoZSBleHRjb24gQVBJIGFuZCBkYXRhIHN0cnVjdHVyZSBmb3IgZXh0Y29uCj4+PiAgIHBy b3ZpZGVyIGRldmljZSBkcml2ZXIuIFRoaXMgaGVhZGVyIGZpbGUgY29udGFpbnMgdGhlIGZvbGxv d2luZyBBUElzOgo+Pj4gICA6IEluY2x1ZGUgJ2luY2x1ZGUvbGludXgvZXh0Y29uLmgnCj4+PiAg IDogQWxsb2NhdGUgdGhlIG1lbW9yeSBmb3IgZXh0Y29uIGRldmljZSBpbnN0YW5jZQo+Pj4gICA6 IFJlZ2lzdGVyL3VucmVnaXN0ZXIgZXh0Y29uIGRldmljZQo+Pj4gICA6IFNldCB0aGUgc3RhdGUg b2YgZWFjaCBleHRlcm5hbCBjb25uZWN0b3IKPj4+ICAgOiBTZXQgdGhlIHByb3BlcnR5IHZhbHVl IG9mIGVhY2ggZXh0ZXJuYWwgY29ubmVjdG9yCj4+PiAgIDogU2V0IHRoZSBwcm9wZXJ0eSBjYXBh YmlsaXR5IG9mIGVhY2ggZXh0ZXJuYWwgY29ubmVjdG9yCj4+Pgo+Pj4gQ2M6IEZlbGlwZSBCYWxi aSA8YmFsYmlAa2VybmVsLm9yZz4KPj4+IENjOiBLaXNob24gVmlqYXkgQWJyYWhhbSBJIDxraXNo b25AdGkuY29tPgo+Pj4gQ2M6IEdyZWcgS3JvYWgtSGFydG1hbiA8Z3JlZ2toQGxpbnV4Zm91bmRh dGlvbi5vcmc+Cj4+PiBBY2tlZC1ieTogU2ViYXN0aWFuIFJlaWNoZWwgPHNlYmFzdGlhbi5yZWlj aGVsQGNvbGxhYm9yYS5jby51az4KPj4+IEFja2VkLWJ5OiBDaGVuLVl1IFRzYWkgPHdlbnNAY3Np ZS5vcmc+Cj4+PiBBY2tlZC1ieTogQ2hhcmxlcyBLZWVwYXggPGNrZWVwYXhAb3BlbnNvdXJjZS5j aXJydXMuY29tPgo+Pj4gQWNrZWQtYnk6IExlZSBKb25lcyA8bGVlLmpvbmVzQGxpbmFyby5vcmc+ Cj4+PiBTaWduZWQtb2ZmLWJ5OiBDaGFud29vIENob2kgPGN3MDAuY2hvaUBzYW1zdW5nLmNvbT4K Pj4+IC0tLQo+Pj4gQ2hhbmdlcyBmcm9tIHYxOgo+Pj4gLSBEb24ndCB0b3VjaCBkcml2ZXJzL3Vz Yi9yZW5lc2FzX3VzYmhzL2NvbW1vbi5oLgo+Pj4gLSBBZGQgYWNrZWQtYnkgZnJvbSBTZWJhc3Rp YW4gUmVpY2hlbCAoZm9yIGRyaXZlcnMvcG93ZXIvc3VwcGx5LykKPj4+IC0gQWRkIGFja2VkLWJ5 IGZyb20gQ2hlbi1ZdSBUc2FpIChmb3IgcGh5LXN1bjRpLXVzYi5jICYgZXh0Y29uLWF4cDI4OC5j KQo+Pj4gLSBBZGQgYWNrZWQtYnkgZnJvbSBDaGFybGVzIEtlZXBheCAoZm9yIGRyaXZlcnMvZXh0 Y29uL2V4dGNvbi1hcml6b25hLmMpCj4+PiAtIEFkZCBhY2tlZC1ieSBmcm9tIExlZSBKb25lcyAo Zm8gaW5jbHVkZS9saW51eC9tZmQvcGFsbWFzLmgpCj4+Pgo+Pj4gIGRyaXZlcnMvZXh0Y29uL2V4 dGNvbi1hZGMtamFjay5jICAgICAgICAgICAgICB8ICAgMiArLQo+Pj4gIGRyaXZlcnMvZXh0Y29u L2V4dGNvbi1hcml6b25hLmMgICAgICAgICAgICAgICB8ICAgMiArLQo+Pj4gIGRyaXZlcnMvZXh0 Y29uL2V4dGNvbi1heHAyODguYyAgICAgICAgICAgICAgICB8ICAgMiArLQo+Pj4gIGRyaXZlcnMv ZXh0Y29uL2V4dGNvbi1ncGlvLmMgICAgICAgICAgICAgICAgICB8ICAgMiArLQo+Pj4gIGRyaXZl cnMvZXh0Y29uL2V4dGNvbi1pbnRlbC1jaHQtd2MuYyAgICAgICAgICB8ICAgMiArLQo+Pj4gIGRy aXZlcnMvZXh0Y29uL2V4dGNvbi1pbnRlbC1pbnQzNDk2LmMgICAgICAgICB8ICAgMiArLQo+Pj4g IGRyaXZlcnMvZXh0Y29uL2V4dGNvbi1tYXgxNDU3Ny5jICAgICAgICAgICAgICB8ICAgMiArLQo+ Pj4gIGRyaXZlcnMvZXh0Y29uL2V4dGNvbi1tYXgzMzU1LmMgICAgICAgICAgICAgICB8ICAgMiAr LQo+Pj4gIGRyaXZlcnMvZXh0Y29uL2V4dGNvbi1tYXg3NzY5My5jICAgICAgICAgICAgICB8ICAg MiArLQo+Pj4gIGRyaXZlcnMvZXh0Y29uL2V4dGNvbi1tYXg3Nzg0My5jICAgICAgICAgICAgICB8 ICAgMiArLQo+Pj4gIGRyaXZlcnMvZXh0Y29uL2V4dGNvbi1tYXg4OTk3LmMgICAgICAgICAgICAg ICB8ICAgMiArLQo+Pj4gIGRyaXZlcnMvZXh0Y29uL2V4dGNvbi1xY29tLXNwbWktbWlzYy5jICAg ICAgICB8ICAgMiArLQo+Pj4gIGRyaXZlcnMvZXh0Y29uL2V4dGNvbi1ydDg5NzNhLmMgICAgICAg ICAgICAgICB8ICAgMiArLQo+Pj4gIGRyaXZlcnMvZXh0Y29uL2V4dGNvbi1zbTU1MDIuYyAgICAg ICAgICAgICAgICB8ICAgMiArLQo+Pj4gIGRyaXZlcnMvZXh0Y29uL2V4dGNvbi11c2ItZ3Bpby5j ICAgICAgICAgICAgICB8ICAgMiArLQo+Pj4gIGRyaXZlcnMvZXh0Y29uL2V4dGNvbi11c2JjLWNy b3MtZWMuYyAgICAgICAgICB8ICAgMiArLQo+Pj4gIGRyaXZlcnMvZXh0Y29uL2V4dGNvbi5oICAg ICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQo+Pj4gIGRyaXZlcnMvcGh5L2FsbHdpbm5lci9w aHktc3VuNGktdXNiLmMgICAgICAgICB8ICAgMiArLQo+Pj4gIGRyaXZlcnMvcGh5L2Jyb2FkY29t L3BoeS1iY20tbnMyLXVzYmRyZC5jICAgICB8ICAgMiArLQo+Pj4gIGRyaXZlcnMvcGh5L3JlbmVz YXMvcGh5LXJjYXItZ2VuMy11c2IyLmMgICAgICB8ICAgMiArLQo+Pj4gIGRyaXZlcnMvcGh5L3Jv Y2tjaGlwL3BoeS1yb2NrY2hpcC1pbm5vLXVzYjIuYyB8ICAgMiArLQo+Pj4gIGRyaXZlcnMvcG93 ZXIvc3VwcGx5L3Fjb21fc21iYi5jICAgICAgICAgICAgICB8ICAgMiArLQo+Pj4gIGRyaXZlcnMv dXNiL2dhZGdldC91ZGMvcmVuZXNhc191c2IzLmMgICAgICAgICB8ICAgMiArLQo+Pj4gIGRyaXZl cnMvdXNiL3BoeS9waHktdGFodm8uYyAgICAgICAgICAgICAgICAgICB8ICAgMiArLQo+Pj4gIGlu Y2x1ZGUvbGludXgvZXh0Y29uLXByb3ZpZGVyLmggICAgICAgICAgICAgICB8IDE0MiArKysrKysr KysrKysrKysrKysrKysrKysrKwo+Pj4gIGluY2x1ZGUvbGludXgvZXh0Y29uLmggICAgICAgICAg ICAgICAgICAgICAgICB8IDEwOSArLS0tLS0tLS0tLS0tLS0tLS0tLQo+Pj4gIGluY2x1ZGUvbGlu dXgvbWZkL3BhbG1hcy5oICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQo+Pj4gIDI3IGZpbGVz IGNoYW5nZWQsIDE3MiBpbnNlcnRpb25zKCspLCAxMjkgZGVsZXRpb25zKC0pCj4+PiAgY3JlYXRl IG1vZGUgMTAwNjQ0IGluY2x1ZGUvbGludXgvZXh0Y29uLXByb3ZpZGVyLmgKPj4+Cj4+PiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9leHRjb24vZXh0Y29uLWFkYy1qYWNrLmMgYi9kcml2ZXJzL2V4dGNv bi9leHRjb24tYWRjLWphY2suYwo+Pj4gaW5kZXggNmY2NTM3YWIwYTc5Li4zODc3ZDg2Yzc0NmEg MTAwNjQ0Cj4+PiAtLS0gYS9kcml2ZXJzL2V4dGNvbi9leHRjb24tYWRjLWphY2suYwo+Pj4gKysr IGIvZHJpdmVycy9leHRjb24vZXh0Y29uLWFkYy1qYWNrLmMKPj4+IEBAIC0yNiw3ICsyNiw3IEBA Cj4+PiAgI2luY2x1ZGUgPGxpbnV4L3dvcmtxdWV1ZS5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9p aW8vY29uc3VtZXIuaD4KPj4+ICAjaW5jbHVkZSA8bGludXgvZXh0Y29uL2V4dGNvbi1hZGMtamFj ay5oPgo+Pj4gLSNpbmNsdWRlIDxsaW51eC9leHRjb24uaD4KPj4+ICsjaW5jbHVkZSA8bGludXgv ZXh0Y29uLXByb3ZpZGVyLmg+Cj4+PiAgCj4+PiAgLyoqCj4+PiAgICogc3RydWN0IGFkY19qYWNr X2RhdGEgLSBpbnRlcm5hbCBkYXRhIGZvciBhZGNfamFjayBkZXZpY2UgZHJpdmVyCj4+PiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9leHRjb24vZXh0Y29uLWFyaXpvbmEuYyBiL2RyaXZlcnMvZXh0Y29u L2V4dGNvbi1hcml6b25hLmMKPj4+IGluZGV4IGY4NGRhNGExNzcyNC4uZGEwZTliYzQyNjJmIDEw MDY0NAo+Pj4gLS0tIGEvZHJpdmVycy9leHRjb24vZXh0Y29uLWFyaXpvbmEuYwo+Pj4gKysrIGIv ZHJpdmVycy9leHRjb24vZXh0Y29uLWFyaXpvbmEuYwo+Pj4gQEAgLTI3LDcgKzI3LDcgQEAKPj4+ ICAjaW5jbHVkZSA8bGludXgvcG1fcnVudGltZS5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9wcm9w ZXJ0eS5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9yZWd1bGF0b3IvY29uc3VtZXIuaD4KPj4+IC0j aW5jbHVkZSA8bGludXgvZXh0Y29uLmg+Cj4+PiArI2luY2x1ZGUgPGxpbnV4L2V4dGNvbi1wcm92 aWRlci5oPgo+Pj4gIAo+Pj4gICNpbmNsdWRlIDxzb3VuZC9zb2MuaD4KPj4+ICAKPj4+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2V4dGNvbi9leHRjb24tYXhwMjg4LmMgYi9kcml2ZXJzL2V4dGNvbi9l eHRjb24tYXhwMjg4LmMKPj4+IGluZGV4IGY0ZmQwM2U1OGUzNy4uOTgxZmJhNTZiYzE4IDEwMDY0 NAo+Pj4gLS0tIGEvZHJpdmVycy9leHRjb24vZXh0Y29uLWF4cDI4OC5jCj4+PiArKysgYi9kcml2 ZXJzL2V4dGNvbi9leHRjb24tYXhwMjg4LmMKPj4+IEBAIC0yMiw3ICsyMiw3IEBACj4+PiAgI2lu Y2x1ZGUgPGxpbnV4L3BsYXRmb3JtX2RldmljZS5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9wcm9w ZXJ0eS5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9ub3RpZmllci5oPgo+Pj4gLSNpbmNsdWRlIDxs aW51eC9leHRjb24uaD4KPj4+ICsjaW5jbHVkZSA8bGludXgvZXh0Y29uLXByb3ZpZGVyLmg+Cj4+ PiAgI2luY2x1ZGUgPGxpbnV4L3JlZ21hcC5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9ncGlvLmg+ Cj4+PiAgI2luY2x1ZGUgPGxpbnV4L2dwaW8vY29uc3VtZXIuaD4KPj4+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2V4dGNvbi9leHRjb24tZ3Bpby5jIGIvZHJpdmVycy9leHRjb24vZXh0Y29uLWdwaW8u Ywo+Pj4gaW5kZXggZWJlZDIyZjIyZDc1Li5hYjc3MGFkY2NhN2UgMTAwNjQ0Cj4+PiAtLS0gYS9k cml2ZXJzL2V4dGNvbi9leHRjb24tZ3Bpby5jCj4+PiArKysgYi9kcml2ZXJzL2V4dGNvbi9leHRj b24tZ3Bpby5jCj4+PiBAQCAtMTcsNyArMTcsNyBAQAo+Pj4gICAqIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCj4+PiAgICovCj4+PiAgCj4+PiAtI2luY2x1ZGUg PGxpbnV4L2V4dGNvbi5oPgo+Pj4gKyNpbmNsdWRlIDxsaW51eC9leHRjb24tcHJvdmlkZXIuaD4K Pj4+ICAjaW5jbHVkZSA8bGludXgvZXh0Y29uL2V4dGNvbi1ncGlvLmg+Cj4+PiAgI2luY2x1ZGUg PGxpbnV4L2dwaW8uaD4KPj4+ICAjaW5jbHVkZSA8bGludXgvZ3Bpby9jb25zdW1lci5oPgo+Pj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZXh0Y29uL2V4dGNvbi1pbnRlbC1jaHQtd2MuYyBiL2RyaXZl cnMvZXh0Y29uL2V4dGNvbi1pbnRlbC1jaHQtd2MuYwo+Pj4gaW5kZXggOTFhMDAyMzA3NGFmLi43 YzRiYzhjNDRjM2YgMTAwNjQ0Cj4+PiAtLS0gYS9kcml2ZXJzL2V4dGNvbi9leHRjb24taW50ZWwt Y2h0LXdjLmMKPj4+ICsrKyBiL2RyaXZlcnMvZXh0Y29uL2V4dGNvbi1pbnRlbC1jaHQtd2MuYwo+ Pj4gQEAgLTE1LDcgKzE1LDcgQEAKPj4+ICAgKiBtb3JlIGRldGFpbHMuCj4+PiAgICovCj4+PiAg Cj4+PiAtI2luY2x1ZGUgPGxpbnV4L2V4dGNvbi5oPgo+Pj4gKyNpbmNsdWRlIDxsaW51eC9leHRj b24tcHJvdmlkZXIuaD4KPj4+ICAjaW5jbHVkZSA8bGludXgvaW50ZXJydXB0Lmg+Cj4+PiAgI2lu Y2x1ZGUgPGxpbnV4L2tlcm5lbC5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9tZmQvaW50ZWxfc29j X3BtaWMuaD4KPj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2V4dGNvbi9leHRjb24taW50ZWwtaW50 MzQ5Ni5jIGIvZHJpdmVycy9leHRjb24vZXh0Y29uLWludGVsLWludDM0OTYuYwo+Pj4gaW5kZXgg MWE0NWU3NDU3MTdkLi5jODY5MWI1YTljYjAgMTAwNjQ0Cj4+PiAtLS0gYS9kcml2ZXJzL2V4dGNv bi9leHRjb24taW50ZWwtaW50MzQ5Ni5jCj4+PiArKysgYi9kcml2ZXJzL2V4dGNvbi9leHRjb24t aW50ZWwtaW50MzQ5Ni5jCj4+PiBAQCAtMTksNyArMTksNyBAQAo+Pj4gICAqLwo+Pj4gIAo+Pj4g ICNpbmNsdWRlIDxsaW51eC9hY3BpLmg+Cj4+PiAtI2luY2x1ZGUgPGxpbnV4L2V4dGNvbi5oPgo+ Pj4gKyNpbmNsdWRlIDxsaW51eC9leHRjb24tcHJvdmlkZXIuaD4KPj4+ICAjaW5jbHVkZSA8bGlu dXgvZ3Bpby5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9pbnRlcnJ1cHQuaD4KPj4+ICAjaW5jbHVk ZSA8bGludXgvbW9kdWxlLmg+Cj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9leHRjb24vZXh0Y29u LW1heDE0NTc3LmMgYi9kcml2ZXJzL2V4dGNvbi9leHRjb24tbWF4MTQ1NzcuYwo+Pj4gaW5kZXgg ZjY0MTRiN2ZhNWJjLi42YzJjOTk5NmViNzEgMTAwNjQ0Cj4+PiAtLS0gYS9kcml2ZXJzL2V4dGNv bi9leHRjb24tbWF4MTQ1NzcuYwo+Pj4gKysrIGIvZHJpdmVycy9leHRjb24vZXh0Y29uLW1heDE0 NTc3LmMKPj4+IEBAIC0yMyw3ICsyMyw3IEBACj4+PiAgI2luY2x1ZGUgPGxpbnV4L3BsYXRmb3Jt X2RldmljZS5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9tZmQvbWF4MTQ1NzcuaD4KPj4+ICAjaW5j bHVkZSA8bGludXgvbWZkL21heDE0NTc3LXByaXZhdGUuaD4KPj4+IC0jaW5jbHVkZSA8bGludXgv ZXh0Y29uLmg+Cj4+PiArI2luY2x1ZGUgPGxpbnV4L2V4dGNvbi1wcm92aWRlci5oPgo+Pj4gIAo+ Pj4gICNkZWZpbmUJREVMQVlfTVNfREVGQVVMVAkJMTcwMDAJCS8qIHVuaXQ6IG1pbGxpc2Vjb25k ICovCj4+PiAgCj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9leHRjb24vZXh0Y29uLW1heDMzNTUu YyBiL2RyaXZlcnMvZXh0Y29uL2V4dGNvbi1tYXgzMzU1LmMKPj4+IGluZGV4IDUzM2UxNmE5NTJi OC4uMGFhNDEwODM2ZjRlIDEwMDY0NAo+Pj4gLS0tIGEvZHJpdmVycy9leHRjb24vZXh0Y29uLW1h eDMzNTUuYwo+Pj4gKysrIGIvZHJpdmVycy9leHRjb24vZXh0Y29uLW1heDMzNTUuYwo+Pj4gQEAg LTksNyArOSw3IEBACj4+PiAgICogbWF5IGJlIGNvcGllZCwgZGlzdHJpYnV0ZWQsIGFuZCBtb2Rp ZmllZCB1bmRlciB0aG9zZSB0ZXJtcy4KPj4+ICAgKi8KPj4+ICAKPj4+IC0jaW5jbHVkZSA8bGlu dXgvZXh0Y29uLmg+Cj4+PiArI2luY2x1ZGUgPGxpbnV4L2V4dGNvbi1wcm92aWRlci5oPgo+Pj4g ICNpbmNsdWRlIDxsaW51eC9ncGlvLmg+Cj4+PiAgI2luY2x1ZGUgPGxpbnV4L2dwaW8vY29uc3Vt ZXIuaD4KPj4+ICAjaW5jbHVkZSA8bGludXgvaW50ZXJydXB0Lmg+Cj4+PiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9leHRjb24vZXh0Y29uLW1heDc3NjkzLmMgYi9kcml2ZXJzL2V4dGNvbi9leHRjb24t bWF4Nzc2OTMuYwo+Pj4gaW5kZXggN2E1ODU2ODA5MDQ3Li42NDM0MTEwNjZhZDkgMTAwNjQ0Cj4+ PiAtLS0gYS9kcml2ZXJzL2V4dGNvbi9leHRjb24tbWF4Nzc2OTMuYwo+Pj4gKysrIGIvZHJpdmVy cy9leHRjb24vZXh0Y29uLW1heDc3NjkzLmMKPj4+IEBAIC0yNiw3ICsyNiw3IEBACj4+PiAgI2lu Y2x1ZGUgPGxpbnV4L21mZC9tYXg3NzY5My5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9tZmQvbWF4 Nzc2OTMtY29tbW9uLmg+Cj4+PiAgI2luY2x1ZGUgPGxpbnV4L21mZC9tYXg3NzY5My1wcml2YXRl Lmg+Cj4+PiAtI2luY2x1ZGUgPGxpbnV4L2V4dGNvbi5oPgo+Pj4gKyNpbmNsdWRlIDxsaW51eC9l eHRjb24tcHJvdmlkZXIuaD4KPj4+ICAjaW5jbHVkZSA8bGludXgvcmVnbWFwLmg+Cj4+PiAgI2lu Y2x1ZGUgPGxpbnV4L2lycWRvbWFpbi5oPgo+Pj4gIAo+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv ZXh0Y29uL2V4dGNvbi1tYXg3Nzg0My5jIGIvZHJpdmVycy9leHRjb24vZXh0Y29uLW1heDc3ODQz LmMKPj4+IGluZGV4IDZlNzIyZDU1MmNmMS4uMjhmMjUxZmYwZmEyIDEwMDY0NAo+Pj4gLS0tIGEv ZHJpdmVycy9leHRjb24vZXh0Y29uLW1heDc3ODQzLmMKPj4+ICsrKyBiL2RyaXZlcnMvZXh0Y29u L2V4dGNvbi1tYXg3Nzg0My5jCj4+PiBAQCAtMTEsNyArMTEsNyBAQAo+Pj4gICAqIChhdCB5b3Vy IG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCj4+PiAgICovCj4+PiAgCj4+PiAtI2luY2x1ZGUg PGxpbnV4L2V4dGNvbi5oPgo+Pj4gKyNpbmNsdWRlIDxsaW51eC9leHRjb24tcHJvdmlkZXIuaD4K Pj4+ICAjaW5jbHVkZSA8bGludXgvaTJjLmg+Cj4+PiAgI2luY2x1ZGUgPGxpbnV4L2ludGVycnVw dC5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9rZXJuZWwuaD4KPj4+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2V4dGNvbi9leHRjb24tbWF4ODk5Ny5jIGIvZHJpdmVycy9leHRjb24vZXh0Y29uLW1heDg5 OTcuYwo+Pj4gaW5kZXggNGEwNjEyZmI5YzA3Li44MTUyNzkwZDcyZTEgMTAwNjQ0Cj4+PiAtLS0g YS9kcml2ZXJzL2V4dGNvbi9leHRjb24tbWF4ODk5Ny5jCj4+PiArKysgYi9kcml2ZXJzL2V4dGNv bi9leHRjb24tbWF4ODk5Ny5jCj4+PiBAQCAtMjUsNyArMjUsNyBAQAo+Pj4gICNpbmNsdWRlIDxs aW51eC9rb2JqZWN0Lmg+Cj4+PiAgI2luY2x1ZGUgPGxpbnV4L21mZC9tYXg4OTk3Lmg+Cj4+PiAg I2luY2x1ZGUgPGxpbnV4L21mZC9tYXg4OTk3LXByaXZhdGUuaD4KPj4+IC0jaW5jbHVkZSA8bGlu dXgvZXh0Y29uLmg+Cj4+PiArI2luY2x1ZGUgPGxpbnV4L2V4dGNvbi1wcm92aWRlci5oPgo+Pj4g ICNpbmNsdWRlIDxsaW51eC9pcnFkb21haW4uaD4KPj4+ICAKPj4+ICAjZGVmaW5lCURFVl9OQU1F CQkJIm1heDg5OTctbXVpYyIKPj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2V4dGNvbi9leHRjb24t cWNvbS1zcG1pLW1pc2MuYyBiL2RyaXZlcnMvZXh0Y29uL2V4dGNvbi1xY29tLXNwbWktbWlzYy5j Cj4+PiBpbmRleCBiOGNkZTA5NmE4MDguLjY2MGJiZjE2M2JmNSAxMDA2NDQKPj4+IC0tLSBhL2Ry aXZlcnMvZXh0Y29uL2V4dGNvbi1xY29tLXNwbWktbWlzYy5jCj4+PiArKysgYi9kcml2ZXJzL2V4 dGNvbi9leHRjb24tcWNvbS1zcG1pLW1pc2MuYwo+Pj4gQEAgLTE1LDcgKzE1LDcgQEAKPj4+ICAg KiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgo+Pj4gICAqLwo+ Pj4gIAo+Pj4gLSNpbmNsdWRlIDxsaW51eC9leHRjb24uaD4KPj4+ICsjaW5jbHVkZSA8bGludXgv ZXh0Y29uLXByb3ZpZGVyLmg+Cj4+PiAgI2luY2x1ZGUgPGxpbnV4L2luaXQuaD4KPj4+ICAjaW5j bHVkZSA8bGludXgvaW50ZXJydXB0Lmg+Cj4+PiAgI2luY2x1ZGUgPGxpbnV4L2tlcm5lbC5oPgo+ Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZXh0Y29uL2V4dGNvbi1ydDg5NzNhLmMgYi9kcml2ZXJz L2V4dGNvbi9leHRjb24tcnQ4OTczYS5jCj4+PiBpbmRleCBlYWEzNTVlN2Q5ZTQuLmUwNTliZDVm MjA0MSAxMDA2NDQKPj4+IC0tLSBhL2RyaXZlcnMvZXh0Y29uL2V4dGNvbi1ydDg5NzNhLmMKPj4+ ICsrKyBiL2RyaXZlcnMvZXh0Y29uL2V4dGNvbi1ydDg5NzNhLmMKPj4+IEBAIC0yMCw3ICsyMCw3 IEBACj4+PiAgI2luY2x1ZGUgPGxpbnV4L3BsYXRmb3JtX2RldmljZS5oPgo+Pj4gICNpbmNsdWRl IDxsaW51eC9yZWdtYXAuaD4KPj4+ICAjaW5jbHVkZSA8bGludXgvc2xhYi5oPgo+Pj4gLSNpbmNs dWRlIDxsaW51eC9leHRjb24uaD4KPj4+ICsjaW5jbHVkZSA8bGludXgvZXh0Y29uLXByb3ZpZGVy Lmg+Cj4+PiAgCj4+PiAgI2luY2x1ZGUgImV4dGNvbi1ydDg5NzNhLmgiCj4+PiAgCj4+PiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9leHRjb24vZXh0Y29uLXNtNTUwMi5jIGIvZHJpdmVycy9leHRjb24v ZXh0Y29uLXNtNTUwMi5jCj4+PiBpbmRleCAxMDZlZjAyOTdiNTMuLjBjZmI1YTNlZmRmNiAxMDA2 NDQKPj4+IC0tLSBhL2RyaXZlcnMvZXh0Y29uL2V4dGNvbi1zbTU1MDIuYwo+Pj4gKysrIGIvZHJp dmVycy9leHRjb24vZXh0Y29uLXNtNTUwMi5jCj4+PiBAQCAtMTksNyArMTksNyBAQAo+Pj4gICNp bmNsdWRlIDxsaW51eC9wbGF0Zm9ybV9kZXZpY2UuaD4KPj4+ICAjaW5jbHVkZSA8bGludXgvcmVn bWFwLmg+Cj4+PiAgI2luY2x1ZGUgPGxpbnV4L3NsYWIuaD4KPj4+IC0jaW5jbHVkZSA8bGludXgv ZXh0Y29uLmg+Cj4+PiArI2luY2x1ZGUgPGxpbnV4L2V4dGNvbi1wcm92aWRlci5oPgo+Pj4gIAo+ Pj4gICNpbmNsdWRlICJleHRjb24tc201NTAyLmgiCj4+PiAgCj4+PiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9leHRjb24vZXh0Y29uLXVzYi1ncGlvLmMgYi9kcml2ZXJzL2V4dGNvbi9leHRjb24tdXNi LWdwaW8uYwo+Pj4gaW5kZXggOWM5MjViMDViN2FhLi41Mzc2Mjg2NGE5ZjcgMTAwNjQ0Cj4+PiAt LS0gYS9kcml2ZXJzL2V4dGNvbi9leHRjb24tdXNiLWdwaW8uYwo+Pj4gKysrIGIvZHJpdmVycy9l eHRjb24vZXh0Y29uLXVzYi1ncGlvLmMKPj4+IEBAIC0xNCw3ICsxNCw3IEBACj4+PiAgICogR05V IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KPj4+ICAgKi8KPj4+ICAK Pj4+IC0jaW5jbHVkZSA8bGludXgvZXh0Y29uLmg+Cj4+PiArI2luY2x1ZGUgPGxpbnV4L2V4dGNv bi1wcm92aWRlci5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9ncGlvLmg+Cj4+PiAgI2luY2x1ZGUg PGxpbnV4L2dwaW8vY29uc3VtZXIuaD4KPj4+ICAjaW5jbHVkZSA8bGludXgvaW5pdC5oPgo+Pj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZXh0Y29uL2V4dGNvbi11c2JjLWNyb3MtZWMuYyBiL2RyaXZl cnMvZXh0Y29uL2V4dGNvbi11c2JjLWNyb3MtZWMuYwo+Pj4gaW5kZXggNTk4OTU2ZjFkY2FlLi42 MTg3ZjczMWIyOWQgMTAwNjQ0Cj4+PiAtLS0gYS9kcml2ZXJzL2V4dGNvbi9leHRjb24tdXNiYy1j cm9zLWVjLmMKPj4+ICsrKyBiL2RyaXZlcnMvZXh0Y29uL2V4dGNvbi11c2JjLWNyb3MtZWMuYwo+ Pj4gQEAgLTE0LDcgKzE0LDcgQEAKPj4+ICAgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBm b3IgbW9yZSBkZXRhaWxzLgo+Pj4gICAqLwo+Pj4gIAo+Pj4gLSNpbmNsdWRlIDxsaW51eC9leHRj b24uaD4KPj4+ICsjaW5jbHVkZSA8bGludXgvZXh0Y29uLXByb3ZpZGVyLmg+Cj4+PiAgI2luY2x1 ZGUgPGxpbnV4L2tlcm5lbC5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9tZmQvY3Jvc19lYy5oPgo+ Pj4gICNpbmNsdWRlIDxsaW51eC9tb2R1bGUuaD4KPj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2V4 dGNvbi9leHRjb24uaCBiL2RyaXZlcnMvZXh0Y29uL2V4dGNvbi5oCj4+PiBpbmRleCBkZGRkZGNm YTA1ODcuLmNjMWI0MzZlYjY2YSAxMDA2NDQKPj4+IC0tLSBhL2RyaXZlcnMvZXh0Y29uL2V4dGNv bi5oCj4+PiArKysgYi9kcml2ZXJzL2V4dGNvbi9leHRjb24uaAo+Pj4gQEAgLTEsNyArMSw3IEBA Cj4+PiAgI2lmbmRlZiBfX0xJTlVYX0VYVENPTl9JTlRFUk5BTF9IX18KPj4+ICAjZGVmaW5lIF9f TElOVVhfRVhUQ09OX0lOVEVSTkFMX0hfXwo+Pj4gIAo+Pj4gLSNpbmNsdWRlIDxsaW51eC9leHRj b24uaD4KPj4+ICsjaW5jbHVkZSA8bGludXgvZXh0Y29uLXByb3ZpZGVyLmg+Cj4+PiAgCj4+PiAg LyoqCj4+PiAgICogc3RydWN0IGV4dGNvbl9kZXYgLSBBbiBleHRjb24gZGV2aWNlIHJlcHJlc2Vu dHMgb25lIGV4dGVybmFsIGNvbm5lY3Rvci4KPj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3BoeS9h bGx3aW5uZXIvcGh5LXN1bjRpLXVzYi5jIGIvZHJpdmVycy9waHkvYWxsd2lubmVyL3BoeS1zdW40 aS11c2IuYwo+Pj4gaW5kZXggMTE2MWUxMWZiM2NmLi5lZjM0Zjk3ZjIxNGIgMTAwNjQ0Cj4+PiAt LS0gYS9kcml2ZXJzL3BoeS9hbGx3aW5uZXIvcGh5LXN1bjRpLXVzYi5jCj4+PiArKysgYi9kcml2 ZXJzL3BoeS9hbGx3aW5uZXIvcGh5LXN1bjRpLXVzYi5jCj4+PiBAQCAtMjQsNyArMjQsNyBAQAo+ Pj4gICNpbmNsdWRlIDxsaW51eC9jbGsuaD4KPj4+ICAjaW5jbHVkZSA8bGludXgvZGVsYXkuaD4K Pj4+ICAjaW5jbHVkZSA8bGludXgvZXJyLmg+Cj4+PiAtI2luY2x1ZGUgPGxpbnV4L2V4dGNvbi5o Pgo+Pj4gKyNpbmNsdWRlIDxsaW51eC9leHRjb24tcHJvdmlkZXIuaD4KPj4+ICAjaW5jbHVkZSA8 bGludXgvaW8uaD4KPj4+ICAjaW5jbHVkZSA8bGludXgvaW50ZXJydXB0Lmg+Cj4+PiAgI2luY2x1 ZGUgPGxpbnV4L2tlcm5lbC5oPgo+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvcGh5L2Jyb2FkY29t L3BoeS1iY20tbnMyLXVzYmRyZC5jIGIvZHJpdmVycy9waHkvYnJvYWRjb20vcGh5LWJjbS1uczIt dXNiZHJkLmMKPj4+IGluZGV4IGQwOTlhMGM4Y2VlNS4uN2NlZWE1YWUyNzA0IDEwMDY0NAo+Pj4g LS0tIGEvZHJpdmVycy9waHkvYnJvYWRjb20vcGh5LWJjbS1uczItdXNiZHJkLmMKPj4+ICsrKyBi L2RyaXZlcnMvcGh5L2Jyb2FkY29tL3BoeS1iY20tbnMyLXVzYmRyZC5jCj4+PiBAQCAtMTIsNyAr MTIsNyBAQAo+Pj4gICAqLwo+Pj4gIAo+Pj4gICNpbmNsdWRlIDxsaW51eC9kZWxheS5oPgo+Pj4g LSNpbmNsdWRlIDxsaW51eC9leHRjb24uaD4KPj4+ICsjaW5jbHVkZSA8bGludXgvZXh0Y29uLXBy b3ZpZGVyLmg+Cj4+PiAgI2luY2x1ZGUgPGxpbnV4L2dwaW8uaD4KPj4+ICAjaW5jbHVkZSA8bGlu dXgvZ3Bpby9jb25zdW1lci5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9pbml0Lmg+Cj4+PiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9waHkvcmVuZXNhcy9waHktcmNhci1nZW4zLXVzYjIuYyBiL2RyaXZl cnMvcGh5L3JlbmVzYXMvcGh5LXJjYXItZ2VuMy11c2IyLmMKPj4+IGluZGV4IDU0YzM0Mjk4YTAw MC4uYjMzZTI5OTRjY2NlIDEwMDY0NAo+Pj4gLS0tIGEvZHJpdmVycy9waHkvcmVuZXNhcy9waHkt cmNhci1nZW4zLXVzYjIuYwo+Pj4gKysrIGIvZHJpdmVycy9waHkvcmVuZXNhcy9waHktcmNhci1n ZW4zLXVzYjIuYwo+Pj4gQEAgLTEyLDcgKzEyLDcgQEAKPj4+ICAgKiBwdWJsaXNoZWQgYnkgdGhl IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbi4KPj4+ICAgKi8KPj4+ICAKPj4+IC0jaW5jbHVkZSA8 bGludXgvZXh0Y29uLmg+Cj4+PiArI2luY2x1ZGUgPGxpbnV4L2V4dGNvbi1wcm92aWRlci5oPgo+ Pj4gICNpbmNsdWRlIDxsaW51eC9pbnRlcnJ1cHQuaD4KPj4+ICAjaW5jbHVkZSA8bGludXgvaW8u aD4KPj4+ICAjaW5jbHVkZSA8bGludXgvbW9kdWxlLmg+Cj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9waHkvcm9ja2NoaXAvcGh5LXJvY2tjaGlwLWlubm8tdXNiMi5jIGIvZHJpdmVycy9waHkvcm9j a2NoaXAvcGh5LXJvY2tjaGlwLWlubm8tdXNiMi5jCj4+PiBpbmRleCBlZTdjZTVlZTUzZjkuLjUw NDlkYWM3OWJkMCAxMDA2NDQKPj4+IC0tLSBhL2RyaXZlcnMvcGh5L3JvY2tjaGlwL3BoeS1yb2Nr Y2hpcC1pbm5vLXVzYjIuYwo+Pj4gKysrIGIvZHJpdmVycy9waHkvcm9ja2NoaXAvcGh5LXJvY2tj aGlwLWlubm8tdXNiMi5jCj4+PiBAQCAtMTcsNyArMTcsNyBAQAo+Pj4gICNpbmNsdWRlIDxsaW51 eC9jbGsuaD4KPj4+ICAjaW5jbHVkZSA8bGludXgvY2xrLXByb3ZpZGVyLmg+Cj4+PiAgI2luY2x1 ZGUgPGxpbnV4L2RlbGF5Lmg+Cj4+PiAtI2luY2x1ZGUgPGxpbnV4L2V4dGNvbi5oPgo+Pj4gKyNp bmNsdWRlIDxsaW51eC9leHRjb24tcHJvdmlkZXIuaD4KPj4+ICAjaW5jbHVkZSA8bGludXgvaW50 ZXJydXB0Lmg+Cj4+PiAgI2luY2x1ZGUgPGxpbnV4L2lvLmg+Cj4+PiAgI2luY2x1ZGUgPGxpbnV4 L2dwaW8vY29uc3VtZXIuaD4KPj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3Bvd2VyL3N1cHBseS9x Y29tX3NtYmIuYyBiL2RyaXZlcnMvcG93ZXIvc3VwcGx5L3Fjb21fc21iYi5jCj4+PiBpbmRleCBm NmEwZDI0NTczMWQuLjExZGU2OTFiOWE3MSAxMDA2NDQKPj4+IC0tLSBhL2RyaXZlcnMvcG93ZXIv c3VwcGx5L3Fjb21fc21iYi5jCj4+PiArKysgYi9kcml2ZXJzL3Bvd2VyL3N1cHBseS9xY29tX3Nt YmIuYwo+Pj4gQEAgLTM0LDcgKzM0LDcgQEAKPj4+ICAjaW5jbHVkZSA8bGludXgvcG93ZXJfc3Vw cGx5Lmg+Cj4+PiAgI2luY2x1ZGUgPGxpbnV4L3JlZ21hcC5oPgo+Pj4gICNpbmNsdWRlIDxsaW51 eC9zbGFiLmg+Cj4+PiAtI2luY2x1ZGUgPGxpbnV4L2V4dGNvbi5oPgo+Pj4gKyNpbmNsdWRlIDxs aW51eC9leHRjb24tcHJvdmlkZXIuaD4KPj4+ICAjaW5jbHVkZSA8bGludXgvcmVndWxhdG9yL2Ry aXZlci5oPgo+Pj4gIAo+Pj4gICNkZWZpbmUgU01CQl9DSEdfVk1BWAkJMHgwNDAKPj4+IGRpZmYg LS1naXQgYS9kcml2ZXJzL3VzYi9nYWRnZXQvdWRjL3JlbmVzYXNfdXNiMy5jIGIvZHJpdmVycy91 c2IvZ2FkZ2V0L3VkYy9yZW5lc2FzX3VzYjMuYwo+Pj4gaW5kZXggZGYzN2MxZTZlOWQ1Li44YjRk MDUxZmRiZWQgMTAwNjQ0Cj4+PiAtLS0gYS9kcml2ZXJzL3VzYi9nYWRnZXQvdWRjL3JlbmVzYXNf dXNiMy5jCj4+PiArKysgYi9kcml2ZXJzL3VzYi9nYWRnZXQvdWRjL3JlbmVzYXNfdXNiMy5jCj4+ PiBAQCAtMTIsNyArMTIsNyBAQAo+Pj4gICNpbmNsdWRlIDxsaW51eC9kZWxheS5oPgo+Pj4gICNp bmNsdWRlIDxsaW51eC9kbWEtbWFwcGluZy5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9lcnIuaD4K Pj4+IC0jaW5jbHVkZSA8bGludXgvZXh0Y29uLmg+Cj4+PiArI2luY2x1ZGUgPGxpbnV4L2V4dGNv bi1wcm92aWRlci5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9pbnRlcnJ1cHQuaD4KPj4+ICAjaW5j bHVkZSA8bGludXgvaW8uaD4KPj4+ICAjaW5jbHVkZSA8bGludXgvbW9kdWxlLmg+Cj4+PiBkaWZm IC0tZ2l0IGEvZHJpdmVycy91c2IvcGh5L3BoeS10YWh2by5jIGIvZHJpdmVycy91c2IvcGh5L3Bo eS10YWh2by5jCj4+PiBpbmRleCA4YmFiZDMxOGMwZWQuLjM1NGU4Yzk4YWYwNSAxMDA2NDQKPj4+ IC0tLSBhL2RyaXZlcnMvdXNiL3BoeS9waHktdGFodm8uYwo+Pj4gKysrIGIvZHJpdmVycy91c2Iv cGh5L3BoeS10YWh2by5jCj4+PiBAQCAtMjMsNyArMjMsNyBAQAo+Pj4gICNpbmNsdWRlIDxsaW51 eC9pby5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9jbGsuaD4KPj4+ICAjaW5jbHVkZSA8bGludXgv dXNiLmg+Cj4+PiAtI2luY2x1ZGUgPGxpbnV4L2V4dGNvbi5oPgo+Pj4gKyNpbmNsdWRlIDxsaW51 eC9leHRjb24tcHJvdmlkZXIuaD4KPj4+ICAjaW5jbHVkZSA8bGludXgva2VybmVsLmg+Cj4+PiAg I2luY2x1ZGUgPGxpbnV4L21vZHVsZS5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC91c2Ivb3RnLmg+ Cj4+PiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9leHRjb24tcHJvdmlkZXIuaCBiL2luY2x1 ZGUvbGludXgvZXh0Y29uLXByb3ZpZGVyLmgKPj4+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4+PiBp bmRleCAwMDAwMDAwMDAwMDAuLjJmZWNhNTg4MWZhNwo+Pj4gLS0tIC9kZXYvbnVsbAo+Pj4gKysr IGIvaW5jbHVkZS9saW51eC9leHRjb24tcHJvdmlkZXIuaAo+Pj4gQEAgLTAsMCArMSwxNDIgQEAK Pj4+ICsvKgo+Pj4gKyAqIEV4dGVybmFsIENvbm5lY3RvciAoZXh0Y29uKSBmcmFtZXdvcmsKPj4+ ICsgKiAtIGxpbnV4L2luY2x1ZGUvbGludXgvZXh0Y29uLXByb3ZpZGVyLmggZm9yIGV4dGNvbiBw cm92aWRlciBkZXZpY2UgZHJpdmVyLgo+Pj4gKyAqCj4+PiArICogQ29weXJpZ2h0IChDKSAyMDE3 IFNhbXN1bmcgRWxlY3Ryb25pY3MKPj4+ICsgKiBBdXRob3I6IENoYW53b28gQ2hvaSA8Y3cwMC5j aG9pQHNhbXN1bmcuY29tPgo+Pj4gKyAqCj4+PiArICogVGhpcyBzb2Z0d2FyZSBpcyBsaWNlbnNl ZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYwo+Pj4gKyAqIExpY2Vu c2UgdmVyc2lvbiAyLCBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgYW5kCj4+PiArICogbWF5IGJlIGNvcGllZCwgZGlzdHJpYnV0ZWQsIGFuZCBtb2RpZmllZCB1 bmRlciB0aG9zZSB0ZXJtcy4KPj4+ICsgKgo+Pj4gKyAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmli dXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAo+Pj4gKyAqIGJ1dCBXSVRI T1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCj4+ PiArICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF LiAgU2VlIHRoZQo+Pj4gKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRl dGFpbHMuCj4+PiArICovCj4+PiArCj4+PiArI2lmbmRlZiBfX0xJTlVYX0VYVENPTl9QUk9WSURF Ul9IX18KPj4+ICsjZGVmaW5lIF9fTElOVVhfRVhUQ09OX1BST1ZJREVSX0hfXwo+Pj4gKwo+Pj4g KyNpbmNsdWRlIDxsaW51eC9leHRjb24uaD4KPj4+ICsKPj4+ICtzdHJ1Y3QgZXh0Y29uX2RldjsK Pj4+ICsKPj4+ICsjaWYgSVNfRU5BQkxFRChDT05GSUdfRVhUQ09OKQo+Pj4gKwo+Pj4gKy8qIEZv bGxvd2luZyBBUElzIHJlZ2lzdGVyL3VucmVnaXN0ZXIgdGhlIGV4dGNvbiBkZXZpY2UuICovCj4+ PiArZXh0ZXJuIGludCBleHRjb25fZGV2X3JlZ2lzdGVyKHN0cnVjdCBleHRjb25fZGV2ICplZGV2 KTsKPj4+ICtleHRlcm4gdm9pZCBleHRjb25fZGV2X3VucmVnaXN0ZXIoc3RydWN0IGV4dGNvbl9k ZXYgKmVkZXYpOwo+Pj4gK2V4dGVybiBpbnQgZGV2bV9leHRjb25fZGV2X3JlZ2lzdGVyKHN0cnVj dCBkZXZpY2UgKmRldiwKPj4+ICsJCQkJc3RydWN0IGV4dGNvbl9kZXYgKmVkZXYpOwo+Pj4gK2V4 dGVybiB2b2lkIGRldm1fZXh0Y29uX2Rldl91bnJlZ2lzdGVyKHN0cnVjdCBkZXZpY2UgKmRldiwK Pj4+ICsJCQkJc3RydWN0IGV4dGNvbl9kZXYgKmVkZXYpOwo+Pj4gKwo+Pj4gKy8qIEZvbGxvd2lu ZyBBUElzIGFsbG9jYXRlL2ZyZWUgdGhlIG1lbW9yeSBvZiB0aGUgZXh0Y29uIGRldmljZS4gKi8K Pj4+ICtleHRlcm4gc3RydWN0IGV4dGNvbl9kZXYgKmV4dGNvbl9kZXZfYWxsb2NhdGUoY29uc3Qg dW5zaWduZWQgaW50ICpjYWJsZSk7Cj4+PiArZXh0ZXJuIHZvaWQgZXh0Y29uX2Rldl9mcmVlKHN0 cnVjdCBleHRjb25fZGV2ICplZGV2KTsKPj4+ICtleHRlcm4gc3RydWN0IGV4dGNvbl9kZXYgKmRl dm1fZXh0Y29uX2Rldl9hbGxvY2F0ZShzdHJ1Y3QgZGV2aWNlICpkZXYsCj4+PiArCQkJCWNvbnN0 IHVuc2lnbmVkIGludCAqY2FibGUpOwo+Pj4gK2V4dGVybiB2b2lkIGRldm1fZXh0Y29uX2Rldl9m cmVlKHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IGV4dGNvbl9kZXYgKmVkZXYpOwo+Pj4gKwo+ Pj4gKy8qIFN5bmNocm9uaXplIHRoZSBzdGF0ZSBhbmQgcHJvcGVydHkgdmFsdWUgZm9yIGVhY2gg ZXh0ZXJuYWwgY29ubmVjdG9yLiAqLwo+Pj4gK2V4dGVybiBpbnQgZXh0Y29uX3N5bmMoc3RydWN0 IGV4dGNvbl9kZXYgKmVkZXYsIHVuc2lnbmVkIGludCBpZCk7Cj4+PiArCj4+PiArLyoKPj4+ICsg KiBGb2xsb3dpbmcgQVBJcyBzZXQgdGhlIGNvbm5lY3RlZCBzdGF0ZSBvZiBlYWNoIGV4dGVybmFs IGNvbm5lY3Rvci4KPj4+ICsgKiBUaGUgJ2lkJyBhcmd1bWVudCBpbmRpY2F0ZXMgdGhlIGRlZmlu ZWQgZXh0ZXJuYWwgY29ubmVjdG9yLgo+Pj4gKyAqLwo+Pj4gK2V4dGVybiBpbnQgZXh0Y29uX3Nl dF9zdGF0ZShzdHJ1Y3QgZXh0Y29uX2RldiAqZWRldiwgdW5zaWduZWQgaW50IGlkLAo+Pj4gKwkJ CQlib29sIHN0YXRlKTsKPj4+ICtleHRlcm4gaW50IGV4dGNvbl9zZXRfc3RhdGVfc3luYyhzdHJ1 Y3QgZXh0Y29uX2RldiAqZWRldiwgdW5zaWduZWQgaW50IGlkLAo+Pj4gKwkJCQlib29sIHN0YXRl KTsKPj4+ICsKPj4+ICsvKgo+Pj4gKyAqIEZvbGxvd2luZyBBUElzIHNldCB0aGUgcHJvcGVydHkg b2YgZWFjaCBleHRlcm5hbCBjb25uZWN0b3IuCj4+PiArICogVGhlICdpZCcgYXJndW1lbnQgaW5k aWNhdGVzIHRoZSBkZWZpbmVkIGV4dGVybmFsIGNvbm5lY3Rvcgo+Pj4gKyAqIGFuZCB0aGUgJ3By b3AnIGluZGljYXRlcyB0aGUgZXh0Y29uIHByb3BlcnR5Lgo+Pj4gKyAqCj4+PiArICogQW5kIGV4 dGNvbl9zZXRfcHJvcGVydHlfY2FwYWJpbGl0eSgpIHNldCB0aGUgY2FwYWJpbGl0eSBvZiB0aGUg cHJvcGVydHkKPj4+ICsgKiBmb3IgZWFjaCBleHRlcm5hbCBjb25uZWN0b3IuIFRoZXkgYXJlIHVz ZWQgdG8gc2V0IHRoZSBjYXBhYmlsaXR5IG9mIHRoZQo+Pj4gKyAqIHByb3BlcnR5IG9mIGVhY2gg ZXh0ZXJuYWwgY29ubmVjdG9yIGJhc2VkIG9uIHRoZSBpZCBhbmQgcHJvcGVydHkuCj4+PiArICov Cj4+PiArZXh0ZXJuIGludCBleHRjb25fc2V0X3Byb3BlcnR5KHN0cnVjdCBleHRjb25fZGV2ICpl ZGV2LCB1bnNpZ25lZCBpbnQgaWQsCj4+PiArCQkJCXVuc2lnbmVkIGludCBwcm9wLAo+Pj4gKwkJ CQl1bmlvbiBleHRjb25fcHJvcGVydHlfdmFsdWUgcHJvcF92YWwpOwo+Pj4gK2V4dGVybiBpbnQg ZXh0Y29uX3NldF9wcm9wZXJ0eV9zeW5jKHN0cnVjdCBleHRjb25fZGV2ICplZGV2LCB1bnNpZ25l ZCBpbnQgaWQsCj4+PiArCQkJCXVuc2lnbmVkIGludCBwcm9wLAo+Pj4gKwkJCQl1bmlvbiBleHRj b25fcHJvcGVydHlfdmFsdWUgcHJvcF92YWwpOwo+Pj4gK2V4dGVybiBpbnQgZXh0Y29uX3NldF9w cm9wZXJ0eV9jYXBhYmlsaXR5KHN0cnVjdCBleHRjb25fZGV2ICplZGV2LAo+Pj4gKwkJCQl1bnNp Z25lZCBpbnQgaWQsIHVuc2lnbmVkIGludCBwcm9wKTsKPj4+ICsKPj4+ICsjZWxzZSAvKiBDT05G SUdfRVhUQ09OICovCj4+PiArc3RhdGljIGlubGluZSBpbnQgZXh0Y29uX2Rldl9yZWdpc3Rlcihz dHJ1Y3QgZXh0Y29uX2RldiAqZWRldikKPj4+ICt7Cj4+PiArCXJldHVybiAwOwo+Pj4gK30KPj4+ ICsKPj4+ICtzdGF0aWMgaW5saW5lIHZvaWQgZXh0Y29uX2Rldl91bnJlZ2lzdGVyKHN0cnVjdCBl eHRjb25fZGV2ICplZGV2KSB7IH0KPj4+ICsKPj4+ICtzdGF0aWMgaW5saW5lIGludCBkZXZtX2V4 dGNvbl9kZXZfcmVnaXN0ZXIoc3RydWN0IGRldmljZSAqZGV2LAo+Pj4gKwkJCQlzdHJ1Y3QgZXh0 Y29uX2RldiAqZWRldikKPj4+ICt7Cj4+PiArCXJldHVybiAtRUlOVkFMOwo+Pj4gK30KPj4+ICsK Pj4+ICtzdGF0aWMgaW5saW5lIHZvaWQgZGV2bV9leHRjb25fZGV2X3VucmVnaXN0ZXIoc3RydWN0 IGRldmljZSAqZGV2LAo+Pj4gKwkJCQlzdHJ1Y3QgZXh0Y29uX2RldiAqZWRldikgeyB9Cj4+PiAr Cj4+PiArc3RhdGljIGlubGluZSBzdHJ1Y3QgZXh0Y29uX2RldiAqZXh0Y29uX2Rldl9hbGxvY2F0 ZShjb25zdCB1bnNpZ25lZCBpbnQgKmNhYmxlKQo+Pj4gK3sKPj4+ICsJcmV0dXJuIEVSUl9QVFIo LUVOT1NZUyk7Cj4+PiArfQo+Pj4gKwo+Pj4gK3N0YXRpYyBpbmxpbmUgdm9pZCBleHRjb25fZGV2 X2ZyZWUoc3RydWN0IGV4dGNvbl9kZXYgKmVkZXYpIHsgfQo+Pj4gKwo+Pj4gK3N0YXRpYyBpbmxp bmUgc3RydWN0IGV4dGNvbl9kZXYgKmRldm1fZXh0Y29uX2Rldl9hbGxvY2F0ZShzdHJ1Y3QgZGV2 aWNlICpkZXYsCj4+PiArCQkJCWNvbnN0IHVuc2lnbmVkIGludCAqY2FibGUpCj4+PiArewo+Pj4g KwlyZXR1cm4gRVJSX1BUUigtRU5PU1lTKTsKPj4+ICt9Cj4+PiArCj4+PiArc3RhdGljIGlubGlu ZSB2b2lkIGRldm1fZXh0Y29uX2Rldl9mcmVlKHN0cnVjdCBleHRjb25fZGV2ICplZGV2KSB7IH0K Pj4+ICsKPj4+ICsKPj4+ICtzdGF0aWMgaW5saW5lIGludCBleHRjb25fc2V0X3N0YXRlKHN0cnVj dCBleHRjb25fZGV2ICplZGV2LCB1bnNpZ25lZCBpbnQgaWQsCj4+PiArCQkJCWJvb2wgc3RhdGUp Cj4+PiArewo+Pj4gKwlyZXR1cm4gMDsKPj4+ICt9Cj4+PiArCj4+PiArc3RhdGljIGlubGluZSBp bnQgZXh0Y29uX3NldF9zdGF0ZV9zeW5jKHN0cnVjdCBleHRjb25fZGV2ICplZGV2LCB1bnNpZ25l ZCBpbnQgaWQsCj4+PiArCQkJCWJvb2wgc3RhdGUpCj4+PiArewo+Pj4gKwlyZXR1cm4gMDsKPj4+ ICt9Cj4+PiArCj4+PiArc3RhdGljIGlubGluZSBpbnQgZXh0Y29uX3N5bmMoc3RydWN0IGV4dGNv bl9kZXYgKmVkZXYsIHVuc2lnbmVkIGludCBpZCkKPj4+ICt7Cj4+PiArCXJldHVybiAwOwo+Pj4g K30KPj4+ICsKPj4+ICtzdGF0aWMgaW5saW5lIGludCBleHRjb25fc2V0X3Byb3BlcnR5KHN0cnVj dCBleHRjb25fZGV2ICplZGV2LCB1bnNpZ25lZCBpbnQgaWQsCj4+PiArCQkJCXVuc2lnbmVkIGlu dCBwcm9wLAo+Pj4gKwkJCQl1bmlvbiBleHRjb25fcHJvcGVydHlfdmFsdWUgcHJvcF92YWwpCj4+ PiArewo+Pj4gKwlyZXR1cm4gMDsKPj4+ICt9Cj4+PiArCj4+PiArc3RhdGljIGlubGluZSBpbnQg ZXh0Y29uX3NldF9wcm9wZXJ0eV9zeW5jKHN0cnVjdCBleHRjb25fZGV2ICplZGV2LAo+Pj4gKwkJ CQl1bnNpZ25lZCBpbnQgaWQsIHVuc2lnbmVkIGludCBwcm9wLAo+Pj4gKwkJCQl1bmlvbiBleHRj b25fcHJvcGVydHlfdmFsdWUgcHJvcF92YWwpCj4+PiArewo+Pj4gKwlyZXR1cm4gMDsKPj4+ICt9 Cj4+PiArCj4+PiArc3RhdGljIGlubGluZSBpbnQgZXh0Y29uX3NldF9wcm9wZXJ0eV9jYXBhYmls aXR5KHN0cnVjdCBleHRjb25fZGV2ICplZGV2LAo+Pj4gKwkJCQl1bnNpZ25lZCBpbnQgaWQsIHVu c2lnbmVkIGludCBwcm9wKQo+Pj4gK3sKPj4+ICsJcmV0dXJuIDA7Cj4+PiArfQo+Pj4gKyNlbmRp ZiAvKiBDT05GSUdfRVhUQ09OICovCj4+PiArI2VuZGlmIC8qIF9fTElOVVhfRVhUQ09OX1BST1ZJ REVSX0hfXyAqLwo+Pj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvZXh0Y29uLmggYi9pbmNs dWRlL2xpbnV4L2V4dGNvbi5oCj4+PiBpbmRleCA3NDRkNjBjYTgwYzMuLjZkOTRlODJjOGFkOSAx MDA2NDQKPj4+IC0tLSBhL2luY2x1ZGUvbGludXgvZXh0Y29uLmgKPj4+ICsrKyBiL2luY2x1ZGUv bGludXgvZXh0Y29uLmgKPj4+IEBAIC0xLDUgKzEsNiBAQAo+Pj4gIC8qCj4+PiAgICogRXh0ZXJu YWwgQ29ubmVjdG9yIChleHRjb24pIGZyYW1ld29yawo+Pj4gKyAqIC0gbGludXgvaW5jbHVkZS9s aW51eC9leHRjb24uaCBmb3IgZXh0Y29uIGNvbnN1bWVyIGRldmljZSBkcml2ZXIuCj4+PiAgICoK Pj4+ICAgKiBDb3B5cmlnaHQgKEMpIDIwMTUgU2Ftc3VuZyBFbGVjdHJvbmljcwo+Pj4gICAqIEF1 dGhvcjogQ2hhbndvbyBDaG9pIDxjdzAwLmNob2lAc2Ftc3VuZy5jb20+Cj4+PiBAQCAtMTcwLDYx ICsxNzEsMjkgQEAKPj4+ICAJaW50IGludHZhbDsJLyogdHlwZSA6IGludGVnZXIgKGludHZhbCkg Ki8KPj4+ICB9Owo+Pj4gIAo+Pj4gLXN0cnVjdCBleHRjb25fY2FibGU7Cj4+PiAgc3RydWN0IGV4 dGNvbl9kZXY7Cj4+PiAgCj4+PiAgI2lmIElTX0VOQUJMRUQoQ09ORklHX0VYVENPTikKPj4+IC0K Pj4+IC0vKiBGb2xsb3dpbmcgQVBJcyByZWdpc3Rlci91bnJlZ2lzdGVyIHRoZSBleHRjb24gZGV2 aWNlLiAqLwo+Pj4gLWV4dGVybiBpbnQgZXh0Y29uX2Rldl9yZWdpc3RlcihzdHJ1Y3QgZXh0Y29u X2RldiAqZWRldik7Cj4+PiAtZXh0ZXJuIHZvaWQgZXh0Y29uX2Rldl91bnJlZ2lzdGVyKHN0cnVj dCBleHRjb25fZGV2ICplZGV2KTsKPj4+IC1leHRlcm4gaW50IGRldm1fZXh0Y29uX2Rldl9yZWdp c3RlcihzdHJ1Y3QgZGV2aWNlICpkZXYsCj4+PiAtCQkJCXN0cnVjdCBleHRjb25fZGV2ICplZGV2 KTsKPj4+IC1leHRlcm4gdm9pZCBkZXZtX2V4dGNvbl9kZXZfdW5yZWdpc3RlcihzdHJ1Y3QgZGV2 aWNlICpkZXYsCj4+PiAtCQkJCXN0cnVjdCBleHRjb25fZGV2ICplZGV2KTsKPj4+IC0KPj4+IC0v KiBGb2xsb3dpbmcgQVBJcyBhbGxvY2F0ZS9mcmVlIHRoZSBtZW1vcnkgb2YgdGhlIGV4dGNvbiBk ZXZpY2UuICovCj4+PiAtZXh0ZXJuIHN0cnVjdCBleHRjb25fZGV2ICpleHRjb25fZGV2X2FsbG9j YXRlKGNvbnN0IHVuc2lnbmVkIGludCAqY2FibGUpOwo+Pj4gLWV4dGVybiB2b2lkIGV4dGNvbl9k ZXZfZnJlZShzdHJ1Y3QgZXh0Y29uX2RldiAqZWRldik7Cj4+PiAtZXh0ZXJuIHN0cnVjdCBleHRj b25fZGV2ICpkZXZtX2V4dGNvbl9kZXZfYWxsb2NhdGUoc3RydWN0IGRldmljZSAqZGV2LAo+Pj4g LQkJCQljb25zdCB1bnNpZ25lZCBpbnQgKmNhYmxlKTsKPj4+IC1leHRlcm4gdm9pZCBkZXZtX2V4 dGNvbl9kZXZfZnJlZShzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBleHRjb25fZGV2ICplZGV2 KTsKPj4+IC0KPj4+IC0vKiBTeW5jaHJvbml6ZSB0aGUgc3RhdGUgYW5kIHByb3BlcnR5IHZhbHVl IGZvciBlYWNoIGV4dGVybmFsIGNvbm5lY3Rvci4gKi8KPj4+IC1leHRlcm4gaW50IGV4dGNvbl9z eW5jKHN0cnVjdCBleHRjb25fZGV2ICplZGV2LCB1bnNpZ25lZCBpbnQgaWQpOwo+Pj4gLQo+Pj4g IC8qCj4+PiAtICogRm9sbG93aW5nIEFQSXMgZ2V0L3NldCB0aGUgY29ubmVjdGVkIHN0YXRlIG9m IGVhY2ggZXh0ZXJuYWwgY29ubmVjdG9yLgo+Pj4gKyAqIEZvbGxvd2luZyBBUElzIGdldCB0aGUg Y29ubmVjdGVkIHN0YXRlIG9mIGVhY2ggZXh0ZXJuYWwgY29ubmVjdG9yLgo+Pj4gICAqIFRoZSAn aWQnIGFyZ3VtZW50IGluZGljYXRlcyB0aGUgZGVmaW5lZCBleHRlcm5hbCBjb25uZWN0b3IuCj4+ PiAgICovCj4+PiAgZXh0ZXJuIGludCBleHRjb25fZ2V0X3N0YXRlKHN0cnVjdCBleHRjb25fZGV2 ICplZGV2LCB1bnNpZ25lZCBpbnQgaWQpOwo+Pj4gLWV4dGVybiBpbnQgZXh0Y29uX3NldF9zdGF0 ZShzdHJ1Y3QgZXh0Y29uX2RldiAqZWRldiwgdW5zaWduZWQgaW50IGlkLAo+Pj4gLQkJCQlib29s IHN0YXRlKTsKPj4+IC1leHRlcm4gaW50IGV4dGNvbl9zZXRfc3RhdGVfc3luYyhzdHJ1Y3QgZXh0 Y29uX2RldiAqZWRldiwgdW5zaWduZWQgaW50IGlkLAo+Pj4gLQkJCQlib29sIHN0YXRlKTsKPj4+ ICAKPj4+ICAvKgo+Pj4gLSAqIEZvbGxvd2luZyBBUElzIGdldC9zZXQgdGhlIHByb3BlcnR5IG9m IGVhY2ggZXh0ZXJuYWwgY29ubmVjdG9yLgo+Pj4gKyAqIEZvbGxvd2luZyBBUElzIGdldCB0aGUg cHJvcGVydHkgb2YgZWFjaCBleHRlcm5hbCBjb25uZWN0b3IuCj4+PiAgICogVGhlICdpZCcgYXJn dW1lbnQgaW5kaWNhdGVzIHRoZSBkZWZpbmVkIGV4dGVybmFsIGNvbm5lY3Rvcgo+Pj4gICAqIGFu ZCB0aGUgJ3Byb3AnIGluZGljYXRlcyB0aGUgZXh0Y29uIHByb3BlcnR5Lgo+Pj4gICAqCj4+PiAt ICogQW5kIGV4dGNvbl9nZXQvc2V0X3Byb3BlcnR5X2NhcGFiaWxpdHkoKSBzZXQgdGhlIGNhcGFi aWxpdHkgb2YgdGhlIHByb3BlcnR5Cj4+PiAtICogZm9yIGVhY2ggZXh0ZXJuYWwgY29ubmVjdG9y LiBUaGV5IGFyZSB1c2VkIHRvIHNldCB0aGUgY2FwYWJpbGl0eSBvZiB0aGUKPj4+ICsgKiBBbmQg ZXh0Y29uX2dldF9wcm9wZXJ0eV9jYXBhYmlsaXR5KCkgZ2V0IHRoZSBjYXBhYmlsaXR5IG9mIHRo ZSBwcm9wZXJ0eQo+Pj4gKyAqIGZvciBlYWNoIGV4dGVybmFsIGNvbm5lY3Rvci4gVGhleSBhcmUg dXNlZCB0byBnZXQgdGhlIGNhcGFiaWxpdHkgb2YgdGhlCj4+PiAgICogcHJvcGVydHkgb2YgZWFj aCBleHRlcm5hbCBjb25uZWN0b3IgYmFzZWQgb24gdGhlIGlkIGFuZCBwcm9wZXJ0eS4KPj4+ICAg Ki8KPj4+ICBleHRlcm4gaW50IGV4dGNvbl9nZXRfcHJvcGVydHkoc3RydWN0IGV4dGNvbl9kZXYg KmVkZXYsIHVuc2lnbmVkIGludCBpZCwKPj4+ICAJCQkJdW5zaWduZWQgaW50IHByb3AsCj4+PiAg CQkJCXVuaW9uIGV4dGNvbl9wcm9wZXJ0eV92YWx1ZSAqcHJvcF92YWwpOwo+Pj4gLWV4dGVybiBp bnQgZXh0Y29uX3NldF9wcm9wZXJ0eShzdHJ1Y3QgZXh0Y29uX2RldiAqZWRldiwgdW5zaWduZWQg aW50IGlkLAo+Pj4gLQkJCQl1bnNpZ25lZCBpbnQgcHJvcCwKPj4+IC0JCQkJdW5pb24gZXh0Y29u X3Byb3BlcnR5X3ZhbHVlIHByb3BfdmFsKTsKPj4+IC1leHRlcm4gaW50IGV4dGNvbl9zZXRfcHJv cGVydHlfc3luYyhzdHJ1Y3QgZXh0Y29uX2RldiAqZWRldiwgdW5zaWduZWQgaW50IGlkLAo+Pj4g LQkJCQl1bnNpZ25lZCBpbnQgcHJvcCwKPj4+IC0JCQkJdW5pb24gZXh0Y29uX3Byb3BlcnR5X3Zh bHVlIHByb3BfdmFsKTsKPj4+ICBleHRlcm4gaW50IGV4dGNvbl9nZXRfcHJvcGVydHlfY2FwYWJp bGl0eShzdHJ1Y3QgZXh0Y29uX2RldiAqZWRldiwKPj4+ICAJCQkJdW5zaWduZWQgaW50IGlkLCB1 bnNpZ25lZCBpbnQgcHJvcCk7Cj4+PiAtZXh0ZXJuIGludCBleHRjb25fc2V0X3Byb3BlcnR5X2Nh cGFiaWxpdHkoc3RydWN0IGV4dGNvbl9kZXYgKmVkZXYsCj4+PiAtCQkJCXVuc2lnbmVkIGludCBp ZCwgdW5zaWduZWQgaW50IHByb3ApOwo+Pj4gIAo+Pj4gIC8qCj4+PiAgICogRm9sbG93aW5nIEFQ SXMgcmVnaXN0ZXIgdGhlIG5vdGlmaWVyIGJsb2NrIGluIG9yZGVyIHRvIGRldGVjdAo+Pj4gQEAg LTI2OCw3OSArMjM3LDE3IEBAIGV4dGVybiBzdHJ1Y3QgZXh0Y29uX2RldiAqZXh0Y29uX2dldF9l ZGV2X2J5X3BoYW5kbGUoc3RydWN0IGRldmljZSAqZGV2LAo+Pj4gIGV4dGVybiBjb25zdCBjaGFy ICpleHRjb25fZ2V0X2VkZXZfbmFtZShzdHJ1Y3QgZXh0Y29uX2RldiAqZWRldik7Cj4+PiAgCj4+ PiAgI2Vsc2UgLyogQ09ORklHX0VYVENPTiAqLwo+Pj4gLXN0YXRpYyBpbmxpbmUgaW50IGV4dGNv bl9kZXZfcmVnaXN0ZXIoc3RydWN0IGV4dGNvbl9kZXYgKmVkZXYpCj4+PiAtewo+Pj4gLQlyZXR1 cm4gMDsKPj4+IC19Cj4+PiAtCj4+PiAtc3RhdGljIGlubGluZSB2b2lkIGV4dGNvbl9kZXZfdW5y ZWdpc3RlcihzdHJ1Y3QgZXh0Y29uX2RldiAqZWRldikgeyB9Cj4+PiAtCj4+PiAtc3RhdGljIGlu bGluZSBpbnQgZGV2bV9leHRjb25fZGV2X3JlZ2lzdGVyKHN0cnVjdCBkZXZpY2UgKmRldiwKPj4+ IC0JCQkJc3RydWN0IGV4dGNvbl9kZXYgKmVkZXYpCj4+PiAtewo+Pj4gLQlyZXR1cm4gLUVJTlZB TDsKPj4+IC19Cj4+PiAtCj4+PiAtc3RhdGljIGlubGluZSB2b2lkIGRldm1fZXh0Y29uX2Rldl91 bnJlZ2lzdGVyKHN0cnVjdCBkZXZpY2UgKmRldiwKPj4+IC0JCQkJc3RydWN0IGV4dGNvbl9kZXYg KmVkZXYpIHsgfQo+Pj4gLQo+Pj4gLXN0YXRpYyBpbmxpbmUgc3RydWN0IGV4dGNvbl9kZXYgKmV4 dGNvbl9kZXZfYWxsb2NhdGUoY29uc3QgdW5zaWduZWQgaW50ICpjYWJsZSkKPj4+IC17Cj4+PiAt CXJldHVybiBFUlJfUFRSKC1FTk9TWVMpOwo+Pj4gLX0KPj4+IC0KPj4+IC1zdGF0aWMgaW5saW5l IHZvaWQgZXh0Y29uX2Rldl9mcmVlKHN0cnVjdCBleHRjb25fZGV2ICplZGV2KSB7IH0KPj4+IC0K Pj4+IC1zdGF0aWMgaW5saW5lIHN0cnVjdCBleHRjb25fZGV2ICpkZXZtX2V4dGNvbl9kZXZfYWxs b2NhdGUoc3RydWN0IGRldmljZSAqZGV2LAo+Pj4gLQkJCQljb25zdCB1bnNpZ25lZCBpbnQgKmNh YmxlKQo+Pj4gLXsKPj4+IC0JcmV0dXJuIEVSUl9QVFIoLUVOT1NZUyk7Cj4+PiAtfQo+Pj4gLQo+ Pj4gLXN0YXRpYyBpbmxpbmUgdm9pZCBkZXZtX2V4dGNvbl9kZXZfZnJlZShzdHJ1Y3QgZXh0Y29u X2RldiAqZWRldikgeyB9Cj4+PiAtCj4+PiAtCj4+PiAgc3RhdGljIGlubGluZSBpbnQgZXh0Y29u X2dldF9zdGF0ZShzdHJ1Y3QgZXh0Y29uX2RldiAqZWRldiwgdW5zaWduZWQgaW50IGlkKQo+Pj4g IHsKPj4+ICAJcmV0dXJuIDA7Cj4+PiAgfQo+Pj4gIAo+Pj4gLXN0YXRpYyBpbmxpbmUgaW50IGV4 dGNvbl9zZXRfc3RhdGUoc3RydWN0IGV4dGNvbl9kZXYgKmVkZXYsIHVuc2lnbmVkIGludCBpZCwK Pj4+IC0JCQkJYm9vbCBzdGF0ZSkKPj4+IC17Cj4+PiAtCXJldHVybiAwOwo+Pj4gLX0KPj4+IC0K Pj4+IC1zdGF0aWMgaW5saW5lIGludCBleHRjb25fc2V0X3N0YXRlX3N5bmMoc3RydWN0IGV4dGNv bl9kZXYgKmVkZXYsIHVuc2lnbmVkIGludCBpZCwKPj4+IC0JCQkJYm9vbCBzdGF0ZSkKPj4+IC17 Cj4+PiAtCXJldHVybiAwOwo+Pj4gLX0KPj4+IC0KPj4+IC1zdGF0aWMgaW5saW5lIGludCBleHRj b25fc3luYyhzdHJ1Y3QgZXh0Y29uX2RldiAqZWRldiwgdW5zaWduZWQgaW50IGlkKQo+Pj4gLXsK Pj4+IC0JcmV0dXJuIDA7Cj4+PiAtfQo+Pj4gLQo+Pj4gIHN0YXRpYyBpbmxpbmUgaW50IGV4dGNv bl9nZXRfcHJvcGVydHkoc3RydWN0IGV4dGNvbl9kZXYgKmVkZXYsIHVuc2lnbmVkIGludCBpZCwK Pj4+ICAJCQkJdW5zaWduZWQgaW50IHByb3AsCj4+PiAgCQkJCXVuaW9uIGV4dGNvbl9wcm9wZXJ0 eV92YWx1ZSAqcHJvcF92YWwpCj4+PiAgewo+Pj4gIAlyZXR1cm4gMDsKPj4+ICB9Cj4+PiAtc3Rh dGljIGlubGluZSBpbnQgZXh0Y29uX3NldF9wcm9wZXJ0eShzdHJ1Y3QgZXh0Y29uX2RldiAqZWRl diwgdW5zaWduZWQgaW50IGlkLAo+Pj4gLQkJCQl1bnNpZ25lZCBpbnQgcHJvcCwKPj4+IC0JCQkJ dW5pb24gZXh0Y29uX3Byb3BlcnR5X3ZhbHVlIHByb3BfdmFsKQo+Pj4gLXsKPj4+IC0JcmV0dXJu IDA7Cj4+PiAtfQo+Pj4gLQo+Pj4gLXN0YXRpYyBpbmxpbmUgaW50IGV4dGNvbl9zZXRfcHJvcGVy dHlfc3luYyhzdHJ1Y3QgZXh0Y29uX2RldiAqZWRldiwKPj4+IC0JCQkJdW5zaWduZWQgaW50IGlk LCB1bnNpZ25lZCBpbnQgcHJvcCwKPj4+IC0JCQkJdW5pb24gZXh0Y29uX3Byb3BlcnR5X3ZhbHVl IHByb3BfdmFsKQo+Pj4gLXsKPj4+IC0JcmV0dXJuIDA7Cj4+PiAtfQo+Pj4gIAo+Pj4gIHN0YXRp YyBpbmxpbmUgaW50IGV4dGNvbl9nZXRfcHJvcGVydHlfY2FwYWJpbGl0eShzdHJ1Y3QgZXh0Y29u X2RldiAqZWRldiwKPj4+ICAJCQkJdW5zaWduZWQgaW50IGlkLCB1bnNpZ25lZCBpbnQgcHJvcCkK Pj4+IEBAIC0zNDgsMTIgKzI1NSw2IEBAIHN0YXRpYyBpbmxpbmUgaW50IGV4dGNvbl9nZXRfcHJv cGVydHlfY2FwYWJpbGl0eShzdHJ1Y3QgZXh0Y29uX2RldiAqZWRldiwKPj4+ICAJcmV0dXJuIDA7 Cj4+PiAgfQo+Pj4gIAo+Pj4gLXN0YXRpYyBpbmxpbmUgaW50IGV4dGNvbl9zZXRfcHJvcGVydHlf Y2FwYWJpbGl0eShzdHJ1Y3QgZXh0Y29uX2RldiAqZWRldiwKPj4+IC0JCQkJdW5zaWduZWQgaW50 IGlkLCB1bnNpZ25lZCBpbnQgcHJvcCkKPj4+IC17Cj4+PiAtCXJldHVybiAwOwo+Pj4gLX0KPj4+ IC0KPj4+ICBzdGF0aWMgaW5saW5lIGludCBleHRjb25fcmVnaXN0ZXJfbm90aWZpZXIoc3RydWN0 IGV4dGNvbl9kZXYgKmVkZXYsCj4+PiAgCQkJCXVuc2lnbmVkIGludCBpZCwgc3RydWN0IG5vdGlm aWVyX2Jsb2NrICpuYikKPj4+ICB7Cj4+PiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9tZmQv cGFsbWFzLmggYi9pbmNsdWRlL2xpbnV4L21mZC9wYWxtYXMuaAo+Pj4gaW5kZXggNmRlYzQzODI2 MzAzLi4zYzg1NjhhYTgyYTUgMTAwNjQ0Cj4+PiAtLS0gYS9pbmNsdWRlL2xpbnV4L21mZC9wYWxt YXMuaAo+Pj4gKysrIGIvaW5jbHVkZS9saW51eC9tZmQvcGFsbWFzLmgKPj4+IEBAIC0yMCw3ICsy MCw3IEBACj4+PiAgI2luY2x1ZGUgPGxpbnV4L2xlZHMuaD4KPj4+ICAjaW5jbHVkZSA8bGludXgv cmVnbWFwLmg+Cj4+PiAgI2luY2x1ZGUgPGxpbnV4L3JlZ3VsYXRvci9kcml2ZXIuaD4KPj4+IC0j aW5jbHVkZSA8bGludXgvZXh0Y29uLmg+Cj4+PiArI2luY2x1ZGUgPGxpbnV4L2V4dGNvbi1wcm92 aWRlci5oPgo+Pj4gICNpbmNsdWRlIDxsaW51eC9vZl9ncGlvLmg+Cj4+PiAgI2luY2x1ZGUgPGxp bnV4L3VzYi9waHlfY29tcGFuaW9uLmg+Cj4+PiAgCj4+Pgo+Pgo+PgoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5n IGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5p bmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=