From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id C8EA7A04B1; Wed, 30 Sep 2020 02:25:37 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 3FF811DA97; Wed, 30 Sep 2020 02:25:35 +0200 (CEST) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by dpdk.org (Postfix) with ESMTP id A20F61D6B5 for ; Wed, 30 Sep 2020 02:25:33 +0200 (CEST) IronPort-SDR: ThyYbat+OMuJTLQO66SIbqbimlES5nYANo3zrJce7GVzZQG22882VR/7JK/ADri5vzGSXrEffN JwODiK7WoFLg== X-IronPort-AV: E=McAfee;i="6000,8403,9759"; a="226473811" X-IronPort-AV: E=Sophos;i="5.77,320,1596524400"; d="scan'208";a="226473811" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Sep 2020 17:25:29 -0700 IronPort-SDR: C3ZnbcDwDoDerKXokTHeGhvdl2U2nO/igE7V+nlhQaYL8+FpKhy2QnQ5zlEQT5FkI7yMp41uXU WGxutgaSxyww== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,320,1596524400"; d="scan'208";a="307970914" Received: from orsmsx605.amr.corp.intel.com ([10.22.229.18]) by orsmga003.jf.intel.com with ESMTP; 29 Sep 2020 17:25:29 -0700 Received: from orsmsx601.amr.corp.intel.com (10.22.229.14) by ORSMSX605.amr.corp.intel.com (10.22.229.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Tue, 29 Sep 2020 17:25:28 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5 via Frontend Transport; Tue, 29 Sep 2020 17:25:28 -0700 Received: from NAM04-CO1-obe.outbound.protection.outlook.com (104.47.45.55) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.1713.5; Tue, 29 Sep 2020 17:25:24 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fPv3aH4xfcZsPGHbfj+qaI8DdfH2bleBlOOcxKwls7AwKMIsq4QLyLKZ7gvZ2kNAr8unlV7DVxgxNJTz2itnnFUhkOJEIXKQiV82f3AZr5pJLKyyqKvMlRuLMVDW5tzUEAcvD95nwR1xTguruk4yUaX6xgfdufrpNLWfLmVq4GkjDbbEjHaK0g4KkQgIFi+JVW+Ktst2v/1izeKdu+IBgv6nksXzsUvANIhOUlxWXB136kcHVvJbi8WTDkLi4fD3M1acAQKDObFW+7UwgAhxWTd/Mavj8LgAYhqpyPFs4v9EA3e5aP9s2fwG1QRNZIdYTzUzl3SxgnobT3Tq+RK8ew== 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=OkT8/vCI6uivQ0nKRy6OF159Z02V2O5KMdSyoSER3pc=; b=Kvme/RdeL0RUFqkbCvsVWPKmm5B0b07DdeLZNZqdcWlGovamG4wu24s965deU97S9aY0wb82Whd/4KRP1+zfr+35GX6W/0RMIAJZlAnym4RaxvWixasLVBe6yt+jFxU5q/cdYs7r5+iKjmZNTGW5pOhTf+ddrIynmJKsXMn/y1qX0WLP+d/anZ1fidwkhPtjV71dcTHFmXYW034FWGgMLku7pHU2QiHoOd618QB5KhYnHFOUBrk+PKKBW6/3TxYR/8aBQdvVU11lzyUUx692av2L/O92+mSrIP3NXR0NHNC+2vtVs6NcA/KFR04bUN4G2RUFK9VreeYue8jDhcSsNg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OkT8/vCI6uivQ0nKRy6OF159Z02V2O5KMdSyoSER3pc=; b=JWJ0NpTRe05mMgeigPe7Tc/aXvIma5R2Xaa5NSxZyfEB9wFfE1YFEpAHw2yWCT6NrHK1EEm07UMWyKHPdnfYqyzOOMMNi5HjAQ4X4tK6cbhhUVWJ++zNbEa4xhJt9zF+PxeLr44+sL+3KEQ/nrfTLNILika79WdqmGjdxDbMisA= Received: from BY5PR11MB4451.namprd11.prod.outlook.com (2603:10b6:a03:1cb::30) by BYAPR11MB3573.namprd11.prod.outlook.com (2603:10b6:a03:fe::33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3412.25; Wed, 30 Sep 2020 00:25:19 +0000 Received: from BY5PR11MB4451.namprd11.prod.outlook.com ([fe80::4162:97e1:7d04:a508]) by BY5PR11MB4451.namprd11.prod.outlook.com ([fe80::4162:97e1:7d04:a508%7]) with mapi id 15.20.3412.028; Wed, 30 Sep 2020 00:25:19 +0000 From: "Chautru, Nicolas" To: Tom Rix , "dev@dpdk.org" , "akhil.goyal@nxp.com" CC: "Richardson, Bruce" , "Xu, Rosen" , "dave.burley@accelercomm.com" , "aidan.goddard@accelercomm.com" , "Yigit, Ferruh" , "Liu, Tianjiao" Thread-Topic: [dpdk-dev] [PATCH v9 03/10] baseband/acc100: add info get function Thread-Index: AQHWlffiLx89OCFpUk2vwH5VAwOOTqmAHrMAgAAuoeA= Date: Wed, 30 Sep 2020 00:25:19 +0000 Message-ID: References: <1597796731-57841-12-git-send-email-nicolas.chautru@intel.com> <1601339385-117424-1-git-send-email-nicolas.chautru@intel.com> <1601339385-117424-4-git-send-email-nicolas.chautru@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.5.1.3 authentication-results: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [45.28.143.88] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 6cd0a790-4d76-4148-2ed7-08d864d75011 x-ms-traffictypediagnostic: BYAPR11MB3573: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:580; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 8YUD2Apf3MSyds0ZqZCy6eKHXiOejljIDbOOLli6cK/Ov8b5zDd60u1pOk9wyS/yyX6inoMNqDLdR2JDEluHcLXbTbfBQPZKBffykMwo5vNNXQ3rEpSgSyHCutQaeUSIHEBMFL6EvwvRzotXKVHH+T4qWlF9+TmXb+e/MlLN1m6+LVh5URYnnaLfoZZgd8mW5aaLIkXaZY+gwxhONeKQdxYIRNKOix27q0dJUXO5yGUFJ8+JPH9VI0eH1SMLDce/XIW+smUkGcQWNPa7XJZmI1gsrgUfBa83rKswQtVAE+P/WayCuVWW3CiCIyFXJFGW+7NnFmv8jtNwb9zbLHTnYPHVqV87DimqSRbivRimH8G0IdXOWc9mvDC3o8chEXcU x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BY5PR11MB4451.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(376002)(346002)(39860400002)(136003)(396003)(76116006)(478600001)(66946007)(6506007)(53546011)(7696005)(26005)(186003)(9686003)(8936002)(33656002)(55016002)(110136005)(2906002)(8676002)(71200400001)(4326008)(52536014)(86362001)(66556008)(64756008)(66446008)(5660300002)(66476007)(316002)(54906003)(30864003)(107886003)(83380400001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: FDYyONCjjf/wGUTYxv5Bf3pDGiSHrkTs3e1LmvKnmIDTdRcv+tW/BtAhCp0V/YBBG8FyhRR4/aW+rnSoxlmTkHo20xWBWVJs9LyoXVXC56iByLSYhv8i6N/7d8eiynlV6f5B8GgggBN16Xp2z7Yodh9k5ZUN6mDefGsQiWKPDqUD/Zs6IxKHxnTCQOcHEuB812ci5m4sibiNQ21KNyDjCS7e8slIwYOL1WFgRZS1sdnbZyV8ENHf6vi81PWjaf9rbEqpvSa4PuHcy5nXtz+igl+ec5R+Ct0la1/pQX5N5njid5EU4LHLg3LmjK59Wti672IIh0/IBvRk2HmpzrWjYJ8r/UtPQyJvh2HeAcxnYdH9Mh0NZq6MQPa6SGuRAHAcaCevwPWI96pbH1x1qxoxVdRxrL2l+SQtUTmcam1lzQMx7+XlFaoiA2hKqmXRBC8Rf4pSd7yhI5gNBn7H+d+sY4SUkycaHOtQIa5WeL9irscNvafeVvagK48EpcEOtAAhyWEo3pFHmtfdUk7SkK+AWEzAL0659YM8Htq8LWnkNP92aZroPnma+VLyy9RJhAJ7rlfLigoTkiO4colUMxWA0qedksQg1YZQvKV4jBiljs6k4ff5el3GT+lHiFj5L1Hn7th+lyNbWqqoOaMAkGvDKg== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BY5PR11MB4451.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6cd0a790-4d76-4148-2ed7-08d864d75011 X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Sep 2020 00:25:19.5155 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: Hkz2TQCWOaHBJKhWm7qjvdnTiMIHRgSHu+IwvBs4twHX+LSIm82RxZJUIvZU9U+9wMAs4G72+gFuOVgI59vEosN5hkp5YVjnU1ydEzKukbM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR11MB3573 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v9 03/10] baseband/acc100: add info get function X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" SGkgVG9tLCANCg0KPiBGcm9tOiBUb20gUml4IDx0cml4QHJlZGhhdC5jb20+DQo+IE9uIDkvMjgv MjAgNToyOSBQTSwgTmljb2xhcyBDaGF1dHJ1IHdyb3RlOg0KPiA+IEFkZCBpbiB0aGUgImluZm9f Z2V0IiBmdW5jdGlvbiB0byB0aGUgZHJpdmVyLCB0byBhbGxvdyB1cyB0byBxdWVyeSB0aGUNCj4g PiBkZXZpY2UuDQo+ID4gTm8gcHJvY2Vzc2luZyBjYXBhYmlsaXR5IGFyZSBhdmFpbGFibGUgeWV0 Lg0KPiA+IExpbmtpbmcgYmJkZXYtdGVzdCB0byBzdXBwb3J0IHRoZSBQTUQgd2l0aCBudWxsIGNh cGFiaWxpdHkuDQo+ID4NCj4gPiBTaWduZWQtb2ZmLWJ5OiBOaWNvbGFzIENoYXV0cnUgPG5pY29s YXMuY2hhdXRydUBpbnRlbC5jb20+DQo+ID4gQWNrZWQtYnk6IExpdSBUaWFuamlhbyA8VGlhbmpp YW8ubGl1QGludGVsLmNvbT4NCj4gPiAtLS0NCj4gPiAgYXBwL3Rlc3QtYmJkZXYvbWVzb24uYnVp bGQgICAgICAgICAgICAgICB8ICAgMyArDQo+ID4gIGRyaXZlcnMvYmFzZWJhbmQvYWNjMTAwL3J0 ZV9hY2MxMDBfY2ZnLmggfCAgOTYgKysrKysrKysrKysrKw0KPiA+IGRyaXZlcnMvYmFzZWJhbmQv YWNjMTAwL3J0ZV9hY2MxMDBfcG1kLmMgfCAyMjUNCj4gKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKw0KPiA+ICBkcml2ZXJzL2Jhc2ViYW5kL2FjYzEwMC9ydGVfYWNjMTAwX3BtZC5oIHwg ICAzICsNCj4gPiAgNCBmaWxlcyBjaGFuZ2VkLCAzMjcgaW5zZXJ0aW9ucygrKQ0KPiA+ICBjcmVh dGUgbW9kZSAxMDA2NDQgZHJpdmVycy9iYXNlYmFuZC9hY2MxMDAvcnRlX2FjYzEwMF9jZmcuaA0K PiA+DQo+ID4gZGlmZiAtLWdpdCBhL2FwcC90ZXN0LWJiZGV2L21lc29uLmJ1aWxkIGIvYXBwL3Rl c3QtYmJkZXYvbWVzb24uYnVpbGQNCj4gPiBpbmRleCAxOGFiNmE4Li5mYmQ4YWUzIDEwMDY0NA0K PiA+IC0tLSBhL2FwcC90ZXN0LWJiZGV2L21lc29uLmJ1aWxkDQo+ID4gKysrIGIvYXBwL3Rlc3Qt YmJkZXYvbWVzb24uYnVpbGQNCj4gPiBAQCAtMTIsMyArMTIsNiBAQCBlbmRpZg0KPiA+ICBpZiBk cGRrX2NvbmYuaGFzKCdSVEVfTElCUlRFX1BNRF9CQkRFVl9GUEdBXzVHTlJfRkVDJykNCj4gPiAg CWRlcHMgKz0gWydwbWRfYmJkZXZfZnBnYV81Z25yX2ZlYyddDQo+ID4gIGVuZGlmDQo+ID4gK2lm IGRwZGtfY29uZi5oYXMoJ1JURV9MSUJSVEVfUE1EX0JCREVWX0FDQzEwMCcpDQo+ID4gKwlkZXBz ICs9IFsncG1kX2JiZGV2X2FjYzEwMCddDQo+ID4gK2VuZGlmDQo+ID4gXCBObyBuZXdsaW5lIGF0 IGVuZCBvZiBmaWxlDQo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvYmFzZWJhbmQvYWNjMTAwL3J0 ZV9hY2MxMDBfY2ZnLmgNCj4gPiBiL2RyaXZlcnMvYmFzZWJhbmQvYWNjMTAwL3J0ZV9hY2MxMDBf Y2ZnLmgNCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiA+IGluZGV4IDAwMDAwMDAuLjczYmJl MzYNCj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysrIGIvZHJpdmVycy9iYXNlYmFuZC9hY2MxMDAv cnRlX2FjYzEwMF9jZmcuaA0KPiA+IEBAIC0wLDAgKzEsOTYgQEANCj4gPiArLyogU1BEWC1MaWNl bnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZQ0KPiA+ICsgKiBDb3B5cmlnaHQoYykgMjAyMCBJ bnRlbCBDb3Jwb3JhdGlvbiAgKi8NCj4gPiArDQo+ID4gKyNpZm5kZWYgX1JURV9BQ0MxMDBfQ0ZH X0hfDQo+ID4gKyNkZWZpbmUgX1JURV9BQ0MxMDBfQ0ZHX0hfDQo+ID4gKw0KPiA+ICsvKioNCj4g PiArICogQGZpbGUgcnRlX2FjYzEwMF9jZmcuaA0KPiA+ICsgKg0KPiA+ICsgKiBGdW5jdGlvbnMg Zm9yIGNvbmZpZ3VyaW5nIEFDQzEwMCBIVywgZXhwb3NlZCBkaXJlY3RseSB0byBhcHBsaWNhdGlv bnMuDQo+ID4gKyAqIENvbmZpZ3VyYXRpb24gcmVsYXRlZCB0byBlbmNvZGluZy9kZWNvZGluZyBp cyBkb25lIHRocm91Z2ggdGhlDQo+ID4gKyAqIGxpYnJ0ZV9iYmRldiBsaWJyYXJ5Lg0KPiA+ICsg Kg0KPiA+ICsgKiBAd2FybmluZw0KPiA+ICsgKiBAYiBFWFBFUklNRU5UQUw6IHRoaXMgQVBJIG1h eSBjaGFuZ2Ugd2l0aG91dCBwcmlvciBub3RpY2UNCj4gV2hlbiB3aWxsIHRoaXMgZXhwZXJpbWVu dGFsIHRhZyBiZSByZW1vdmVkID8NCg0KSSBoYXZlIHB1c2hlZCBhIHBhdGNoIHRvIHJlbW92ZSBp dC4gQnV0IHRoZSBmZWVkYmFjayBmcm9tIHNvbWUgb2YgdGhlIGNvbW11bml0eSB3YXMgdG8gd2Fp dCBhIGJpdCBtb3JlIHVudGlsIG5leHQgeWVhci4NCg0KPiA+ICsgKi8NCj4gPiArDQo+ID4gKyNp bmNsdWRlIDxzdGRpbnQuaD4NCj4gPiArI2luY2x1ZGUgPHN0ZGJvb2wuaD4NCj4gPiArDQo+ID4g KyNpZmRlZiBfX2NwbHVzcGx1cw0KPiA+ICtleHRlcm4gIkMiIHsNCj4gPiArI2VuZGlmDQo+ID4g Ky8qKjwgTnVtYmVyIG9mIFZpcnR1YWwgRnVuY3Rpb25zIEFDQzEwMCBzdXBwb3J0cyAqLyAjZGVm aW5lDQo+ID4gK1JURV9BQ0MxMDBfTlVNX1ZGUyAxNg0KPiBUaGlzIGlzIGFscmVhZHkgZGVmaW5l ZCB3aXRoIEFDQzEwMF9OVU1fVkZTDQoNClRoYW5rcy4gDQoNCj4gPiArDQo+ID4gKy8qKg0KPiA+ ICsgKiBEZWZpbml0aW9uIG9mIFF1ZXVlIFRvcG9sb2d5IGZvciBBQ0MxMDAgQ29uZmlndXJhdGlv bg0KPiA+ICsgKiBTb21lIGxldmVsIG9mIGRldGFpbHMgaXMgYWJzdHJhY3RlZCBvdXQgdG8gZXhw b3NlIGEgY2xlYW4NCj4gPiAraW50ZXJmYWNlDQo+ID4gKyAqIGdpdmVuIHRoYXQgY29tcHJlaGVu c2l2ZSBmbGV4aWJpbGl0eSBpcyBub3QgcmVxdWlyZWQgICovIHN0cnVjdA0KPiA+ICtydGVfcV90 b3BvbG9neV90IHsNCj4gPiArCS8qKiBOdW1iZXIgb2YgUUdyb3VwcyBpbiBpbmNyZW1lbnRhbCBv cmRlciBvZiBwcmlvcml0eSAqLw0KPiA+ICsJdWludDE2X3QgbnVtX3Fncm91cHM7DQo+ID4gKwkv KioNCj4gPiArCSAqIEFsbCBRR3JvdXBzIGhhdmUgdGhlIHNhbWUgbnVtYmVyIG9mIEFRcyBoZXJl Lg0KPiA+ICsJICogTm90ZSA6IENvdWxkIGJlIG1hZGUgYSAxNi1hcnJheSBpZiBtb3JlIGZsZXhp YmlsaXR5IGlzIHJlYWxseQ0KPiA+ICsJICogcmVxdWlyZWQNCj4gPiArCSAqLw0KPiA+ICsJdWlu dDE2X3QgbnVtX2Fxc19wZXJfZ3JvdXBzOw0KPiA+ICsJLyoqDQo+ID4gKwkgKiBEZXB0aCBvZiB0 aGUgQVFzIGlzIHRoZSBzYW1lIG9mIGFsbCBRR3JvdXBzIGhlcmUuIExvZzIgRW51bSA6IDJeTg0K PiA+ICsJICogTm90ZSA6IENvdWxkIGJlIG1hZGUgYSAxNi1hcnJheSBpZiBtb3JlIGZsZXhpYmls aXR5IGlzIHJlYWxseQ0KPiA+ICsJICogcmVxdWlyZWQNCj4gPiArCSAqLw0KPiA+ICsJdWludDE2 X3QgYXFfZGVwdGhfbG9nMjsNCj4gPiArCS8qKg0KPiA+ICsJICogSW5kZXggb2YgdGhlIGZpcnN0 IFF1ZXVlIEdyb3VwIEluZGV4IC0gYXNzdW1pbmcgY29udGlndWl0eQ0KPiA+ICsJICogSW5pdGlh bGl6ZWQgYXMgLTENCj4gPiArCSAqLw0KPiA+ICsJaW50OF90IGZpcnN0X3Fncm91cF9pbmRleDsN Cj4gPiArfTsNCj4gPiArDQo+ID4gKy8qKg0KPiA+ICsgKiBEZWZpbml0aW9uIG9mIEFyYml0cmF0 aW9uIHJlbGF0ZWQgcGFyYW1ldGVycyBmb3IgQUNDMTAwDQo+ID4gK0NvbmZpZ3VyYXRpb24gICov IHN0cnVjdCBydGVfYXJiaXRyYXRpb25fdCB7DQo+ID4gKwkvKiogRGVmYXVsdCBXZWlnaHQgZm9y IFZGIEZhaXJuZXNzIEFyYml0cmF0aW9uICovDQo+ID4gKwl1aW50MTZfdCByb3VuZF9yb2Jpbl93 ZWlnaHQ7DQo+ID4gKwl1aW50MzJfdCBnYnJfdGhyZXNob2xkMTsgLyoqPCBHdWFyYW50ZWVkIEJp dHJhdGUgVGhyZXNob2xkIDEgKi8NCj4gPiArCXVpbnQzMl90IGdicl90aHJlc2hvbGQyOyAvKio8 IEd1YXJhbnRlZWQgQml0cmF0ZSBUaHJlc2hvbGQgMiAqLyB9Ow0KPiA+ICsNCj4gPiArLyoqDQo+ ID4gKyAqIFN0cnVjdHVyZSB0byBwYXNzIEFDQzEwMCBjb25maWd1cmF0aW9uLg0KPiA+ICsgKiBO b3RlOiBhbGwgVkYgQnVuZGxlcyB3aWxsIGhhdmUgdGhlIHNhbWUgY29uZmlndXJhdGlvbi4NCj4g PiArICovDQo+ID4gK3N0cnVjdCBhY2MxMDBfY29uZiB7DQo+ID4gKwlib29sIHBmX21vZGVfZW47 IC8qKjwgMSBpZiBQRiBpcyB1c2VkIGZvciBkYXRhcGxhbmUsIDAgZm9yIFZGcyAqLw0KPiA+ICsJ LyoqIDEgaWYgaW5wdXQgJzEnIGJpdCBpcyByZXByZXNlbnRlZCBieSBhIHBvc2l0aXZlIExMUiB2 YWx1ZSwgMCBpZiAnMScNCj4gPiArCSAqIGJpdCBpcyByZXByZXNlbnRlZCBieSBhIG5lZ2F0aXZl IHZhbHVlLg0KPiA+ICsJICovDQo+ID4gKwlib29sIGlucHV0X3Bvc19sbHJfMV9iaXQ7DQo+ID4g KwkvKiogMSBpZiBvdXRwdXQgJzEnIGJpdCBpcyByZXByZXNlbnRlZCBieSBhIHBvc2l0aXZlIHZh bHVlLCAwIGlmICcxJw0KPiA+ICsJICogYml0IGlzIHJlcHJlc2VudGVkIGJ5IGEgbmVnYXRpdmUg dmFsdWUuDQo+ID4gKwkgKi8NCj4gPiArCWJvb2wgb3V0cHV0X3Bvc19sbHJfMV9iaXQ7DQo+ID4g Kwl1aW50MTZfdCBudW1fdmZfYnVuZGxlczsgLyoqPCBOdW1iZXIgb2YgVkYgYnVuZGxlcyB0byBz ZXR1cCAqLw0KPiA+ICsJLyoqIFF1ZXVlIHRvcG9sb2d5IGZvciBlYWNoIG9wZXJhdGlvbiB0eXBl ICovDQo+ID4gKwlzdHJ1Y3QgcnRlX3FfdG9wb2xvZ3lfdCBxX3VsXzRnOw0KPiA+ICsJc3RydWN0 IHJ0ZV9xX3RvcG9sb2d5X3QgcV9kbF80ZzsNCj4gPiArCXN0cnVjdCBydGVfcV90b3BvbG9neV90 IHFfdWxfNWc7DQo+ID4gKwlzdHJ1Y3QgcnRlX3FfdG9wb2xvZ3lfdCBxX2RsXzVnOw0KPiA+ICsJ LyoqIEFyYml0cmF0aW9uIGNvbmZpZ3VyYXRpb24gZm9yIGVhY2ggb3BlcmF0aW9uIHR5cGUgKi8N Cj4gPiArCXN0cnVjdCBydGVfYXJiaXRyYXRpb25fdCBhcmJfdWxfNGdbUlRFX0FDQzEwMF9OVU1f VkZTXTsNCj4gPiArCXN0cnVjdCBydGVfYXJiaXRyYXRpb25fdCBhcmJfZGxfNGdbUlRFX0FDQzEw MF9OVU1fVkZTXTsNCj4gPiArCXN0cnVjdCBydGVfYXJiaXRyYXRpb25fdCBhcmJfdWxfNWdbUlRF X0FDQzEwMF9OVU1fVkZTXTsNCj4gPiArCXN0cnVjdCBydGVfYXJiaXRyYXRpb25fdCBhcmJfZGxf NWdbUlRFX0FDQzEwMF9OVU1fVkZTXTsgfTsNCj4gPiArDQo+ID4gKyNpZmRlZiBfX2NwbHVzcGx1 cw0KPiA+ICt9DQo+ID4gKyNlbmRpZg0KPiA+ICsNCj4gPiArI2VuZGlmIC8qIF9SVEVfQUNDMTAw X0NGR19IXyAqLw0KPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2Jhc2ViYW5kL2FjYzEwMC9ydGVf YWNjMTAwX3BtZC5jDQo+ID4gYi9kcml2ZXJzL2Jhc2ViYW5kL2FjYzEwMC9ydGVfYWNjMTAwX3Bt ZC5jDQo+ID4gaW5kZXggMWI0Y2QxMy4uNzgwN2EzMCAxMDA2NDQNCj4gPiAtLS0gYS9kcml2ZXJz L2Jhc2ViYW5kL2FjYzEwMC9ydGVfYWNjMTAwX3BtZC5jDQo+ID4gKysrIGIvZHJpdmVycy9iYXNl YmFuZC9hY2MxMDAvcnRlX2FjYzEwMF9wbWQuYw0KPiA+IEBAIC0yNiw2ICsyNiwxODQgQEANCj4g PiAgUlRFX0xPR19SRUdJU1RFUihhY2MxMDBfbG9ndHlwZSwgcG1kLmJiLmFjYzEwMCwgTk9USUNF KTsgICNlbmRpZg0KPiA+DQo+ID4gKy8qIFJlYWQgYSByZWdpc3RlciBvZiBhIEFDQzEwMCBkZXZp Y2UgKi8gc3RhdGljIGlubGluZSB1aW50MzJfdA0KPiA+ICthY2MxMDBfcmVnX3JlYWQoc3RydWN0 IGFjYzEwMF9kZXZpY2UgKmQsIHVpbnQzMl90IG9mZnNldCkgew0KPiA+ICsNCj4gPiArCXZvaWQg KnJlZ19hZGRyID0gUlRFX1BUUl9BREQoZC0+bW1pb19iYXNlLCBvZmZzZXQpOw0KPiA+ICsJdWlu dDMyX3QgcmV0ID0gKigodm9sYXRpbGUgdWludDMyX3QgKikocmVnX2FkZHIpKTsNCj4gPiArCXJl dHVybiBydGVfbGVfdG9fY3B1XzMyKHJldCk7DQo+ID4gK30NCj4gPiArDQo+ID4gKy8qIENhbGN1 bGF0ZSB0aGUgb2Zmc2V0IG9mIHRoZSBlbnF1ZXVlIHJlZ2lzdGVyICovIHN0YXRpYyBpbmxpbmUN Cj4gPiArdWludDMyX3QgcXVldWVfb2Zmc2V0KGJvb2wgcGZfZGV2aWNlLCB1aW50OF90IHZmX2lk LCB1aW50OF90IHFncnBfaWQsDQo+ID4gK3VpbnQxNl90IGFxX2lkKSB7DQo+ID4gKwlpZiAocGZf ZGV2aWNlKQ0KPiA+ICsJCXJldHVybiAoKHZmX2lkIDw8IDEyKSArIChxZ3JwX2lkIDw8IDcpICsg KGFxX2lkIDw8IDMpICsNCj4gPiArCQkJCUhXUGZRbWdySW5ncmVzc0FxKTsNCj4gPiArCWVsc2UN Cj4gPiArCQlyZXR1cm4gKChxZ3JwX2lkIDw8IDcpICsgKGFxX2lkIDw8IDMpICsNCj4gPiArCQkJ CUhXVmZRbWdySW5ncmVzc0FxKTsNCj4gQ291bGQgeW91IGFkZCAqUW1ySW5ncmVzc0FxIHRvIHRo ZSBhY2MxMDBfcmVnaXN0cnlfYWRkciBhbmQgc2tpcCB0aGUgaWYNCj4gKHBmX2RldmljZSkgY2hl Y2sgPw0KDQpJIGFtIG5vdCBjb252aW5jZWQuIFRoYXQgYWNjMTAwX3JlZ2lzdHJ5X2FkZHIgaXMg bm90IGtlcHQgd2l0aCB0aGUgZHJpdmVyLCB5b3UNCnN0aWxsIG5lZWQgdG8gY2hlY2sgcGZfZGV2 aWNlIGZsYWcgdG8gbm93IHdoYXQgcmVnaXN0ZXJzIGFyZSB0byBiZSB1c2VkLg0KDQoNCj4gPiAr fQ0KPiA+ICsNCj4gPiArZW51bSB7VUxfNEcgPSAwLCBVTF81RywgRExfNEcsIERMXzVHLCBOVU1f QUNDfTsNCj4gPiArDQo+ID4gKy8qIFJldHVybiB0aGUgcXVldWUgdG9wb2xvZ3kgZm9yIGEgUXVl dWUgR3JvdXAgSW5kZXggKi8gc3RhdGljIGlubGluZQ0KPiA+ICt2b2lkIHF0b3BGcm9tQWNjKHN0 cnVjdCBydGVfcV90b3BvbG9neV90ICoqcXRvcCwgaW50IGFjY19lbnVtLA0KPiA+ICsJCXN0cnVj dCBhY2MxMDBfY29uZiAqYWNjMTAwX2NvbmYpDQo+ID4gK3sNCj4gPiArCXN0cnVjdCBydGVfcV90 b3BvbG9neV90ICpwX3F0b3A7DQo+ID4gKwlwX3F0b3AgPSBOVUxMOw0KPiA+ICsJc3dpdGNoIChh Y2NfZW51bSkgew0KPiA+ICsJY2FzZSBVTF80RzoNCj4gPiArCQlwX3F0b3AgPSAmKGFjYzEwMF9j b25mLT5xX3VsXzRnKTsNCj4gPiArCQlicmVhazsNCj4gPiArCWNhc2UgVUxfNUc6DQo+ID4gKwkJ cF9xdG9wID0gJihhY2MxMDBfY29uZi0+cV91bF81Zyk7DQo+ID4gKwkJYnJlYWs7DQo+ID4gKwlj YXNlIERMXzRHOg0KPiA+ICsJCXBfcXRvcCA9ICYoYWNjMTAwX2NvbmYtPnFfZGxfNGcpOw0KPiA+ ICsJCWJyZWFrOw0KPiA+ICsJY2FzZSBETF81RzoNCj4gPiArCQlwX3F0b3AgPSAmKGFjYzEwMF9j b25mLT5xX2RsXzVnKTsNCj4gPiArCQlicmVhazsNCj4gPiArCWRlZmF1bHQ6DQo+ID4gKwkJLyog Tk9UUkVBQ0hFRCAqLw0KPiA+ICsJCXJ0ZV9iYmRldl9sb2coRVJSLCAiVW5leHBlY3RlZCBlcnJv ciBldmFsdWF0aW5nDQo+IHF0b3BGcm9tQWNjIik7DQo+IFVzZSBpbiBmZXRjaF9hY2MxMDBfY29u ZmlnIGRvZXMgbm90IGNoZWNrIGZvciBOVUxMLg0KDQpZZXMgYmVjYXVzZSBpdCBjYW4ndCBiZSBu dWxsLiBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCBleHBsaWN0bHkgZm9yIHN1cHBvcnRlZCB2YWx1 ZXMuIA0KDQo+ID4gKwkJYnJlYWs7DQo+ID4gKwl9DQo+ID4gKwkqcXRvcCA9IHBfcXRvcDsNCj4g PiArfQ0KPiA+ICsNCj4gPiArc3RhdGljIHZvaWQNCj4gPiAraW5pdFFUb3Aoc3RydWN0IGFjYzEw MF9jb25mICphY2MxMDBfY29uZikgew0KPiA+ICsJYWNjMTAwX2NvbmYtPnFfdWxfNGcubnVtX2Fx c19wZXJfZ3JvdXBzID0gMDsNCj4gPiArCWFjYzEwMF9jb25mLT5xX3VsXzRnLm51bV9xZ3JvdXBz ID0gMDsNCj4gPiArCWFjYzEwMF9jb25mLT5xX3VsXzRnLmZpcnN0X3Fncm91cF9pbmRleCA9IC0x Ow0KPiA+ICsJYWNjMTAwX2NvbmYtPnFfdWxfNWcubnVtX2Fxc19wZXJfZ3JvdXBzID0gMDsNCj4g PiArCWFjYzEwMF9jb25mLT5xX3VsXzVnLm51bV9xZ3JvdXBzID0gMDsNCj4gPiArCWFjYzEwMF9j b25mLT5xX3VsXzVnLmZpcnN0X3Fncm91cF9pbmRleCA9IC0xOw0KPiA+ICsJYWNjMTAwX2NvbmYt PnFfZGxfNGcubnVtX2Fxc19wZXJfZ3JvdXBzID0gMDsNCj4gPiArCWFjYzEwMF9jb25mLT5xX2Rs XzRnLm51bV9xZ3JvdXBzID0gMDsNCj4gPiArCWFjYzEwMF9jb25mLT5xX2RsXzRnLmZpcnN0X3Fn cm91cF9pbmRleCA9IC0xOw0KPiA+ICsJYWNjMTAwX2NvbmYtPnFfZGxfNWcubnVtX2Fxc19wZXJf Z3JvdXBzID0gMDsNCj4gPiArCWFjYzEwMF9jb25mLT5xX2RsXzVnLm51bV9xZ3JvdXBzID0gMDsN Cj4gPiArCWFjYzEwMF9jb25mLT5xX2RsXzVnLmZpcnN0X3Fncm91cF9pbmRleCA9IC0xOyB9DQo+ ID4gKw0KPiA+ICtzdGF0aWMgaW5saW5lIHZvaWQNCj4gPiArdXBkYXRlUXRvcCh1aW50OF90IGFj YywgdWludDhfdCBxZywgc3RydWN0IGFjYzEwMF9jb25mICphY2MxMDBfY29uZiwNCj4gPiArCQlz dHJ1Y3QgYWNjMTAwX2RldmljZSAqZCkgew0KPiA+ICsJdWludDMyX3QgcmVnOw0KPiA+ICsJc3Ry dWN0IHJ0ZV9xX3RvcG9sb2d5X3QgKnFfdG9wID0gTlVMTDsNCj4gPiArCXF0b3BGcm9tQWNjKCZx X3RvcCwgYWNjLCBhY2MxMDBfY29uZik7DQo+ID4gKwlpZiAodW5saWtlbHkocV90b3AgPT0gTlVM TCkpDQo+ID4gKwkJcmV0dXJuOw0KPiBhcyBhYm92ZSwgdGhpcyBlcnJvciBpcyBub3QgaGFuZGxl ZCBieSBjYWxsZXIgZmV0Y2hfYWNjMTAwX2NvbmZpZw0KDQpJdCBjYW5ub3QgcmVhbGx5IGZhaWwg Zm9yIGZldGNoX2FjYzEwMF9jb25maWcuIElmIHlvdSBpbnNpc3QgSSBjYW4gYWRkLiANCg0KPiA+ ICsJdWludDE2X3QgYXE7DQo+ID4gKwlxX3RvcC0+bnVtX3Fncm91cHMrKzsNCj4gPiArCWlmIChx X3RvcC0+Zmlyc3RfcWdyb3VwX2luZGV4ID09IC0xKSB7DQo+ID4gKwkJcV90b3AtPmZpcnN0X3Fn cm91cF9pbmRleCA9IHFnOw0KPiA+ICsJCS8qIENhbiBiZSBvcHRpbWl6ZWQgdG8gYXNzdW1lIGFs bCBhcmUgZW5hYmxlZCBieSBkZWZhdWx0ICovDQo+ID4gKwkJcmVnID0gYWNjMTAwX3JlZ19yZWFk KGQsIHF1ZXVlX29mZnNldChkLT5wZl9kZXZpY2UsDQo+ID4gKwkJCQkwLCBxZywgQUNDMTAwX05V TV9BUVMgLSAxKSk7DQo+ID4gKwkJaWYgKHJlZyAmIFFVRVVFX0VOQUJMRSkgew0KPiA+ICsJCQlx X3RvcC0+bnVtX2Fxc19wZXJfZ3JvdXBzID0gQUNDMTAwX05VTV9BUVM7DQo+ID4gKwkJCXJldHVy bjsNCj4gPiArCQl9DQo+ID4gKwkJcV90b3AtPm51bV9hcXNfcGVyX2dyb3VwcyA9IDA7DQo+ID4g KwkJZm9yIChhcSA9IDA7IGFxIDwgQUNDMTAwX05VTV9BUVM7IGFxKyspIHsNCj4gPiArCQkJcmVn ID0gYWNjMTAwX3JlZ19yZWFkKGQsIHF1ZXVlX29mZnNldChkLQ0KPiA+cGZfZGV2aWNlLA0KPiA+ ICsJCQkJCTAsIHFnLCBhcSkpOw0KPiA+ICsJCQlpZiAocmVnICYgUVVFVUVfRU5BQkxFKQ0KPiA+ ICsJCQkJcV90b3AtPm51bV9hcXNfcGVyX2dyb3VwcysrOw0KPiA+ICsJCX0NCj4gPiArCX0NCj4g PiArfQ0KPiA+ICsNCj4gPiArLyogRmV0Y2ggY29uZmlndXJhdGlvbiBlbmFibGVkIGZvciB0aGUg UEYvVkYgdXNpbmcgTU1JTyBSZWFkIChzbG93KQ0KPiA+ICsqLyBzdGF0aWMgaW5saW5lIHZvaWQg ZmV0Y2hfYWNjMTAwX2NvbmZpZyhzdHJ1Y3QgcnRlX2JiZGV2ICpkZXYpIHsNCj4gPiArCXN0cnVj dCBhY2MxMDBfZGV2aWNlICpkID0gZGV2LT5kYXRhLT5kZXZfcHJpdmF0ZTsNCj4gPiArCXN0cnVj dCBhY2MxMDBfY29uZiAqYWNjMTAwX2NvbmYgPSAmZC0+YWNjMTAwX2NvbmY7DQo+ID4gKwljb25z dCBzdHJ1Y3QgYWNjMTAwX3JlZ2lzdHJ5X2FkZHIgKnJlZ19hZGRyOw0KPiA+ICsJdWludDhfdCBh Y2MsIHFnOw0KPiA+ICsJdWludDMyX3QgcmVnLCByZWdfYXEsIHJlZ19sZW4wLCByZWdfbGVuMTsN Cj4gPiArCXVpbnQzMl90IHJlZ19tb2RlOw0KPiA+ICsNCj4gPiArCS8qIE5vIG5lZWQgdG8gcmV0 cmlldmUgdGhlIGNvbmZpZ3VyYXRpb24gaXMgYWxyZWFkeSBkb25lICovDQo+ID4gKwlpZiAoZC0+ Y29uZmlndXJlZCkNCj4gPiArCQlyZXR1cm47DQo+IFdhcm4gPw0KDQpObyB0aGlzIGNhbiBnZW51 aW5lbHkgaGFwcGVuIG9uIGEgcmVndWxhciBiYXNpcywganVzdCBubyBuZWVkIHRvIGZldGNoIGl0 IGFsbCBhZ2Fpbi4gDQoNCj4gPiArDQo+ID4gKwkvKiBDaG9vc2UgY29ycmVjdCByZWdpc3RyeSBh ZGRyZXNzZXMgZm9yIHRoZSBkZXZpY2UgdHlwZSAqLw0KPiA+ICsJaWYgKGQtPnBmX2RldmljZSkN Cj4gPiArCQlyZWdfYWRkciA9ICZwZl9yZWdfYWRkcjsNCj4gPiArCWVsc2UNCj4gPiArCQlyZWdf YWRkciA9ICZ2Zl9yZWdfYWRkcjsNCj4gPiArDQo+ID4gKwlkLT5kZHJfc2l6ZSA9ICgxICsgYWNj MTAwX3JlZ19yZWFkKGQsIHJlZ19hZGRyLT5kZHJfcmFuZ2UpKSA8PCAxMDsNCj4gPiArDQo+ID4g KwkvKiBTaW5nbGUgVkYgQnVuZGxlIGJ5IFZGICovDQo+ID4gKwlhY2MxMDBfY29uZi0+bnVtX3Zm X2J1bmRsZXMgPSAxOw0KPiA+ICsJaW5pdFFUb3AoYWNjMTAwX2NvbmYpOw0KPiA+ICsNCj4gPiAr CXN0cnVjdCBydGVfcV90b3BvbG9neV90ICpxX3RvcCA9IE5VTEw7DQo+ID4gKwlpbnQgcW1hbl9m dW5jX2lkWzVdID0gezAsIDIsIDEsIDMsIDR9Ow0KPiBEbyB0aGVzZSBtYWdpYyBudW1iZXJzIG5l ZWQgI2RlZmluZXMgPw0KDQpvay4gDQoNCj4gPiArCXJlZyA9IGFjYzEwMF9yZWdfcmVhZChkLCBy ZWdfYWRkci0+cW1hbl9ncm91cF9mdW5jKTsNCj4gPiArCWZvciAocWcgPSAwOyBxZyA8IEFDQzEw MF9OVU1fUUdSUFNfUEVSX1dPUkQ7IHFnKyspIHsNCj4gPiArCQlyZWdfYXEgPSBhY2MxMDBfcmVn X3JlYWQoZCwNCj4gPiArCQkJCXF1ZXVlX29mZnNldChkLT5wZl9kZXZpY2UsIDAsIHFnLCAwKSk7 DQo+ID4gKwkJaWYgKHJlZ19hcSAmIFFVRVVFX0VOQUJMRSkgew0KPiA+ICsJCQlhY2MgPSBxbWFu X2Z1bmNfaWRbKHJlZyA+PiAocWcgKiA0KSkgJiAweDddOw0KPiAweDcgYW5kIFs1XSwgdGhpcyBj b3VsZCBvdmVyZmxvdy4NCg0Kb2sgdGhhbmtzLCBJIGNhbiBhZGQgZXhjZXB0aW9uIGhhbmRsaW5n LiBOb3QgY2xlYXIgdG8gbWUgcmlnaHQgbm93IHdoeSBpdCBkaWQgbm90IHRyaWdnZXIgdG9vbCB3 YXJuaW5nLiANCg0KPiA+ICsJCQl1cGRhdGVRdG9wKGFjYywgcWcsIGFjYzEwMF9jb25mLCBkKTsN Cj4gPiArCQl9DQo+ID4gKwl9DQo+ID4gKw0KPiA+ICsJLyogQ2hlY2sgdGhlIGRlcHRoIG9mIHRo ZSBBUXMqLw0KPiA+ICsJcmVnX2xlbjAgPSBhY2MxMDBfcmVnX3JlYWQoZCwgcmVnX2FkZHItPmRl cHRoX2xvZzBfb2Zmc2V0KTsNCj4gPiArCXJlZ19sZW4xID0gYWNjMTAwX3JlZ19yZWFkKGQsIHJl Z19hZGRyLT5kZXB0aF9sb2cxX29mZnNldCk7DQo+ID4gKwlmb3IgKGFjYyA9IDA7IGFjYyA8IE5V TV9BQ0M7IGFjYysrKSB7DQo+ID4gKwkJcXRvcEZyb21BY2MoJnFfdG9wLCBhY2MsIGFjYzEwMF9j b25mKTsNCj4gPiArCQlpZiAocV90b3AtPmZpcnN0X3Fncm91cF9pbmRleCA8DQo+IEFDQzEwMF9O VU1fUUdSUFNfUEVSX1dPUkQpDQo+ID4gKwkJCXFfdG9wLT5hcV9kZXB0aF9sb2cyID0gKHJlZ19s ZW4wID4+DQo+ID4gKwkJCQkJKHFfdG9wLT5maXJzdF9xZ3JvdXBfaW5kZXggKiA0KSkNCj4gPiAr CQkJCQkmIDB4RjsNCj4gPiArCQllbHNlDQo+ID4gKwkJCXFfdG9wLT5hcV9kZXB0aF9sb2cyID0g KHJlZ19sZW4xID4+DQo+ID4gKwkJCQkJKChxX3RvcC0+Zmlyc3RfcWdyb3VwX2luZGV4IC0NCj4g PiArCQkJCQlBQ0MxMDBfTlVNX1FHUlBTX1BFUl9XT1JEKSAqDQo+IDQpKQ0KPiA+ICsJCQkJCSYg MHhGOw0KPiA+ICsJfQ0KPiA+ICsNCj4gPiArCS8qIFJlYWQgUEYgbW9kZSAqLw0KPiA+ICsJaWYg KGQtPnBmX2RldmljZSkgew0KPiA+ICsJCXJlZ19tb2RlID0gYWNjMTAwX3JlZ19yZWFkKGQsIEhX UGZIaVBmTW9kZSk7DQo+ID4gKwkJYWNjMTAwX2NvbmYtPnBmX21vZGVfZW4gPSAocmVnX21vZGUg PT0gMikgPyAxIDogMDsNCj4gDQo+IDIgaXMgYSBtYWdpYyBudW1iZXIsIGNvbnNpZGVyIGEgI2Rl ZmluZQ0KPiANCg0Kb2sNCg0KPiBUb20NCj4gDQoNClRoYW5rcw0KTmljDQoNCj4gPiArCX0NCj4g PiArDQo+ID4gKwlydGVfYmJkZXZfbG9nX2RlYnVnKA0KPiA+ICsJCQkiJXMgQ29uZmlnIExMUiBT SUdOIElOL09VVCAlcyAlcyBRRyAldSAldSAldSAldQ0KPiBBUSAldSAldSAldSAldSBMZW4gJXUg JXUgJXUgJXVcbiIsDQo+ID4gKwkJCShkLT5wZl9kZXZpY2UpID8gIlBGIiA6ICJWRiIsDQo+ID4g KwkJCShhY2MxMDBfY29uZi0+aW5wdXRfcG9zX2xscl8xX2JpdCkgPyAiUE9TIiA6ICJORUciLA0K PiA+ICsJCQkoYWNjMTAwX2NvbmYtPm91dHB1dF9wb3NfbGxyXzFfYml0KSA/ICJQT1MiIDoNCj4g Ik5FRyIsDQo+ID4gKwkJCWFjYzEwMF9jb25mLT5xX3VsXzRnLm51bV9xZ3JvdXBzLA0KPiA+ICsJ CQlhY2MxMDBfY29uZi0+cV9kbF80Zy5udW1fcWdyb3VwcywNCj4gPiArCQkJYWNjMTAwX2NvbmYt PnFfdWxfNWcubnVtX3Fncm91cHMsDQo+ID4gKwkJCWFjYzEwMF9jb25mLT5xX2RsXzVnLm51bV9x Z3JvdXBzLA0KPiA+ICsJCQlhY2MxMDBfY29uZi0+cV91bF80Zy5udW1fYXFzX3Blcl9ncm91cHMs DQo+ID4gKwkJCWFjYzEwMF9jb25mLT5xX2RsXzRnLm51bV9hcXNfcGVyX2dyb3VwcywNCj4gPiAr CQkJYWNjMTAwX2NvbmYtPnFfdWxfNWcubnVtX2Fxc19wZXJfZ3JvdXBzLA0KPiA+ICsJCQlhY2Mx MDBfY29uZi0+cV9kbF81Zy5udW1fYXFzX3Blcl9ncm91cHMsDQo+ID4gKwkJCWFjYzEwMF9jb25m LT5xX3VsXzRnLmFxX2RlcHRoX2xvZzIsDQo+ID4gKwkJCWFjYzEwMF9jb25mLT5xX2RsXzRnLmFx X2RlcHRoX2xvZzIsDQo+ID4gKwkJCWFjYzEwMF9jb25mLT5xX3VsXzVnLmFxX2RlcHRoX2xvZzIs DQo+ID4gKwkJCWFjYzEwMF9jb25mLT5xX2RsXzVnLmFxX2RlcHRoX2xvZzIpOw0KPiA+ICt9DQo+ ID4gKw0KPiA+ICAvKiBGcmVlIDY0TUIgbWVtb3J5IHVzZWQgZm9yIHNvZnR3YXJlIHJpbmdzICov ICBzdGF0aWMgaW50DQo+ID4gYWNjMTAwX2Rldl9jbG9zZShzdHJ1Y3QgcnRlX2JiZGV2ICpkZXYg IF9fcnRlX3VudXNlZCkgQEAgLTMzLDgNCj4gKzIxMSw1NQ0KPiA+IEBADQo+ID4gIAlyZXR1cm4g MDsNCj4gPiAgfQ0KPiA+DQo+ID4gKy8qIEdldCBBQ0MxMDAgZGV2aWNlIGluZm8gKi8NCj4gPiAr c3RhdGljIHZvaWQNCj4gPiArYWNjMTAwX2Rldl9pbmZvX2dldChzdHJ1Y3QgcnRlX2JiZGV2ICpk ZXYsDQo+ID4gKwkJc3RydWN0IHJ0ZV9iYmRldl9kcml2ZXJfaW5mbyAqZGV2X2luZm8pIHsNCj4g PiArCXN0cnVjdCBhY2MxMDBfZGV2aWNlICpkID0gZGV2LT5kYXRhLT5kZXZfcHJpdmF0ZTsNCj4g PiArDQo+ID4gKwlzdGF0aWMgY29uc3Qgc3RydWN0IHJ0ZV9iYmRldl9vcF9jYXAgYmJkZXZfY2Fw YWJpbGl0aWVzW10gPSB7DQo+ID4gKwkJUlRFX0JCREVWX0VORF9PRl9DQVBBQklMSVRJRVNfTElT VCgpDQo+ID4gKwl9Ow0KPiA+ICsNCj4gPiArCXN0YXRpYyBzdHJ1Y3QgcnRlX2JiZGV2X3F1ZXVl X2NvbmYgZGVmYXVsdF9xdWV1ZV9jb25mOw0KPiA+ICsJZGVmYXVsdF9xdWV1ZV9jb25mLnNvY2tl dCA9IGRldi0+ZGF0YS0+c29ja2V0X2lkOw0KPiA+ICsJZGVmYXVsdF9xdWV1ZV9jb25mLnF1ZXVl X3NpemUgPSBNQVhfUVVFVUVfREVQVEg7DQo+ID4gKw0KPiA+ICsJZGV2X2luZm8tPmRyaXZlcl9u YW1lID0gZGV2LT5kZXZpY2UtPmRyaXZlci0+bmFtZTsNCj4gPiArDQo+ID4gKwkvKiBSZWFkIGFu ZCBzYXZlIHRoZSBwb3B1bGF0ZWQgY29uZmlnIGZyb20gQUNDMTAwIHJlZ2lzdGVycyAqLw0KPiA+ ICsJZmV0Y2hfYWNjMTAwX2NvbmZpZyhkZXYpOw0KPiA+ICsNCj4gPiArCS8qIFRoaXMgaXNuJ3Qg aWRlYWwgYmVjYXVzZSBpdCByZXBvcnRzIHRoZSBtYXhpbXVtIG51bWJlciBvZiBxdWV1ZXMNCj4g YnV0DQo+ID4gKwkgKiBkb2VzIG5vdCBwcm92aWRlIGluZm8gb24gaG93IG1hbnkgY2FuIGJlIHVw bGluay9kb3dubGluayBvcg0KPiBkaWZmZXJlbnQNCj4gPiArCSAqIHByaW9yaXRpZXMNCj4gPiAr CSAqLw0KPiA+ICsJZGV2X2luZm8tPm1heF9udW1fcXVldWVzID0NCj4gPiArCQkJZC0+YWNjMTAw X2NvbmYucV9kbF81Zy5udW1fYXFzX3Blcl9ncm91cHMgKg0KPiA+ICsJCQlkLT5hY2MxMDBfY29u Zi5xX2RsXzVnLm51bV9xZ3JvdXBzICsNCj4gPiArCQkJZC0+YWNjMTAwX2NvbmYucV91bF81Zy5u dW1fYXFzX3Blcl9ncm91cHMgKg0KPiA+ICsJCQlkLT5hY2MxMDBfY29uZi5xX3VsXzVnLm51bV9x Z3JvdXBzICsNCj4gPiArCQkJZC0+YWNjMTAwX2NvbmYucV9kbF80Zy5udW1fYXFzX3Blcl9ncm91 cHMgKg0KPiA+ICsJCQlkLT5hY2MxMDBfY29uZi5xX2RsXzRnLm51bV9xZ3JvdXBzICsNCj4gPiAr CQkJZC0+YWNjMTAwX2NvbmYucV91bF80Zy5udW1fYXFzX3Blcl9ncm91cHMgKg0KPiA+ICsJCQlk LT5hY2MxMDBfY29uZi5xX3VsXzRnLm51bV9xZ3JvdXBzOw0KPiA+ICsJZGV2X2luZm8tPnF1ZXVl X3NpemVfbGltID0gTUFYX1FVRVVFX0RFUFRIOw0KPiA+ICsJZGV2X2luZm8tPmhhcmR3YXJlX2Fj Y2VsZXJhdGVkID0gdHJ1ZTsNCj4gPiArCWRldl9pbmZvLT5tYXhfZGxfcXVldWVfcHJpb3JpdHkg PQ0KPiA+ICsJCQlkLT5hY2MxMDBfY29uZi5xX2RsXzRnLm51bV9xZ3JvdXBzIC0gMTsNCj4gPiAr CWRldl9pbmZvLT5tYXhfdWxfcXVldWVfcHJpb3JpdHkgPQ0KPiA+ICsJCQlkLT5hY2MxMDBfY29u Zi5xX3VsXzRnLm51bV9xZ3JvdXBzIC0gMTsNCj4gPiArCWRldl9pbmZvLT5kZWZhdWx0X3F1ZXVl X2NvbmYgPSBkZWZhdWx0X3F1ZXVlX2NvbmY7DQo+ID4gKwlkZXZfaW5mby0+Y3B1X2ZsYWdfcmVx cyA9IE5VTEw7DQo+ID4gKwlkZXZfaW5mby0+bWluX2FsaWdubWVudCA9IDY0Ow0KPiA+ICsJZGV2 X2luZm8tPmNhcGFiaWxpdGllcyA9IGJiZGV2X2NhcGFiaWxpdGllczsNCj4gPiArCWRldl9pbmZv LT5oYXJxX2J1ZmZlcl9zaXplID0gZC0+ZGRyX3NpemU7IH0NCj4gPiArDQo+ID4gIHN0YXRpYyBj b25zdCBzdHJ1Y3QgcnRlX2JiZGV2X29wcyBhY2MxMDBfYmJkZXZfb3BzID0gew0KPiA+ICAJLmNs b3NlID0gYWNjMTAwX2Rldl9jbG9zZSwNCj4gPiArCS5pbmZvX2dldCA9IGFjYzEwMF9kZXZfaW5m b19nZXQsDQo+ID4gIH07DQo+ID4NCj4gPiAgLyogQUNDMTAwIFBDSSBQRiBhZGRyZXNzIG1hcCAq Lw0KPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2Jhc2ViYW5kL2FjYzEwMC9ydGVfYWNjMTAwX3Bt ZC5oDQo+ID4gYi9kcml2ZXJzL2Jhc2ViYW5kL2FjYzEwMC9ydGVfYWNjMTAwX3BtZC5oDQo+ID4g aW5kZXggY2Q3NzU3MC4uNjYyZTJjOCAxMDA2NDQNCj4gPiAtLS0gYS9kcml2ZXJzL2Jhc2ViYW5k L2FjYzEwMC9ydGVfYWNjMTAwX3BtZC5oDQo+ID4gKysrIGIvZHJpdmVycy9iYXNlYmFuZC9hY2Mx MDAvcnRlX2FjYzEwMF9wbWQuaA0KPiA+IEBAIC03LDYgKzcsNyBAQA0KPiA+DQo+ID4gICNpbmNs dWRlICJhY2MxMDBfcGZfZW51bS5oIg0KPiA+ICAjaW5jbHVkZSAiYWNjMTAwX3ZmX2VudW0uaCIN Cj4gPiArI2luY2x1ZGUgInJ0ZV9hY2MxMDBfY2ZnLmgiDQo+ID4NCj4gPiAgLyogSGVscGVyIG1h Y3JvIGZvciBsb2dnaW5nICovDQo+ID4gICNkZWZpbmUgcnRlX2JiZGV2X2xvZyhsZXZlbCwgZm10 LCAuLi4pIFwgQEAgLTUyMCw2ICs1MjEsOCBAQCBzdHJ1Y3QNCj4gPiBhY2MxMDBfcmVnaXN0cnlf YWRkciB7DQo+ID4gIC8qIFByaXZhdGUgZGF0YSBzdHJ1Y3R1cmUgZm9yIGVhY2ggQUNDMTAwIGRl dmljZSAqLyAgc3RydWN0DQo+ID4gYWNjMTAwX2RldmljZSB7DQo+ID4gIAl2b2lkICptbWlvX2Jh c2U7ICAvKio8IEJhc2UgYWRkcmVzcyBvZiBNTUlPIHJlZ2lzdGVycyAoQkFSMCkgKi8NCj4gPiAr CXVpbnQzMl90IGRkcl9zaXplOyAvKiBTaXplIGluIGtCICovDQo+ID4gKwlzdHJ1Y3QgYWNjMTAw X2NvbmYgYWNjMTAwX2NvbmY7IC8qIEFDQzEwMCBJbml0aWFsIGNvbmZpZ3VyYXRpb24gKi8NCj4g PiAgCWJvb2wgcGZfZGV2aWNlOyAvKio8IFRydWUgaWYgdGhpcyBpcyBhIFBGIEFDQzEwMCBkZXZp Y2UgKi8NCj4gPiAgCWJvb2wgY29uZmlndXJlZDsgLyoqPCBUcnVlIGlmIHRoaXMgQUNDMTAwIGRl dmljZSBpcyBjb25maWd1cmVkICovDQo+ID4gfTsNCg0K