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=-6.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,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 7420BC3A5A6 for ; Thu, 19 Sep 2019 10:52:46 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 29B1D217D6 for ; Thu, 19 Sep 2019 10:52:46 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=silabs.onmicrosoft.com header.i=@silabs.onmicrosoft.com header.b="VX/25fFH" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2389403AbfISKwm (ORCPT ); Thu, 19 Sep 2019 06:52:42 -0400 Received: from mail-eopbgr700070.outbound.protection.outlook.com ([40.107.70.70]:25057 "EHLO NAM04-SN1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S2387772AbfISKwl (ORCPT ); Thu, 19 Sep 2019 06:52:41 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=c3LWy5xXS7zlj+bXgEdaiL+rhA9t9FX3u32h/GomXWbCZllyIMIjdJnBYa9w57bB6ITpu9oyWD3p+Mnlh8x0q8p1Nm9blY+6dSpf/NTvH30apumeHSuAE7g1ByFFwAWewJFup/sVYHgfERbWMNcsb62ss6ttP14cKucn4m8uS1o86Tq/ItXMA/0OnSDiTKZbDDUEbgmefVgT7VwoiCwFe8dIG/7BDpU0aBl6MDdmAfHkAqnCxYaniQlfIDEtiy2WA+M8g6ffkzWNhu/tJBS32K/AN6YbyOBOT+NZSsmLnZXS0aLHtzi3qamWEa8ZtgdgrrQex9EPZl3fl5YcC+JMfw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bmuP0wVKTeBAmbWDwuDg/J4UqPpaRbYwbeQahSgCrK0=; b=M3VOeR3IyUjWbjCwOnKat2YFOITJs0t4bJvCY5tNN/cbITFJpTgZ8RM6Q1p89GxzHegKonBHyN683OlXT+XZSd/giOTU6jlTpkQ6IZbpzUpVX6OOVJ09+lbdSsJlLN82dUm8gWWfdlGvncatpsqMujyc9fT3ObtK/h6BpTqYZMSXUe3viYtIBGQP5WHRAOHvdiYiVRfrymhDR1NEs4NX3DZIdtt6hCwXaRQUBS/DXrjc2ieQM3gifcDYawh0xl1oMNpjuoq4Z2jfwnELu434LVEYnbz8sykaXCyIfAc4wvYzOCiIMp1Tm/cm+zyzSkYmwQL2I9SskV4JOHYgzj+t0w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=silabs.com; dmarc=pass action=none header.from=silabs.com; dkim=pass header.d=silabs.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=silabs.onmicrosoft.com; s=selector2-silabs-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bmuP0wVKTeBAmbWDwuDg/J4UqPpaRbYwbeQahSgCrK0=; b=VX/25fFHhxf9Vk9lN15v5nLQfzhf0wkq0K184ShxT4bNuxi8AAv4VI1pAuuHXTs/7/cYd4tJY2hPjVHD0JBA0wHAbjiNiUnaed0CEXZzcETqHwpAAc8DlMfeOzfoqK1o/ImSRQmD/znDv2gn8ApSoYYYnCNcKMi88bH8rLVibuQ= Received: from MN2PR11MB4063.namprd11.prod.outlook.com (20.179.149.217) by MN2PR11MB3775.namprd11.prod.outlook.com (20.178.253.202) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2263.17; Thu, 19 Sep 2019 10:52:35 +0000 Received: from MN2PR11MB4063.namprd11.prod.outlook.com ([fe80::45dc:e073:4446:4bf8]) by MN2PR11MB4063.namprd11.prod.outlook.com ([fe80::45dc:e073:4446:4bf8%3]) with mapi id 15.20.2263.023; Thu, 19 Sep 2019 10:52:35 +0000 From: Jerome Pouiller To: "devel@driverdev.osuosl.org" , "linux-wireless@vger.kernel.org" CC: "netdev@vger.kernel.org" , "linux-kernel@vger.kernel.org" , Greg Kroah-Hartman , Kalle Valo , "David S . Miller" , David Le Goff , Jerome Pouiller Subject: [PATCH 01/20] staging: wfx: add infrastructure for new driver Thread-Topic: [PATCH 01/20] staging: wfx: add infrastructure for new driver Thread-Index: AQHVbthXG8E30KBeIk2e2gDto0pOYA== Date: Thu, 19 Sep 2019 10:52:34 +0000 Message-ID: <20190919105153.15285-2-Jerome.Pouiller@silabs.com> References: <20190919105153.15285-1-Jerome.Pouiller@silabs.com> In-Reply-To: <20190919105153.15285-1-Jerome.Pouiller@silabs.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=Jerome.Pouiller@silabs.com; x-originating-ip: [37.71.187.125] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: ef6ae4ec-8ab0-410f-4ba8-08d73cef7acd x-microsoft-antispam: BCL:0;PCL:0;RULEID:(2390118)(7020095)(4652040)(8989299)(5600167)(711020)(4605104)(1401327)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(2017052603328)(7193020);SRVR:MN2PR11MB3775; x-ms-traffictypediagnostic: MN2PR11MB3775: x-ms-exchange-purlcount: 1 x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-forefront-prvs: 016572D96D x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(366004)(376002)(346002)(39850400004)(136003)(396003)(199004)(189003)(86362001)(256004)(14444005)(8936002)(4326008)(66066001)(36756003)(14454004)(305945005)(64756008)(5660300002)(66476007)(66556008)(66446008)(316002)(476003)(446003)(11346002)(966005)(110136005)(2616005)(66946007)(478600001)(91956017)(25786009)(76116006)(7736002)(71190400001)(81166006)(1076003)(30864003)(2501003)(6506007)(186003)(6436002)(486006)(81156014)(3846002)(6116002)(8676002)(102836004)(107886003)(54906003)(6306002)(76176011)(2906002)(26005)(66574012)(99286004)(6486002)(71200400001)(6512007);DIR:OUT;SFP:1101;SCL:1;SRVR:MN2PR11MB3775;H:MN2PR11MB4063.namprd11.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; received-spf: None (protection.outlook.com: silabs.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: UPjPLOmTTc28LNW1hqYVfq9Y0I0RLPukv95LG7mqXZMjQ+5cDEH2ymMtdU54IPBr9t09a5HIJbb6aVtBoiv8tFiRNQacF1gSYiRvoPXMfo4h3mGSN6pDEMmGCYkYur1DCFDZPhllydr1hKEEIOzhGB3+4n7/5rKFHhBrz+AUFv9jmeQKv8VNtcAiL/nvS7I45YZZXRyXeGxhnVnFSGdpoXc7PvrgKaU87hQ1scLn30fTTUnPSXhFn57KNvQk29qUxloCf48BQs/QO6gvyODFEUVb60P+3yT97YkZYL38Rj+PsPHB3KlrL+s755LVq14f4w0dCkvpoagjQyETJJlYH5QQcNI701MLBVKgrmm00VfJkPcry416pOw3Fkg8hTl/RgZ2NuAvf6UIzOdAQnyxRrkpwuvYPHAgjcC+ZMiowVI= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: silabs.com X-MS-Exchange-CrossTenant-Network-Message-Id: ef6ae4ec-8ab0-410f-4ba8-08d73cef7acd X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Sep 2019 10:52:34.5442 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 54dbd822-5231-4b20-944d-6f4abcd541fb X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: ty4hZdEYkPxq99GzKsA1uOSw/gzl64+Slh7t9q4qlfCYnwoj8O2nv7FLCkaCjupYaJu0ltkIf2Sv0pMQoSywSw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR11MB3775 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org RnJvbTogSsOpcsO0bWUgUG91aWxsZXIgPGplcm9tZS5wb3VpbGxlckBzaWxhYnMuY29tPg0KDQpJ bnN0YW50aWF0ZSBidWlsZCBpbmZyYXN0cnVjdHVyZSBXRnggZHJpdmVyLiBUaGlzIGRyaXZlciBw cm92aWRlcyBzdXBwb3J0DQpmb3IgV2lmaSBjaGlwc2V0IFNpbGljb24gTGFicyBXRjIwMCBhbmQg ZnVydGhlcjoNCg0KICAgaHR0cHM6Ly93d3cuc2lsYWJzLmNvbS9kb2N1bWVudHMvcHVibGljL2Rh dGEtc2hlZXRzL3dmMjAwLWRhdGFzaGVldC5wZGYNCg0KVGhpcyBjaGlwIHN1cHBvcnQgU1BJIGFu ZCBTRElPIGJ1cy4NCg0KU0RJTyBpbnRlcmZhY2UgaGFzIHR3byBwYXJ0aWN1bGFyaXRpZXM6DQog ICAgMS4gU29tZSBwYXJhbWV0ZXJzIG1heSBiZSB1c2VmdWwgZm9yIGVuZCB1c2VyIChJIHdpbGwg dGFsayBhYm91dA0KICAgICAgIGdwaW9fd2FrZXVwIGxhdGVyKS4NCiAgICAyLiBUaGUgU0RJTyBW SUQgYW5kIFBJRCBvZiBXRjIwMCBhcmUgMDAwMDowMDAxIHdoaWNoIGFyZSB0b28gbXVjaA0KICAg ICAgIGdlbmVyaWMgdG8gcmVseSBvbi4NCg0KU28sIGN1cnJlbnQgY29kZSBjaGVja3MgVklEL1BJ RCBhbmQgbG9va3MgZm9yIGEgbm9kZSBpbiBEVCAoc2luY2UgV0YyMDANCnRhcmdldHMgZW1iZWRk ZWQgcGxhdGZvcm1zLCBJIGRvbid0IHRoaW5rIGl0IGlzIGEgcHJvYmxlbSB0byByZWx5IG9uDQpE VCkuIERUIGNhbiBhbHNvIGJlIHVzZWQgdG8gZGVmaW5lIHRvIHBhcmFtZXRlcnMgZm9yIGRyaXZl ci4gQ3VycmVudGx5LA0KaWYgbm8gbm9kZSBpcyBmb3VuZCwgYSB3YXJuaW5nIGlzIGVtaXR0ZWQs IGJ1dCBpdCBjb3VsZCBiZSBjaGFuZ2VkIGluDQplcnJvci4NCg0KU2lnbmVkLW9mZi1ieTogSsOp csO0bWUgUG91aWxsZXIgPGplcm9tZS5wb3VpbGxlckBzaWxhYnMuY29tPg0KLS0tDQogTUFJTlRB SU5FUlMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDUgKw0KIGRyaXZlcnMv c3RhZ2luZy9LY29uZmlnICAgICAgICAgICAgICAgICAgICAgICB8ICAyICsNCiBkcml2ZXJzL3N0 YWdpbmcvTWFrZWZpbGUgICAgICAgICAgICAgICAgICAgICAgfCAgMSArDQogLi4uL2JpbmRpbmdz L25ldC93aXJlbGVzcy9zaWxpYWJzLHdmeC50eHQgICAgIHwgOTcgKysrKysrKysrKysrKysrKysr Kw0KIGRyaXZlcnMvc3RhZ2luZy93ZngvS2NvbmZpZyAgICAgICAgICAgICAgICAgICB8ICA3ICsr DQogZHJpdmVycy9zdGFnaW5nL3dmeC9NYWtlZmlsZSAgICAgICAgICAgICAgICAgIHwgIDggKysN CiBkcml2ZXJzL3N0YWdpbmcvd2Z4L2J1cy5oICAgICAgICAgICAgICAgICAgICAgfCAxNyArKysr DQogZHJpdmVycy9zdGFnaW5nL3dmeC9idXNfc2Rpby5jICAgICAgICAgICAgICAgIHwgNzAgKysr KysrKysrKysrKw0KIGRyaXZlcnMvc3RhZ2luZy93ZngvYnVzX3NwaS5jICAgICAgICAgICAgICAg ICB8IDUzICsrKysrKysrKysNCiBkcml2ZXJzL3N0YWdpbmcvd2Z4L21haW4uYyAgICAgICAgICAg ICAgICAgICAgfCA0NyArKysrKysrKysNCiBkcml2ZXJzL3N0YWdpbmcvd2Z4L3dmeF92ZXJzaW9u LmggICAgICAgICAgICAgfCAgMyArDQogMTEgZmlsZXMgY2hhbmdlZCwgMzEwIGluc2VydGlvbnMo KykNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9zdGFnaW5nL3dmeC9Eb2N1bWVudGF0aW9u L2RldmljZXRyZWUvYmluZGluZ3MvbmV0L3dpcmVsZXNzL3NpbGlhYnMsd2Z4LnR4dA0KIGNyZWF0 ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL3N0YWdpbmcvd2Z4L0tjb25maWcNCiBjcmVhdGUgbW9kZSAx MDA2NDQgZHJpdmVycy9zdGFnaW5nL3dmeC9NYWtlZmlsZQ0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBk cml2ZXJzL3N0YWdpbmcvd2Z4L2J1cy5oDQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvc3Rh Z2luZy93ZngvYnVzX3NkaW8uYw0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL3N0YWdpbmcv d2Z4L2J1c19zcGkuYw0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL3N0YWdpbmcvd2Z4L21h aW4uYw0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL3N0YWdpbmcvd2Z4L3dmeF92ZXJzaW9u LmgNCg0KZGlmZiAtLWdpdCBhL01BSU5UQUlORVJTIGIvTUFJTlRBSU5FUlMNCmluZGV4IGIyMzI2 ZGVjZTI4ZS4uMGFkNmZiZGUzYWM5IDEwMDY0NA0KLS0tIGEvTUFJTlRBSU5FUlMNCisrKyBiL01B SU5UQUlORVJTDQpAQCAtMTQ3NTUsNiArMTQ3NTUsMTEgQEAgUzoJTWFpbnRhaW5lZA0KIEY6CWRy aXZlcnMvaW5wdXQvdG91Y2hzY3JlZW4vc2lsZWFkLmMNCiBGOglkcml2ZXJzL3BsYXRmb3JtL3g4 Ni90b3VjaHNjcmVlbl9kbWkuYw0KIA0KK1NJTElDT04gTEFCUyBXSVJFTEVTUyBEUklWRVJTIChm b3IgV0Z4eHggc2VyaWVzKQ0KK006CUrDqXLDtG1lIFBvdWlsbGVyIDxqZXJvbWUucG91aWxsZXJA c2lsYWJzLmNvbT4NCitTOglTdXBwb3J0ZWQNCitGOglkcml2ZXJzL3N0YWdpbmcvd2Z4Lw0KKw0K IFNJTElDT04gTU9USU9OIFNNNzEyIEZSQU1FIEJVRkZFUiBEUklWRVINCiBNOglTdWRpcCBNdWto ZXJqZWUgPHN1ZGlwbS5tdWtoZXJqZWVAZ21haWwuY29tPg0KIE06CVRlZGR5IFdhbmcgPHRlZGR5 LndhbmdAc2lsaWNvbm1vdGlvbi5jb20+DQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9zdGFnaW5nL0tj b25maWcgYi9kcml2ZXJzL3N0YWdpbmcvS2NvbmZpZw0KaW5kZXggNmYxZmE0Yzg0OWExLi5hNDkw MTQxYTBlODggMTAwNjQ0DQotLS0gYS9kcml2ZXJzL3N0YWdpbmcvS2NvbmZpZw0KKysrIGIvZHJp dmVycy9zdGFnaW5nL0tjb25maWcNCkBAIC0xMjUsNCArMTI1LDYgQEAgc291cmNlICJkcml2ZXJz L3N0YWdpbmcvZXhmYXQvS2NvbmZpZyINCiANCiBzb3VyY2UgImRyaXZlcnMvc3RhZ2luZy9xbGdl L0tjb25maWciDQogDQorc291cmNlICJkcml2ZXJzL3N0YWdpbmcvd2Z4L0tjb25maWciDQorDQog ZW5kaWYgIyBTVEFHSU5HDQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9zdGFnaW5nL01ha2VmaWxlIGIv ZHJpdmVycy9zdGFnaW5nL01ha2VmaWxlDQppbmRleCBhOTBmOWIzMDhjOGQuLjRjYjU0OGEwZmY4 NyAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvc3RhZ2luZy9NYWtlZmlsZQ0KKysrIGIvZHJpdmVycy9z dGFnaW5nL01ha2VmaWxlDQpAQCAtNTMsMyArNTMsNCBAQCBvYmotJChDT05GSUdfVVdCKQkJKz0g dXdiLw0KIG9iai0kKENPTkZJR19VU0JfV1VTQikJCSs9IHd1c2Jjb3JlLw0KIG9iai0kKENPTkZJ R19FWEZBVF9GUykJCSs9IGV4ZmF0Lw0KIG9iai0kKENPTkZJR19RTEdFKQkJKz0gcWxnZS8NCitv YmotJChDT05GSUdfV0ZYKQkJKz0gd2Z4Lw0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvc3RhZ2luZy93 ZngvRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25ldC93aXJlbGVzcy9zaWxpYWJz LHdmeC50eHQgYi9kcml2ZXJzL3N0YWdpbmcvd2Z4L0RvY3VtZW50YXRpb24vZGV2aWNldHJlZS9i aW5kaW5ncy9uZXQvd2lyZWxlc3Mvc2lsaWFicyx3ZngudHh0DQpuZXcgZmlsZSBtb2RlIDEwMDY0 NA0KaW5kZXggMDAwMDAwMDAwMDAwLi4xNTk2NWM5YjQxODANCi0tLSAvZGV2L251bGwNCisrKyBi L2RyaXZlcnMvc3RhZ2luZy93ZngvRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL25l dC93aXJlbGVzcy9zaWxpYWJzLHdmeC50eHQNCkBAIC0wLDAgKzEsOTcgQEANCitUaGUgV0Z4eHgg Y2hpcCBzZXJpZXMgY2FuIGJlIGNvbm5lY3RlZCB2aWEgU1BJIG9yIHZpYSBTRElPLg0KKw0KK1NQ SQ0KKy0tLQ0KKw0KK1lvdSBoYXZlIHRvIGRlY2xhcmUgdGhlIFdGeHh4IGNoaXAgaW4geW91ciBk ZXZpY2UgdHJlZS4NCisNCitSZXF1aXJlZCBwcm9wZXJ0aWVzOg0KKyAtIGNvbXBhdGlibGU6IFNo b3VsZCBiZSAic2lsYWJzLHdmeC1zcGkiDQorIC0gcmVnOiBDaGlwIHNlbGVjdCBhZGRyZXNzIG9m IGRldmljZQ0KKyAtIHNwaS1tYXgtZnJlcXVlbmN5OiBNYXhpbXVtIFNQSSBjbG9ja2luZyBzcGVl ZCBvZiBkZXZpY2UgaW4gSHoNCisgLSBpbnRlcnJ1cHRzLWV4dGVuZGVkOiBTaG91bGQgY29udGFp biBpbnRlcnJ1cHQgbGluZSAoaW50ZXJydXB0LXBhcmVudCArDQorICAgaW50ZXJydXB0IGNhbiBh bHNvIGJlZW4gdXNlZCkuIFRyaWdnZXIgc2hvdWxkIGJlIGBJUlFfVFlQRV9FREdFX1JJU0lOR2Au DQorDQorT3B0aW9uYWwgcHJvcGVydGllczoNCisgLSByZXNldC1ncGlvczogcGhhbmRsZSBvZiBn cGlvIHRoYXQgd2lsbCBiZSB1c2VkIHRvIHJlc2V0IGNoaXAgZHVyaW5nIHByb2JlLg0KKyAgIFdp dGhvdXQgdGhpcyBwcm9wZXJ0eSwgeW91IG1heSBlbmNvdW50ZXIgaXNzdWVzIHdpdGggd2FybSBi b290Lg0KKw0KK1BsZWFzZSBjb25zdWx0IERvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5n cy9zcGkvc3BpLWJ1cy50eHQgZm9yIG9wdGlvbmFsDQorU1BJIGNvbm5lY3Rpb24gcmVsYXRlZCBw cm9wZXJ0aWVzLA0KKw0KK0V4YW1wbGU6DQorDQorJnNwaTEgew0KKwl3Znggew0KKwkJY29tcGF0 aWJsZSA9ICJzaWxhYnMsd2Z4LXNwaSI7DQorCQlwaW5jdHJsLW5hbWVzID0gImRlZmF1bHQiOw0K KwkJcGluY3RybC0wID0gPCZ3ZnhfaXJxICZ3ZnhfZ3Bpb3M+Ow0KKwkJaW50ZXJydXB0cy1leHRl bmRlZCA9IDwmZ3BpbyAxNiBJUlFfVFlQRV9FREdFX1JJU0lORz47DQorCQl3YWtldXAtZ3Bpb3Mg PSA8JmdwaW8gMTIgR1BJT19BQ1RJVkVfSElHSD47DQorCQlyZXNldC1ncGlvcyA9IDwmZ3BpbyAx MyBHUElPX0FDVElWRV9ISUdIPjsNCisJCXJlZyA9IDwwPjsNCisJCXNwaS1tYXgtZnJlcXVlbmN5 ID0gPDQyMDAwMDAwPjsNCisJfTsNCit9Ow0KKw0KKw0KK1NESU8NCistLS0tDQorDQorVGhlIGRy aXZlciBpcyBhYmxlIHRvIGRldGVjdCBhIFdGeHh4IGNoaXAgb24gU0RJTyBidXMgYnkgbWF0Y2hp bmcgaXRzIFZlbmRvciBJRA0KK2FuZCBQcm9kdWN0IElELiBIb3dldmVyLCBkcml2ZXIgd2lsbCBv bmx5IHByb3ZpZGUgbGltaXRlZCBmZWF0dXJlcyBpbiB0aGlzDQorY2FzZS4gVGh1cyBkZWNsYXJp bmcgV0Z4eHggY2hpcCBpbiBkZXZpY2UgdHJlZSBpcyBzdHJvbmdseSByZWNvbW1lbmRlZCAoYW5k IG1heQ0KK2JlY29tZSBtYW5kYXRvcnkgaW4gdGhlIGZ1dHVyZSkuDQorDQorUmVxdWlyZWQgcHJv cGVydGllczoNCisgLSBjb21wYXRpYmxlOiBTaG91bGQgYmUgInNpbGFicyx3Zngtc2RpbyINCisg LSByZWc6IFNob3VsZCBiZSAxDQorDQorSW4gYWRkaXRpb24sIGl0IGlzIHJlY29tbWVuZGVkIHRv IGRlY2xhcmUgYSBtbWMtcHdyc2VxIG9uIFNESU8gaG9zdCBhYm92ZSBXRnguDQorV2l0aG91dCBp dCwgeW91IG1heSBlbmNvdW50ZXIgaXNzdWVzIHdpdGggd2FybSBib290LiBtbWMtcHdyc2VxIHNo b3VsZCBiZQ0KK2NvbXBhdGlibGUgd2l0aCBtbWMtcHdyc2VxLXNpbXBsZS4gUGxlYXNlIGNvbnN1 bHQNCitEb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbW1jL21tYy1wd3JzZXEtc2lt cGxlLnR4dCBmb3IgbW9yZQ0KK2luZm9ybWF0aW9uLg0KKw0KK0V4YW1wbGU6DQorDQorLyB7DQor CXdmeF9wd3JzZXE6IHdmeF9wd3JzZXEgew0KKwkJY29tcGF0aWJsZSA9ICJtbWMtcHdyc2VxLXNp bXBsZSI7DQorCQlwaW5jdHJsLW5hbWVzID0gImRlZmF1bHQiOw0KKwkJcGluY3RybC0wID0gPCZ3 ZnhfcmVzZXQ+Ow0KKwkJcmVzZXQtZ3Bpb3MgPSA8JmdwaW8gMTMgR1BJT19BQ1RJVkVfTE9XPjsN CisJfTsNCit9Ow0KKw0KKyZtbWMxIHsNCisJbW1jLXB3cnNlcSA9IDwmd2Z4X3B3cnNlcT47DQor CSNhZGRyZXNzLXNpemUgPSA8MT47DQorCSNzaXplID0gPDA+Ow0KKw0KKwltbWNAMSB7DQorCQlj b21wYXRpYmxlID0gInNpbGFicyx3Zngtc2RpbyI7DQorCQlyZWcgPSA8MT47DQorCQlwaW5jdHJs LW5hbWVzID0gImRlZmF1bHQiOw0KKwkJcGluY3RybC0wID0gPCZ3Znhfd2FrZXVwPjsNCisJCXdh a2V1cC1ncGlvcyA9IDwmZ3BpbyAxMiBHUElPX0FDVElWRV9ISUdIPjsNCisJfTsNCit9Ow0KKw0K K05vdGUgdGhhdCAjYWRkcmVzcy1zaXplIGFuZCAjc2l6ZSBzaG91ZCBhbHJlYWR5IGJlIGRlZmlu ZWQgaW4gbm9kZSBtbWMxLCBidXQgaXQNCitpcyByYXJlbHkgdGhlIGNhc2UuDQorDQorQ29tbW9u IHByb3BlcnRpZXMNCistLS0tLS0tLS0tLS0tLS0tLQ0KKw0KK1NvbWUgcHJvcGVydGllcyBhcmUg cmVjb2duaXplZCBlaXRoZXIgYnkgU1BJIGFuZCBTRElPIHZlcnNpb25zOg0KKyAtIHdha2V1cC1n cGlvczogcGhhbmRsZSBvZiBncGlvIHRoYXQgd2lsbCBiZSB1c2VkIHRvIHdha2UtdXAgY2hpcC4g V2l0aG91dA0KKyAgIHRoaXMgcHJvcGVydHksIGRyaXZlciB3aWxsIGRpc2FibGUgbW9zdCBvZiBw b3dlciBzYXZpbmcgZmVhdHVyZXMuDQorIC0gY29uZmlnLWZpbGU6IFVzZSBhbiBhbHRlcm5hdGl2 ZSBmaWxlIGFzIFBEUy4gRGVmYXVsdCBpcyBgd2YyMDAucGRzYC4gT25seQ0KKyAgIG5lY2Vzc2Fy eSBmb3IgZGV2ZWxvcG1lbnQvZGVidWcgcHVycG9zZS4NCisgLSBzbGtfa2V5OiBTdHJpbmcgcmVw cmVzZW50aW5nIGhleGRlY2ltYWwgdmFsdWUgb2Ygc2VjdXJlIGxpbmsga2V5IHRvIHVzZS4NCisg ICBNdXN0IGNvbnRhaW5zIDY0IGhleGFkZWNpbWFsIGRpZ2l0cy4gTm90IHN1cHBvcnRlZCBpbiBj dXJyZW50IHZlcnNpb24uDQorDQorV0Z4IGRyaXZlciBhbHNvIHN1cHBvcnRzIGBtYWMtYWRkcmVz c2AgYW5kIGBsb2NhbC1tYWMtYWRkcmVzc2AgYXMgZGVzY3JpYmVkIGluDQorRG9jdW1lbnRhdGlv bi9kZXZpY2V0cmVlL2JpbmRpbmcvbmV0L2V0aGVybmV0LnR4dA0KKw0KZGlmZiAtLWdpdCBhL2Ry aXZlcnMvc3RhZ2luZy93ZngvS2NvbmZpZyBiL2RyaXZlcnMvc3RhZ2luZy93ZngvS2NvbmZpZw0K bmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMDAwMC4uOWI4YTFjN2E5ZTkwDQot LS0gL2Rldi9udWxsDQorKysgYi9kcml2ZXJzL3N0YWdpbmcvd2Z4L0tjb25maWcNCkBAIC0wLDAg KzEsNyBAQA0KK2NvbmZpZyBXRlgNCisJdHJpc3RhdGUgIlNpbGljb24gTGFicyB3aXJlbGVzcyBj aGlwcyBXRjIwMCBhbmQgZnVydGhlciINCisJZGVwZW5kcyBvbiBNQUM4MDIxMQ0KKwlkZXBlbmRz IG9uIChTUEkgfHwgTU1DKQ0KKwloZWxwDQorCSAgVGhpcyBpcyBhIGRyaXZlciBmb3IgU2lsaWNv bnMgTGFicyBXRnh4eCBzZXJpZXMgKFdGMjAwIGFuZCBmdXJ0aGVyKQ0KKwkgIGNoaXBzZXRzLiBU aGlzIGNoaXAgY2FuIGJlIGZvdW5kIG9uIFNQSSBvciBTRElPIGJ1c2VzLg0KZGlmZiAtLWdpdCBh L2RyaXZlcnMvc3RhZ2luZy93ZngvTWFrZWZpbGUgYi9kcml2ZXJzL3N0YWdpbmcvd2Z4L01ha2Vm aWxlDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwMDAwLi43NDkzOWE1YTBh MWMNCi0tLSAvZGV2L251bGwNCisrKyBiL2RyaXZlcnMvc3RhZ2luZy93ZngvTWFrZWZpbGUNCkBA IC0wLDAgKzEsOCBAQA0KKyMgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjANCisNCit3 ZngteSA6PSBcDQorCW1haW4ubw0KK3dmeC0kKENPTkZJR19TUEkpICs9IGJ1c19zcGkubw0KK3dm eC0kKHN1YnN0IG0seSwkKENPTkZJR19NTUMpKSArPSBidXNfc2Rpby5vDQorDQorb2JqLSQoQ09O RklHX1dGWCkgKz0gd2Z4Lm8NCmRpZmYgLS1naXQgYS9kcml2ZXJzL3N0YWdpbmcvd2Z4L2J1cy5o IGIvZHJpdmVycy9zdGFnaW5nL3dmeC9idXMuaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4 IDAwMDAwMDAwMDAwMC4uOGNlODcxYThhOWZmDQotLS0gL2Rldi9udWxsDQorKysgYi9kcml2ZXJz L3N0YWdpbmcvd2Z4L2J1cy5oDQpAQCAtMCwwICsxLDE3IEBADQorLyogU1BEWC1MaWNlbnNlLUlk ZW50aWZpZXI6IEdQTC0yLjAtb25seSAqLw0KKy8qDQorICogQ29tbW9uIGJ1cyBhYnN0cmFjdGlv biBsYXllci4NCisgKg0KKyAqIENvcHlyaWdodCAoYykgMjAxNy0yMDE4LCBTaWxpY29uIExhYm9y YXRvcmllcywgSW5jLg0KKyAqIENvcHlyaWdodCAoYykgMjAxMCwgU1QtRXJpY3Nzb24NCisgKi8N CisjaWZuZGVmIFdGWF9CVVNfSA0KKyNkZWZpbmUgV0ZYX0JVU19IDQorDQorI2luY2x1ZGUgPGxp bnV4L21tYy9zZGlvX2Z1bmMuaD4NCisjaW5jbHVkZSA8bGludXgvc3BpL3NwaS5oPg0KKw0KK2V4 dGVybiBzdHJ1Y3Qgc2Rpb19kcml2ZXIgd2Z4X3NkaW9fZHJpdmVyOw0KK2V4dGVybiBzdHJ1Y3Qg c3BpX2RyaXZlciB3Znhfc3BpX2RyaXZlcjsNCisNCisjZW5kaWYNCmRpZmYgLS1naXQgYS9kcml2 ZXJzL3N0YWdpbmcvd2Z4L2J1c19zZGlvLmMgYi9kcml2ZXJzL3N0YWdpbmcvd2Z4L2J1c19zZGlv LmMNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAwMDAuLjRiMjZjOTk0ZjQz Yw0KLS0tIC9kZXYvbnVsbA0KKysrIGIvZHJpdmVycy9zdGFnaW5nL3dmeC9idXNfc2Rpby5jDQpA QCAtMCwwICsxLDcwIEBADQorLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAtb25s eQ0KKy8qDQorICogU0RJTyBpbnRlcmZhY2UuDQorICoNCisgKiBDb3B5cmlnaHQgKGMpIDIwMTct MjAxOSwgU2lsaWNvbiBMYWJvcmF0b3JpZXMsIEluYy4NCisgKiBDb3B5cmlnaHQgKGMpIDIwMTAs IFNULUVyaWNzc29uDQorICovDQorI2luY2x1ZGUgPGxpbnV4L21vZHVsZS5oPg0KKyNpbmNsdWRl IDxsaW51eC9tbWMvc2Rpb19mdW5jLmg+DQorI2luY2x1ZGUgPGxpbnV4L21tYy9jYXJkLmg+DQor I2luY2x1ZGUgPGxpbnV4L29mX2lycS5oPg0KKw0KKyNpbmNsdWRlICJidXMuaCINCisNCitzdGF0 aWMgY29uc3Qgc3RydWN0IG9mX2RldmljZV9pZCB3Znhfc2Rpb19vZl9tYXRjaFtdOw0KK3N0YXRp YyBpbnQgd2Z4X3NkaW9fcHJvYmUoc3RydWN0IHNkaW9fZnVuYyAqZnVuYywNCisJCQkgIGNvbnN0 IHN0cnVjdCBzZGlvX2RldmljZV9pZCAqaWQpDQorew0KKwlzdHJ1Y3QgZGV2aWNlX25vZGUgKm5w ID0gZnVuYy0+ZGV2Lm9mX25vZGU7DQorDQorCWlmIChmdW5jLT5udW0gIT0gMSkgew0KKwkJZGV2 X2VycigmZnVuYy0+ZGV2LCAiU0RJTyBmdW5jdGlvbiBudW1iZXIgaXMgJWQgd2hpbGUgaXQgc2hv dWxkIGFsd2F5cyBiZSAxICh1bnN1cHBvcnRlZCBjaGlwPylcbiIsIGZ1bmMtPm51bSk7DQorCQly ZXR1cm4gLUVOT0RFVjsNCisJfQ0KKw0KKwlpZiAobnApIHsNCisJCWlmICghb2ZfbWF0Y2hfbm9k ZSh3Znhfc2Rpb19vZl9tYXRjaCwgbnApKSB7DQorCQkJZGV2X3dhcm4oJmZ1bmMtPmRldiwgIm5v IGNvbXBhdGlibGUgZGV2aWNlIGZvdW5kIGluIERUXG4iKTsNCisJCQlyZXR1cm4gLUVOT0RFVjsN CisJCX0NCisJfSBlbHNlIHsNCisJCWRldl93YXJuKCZmdW5jLT5kZXYsICJkZXZpY2UgaXMgbm90 IGRlY2xhcmVkIGluIERULCBmZWF0dXJlcyB3aWxsIGJlIGxpbWl0ZWRcbiIpOw0KKwkJLy8gRklY TUU6IGlnbm9yZSBWSUQvUElEIGFuZCBvbmx5IHJlbHkgb24gZGV2aWNlIHRyZWUNCisJCS8vIHJl dHVybiAtRU5PREVWOw0KKwl9DQorCXJldHVybiAtRUlPOyAvLyBGSVhNRTogbm90IHlldCBzdXBw b3J0ZWQNCit9DQorDQorc3RhdGljIHZvaWQgd2Z4X3NkaW9fcmVtb3ZlKHN0cnVjdCBzZGlvX2Z1 bmMgKmZ1bmMpDQorew0KK30NCisNCisjZGVmaW5lIFNESU9fVkVORE9SX0lEX1NJTEFCUyAgICAg ICAgMHgwMDAwDQorI2RlZmluZSBTRElPX0RFVklDRV9JRF9TSUxBQlNfV0YyMDAgIDB4MTAwMA0K K3N0YXRpYyBjb25zdCBzdHJ1Y3Qgc2Rpb19kZXZpY2VfaWQgd2Z4X3NkaW9faWRzW10gPSB7DQor CXsgU0RJT19ERVZJQ0UoU0RJT19WRU5ET1JfSURfU0lMQUJTLCBTRElPX0RFVklDRV9JRF9TSUxB QlNfV0YyMDApIH0sDQorCS8vIEZJWE1FOiBpZ25vcmUgVklEL1BJRCBhbmQgb25seSByZWx5IG9u IGRldmljZSB0cmVlDQorCS8vIHsgU0RJT19ERVZJQ0UoU0RJT19BTllfSUQsIFNESU9fQU5ZX0lE KSB9LA0KKwl7IH0sDQorfTsNCitNT0RVTEVfREVWSUNFX1RBQkxFKHNkaW8sIHdmeF9zZGlvX2lk cyk7DQorDQorI2lmZGVmIENPTkZJR19PRg0KK3N0YXRpYyBjb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNl X2lkIHdmeF9zZGlvX29mX21hdGNoW10gPSB7DQorCXsgLmNvbXBhdGlibGUgPSAic2lsYWJzLHdm eC1zZGlvIiB9LA0KKwl7IH0sDQorfTsNCitNT0RVTEVfREVWSUNFX1RBQkxFKG9mLCB3Znhfc2Rp b19vZl9tYXRjaCk7DQorI2VuZGlmDQorDQorc3RydWN0IHNkaW9fZHJpdmVyIHdmeF9zZGlvX2Ry aXZlciA9IHsNCisJLm5hbWUgPSAid2Z4LXNkaW8iLA0KKwkuaWRfdGFibGUgPSB3Znhfc2Rpb19p ZHMsDQorCS5wcm9iZSA9IHdmeF9zZGlvX3Byb2JlLA0KKwkucmVtb3ZlID0gd2Z4X3NkaW9fcmVt b3ZlLA0KKwkuZHJ2ID0gew0KKwkJLm93bmVyID0gVEhJU19NT0RVTEUsDQorCQkub2ZfbWF0Y2hf dGFibGUgPSBvZl9tYXRjaF9wdHIod2Z4X3NkaW9fb2ZfbWF0Y2gpLA0KKwl9DQorfTsNCmRpZmYg LS1naXQgYS9kcml2ZXJzL3N0YWdpbmcvd2Z4L2J1c19zcGkuYyBiL2RyaXZlcnMvc3RhZ2luZy93 ZngvYnVzX3NwaS5jDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwMDAwLi41 NzRiNjBmNTEzZTkNCi0tLSAvZGV2L251bGwNCisrKyBiL2RyaXZlcnMvc3RhZ2luZy93ZngvYnVz X3NwaS5jDQpAQCAtMCwwICsxLDUzIEBADQorLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQ TC0yLjAtb25seQ0KKy8qDQorICogU1BJIGludGVyZmFjZS4NCisgKg0KKyAqIENvcHlyaWdodCAo YykgMjAxNy0yMDE5LCBTaWxpY29uIExhYm9yYXRvcmllcywgSW5jLg0KKyAqIENvcHlyaWdodCAo YykgMjAxMSwgU2FncmFkIEluYy4NCisgKiBDb3B5cmlnaHQgKGMpIDIwMTAsIFNULUVyaWNzc29u DQorICovDQorI2luY2x1ZGUgPGxpbnV4L21vZHVsZS5oPg0KKyNpbmNsdWRlIDxsaW51eC9zcGkv c3BpLmg+DQorI2luY2x1ZGUgPGxpbnV4L29mLmg+DQorDQorI2luY2x1ZGUgImJ1cy5oIg0KKw0K K3N0YXRpYyBpbnQgd2Z4X3NwaV9wcm9iZShzdHJ1Y3Qgc3BpX2RldmljZSAqZnVuYykNCit7DQor CXJldHVybiAtRUlPOw0KK30NCisNCisvKiBEaXNjb25uZWN0IEZ1bmN0aW9uIHRvIGJlIGNhbGxl ZCBieSBTUEkgc3RhY2sgd2hlbiBkZXZpY2UgaXMgZGlzY29ubmVjdGVkICovDQorc3RhdGljIGlu dCB3Znhfc3BpX2Rpc2Nvbm5lY3Qoc3RydWN0IHNwaV9kZXZpY2UgKmZ1bmMpDQorew0KKwlyZXR1 cm4gMDsNCit9DQorDQorLyoNCisgKiBGb3IgZHluYW1pYyBkcml2ZXIgYmluZGluZywga2VybmVs IGRvZXMgbm90IHVzZSBPRiB0byBtYXRjaCBkcml2ZXIuIEl0IG9ubHkNCisgKiB1c2UgbW9kYWxp YXMgYW5kIG1vZGFsaWFzIGlzIGEgY29weSBvZiAnY29tcGF0aWJsZScgRFQgbm9kZSB3aXRoIHZl bmRvcg0KKyAqIHN0cmlwcGVkLg0KKyAqLw0KK3N0YXRpYyBjb25zdCBzdHJ1Y3Qgc3BpX2Rldmlj ZV9pZCB3Znhfc3BpX2lkW10gPSB7DQorCXsgIndmeC1zcGkiLCAwIH0sDQorCXsgfSwNCit9Ow0K K01PRFVMRV9ERVZJQ0VfVEFCTEUoc3BpLCB3Znhfc3BpX2lkKTsNCisNCisjaWZkZWYgQ09ORklH X09GDQorc3RhdGljIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgd2Z4X3NwaV9vZl9tYXRjaFtd ID0gew0KKwl7IC5jb21wYXRpYmxlID0gInNpbGFicyx3Zngtc3BpIiB9LA0KKwl7IH0sDQorfTsN CitNT0RVTEVfREVWSUNFX1RBQkxFKG9mLCB3Znhfc3BpX29mX21hdGNoKTsNCisjZW5kaWYNCisN CitzdHJ1Y3Qgc3BpX2RyaXZlciB3Znhfc3BpX2RyaXZlciA9IHsNCisJLmRyaXZlciA9IHsNCisJ CS5uYW1lID0gIndmeC1zcGkiLA0KKwkJLm9mX21hdGNoX3RhYmxlID0gb2ZfbWF0Y2hfcHRyKHdm eF9zcGlfb2ZfbWF0Y2gpLA0KKwl9LA0KKwkuaWRfdGFibGUgPSB3Znhfc3BpX2lkLA0KKwkucHJv YmUgPSB3Znhfc3BpX3Byb2JlLA0KKwkucmVtb3ZlID0gd2Z4X3NwaV9kaXNjb25uZWN0LA0KK307 DQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9zdGFnaW5nL3dmeC9tYWluLmMgYi9kcml2ZXJzL3N0YWdp bmcvd2Z4L21haW4uYw0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMDAwMC4u Y2Q2OWY5NTVmNTMxDQotLS0gL2Rldi9udWxsDQorKysgYi9kcml2ZXJzL3N0YWdpbmcvd2Z4L21h aW4uYw0KQEAgLTAsMCArMSw0NyBAQA0KKy8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBHUEwt Mi4wLW9ubHkNCisvKg0KKyAqIERldmljZSBwcm9iZSBhbmQgcmVnaXN0ZXIuDQorICoNCisgKiBD b3B5cmlnaHQgKGMpIDIwMTctMjAxOSwgU2lsaWNvbiBMYWJvcmF0b3JpZXMsIEluYy4NCisgKiBD b3B5cmlnaHQgKGMpIDIwMTAsIFNULUVyaWNzc29uDQorICogQ29weXJpZ2h0IChjKSAyMDA4LCBK b2hhbm5lcyBCZXJnIDxqb2hhbm5lc0BzaXBzb2x1dGlvbnMubmV0Pg0KKyAqIENvcHlyaWdodCAo YykgMjAwOCBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykuDQor ICogQ29weXJpZ2h0IChjKSAyMDA3LTIwMDksIENocmlzdGlhbiBMYW1wYXJ0ZXIgPGNodW5rZWV5 QHdlYi5kZT4NCisgKiBDb3B5cmlnaHQgKGMpIDIwMDYsIE1pY2hhZWwgV3UgPGZsYW1pbmdpY2VA c291cm1pbGsubmV0Pg0KKyAqIENvcHlyaWdodCAoYykgMjAwNC0yMDA2IEplYW4tQmFwdGlzdGUg Tm90ZSA8amJub3RlQGdtYWlsLmNvbT4sIGV0IGFsLg0KKyAqLw0KKyNpbmNsdWRlIDxsaW51eC9t b2R1bGUuaD4NCisjaW5jbHVkZSA8bGludXgvbW1jL3NkaW9fZnVuYy5oPg0KKyNpbmNsdWRlIDxs aW51eC9zcGkvc3BpLmg+DQorI2luY2x1ZGUgPGxpbnV4L2V0aGVyZGV2aWNlLmg+DQorDQorI2lu Y2x1ZGUgImJ1cy5oIg0KKyNpbmNsdWRlICJ3ZnhfdmVyc2lvbi5oIg0KKw0KK01PRFVMRV9ERVND UklQVElPTigiU2lsaWNvbiBMYWJzIDgwMi4xMSBXaXJlbGVzcyBMQU4gZHJpdmVyIGZvciBXRngi KTsNCitNT0RVTEVfQVVUSE9SKCJKw6lyw7RtZSBQb3VpbGxlciA8amVyb21lLnBvdWlsbGVyQHNp bGFicy5jb20+Iik7DQorTU9EVUxFX0xJQ0VOU0UoIkdQTCIpOw0KK01PRFVMRV9WRVJTSU9OKFdG WF9MQUJFTCk7DQorDQorc3RhdGljIGludCBfX2luaXQgd2Z4X2NvcmVfaW5pdCh2b2lkKQ0KK3sN CisJaW50IHJldCA9IDA7DQorDQorCXByX2luZm8oIndmeDogU2lsaWNvbiBMYWJzICIgV0ZYX0xB QkVMICJcbiIpOw0KKw0KKwlpZiAoSVNfRU5BQkxFRChDT05GSUdfU1BJKSkNCisJCXJldCA9IHNw aV9yZWdpc3Rlcl9kcml2ZXIoJndmeF9zcGlfZHJpdmVyKTsNCisJaWYgKElTX0VOQUJMRUQoQ09O RklHX01NQykgJiYgIXJldCkNCisJCXJldCA9IHNkaW9fcmVnaXN0ZXJfZHJpdmVyKCZ3Znhfc2Rp b19kcml2ZXIpOw0KKwlyZXR1cm4gcmV0Ow0KK30NCittb2R1bGVfaW5pdCh3ZnhfY29yZV9pbml0 KTsNCisNCitzdGF0aWMgdm9pZCBfX2V4aXQgd2Z4X2NvcmVfZXhpdCh2b2lkKQ0KK3sNCisJaWYg KElTX0VOQUJMRUQoQ09ORklHX01NQykpDQorCQlzZGlvX3VucmVnaXN0ZXJfZHJpdmVyKCZ3Znhf c2Rpb19kcml2ZXIpOw0KKwlpZiAoSVNfRU5BQkxFRChDT05GSUdfU1BJKSkNCisJCXNwaV91bnJl Z2lzdGVyX2RyaXZlcigmd2Z4X3NwaV9kcml2ZXIpOw0KK30NCittb2R1bGVfZXhpdCh3ZnhfY29y ZV9leGl0KTsNCmRpZmYgLS1naXQgYS9kcml2ZXJzL3N0YWdpbmcvd2Z4L3dmeF92ZXJzaW9uLmgg Yi9kcml2ZXJzL3N0YWdpbmcvd2Z4L3dmeF92ZXJzaW9uLmgNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 DQppbmRleCAwMDAwMDAwMDAwMDAuLjZlN2YzMDIwN2M3Mw0KLS0tIC9kZXYvbnVsbA0KKysrIGIv ZHJpdmVycy9zdGFnaW5nL3dmeC93ZnhfdmVyc2lvbi5oDQpAQCAtMCwwICsxLDMgQEANCisvKiBT UERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMC1vbmx5ICovDQorLyogVEhJUyBGSUxFIElT IEFVVE9NQVRJQ0FMTFkgR0VORVJBVEVELiBETyBOT1QgRURJVCEgKi8NCisjZGVmaW5lIFdGWF9M QUJFTCAiMi4zLjEiDQotLSANCjIuMjAuMQ0K