From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR02-AM5-obe.outbound.protection.outlook.com (mail-eopbgr00075.outbound.protection.outlook.com [40.107.0.75]) by dpdk.org (Postfix) with ESMTP id 18B5E5681 for ; Tue, 10 Jul 2018 12:13:27 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=HhWaSeaMBt1FoklnyF1kzh+hddcGbBjUbWJlji2uS1k=; b=m6GIZzdLBodIvUKXv/MLstAad62B4jReYzK5ggUTkPUP29iMdfduJp79FBU/AcsBSoW6b1PyQPHfdNvw2LVGCkHwxrjEaUx9tpkcfNVxaU2+XE100AFk6QcjLfCTC5TmwEDIKz4y2BVcJoYPsVfVCPKS16lXcf9rGZ1LYBlomzY= Received: from DB7PR05MB4426.eurprd05.prod.outlook.com (52.134.109.15) by DB7PR05MB4316.eurprd05.prod.outlook.com (52.134.108.141) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.930.21; Tue, 10 Jul 2018 10:13:25 +0000 Received: from DB7PR05MB4426.eurprd05.prod.outlook.com ([fe80::d9c6:913c:c361:f7b7]) by DB7PR05MB4426.eurprd05.prod.outlook.com ([fe80::d9c6:913c:c361:f7b7%6]) with mapi id 15.20.0930.022; Tue, 10 Jul 2018 10:13:25 +0000 From: Shahaf Shuler To: Adrien Mazarguil CC: "dev@dpdk.org" , =?utf-8?B?TsOpbGlvIExhcmFuamVpcm8=?= , "Xueming(Steven) Li" Thread-Topic: [PATCH v4 07/10] net/mlx5: probe all port representors Thread-Index: AQHUFDyXmJTjSFxLQkmjY/8QEU2vJqSGtPtAgAGFrwCAAAS/sA== Date: Tue, 10 Jul 2018 10:13:25 +0000 Message-ID: References: <20180704172322.22571-1-adrien.mazarguil@6wind.com> <20180705083934.5535-1-adrien.mazarguil@6wind.com> <20180705083934.5535-8-adrien.mazarguil@6wind.com> <20180710093708.GH5211@6wind.com> In-Reply-To: <20180710093708.GH5211@6wind.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=shahafs@mellanox.com; x-originating-ip: [31.154.10.105] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; DB7PR05MB4316; 7:g/RtYg1L3J71G55oQPTKkOc1ZhDLP/r+T2o2DAp0KFHhJ8EzMvNzK328+VhH2evGAUIouKdaHA7j1KyZ/SZFBbLEKaCkfykqX7mwh1c3BzQsbyrahPARB1CB/ZPAn8oGM1dQuzhbvpX7pDDzV3X+ffVbK6AXWJ4AtKAncXBWQZLOMWiVtLRqxLcWD+AwNJKJ6iB/XBOwmRtKoQzRkoH0bD+RNq+/VhGTadtLSQNrkIeLa1e0i/9/HGU2OtjFP0+a x-ms-exchange-antispam-srfa-diagnostics: SOS; x-ms-office365-filtering-correlation-id: e79e64de-7f02-42a5-6a46-08d5e64dc677 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(5600053)(711020)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(48565401081)(2017052603328)(7153060)(7193020); SRVR:DB7PR05MB4316; x-ms-traffictypediagnostic: DB7PR05MB4316: x-ld-processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(158342451672863)(278428928389397)(189930954265078)(45079756050767); x-ms-exchange-senderadcheck: 1 x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231311)(944501410)(52105095)(3002001)(10201501046)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123562045)(20161123564045)(20161123560045)(6072148)(201708071742011)(7699016); SRVR:DB7PR05MB4316; BCL:0; PCL:0; RULEID:; SRVR:DB7PR05MB4316; x-forefront-prvs: 0729050452 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(396003)(366004)(346002)(136003)(376002)(39860400002)(189003)(199004)(45080400002)(446003)(6916009)(97736004)(99286004)(14454004)(86362001)(476003)(26005)(66066001)(102836004)(5660300001)(6506007)(54906003)(316002)(11346002)(105586002)(33656002)(186003)(478600001)(486006)(76176011)(7696005)(7736002)(256004)(14444005)(2906002)(68736007)(6116002)(8936002)(3846002)(25786009)(6436002)(81166006)(5250100002)(81156014)(4326008)(8676002)(2900100001)(93886005)(53936002)(107886003)(6306002)(9686003)(6246003)(55016002)(74316002)(106356001)(305945005)(229853002)(309714004); DIR:OUT; SFP:1101; SCL:1; SRVR:DB7PR05MB4316; H:DB7PR05MB4426.eurprd05.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: WdvtGL8LUE0wnH9rLovHq66aWw5pX+Fj09HpYnSoBvkw5C+kmcPvjy4SJvIB1TkIruB2JLFUnFwI4rHOV5Fyld72dr7dYMbZ6qKj6ZnYFcp9Uz9L/htS7hMTjeC7dm6hW7HtjBb045i9znHM81Vw7rkjIwINwQFOl35DcGlFPWuFeO81ggT4a7fENNz0HknD4w7/T3hcwObA0R/8sKHIIppoowlM6WGUqGy/X7IbqwIP/rBJ3k2amOCpWfrnWrSGA7HfT/r00D16KCwm9x/3pV8TNCbof9P1V+w7yNcyjmwL/N8JQ6AIa3FPhx26QAWUsNEQFVGCXuUnf5AVHVUmrLsGLmG1nDDjNMO0Qbdw/zE= spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-Network-Message-Id: e79e64de-7f02-42a5-6a46-08d5e64dc677 X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Jul 2018 10:13:25.7416 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR05MB4316 Subject: Re: [dpdk-dev] [PATCH v4 07/10] net/mlx5: probe all port representors 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: , X-List-Received-Date: Tue, 10 Jul 2018 10:13:27 -0000 VHVlc2RheSwgSnVseSAxMCwgMjAxOCAxMjozNyBQTSwgQWRyaWVuIE1hemFyZ3VpbDoNCj4gU3Vi amVjdDogUmU6IFtQQVRDSCB2NCAwNy8xMF0gbmV0L21seDU6IHByb2JlIGFsbCBwb3J0IHJlcHJl c2VudG9ycw0KPiANCj4gT24gTW9uLCBKdWwgMDksIDIwMTggYXQgMTE6NTc6MjlBTSArMDAwMCwg U2hhaGFmIFNodWxlciB3cm90ZToNCj4gPiBIaSBBZHJpZW4sDQo+ID4NCj4gPg0KPiA+IFRodXJz ZGF5LCBKdWx5IDUsIDIwMTggMTE6NDYgQU0sIEFkcmllbiBNYXphcmd1aWw6DQo+ID4gPiBTdWJq ZWN0OiBbUEFUQ0ggdjQgMDcvMTBdIG5ldC9tbHg1OiBwcm9iZSBhbGwgcG9ydCByZXByZXNlbnRv cnMNCj4gPiA+DQo+ID4gPiBQcm9iZSBleGlzdGluZyBwb3J0IHJlcHJlc2VudG9ycyBpbiBhZGRp dGlvbiB0byB0aGVpciBtYXN0ZXIgZGV2aWNlDQo+ID4gPiBhbmQgYXNzb2NpYXRlIHRoZW0gYXV0 b21hdGljYWxseS4NCj4gPiA+DQo+ID4gPiBUbyBhdm9pZCBjb2xsaXNpb24gYmV0d2VlbiBFdGhl cm5ldCBkZXZpY2VzLCB0aGV5IGFyZSBuYW1lZCBhcyBmb2xsb3dzOg0KPiA+ID4NCj4gPiA+IC0g IntEQkRGfSIgZm9yIG1hc3Rlci9zd2l0Y2ggZGV2aWNlcy4NCj4gPiA+IC0gIntEQkRGfV9yZXBy ZXNlbnRvcl97cmVwfSIgd2l0aCAicmVwIiBzdGFydGluZyBmcm9tIDAgZm9yIHBvcnQNCj4gPiA+ ICAgcmVwcmVzZW50b3JzLg0KPiA+ID4NCj4gPiA+IChQYXRjaCBiYXNlZCBvbiBwcmlvciB3b3Jr IGZyb20gWXVhbmhhbiBMaXUpDQo+ID4gPg0KPiA+ID4gU2lnbmVkLW9mZi1ieTogQWRyaWVuIE1h emFyZ3VpbCA8YWRyaWVuLm1hemFyZ3VpbEA2d2luZC5jb20+DQo+ID4gPiBTaWduZWQtb2ZmLWJ5 OiBOZWxpbyBMYXJhbmplaXJvIDxuZWxpby5sYXJhbmplaXJvQDZ3aW5kLmNvbT4NCj4gPiA+IFJl dmlld2VkLWJ5OiBYdWVtaW5nIExpIDx4dWVtaW5nbEBtZWxsYW5veC5jb20+DQo+ID4gPiBDYzog WHVlbWluZyBMaSA8eHVlbWluZ2xAbWVsbGFub3guY29tPg0KPiA+ID4gQ2M6IFNoYWhhZiBTaHVs ZXIgPHNoYWhhZnNAbWVsbGFub3guY29tPg0KPiA+ID4gLS0NCj4gPiA+IHY0IGNoYW5nZXM6DQo+ ID4gPg0KPiA+ID4gLSBGaXhlZCBkb21haW4gSUQgcmVsZWFzZSBvbmNlIHRoZSBsYXN0IHBvcnQg dXNpbmcgaXQgaXMgY2xvc2VkLiBDbG9zZWQNCj4gPiA+ICAgZGV2aWNlcyBhcmUgbm90IG5lY2Vz c2FyaWx5IGRldGFjaGVkLCB0aGVpciBwcmVzZW5jZSBpcyBub3QgYSBnb29kDQo+ID4gPiAgIGlu ZGljYXRvci4gQ29kZSB3YXMgbW9kaWZpZWQgdG8gY2hlY2sgaWYgdGhleSBzdGlsbCB1c2UgdGhl aXIgZG9tYWluIElEcw0KPiA+ID4gICBiZWZvcmUgZGVjaWRpbmcgdG8gcmVsZWFzZSBpdC4NCj4g PHNuaXA+DQo+ID4gPiBAQCAtODgzLDYgKzkxNSw0MSBAQCBtbHg1X2Rldl9zcGF3bihzdHJ1Y3Qg cnRlX2RldmljZSAqZHBka19kZXYsDQo+ID4gPiAgCXByaXYtPm5sX3NvY2tldF9yZG1hID0gbWx4 NV9ubF9pbml0KDAsIE5FVExJTktfUkRNQSk7DQo+ID4gPiAgCXByaXYtPm5sX3NvY2tldF9yb3V0 ZSA9CW1seDVfbmxfaW5pdChSVE1HUlBfTElOSywNCj4gPiA+IE5FVExJTktfUk9VVEUpOw0KPiA+ ID4gIAlwcml2LT5ubF9zbiA9IDA7DQo+ID4gPiArCXByaXYtPnJlcHJlc2VudG9yID0gISFzd2l0 Y2hfaW5mby0+cmVwcmVzZW50b3I7DQo+ID4gPiArCXByaXYtPmRvbWFpbl9pZCA9IFJURV9FVEhf REVWX1NXSVRDSF9ET01BSU5fSURfSU5WQUxJRDsNCj4gPiA+ICsJcHJpdi0+cmVwcmVzZW50b3Jf aWQgPQ0KPiA+ID4gKwkJc3dpdGNoX2luZm8tPnJlcHJlc2VudG9yID8gc3dpdGNoX2luZm8tPnBv cnRfbmFtZSA6IC0xOw0KPiA+ID4gKwkvKg0KPiA+ID4gKwkgKiBMb29rIGZvciBzaWJsaW5nIGRl dmljZXMgaW4gb3JkZXIgdG8gcmV1c2UgdGhlaXIgc3dpdGNoIGRvbWFpbg0KPiA+ID4gKwkgKiBp ZiBhbnksIG90aGVyd2lzZSBhbGxvY2F0ZSBvbmUuDQo+ID4gPiArCSAqLw0KPiA+ID4gKwlpID0g bWx4NV9kZXZfdG9fcG9ydF9pZChkcGRrX2RldiwgTlVMTCwgMCk7DQo+ID4gPiArCWlmIChpID4g MCkgew0KPiA+ID4gKwkJdWludDE2X3QgcG9ydF9pZFtpXTsNCj4gPiA+ICsNCj4gPiA+ICsJCWkg PSBSVEVfTUlOKG1seDVfZGV2X3RvX3BvcnRfaWQoZHBka19kZXYsIHBvcnRfaWQsIGkpLCBpKTsN Cj4gPiA+ICsJCXdoaWxlIChpLS0pIHsNCj4gPiA+ICsJCQljb25zdCBzdHJ1Y3QgcHJpdiAqb3By aXYgPQ0KPiA+ID4gKwkJCQlydGVfZXRoX2RldmljZXNbcG9ydF9pZFtpXV0uZGF0YS0NCj4gPiA+ ID5kZXZfcHJpdmF0ZTsNCj4gPiA+ICsNCj4gPiA+ICsJCQlpZiAoIW9wcml2IHx8DQo+ID4gPiAr CQkJICAgIG9wcml2LT5kb21haW5faWQgPT0NCj4gPiA+ICsJCQkgICAgUlRFX0VUSF9ERVZfU1dJ VENIX0RPTUFJTl9JRF9JTlZBTElEKQ0KPiA+ID4gKwkJCQljb250aW51ZTsNCj4gPiA+ICsJCQlw cml2LT5kb21haW5faWQgPSBvcHJpdi0+ZG9tYWluX2lkOw0KPiA+DQo+ID4gSXQgbG9va3MgbGlr ZSBmb3IgdGhlIHNlY29uZCBwb3J0IGl0IHdpbGwgdXNlIHRoZSBkb21haW5faWQgb2YgdGhlIGZp cnN0IHBvcnQuIElzDQo+IHRoYXQgd2hhdCB5b3UgaW50ZW50Pw0KPiANCj4gWWVzLCBpdCdzIG9u IHB1cnBvc2UuIE1hc3RlciBhbmQgcmVwcmVzZW50b3JzIG9mIGEgZ2l2ZW4gZGV2aWNlIG11c3Qg c2hhcmUNCj4gdGhlIHNhbWUgZG9tYWluIElEIHRvIGxldCBhcHBsaWNhdGlvbnMga25vdyB0aGV5 IGNhbiBjcmVhdGUgZmxvdyBydWxlcyB0bw0KPiBmb3J3YXJkIHRyYWZmaWMgYmV0d2VlbiB0aGVt IGFsbC4NCg0KQnV0IHRoaXMgaXMgbm90IHRoZSBjYXNlIGluIE1lbGxhbm94IGRldmljZXMuIE9u IE1lbGxhbm94IGRldmljZXMgZWFjaCBQRiBhbG9uZyB3LyBpdHMgcmVwcmVzZW50b3JzIGhhcyBh IHNlcGFyYXRlIGVzd2l0Y2gsIGFuZCB0cmFmZmljIGNhbm5vdCBiZSByb3V0ZWQgYmV0d2VlbiB0 aGUgc3dpdGNoZXMgdXNpbmcgZmxvdyBydWxlcy4NCkZvciBleGFtcGxlIGlmIHdlIGhhdmUgUEYw IGFsb25nIHcvIGl0cyByZXByZXNlbnRvciBSRVAwXzAgYW5kIFBGMSBhbG9uZyB3LyBpdHMgcmVw cmVzZW50b3IgUkVQMV8wIC4gUEYwIGFuZCBSRVAwXzAgd2lsbCBiZWxvbmcgdG8gc3dpdGNoIFgg YW5kIFBGMSBhbmQgUkVQMV8wIHdpbGwgYmVsb25nIHRvIHN3aXRjaCBkb21haW4gWS4gaXQgaXMg YWxzbyBiZWluZyByZWZsZWN0ZWQgb24gdGhlIHBoeXNfc3dpdGNoX2lkLg0KDQpXZSBzaG91bGQg aGF2ZSBzd2l0Y2ggZG9tYWluIHBlciBQRi4gDQoNCj4gDQo+ID4gTm90ZSAtIEkgY291bGRuJ3Qg dGVzdCBpdCBkdWUgdG8gY29tcGlsYXRpb24gZXJyb3JzOg0KPiA+DQo+ID4NCj4gLy5hdXRvZGly ZWN0L3N3Z3dvcmsvc2hhaGFmcy93b3Jrc3BhY2UvZHBkay5vcmcvZHJpdmVycy9uZXQvbWx4NS9t bHg1DQo+IF9ubC5jOiBJbiBmdW5jdGlvbiAnbWx4NV9ubF9zd2l0Y2hfaW5mb19jYic6DQo+ID4N Cj4gLy5hdXRvZGlyZWN0L3N3Z3dvcmsvc2hhaGFmcy93b3Jrc3BhY2UvZHBkay5vcmcvZHJpdmVy cy9uZXQvbWx4NS9tbHg1DQo+IF8NCj4gPiBubC5jOjg0Mzo4OiBlcnJvcjogJ0lGTEFfUEhZU19Q T1JUX05BTUUnIHVuZGVjbCBhcmVkIChmaXJzdCB1c2UgaW4gdGhpcw0KPiBmdW5jdGlvbikNCj4g PiAgICBjYXNlIElGTEFfUEhZU19QT1JUX05BTUU6DQo+ID4gICAgICAgICBeDQo+ID4NCj4gLy5h dXRvZGlyZWN0L3N3Z3dvcmsvc2hhaGFmcy93b3Jrc3BhY2UvZHBkay5vcmcvZHJpdmVycy9uZXQv bWx4NS9tbHg1DQo+IF8NCj4gPiBubC5jOjg0Mzo4OiBub3RlOiBlYWNoIHVuZGVjbGFyZWQgaWRl bnRpZmllciBpcyAgcmVwb3J0ZWQgb25seSBvbmNlDQo+ID4gZm9yIGVhY2ggZnVuY3Rpb24gaXQg YXBwZWFycyBpbg0KPiA+DQo+IC8uYXV0b2RpcmVjdC9zd2d3b3JrL3NoYWhhZnMvd29ya3NwYWNl L2RwZGsub3JnL2RyaXZlcnMvbmV0L21seDUvbWx4NQ0KPiBfDQo+ID4gbmwuYzo4NTE6ODogZXJy b3I6ICdJRkxBX1BIWVNfU1dJVENIX0lEJyB1bmRlY2wgYXJlZCAoZmlyc3QgdXNlIGluIHRoaXMN Cj4gZnVuY3Rpb24pDQo+ID4gICAgY2FzZSBJRkxBX1BIWVNfU1dJVENIX0lEOg0KPiA+ICAgICAg ICAgXg0KPiA+DQo+ID4gTXkgc3lzdGVtIGluZm86DQo+ID4gTkFNRT0iUmVkIEhhdCBFbnRlcnBy aXNlIExpbnV4IFNlcnZlciINCj4gPiBWRVJTSU9OPSI3LjMgKE1haXBvKSINCj4gPiBJRD0icmhl bCINCj4gPiBJRF9MSUtFPSJmZWRvcmEiDQo+ID4gVkVSU0lPTl9JRD0iNy4zIg0KPiA+IFBSRVRU WV9OQU1FPSJSZWQgSGF0IEVudGVycHJpc2UgTGludXggU2VydmVyIDcuMyAoTWFpcG8pIg0KPiA+ IEFOU0lfQ09MT1I9IjA7MzEiDQo+ID4gQ1BFX05BTUU9ImNwZTovbzpyZWRoYXQ6ZW50ZXJwcmlz ZV9saW51eDo3LjM6R0E6c2VydmVyIg0KPiA+DQo+IEhPTUVfVVJMPSJodHRwczovL2VtZWEwMS5z YWZlbGlua3MucHJvdGVjdGlvbi5vdXRsb29rLmNvbS8/dXJsPWh0dHBzJQ0KPiAzQSUyRiUyRnd3 dy5yZWRoYXQuY29tJTJGJmFtcDtkYXRhPTAyJTdDMDElN0NzaGFoYWZzJTQwbWVsbGFuDQo+IG94 LmNvbSU3QzY2MWU3YjUxMDg3YjQ2MDgxN2MwMDhkNWU2NDhiZjFlJTdDYTY1Mjk3MWM3ZDJlNGQ5 YmE2YTQNCj4gZDE0OTI1NmY0NjFiJTdDMCU3QzAlN0M2MzY2NjgxMjI0NzQ0NDUzNTEmYW1wO3Nk YXRhPUxnOGFyaGlZTHZINUwNCj4gMmhlZjhEVmhTOEEzZlZKJTJCNUlaa0xJSG1xQ2QlMkZtWSUz RCZhbXA7cmVzZXJ2ZWQ9MCINCj4gPg0KPiBCVUdfUkVQT1JUX1VSTD0iaHR0cHM6Ly9lbWVhMDEu c2FmZWxpbmtzLnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD0NCj4gaHR0cHMlM0ElMkYlMkZi dWd6aWxsYS5yZWRoYXQuY29tJTJGJmFtcDtkYXRhPTAyJTdDMDElN0NzaGFoYWZzJQ0KPiA0MG1l bGxhbm94LmNvbSU3QzY2MWU3YjUxMDg3YjQ2MDgxN2MwMDhkNWU2NDhiZjFlJTdDYTY1Mjk3MWM3 ZDJlDQo+IDRkOWJhNmE0ZDE0OTI1NmY0NjFiJTdDMCU3QzAlN0M2MzY2NjgxMjI0NzQ0NDUzNTEm YW1wO3NkYXRhPTNEbw0KPiBSS2p4b3ZNOHRPZ0tMc3NDMW1xMnd3ZmhqcFZVWlNFeFhWNHl3QkVR JTNEJmFtcDtyZXNlcnZlZD0wIg0KPiA+DQo+ID4gUkVESEFUX0JVR1pJTExBX1BST0RVQ1Q9IlJl ZCBIYXQgRW50ZXJwcmlzZSBMaW51eCA3Ig0KPiA+IFJFREhBVF9CVUdaSUxMQV9QUk9EVUNUX1ZF UlNJT049Ny4zDQo+ID4gUkVESEFUX1NVUFBPUlRfUFJPRFVDVD0iUmVkIEhhdCBFbnRlcnByaXNl IExpbnV4Ig0KPiA+IFJFREhBVF9TVVBQT1JUX1BST0RVQ1RfVkVSU0lPTj0iNy4zIg0KPiA+IFJl ZCBIYXQgRW50ZXJwcmlzZSBMaW51eCBTZXJ2ZXIgcmVsZWFzZSA3LjMgKE1haXBvKSBSZWQgSGF0 IEVudGVycHJpc2UNCj4gPiBMaW51eCBTZXJ2ZXIgcmVsZWFzZSA3LjMgKE1haXBvKQ0KPiANCj4g T0ssIEknbGwgcmVkZWZpbmUgaW4gdjUgaW4gY2FzZSB0aGV5IGFyZSBtaXNzaW5nIG9uIHRoZSBo b3N0IHN5c3RlbS4NCj4gDQo+IDxzbmlwPg0KPiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0 L21seDUvbWx4NS5oIGIvZHJpdmVycy9uZXQvbWx4NS9tbHg1LmggaW5kZXgNCj4gPiA+IDcwNDA0 NjI3MC4uY2MwMTMxMGUwIDEwMDY0NA0KPiA+ID4gLS0tIGEvZHJpdmVycy9uZXQvbWx4NS9tbHg1 LmgNCj4gPiA+ICsrKyBiL2RyaXZlcnMvbmV0L21seDUvbWx4NS5oDQo+ID4gPiBAQCAtMTU5LDYg KzE1OSw3IEBAIHN0cnVjdCBwcml2IHsNCj4gPiA+ICAJc3RydWN0IGlidl9jb250ZXh0ICpjdHg7 IC8qIFZlcmJzIGNvbnRleHQuICovDQo+ID4gPiAgCXN0cnVjdCBpYnZfZGV2aWNlX2F0dHJfZXgg ZGV2aWNlX2F0dHI7IC8qIERldmljZSBwcm9wZXJ0aWVzLiAqLw0KPiA+ID4gIAlzdHJ1Y3QgaWJ2 X3BkICpwZDsgLyogUHJvdGVjdGlvbiBEb21haW4uICovDQo+ID4gPiArCWNoYXIgaWJkZXZfbmFt ZVtJQlZfU1lTRlNfTkFNRV9NQVhdOyAvKiBJQiBkZXZpY2UgbmFtZS4gKi8NCj4gPg0KPiA+DQo+ ID4gV2h5IHdlIG5lZWQgYSBkZWRpY2F0ZWQgZW50cnkgZm9yIHRoZSBpYmRldl9uYW1lPyBpdCBp cyBhbHJlYWR5IHBhcnQgb2YNCj4gcHJpdi0+Y3R4LT5kZXZpY2UtPm5hbWUuDQo+IA0KPiBIZWgs IHNhbWUgcmVhc29uIGFzIHRoZSBuZXh0IGxpbmUgYmVsb3csIGRvbid0IGZvcmdldCB0aG9zZSBk YW1uDQo+IHNlY29uZGFyaWVzIHdoaWNoIGNhbid0IGRlcmVmZXJlbmNlIGxvY2FsIHBvaW50ZXJz IGZyb20gdGhlIHByaW1hcnkgcHJvY2Vzcw0KPiA6KQ0KDQpSaWdodCDwn5iKLiANCg0KPiANCj4g PiA+ICAJY2hhciBpYmRldl9wYXRoW0lCVl9TWVNGU19QQVRIX01BWF07IC8qIElCIGRldmljZSBw YXRoIGZvcg0KPiA+ID4gc2Vjb25kYXJ5ICovDQo+IDxzbmlwPg0KPiA+ID4gc3RydWN0IHJ0ZV9l dGhfZGV2X2luZm8gKmluZm8pDQo+ID4gPiAgCWluZm8tPnNwZWVkX2NhcGEgPSBwcml2LT5saW5r X3NwZWVkX2NhcGE7DQo+ID4gPiAgCWluZm8tPmZsb3dfdHlwZV9yc3Nfb2ZmbG9hZHMgPSB+TUxY NV9SU1NfSEZfTUFTSzsNCj4gPiA+ICAJbWx4NV9zZXRfZGVmYXVsdF9wYXJhbXMoZGV2LCBpbmZv KTsNCj4gPiA+ICsJaW5mby0+c3dpdGNoX2luZm8ubmFtZSA9IGRldi0+ZGF0YS0+bmFtZTsNCj4g PiA+ICsJaW5mby0+c3dpdGNoX2luZm8uZG9tYWluX2lkID0gcHJpdi0+ZG9tYWluX2lkOw0KPiA+ ID4gKwlpbmZvLT5zd2l0Y2hfaW5mby5wb3J0X2lkID0gcHJpdi0+cmVwcmVzZW50b3JfaWQ7DQo+ ID4gPiArCWlmIChwcml2LT5yZXByZXNlbnRvcikgew0KPiA+ID4gKwkJdW5zaWduZWQgaW50IGkg PSBtbHg1X2Rldl90b19wb3J0X2lkKGRldi0+ZGV2aWNlLCBOVUxMLCAwKTsNCj4gPiA+ICsJCXVp bnQxNl90IHBvcnRfaWRbaV07DQo+ID4gPiArDQo+ID4gPiArCQlpID0gUlRFX01JTihtbHg1X2Rl dl90b19wb3J0X2lkKGRldi0+ZGV2aWNlLCBwb3J0X2lkLCBpKSwNCj4gPiA+IGkpOw0KPiA+ID4g KwkJd2hpbGUgKGktLSkgew0KPiA+ID4gKwkJCXN0cnVjdCBwcml2ICpvcHJpdiA9DQo+ID4gPiAr CQkJCXJ0ZV9ldGhfZGV2aWNlc1twb3J0X2lkW2ldXS5kYXRhLQ0KPiA+ID4gPmRldl9wcml2YXRl Ow0KPiA+ID4gKw0KPiA+ID4gKwkJCWlmICghb3ByaXYgfHwNCj4gPiA+ICsJCQkgICAgb3ByaXYt PnJlcHJlc2VudG9yIHx8DQo+ID4gPiArCQkJICAgIG9wcml2LT5kb21haW5faWQgIT0gcHJpdi0+ ZG9tYWluX2lkKQ0KPiA+ID4gKwkJCQljb250aW51ZTsNCj4gPiA+ICsJCQkvKg0KPiA+ID4gKwkJ CSAqIE92ZXJyaWRlIHN3aXRjaCBuYW1lIHdpdGggdGhhdCBvZiB0aGUgbWFzdGVyDQo+ID4gPiAr CQkJICogZGV2aWNlLg0KPiA+ID4gKwkJCSAqLw0KPiA+ID4gKwkJCWluZm8tPnN3aXRjaF9pbmZv Lm5hbWUgPSBvcHJpdi0+ZGV2X2RhdGEtPm5hbWU7DQo+ID4gPiArCQkJYnJlYWs7DQo+ID4NCj4g PiBBY2NvcmRpbmcgdG8gdGhpcyBsb2dpYyBpdCBtZWFucyBvbmNlIHRoZSBtYXN0ZXIgZGV2aWNl IGlzIGNsb3NlZCwgYWxsIHRoZQ0KPiByZXByZXNlbnRvcnMgYXJlIG5vIGxvbmdlciBiZWxvbmcg dG8gdGhlIHNhbWUgc3dpdGNoIChzd2l0Y2ggbmFtZSBvZiBlYWNoDQo+IGlzIGRpZmZlcmVudCkg d2hpY2ggaXMgbm90IGNvcnJlY3QuDQo+IA0KPiBUaGV5IHN0aWxsIHNoYXJlIHRoZSBzYW1lIGRv bWFpbiBJRCwgd2hpY2ggaXMgd2hhdCBhY3R1YWxseSBtYXR0ZXJzLiBUaGUNCj4gc3dpdGNoIG5h bWUgaXMgb25seSBwcm92aWRlZCB0byBsZXQgYXBwbGljYXRpb25zIGlkZW50aWZ5IHRoZSBtYXN0 ZXINCj4gKGNvbnRyb2wpIGRldmljZSBpbiBjYXNlIGl0J3MgbmVlZGVkLg0KPiANCj4gPiBBY2Nv cmRpbmcgdG8geW91ciBub3RlcyBpdCBpcyBwb3NzaWJsZSB0byBjbG9zZSBtYXN0ZXIgdy9vIGNs b3NpbmcgdGhlDQo+IHJlcHJlc2VudG9yLg0KPiANCj4gVGhpcyBhbGxvd3MgZGV2aWNlcyB0byBi ZSBwcm9iZWQgaW4gYW55IG9yZGVyIG9uIGEgbmVlZGVkIGJhc2lzLCBub3QgYWxsIGF0DQo+IG9u Y2UuIEl0J3MgZG9uZSBvbiBwdXJwb3NlIHRvIHBhdmUgdGhlIHdheSBmb3IgaG90cGx1ZyBzdXBw b3J0Lg0KPiANCj4gPiBXaHkgbm90IGp1c3Qgc3RvcmluZyB0aGUgbWFzdGVyIHN3aXRjaCBuYW1l IHdoZW4gcHJvYmluZyB0aGUNCj4gcmVwcmVzZW50b3IgYW5kIHRvIHVzZSBpdCBhcyBpcyBvbiB0 aGUgZGV2X2luZm8/DQo+IA0KPiBUaGUgc3dpdGNoIG5hbWUgKm11c3QqIGJlIHRoYXQgb2YgdGhl IG1hc3RlciBkZXZpY2UuIElmIHRoZSBtYXN0ZXIgaXMgbm90DQo+IHByb2JlZCwgdGhlcmUgY2Fu J3QgYmUgYSBzd2l0Y2ggbmFtZS4gSG93ZXZlciB0aGVyZSdzIG5vIHJlYWwgcHJvdmlzaW9uIGZv cg0KPiB0aGlzIGluIHRoZSBBUEksIHNvIEkgY2hvc2UgdGhlIG1vc3QgYWNjZXB0YWJsZSB1bmlx dWUgbmFtZSwgd2hpY2ggaXMgdGhlDQo+IG5hbWUgb2YgdGhlIGxvY2FsIGRldmljZS4gV291bGQg eW91IHByZWZlciBhbiBlbXB0eSBuYW1lIGluc3RlYWQ/DQoNClRoZSBjdXJyZW50IGFwcHJvYWNo IGlzIE9LLiANCkkgd2FzIGp1c3Qgc3VnZ2VzdGluZyB0byBza2lwIHRoZSBsb29wIGl0ZXJhdGlv biBieSBzYXZpbmcgdGhlIHN3aXRjaCBuYW1lIG9uIHRoZSBwcml2YXRlIHN0cnVjdHVyZS4gDQoN Cj4gDQo+IFRoaW5nIGlzLCBvbiBtbHg1IGZsb3cgcnVsZXMgY2FuIGJlIGNyZWF0ZWQgZGlyZWN0 bHkgYmV0d2VlbiByZXByZXNlbnRvcnMNCj4gd2l0aG91dCBpbnZvbHZpbmcgdGhlIG1hc3RlciBk ZXZpY2UuIEFuIGVtcHR5IHN3aXRjaCBuYW1lIG1heSBiZQ0KPiBtaXNsZWFkaW5nIGluIHRoaXMg cmVzcGVjdC4NCj4gDQo+IFdoYXQgZG8geW91IHN1Z2dlc3Q/DQo+IA0KPiAtLQ0KPiBBZHJpZW4g TWF6YXJndWlsDQo+IDZXSU5EDQo=