From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 07995A034F; Tue, 8 Jun 2021 07:29:19 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 84F74410EB; Tue, 8 Jun 2021 07:29:19 +0200 (CEST) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mails.dpdk.org (Postfix) with ESMTP id B5D1B410E7 for ; Tue, 8 Jun 2021 07:29:17 +0200 (CEST) IronPort-SDR: 9yjonR+H68Y4Pb1IffuaE2WEcYjwGkmVOezppi93fHRuU9+TdmigLOXStSGK/C/atAJUFINMlR 2P31sb/0X4+A== X-IronPort-AV: E=McAfee;i="6200,9189,10008"; a="226115800" X-IronPort-AV: E=Sophos;i="5.83,256,1616482800"; d="scan'208";a="226115800" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Jun 2021 22:29:16 -0700 IronPort-SDR: JR/j/YuPyT3k8IfxA39IJcS5pA12VMU4aN3lVgqZxLAuZtLaV1mYM3Yr+ssRYMAjp0/u557une g0RQAz0JS43A== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,256,1616482800"; d="scan'208";a="551478160" Received: from fmsmsx604.amr.corp.intel.com ([10.18.126.84]) by orsmga004.jf.intel.com with ESMTP; 07 Jun 2021 22:29:16 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx604.amr.corp.intel.com (10.18.126.84) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4; Mon, 7 Jun 2021 22:29:15 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4; Mon, 7 Jun 2021 22:29:15 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4 via Frontend Transport; Mon, 7 Jun 2021 22:29:15 -0700 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.106) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.4; Mon, 7 Jun 2021 22:29:14 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=H2dNQyu/0fjoaSJAlNMRAGyhSX5K/K6rUKjuESfZrlanfiGiDkNxlVoTuUs7y1M8+RbH0PdbEkkHsVeQ9xXdLHIOBYim+GCX81yeyrOkcgNKkij/zAWrGEZT/sUFiEQ26BW5VfTNvcpdMAGm04jy9PpNzmoCKaTbraEL737ZTv7l+ekA7iuWOEiyVtPgIcafBh7f+C1kxVH6Zj26Ipinav3ngEgl2dc8kg277+qWEt46YlsPt9i8mdwpfNpl+sbVz8z1h6DcXtsbYk5WvzQ+mtILYUMrDv9USEieMZ8ai1jA+H23xzYm/WCSU3e+OiP8YNJ5FsNXsOxXrTa5QSNh7A== 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=wnMKGOeDnfMBx3ClIVBNYDsosyjvOV1lGejZddFhnGE=; b=X6ibbADQ7X0dd6nsxBw8GqwyV1tdj+0oWrOOhYIHFH92AvUDyPenBuzEqneW69hmHe8SquiW63O2aIFIe9382Gsk9jUQIR5eRPfYD1qyPVCMxnyCavZ4rY0g9D3FxBfTA5VFl2UwkUphg0Gh3j59dbZbYEu4GNftZMIhASQF8iZU7k4AId6Uu9Sy8J1HLYjVWYNWFuPvjEegT4Tm6qvjdG9Fqj/YHVrNvP6Wr+mUCYSRSns/ZDWiE1i9rkpRBNI2APdnRcJNjU8OJkHb8HUE3g/xjiAoFguw2s8WHCKFCCuDYaYU8Dpx91knNDrixNJ7hXpVdpdmHlu37TSESTFNIw== 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=wnMKGOeDnfMBx3ClIVBNYDsosyjvOV1lGejZddFhnGE=; b=DUhMgZviBCHptuCQ802FRJMYOwlQtUwja9kkH5rBctmHwyyJbp2/N9/T3JFpjRS+Pi+P21WHIIGSFcYM57buIwkfBCKYAqCUgWHCxq5xUgDGSLK1SeUwFF5ctRXwLSnObSds3jOh/X7IUDi5wSi7mJZKpoojILNH3FbvaEs1zjs= Received: from MN2PR11MB4063.namprd11.prod.outlook.com (2603:10b6:208:13f::22) by MN2PR11MB4125.namprd11.prod.outlook.com (2603:10b6:208:155::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4195.21; Tue, 8 Jun 2021 05:29:10 +0000 Received: from MN2PR11MB4063.namprd11.prod.outlook.com ([fe80::6d37:7bdb:fdf1:e9f3]) by MN2PR11MB4063.namprd11.prod.outlook.com ([fe80::6d37:7bdb:fdf1:e9f3%4]) with mapi id 15.20.4195.030; Tue, 8 Jun 2021 05:29:10 +0000 From: "Xia, Chenbo" To: Maxime Coquelin , Maxime Coquelin , "dev@dpdk.org" , "amorenoz@redhat.com" , "david.marchand@redhat.com" Thread-Topic: [RFC 3/3] net/virtio: add MAC device config getter and setter Thread-Index: AQHXHEcQ4HbNCqCSB0CIakMOSi2Gl6q7i/AggEdFDgCAB0Oe4A== Date: Tue, 8 Jun 2021 05:29:10 +0000 Message-ID: References: <20210318223526.168614-1-maxime.coquelin@redhat.com> <20210318223526.168614-4-maxime.coquelin@redhat.com> In-Reply-To: Accept-Language: en-US, zh-CN Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: 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: [192.55.46.52] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: d1c31d3d-26cb-4668-5e8d-08d92a3e583d x-ms-traffictypediagnostic: MN2PR11MB4125: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:275; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 9gpBk9sFtPf82ODTI1DJv+IC/z9cAu95/IEqdTrV7m8F6yzCUe3ZiKnxCZIpAU5buCc4MKFPSfwTW9/HPYsMUeiOrMxduA9ITk9N7mZATBEwBLinDh8wDt74mCQHgCMA14tjT0rV879+ZcAFQwwufZAurKkbfmoIwzUKtuMo+VPuT5NgCJtQJehnA+5H1EgxkmI+0f7oyxWIKgGOBMGIHxUWWILW8xvApYNve4sTO8Wr8tM2pqvBHQ9z2fp+m/DfeJlSIesgJB991QNPkDuE0+ajPuRiol2l8H3/nE7+KP0d9LYPtpvAeXRGN/o3cZt5xDJYb+NBtRAYO9XGJnF6pbWQt7t98vIKuozFg6o3qSf9b9yAbc56o5dZHhxc95Bt8WI2JrmTCXG6//VQi3X2zcqSnRfvz4prIh1NsD7p9JPes+xwOwX+93c7pUj7q2ctydMBIgUE0zaN3ExepptGzSoyHiKdRAEi5uyvFb6px3fPMPzOqD/PLvdO4bUZLkujhytJFCxywHJQJyQXvWyaIQj5IBu5nfZVYca+3Q7VyFznIFsu6Ty2PC8PnED1r2R7HrOg5snB+IdFohKETW7L9Boo3N3AvnGY4n+JE8kiEJw= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR11MB4063.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(396003)(346002)(366004)(376002)(136003)(39860400002)(6506007)(9686003)(53546011)(7696005)(55016002)(8676002)(33656002)(83380400001)(316002)(26005)(76116006)(110136005)(52536014)(5660300002)(478600001)(2906002)(122000001)(38100700002)(86362001)(71200400001)(66446008)(64756008)(66476007)(66946007)(66556008)(8936002)(186003); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?cTZlc2NBUWhMQnJNWmpkSGxQd1Q4YlJxZEswOFl1QUdUZkg4cWZjSzVSNFJ1?= =?utf-8?B?Rkg4akVJUkxEc3dVNWhOdDJwQUdJdk1uTEVxN0NqQVcrSm5ocnFHQ3pXUmdr?= =?utf-8?B?QTVqTjFYanQ5b0NkUWhKVE9BV0tsV1owWXZHTVBNOUxRWVAzV05xeWhhUlR2?= =?utf-8?B?VTJNeTFYZ1lxQXhyVXB0VVNJczZhaVFlbUErck96bWdscG9HdWFWMWMzVUcr?= =?utf-8?B?K0V5YlBOQ2JNaVA4VU1BdExMTEVQSC8rSHFPblNHNDBpbHFScmx4ZkRSVFRm?= =?utf-8?B?MW16OTQvNEoxVnFoMnBoMVljOWxudGhFZ0l2bStSd21TcG5hNmI3UEtDMlI5?= =?utf-8?B?c3p3OGZjZmlZNUg0VFY1aUhBUmFEVEF1UHd2RlRaMXRjVXZNZ3pXN2JmZkpM?= =?utf-8?B?WS8zMFVaZzQwZE5RV0trRE1XRUxGT1ppbm1rMDBuK0xVTE11TGllVkNYaDRW?= =?utf-8?B?WXFCcHpqa2xlT2grdDRleUU4V1RUY2lSS3FTWWdNYU40Tm80L0syemllOHVy?= =?utf-8?B?bHVybFdIN2hJbUg0ZUMvb3ZvSXRJeTRidVVJcTdEM2YwV1ZuZVhrb1lFTmho?= =?utf-8?B?b0ErOXFBMWtWNFdvSlFRNHNXK01JbDQ4T3I5R2xXMWVSZUt1aEFwdDJtY1ZN?= =?utf-8?B?Vzc1VlpIOGg3OTNQSGR4UGZjZk5acUZvTmZ6Q2UvL0x6YytVM0hLTm9POWtB?= =?utf-8?B?Q29uVWM5S0g2WXdhVFViMUZyWjRhVWhPOFFpRldvQ2wwdi83Vkl1NTdXZ0R0?= =?utf-8?B?dFhGNHByOGlsZGpyVHZLN3NNeFc3MkRpeXVuRExTcG0wNlFHaXNSalRUUDRI?= =?utf-8?B?dlFoYS82SzBTL296VzNqTVhCV2JscVN0NUxjSWdzQWpidnphakpBeWRtZXlN?= =?utf-8?B?dEk0TzZTVnVrLzJDYW02VldFMmtjSzlCTXM0VnMxQXMraVNUSEFyNzArNHR6?= =?utf-8?B?M0NHL05SYWgxQ0RMMXNmYUl2YXZ0Q2VFY0tQVWgwTlBZNVhPWXVmQUJVVEo4?= =?utf-8?B?ZWd2R3dCc2gzWFZPbitTQUpLbTlXRzhaUGxMakZoeVpiTTErWlRvZGh5c0Er?= =?utf-8?B?VmNFQVlmQ21lLzdXaWZEOWNyT2F5dmgxbmVFeDE0QjZwTXdBdTBFRnUrOWx1?= =?utf-8?B?QW8vK2ZJaEk3UXJjRHpzcjdLSnZjSHBvRUdPeVJERTMrQmNXMjI5TmpOdFYr?= =?utf-8?B?RGY4bmVVVHNQUU5PVWU0MERwUi9iSzRwQTZ1RjJZcjZiVjg2bjhKaW93NHk0?= =?utf-8?B?SWxUSmVtelE5dUdyemNsNSs5eCtGTDZQSDFzVDlUanp4cVVhenZrMExuM3Ev?= =?utf-8?B?cjJaTkQ4eEVwRStWZnZXV3U3MGVhanNwNVUxSXBDVHVzbFFCNWI3RituWDJO?= =?utf-8?B?L1B1d2xYSStBMXdhejFiWHR1dEM4ZWFxMzZWYUorWnoxQ0tZS25abDNaTW1i?= =?utf-8?B?R2ZucnFKTjRNZHM0cFo5RmtOMnlWSUU1b2Q1bDhIdHc3c0VVMjZrOTBhakND?= =?utf-8?B?QTQwemEyYjl1YkJCRGVJWW5sTzI4U2NyYjNJcDgzWVVuLzR3aHFsQzZLNCts?= =?utf-8?B?RTd6ZkJlYitkekVkYWJveU5DMVQ0SStDMndDMkQ2MjBrcEQyaGxSZTZWSHRp?= =?utf-8?B?QWhkbnZ5MHp6WVZ4WGFxckI1c3RPY3k1U29nNTV2V1AvUUh0dW40eU95Rit1?= =?utf-8?B?ZEV1OUhTK0VWOHE0WllYOFJSeWtvc1cwQkcvZDBTMm1rREdhUjVVRHhKOGpL?= =?utf-8?Q?6NcWSA8T2nyy6otf3A=3D?= x-ms-exchange-transport-forked: True 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: MN2PR11MB4063.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: d1c31d3d-26cb-4668-5e8d-08d92a3e583d X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Jun 2021 05:29:10.5661 (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: Q0/sIZ678JHPfNGVxkdUV7ulxONS6rRlRKouJ2wcqtLZhldbyJSdh+70dyyogt3puFulTYq1O8WUBHtTOLU6jw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR11MB4125 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [RFC 3/3] net/virtio: add MAC device config getter and setter X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 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" SGkgTWF4aW1lLA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IE1heGlt ZSBDb3F1ZWxpbiA8bWNvcXVlbGlAcmVkaGF0LmNvbT4NCj4gU2VudDogVGh1cnNkYXksIEp1bmUg MywgMjAyMSAxMDoyOSBQTQ0KPiBUbzogWGlhLCBDaGVuYm8gPGNoZW5iby54aWFAaW50ZWwuY29t PjsgTWF4aW1lIENvcXVlbGluDQo+IDxtYXhpbWUuY29xdWVsaW5AcmVkaGF0LmNvbT47IGRldkBk cGRrLm9yZzsgYW1vcmVub3pAcmVkaGF0LmNvbTsNCj4gZGF2aWQubWFyY2hhbmRAcmVkaGF0LmNv bQ0KPiBTdWJqZWN0OiBSZTogW1JGQyAzLzNdIG5ldC92aXJ0aW86IGFkZCBNQUMgZGV2aWNlIGNv bmZpZyBnZXR0ZXIgYW5kIHNldHRlcg0KPiANCj4gSGkgQ2hlbmJvLA0KPiANCj4gT24gNC8xOS8y MSA4OjI0IEFNLCBYaWEsIENoZW5ibyB3cm90ZToNCj4gPiBIaSBNYXhpbWUsDQo+ID4NCj4gPj4g LS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPj4gRnJvbTogTWF4aW1lIENvcXVlbGluIDxt YXhpbWUuY29xdWVsaW5AcmVkaGF0LmNvbT4NCj4gPj4gU2VudDogRnJpZGF5LCBNYXJjaCAxOSwg MjAyMSA2OjM1IEFNDQo+ID4+IFRvOiBkZXZAZHBkay5vcmc7IFhpYSwgQ2hlbmJvIDxjaGVuYm8u eGlhQGludGVsLmNvbT47IGFtb3Jlbm96QHJlZGhhdC5jb207DQo+ID4+IGRhdmlkLm1hcmNoYW5k QHJlZGhhdC5jb20NCj4gPj4gQ2M6IE1heGltZSBDb3F1ZWxpbiA8bWF4aW1lLmNvcXVlbGluQHJl ZGhhdC5jb20+DQo+ID4+IFN1YmplY3Q6IFtSRkMgMy8zXSBuZXQvdmlydGlvOiBhZGQgTUFDIGRl dmljZSBjb25maWcgZ2V0dGVyIGFuZCBzZXR0ZXINCj4gPj4NCj4gPj4gVGhpcyBwYXRjaCB1c2Vz IHRoZSBuZXcgZGV2aWNlIGNvbmZpZyBvcHMgdG8gZ2V0IGFuZCBzZXQNCj4gPj4gdGhlIE1BQyBh ZGRyZXNzIGlmIHN1cHBvcnRlZC4NCj4gPj4NCj4gPj4gSWYgYSB2YWxpZCBNQUMgYWRkcmVzcyBp cyBwYXNzZWQgYXMgZGV2YXJnIG9mIHRoZQ0KPiA+PiBWaXJ0aW8tdXNlciBQTUQsIHRoZSBkcml2 ZXIgd2lsbCB0cnkgdG8gc3RvcmUgaXQgaW4gdGhlDQo+ID4+IGRldmljZSBjb25maWcgc3BhY2Uu IE90aGVyd2lzZSB0aGUgb25lIHByb3ZpZGVkIGluDQo+ID4+IHRoZSBkZXZpY2UgY29uZmlnIHNw YWNlIHdpbGwgYmUgdXNlZCwgaWYgYXZhaWxhYmxlLg0KPiA+DQo+ID4gSSBhZ3JlZSB3aXRoIHRo ZSBNQUMgc2VsZWN0aW9uIHN0cmF0ZWd5IHlvdSBwcm9wb3NlZC4NCj4gPg0KPiA+Pg0KPiA+PiBT aWduZWQtb2ZmLWJ5OiBNYXhpbWUgQ29xdWVsaW4gPG1heGltZS5jb3F1ZWxpbkByZWRoYXQuY29t Pg0KPiA+PiAtLS0NCj4gPj4gIC4uLi9uZXQvdmlydGlvL3ZpcnRpb191c2VyL3ZpcnRpb191c2Vy X2Rldi5jICB8IDc4ICsrKysrKysrKysrKysrKystLS0NCj4gPj4gIC4uLi9uZXQvdmlydGlvL3Zp cnRpb191c2VyL3ZpcnRpb191c2VyX2Rldi5oICB8ICAyICsNCj4gPj4gIGRyaXZlcnMvbmV0L3Zp cnRpby92aXJ0aW9fdXNlcl9ldGhkZXYuYyAgICAgICB8ICA3ICstDQo+ID4+ICAzIGZpbGVzIGNo YW5nZWQsIDc0IGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygtKQ0KPiA+Pg0KPiA+PiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9uZXQvdmlydGlvL3ZpcnRpb191c2VyL3ZpcnRpb191c2VyX2Rldi5j DQo+ID4+IGIvZHJpdmVycy9uZXQvdmlydGlvL3ZpcnRpb191c2VyL3ZpcnRpb191c2VyX2Rldi5j DQo+ID4+IGluZGV4IDg3NTdhMjNmNmUuLjYxNTE3NjkyYjMgMTAwNjQ0DQo+ID4+IC0tLSBhL2Ry aXZlcnMvbmV0L3ZpcnRpby92aXJ0aW9fdXNlci92aXJ0aW9fdXNlcl9kZXYuYw0KPiA+PiArKysg Yi9kcml2ZXJzL25ldC92aXJ0aW8vdmlydGlvX3VzZXIvdmlydGlvX3VzZXJfZGV2LmMNCj4gPj4g QEAgLTI1OSwyMCArMjU5LDc2IEBAIGludCB2aXJ0aW9fdXNlcl9zdG9wX2RldmljZShzdHJ1Y3Qg dmlydGlvX3VzZXJfZGV2DQo+ICpkZXYpDQo+ID4+ICAJcmV0dXJuIC0xOw0KPiA+PiAgfQ0KPiA+ Pg0KPiA+PiAtc3RhdGljIGlubGluZSB2b2lkDQo+ID4+IC1wYXJzZV9tYWMoc3RydWN0IHZpcnRp b191c2VyX2RldiAqZGV2LCBjb25zdCBjaGFyICptYWMpDQo+ID4+ICtpbnQNCj4gPj4gK3ZpcnRp b191c2VyX2Rldl9zZXRfbWFjKHN0cnVjdCB2aXJ0aW9fdXNlcl9kZXYgKmRldikNCj4gPj4gIHsN Cj4gPj4gLQlzdHJ1Y3QgcnRlX2V0aGVyX2FkZHIgdG1wOw0KPiA+PiArCWludCByZXQgPSAwOw0K PiA+Pg0KPiA+PiAtCWlmICghbWFjKQ0KPiA+PiAtCQlyZXR1cm47DQo+ID4+ICsJaWYgKCEoZGV2 LT5kZXZpY2VfZmVhdHVyZXMgJiAoMVVMTCA8PCBWSVJUSU9fTkVUX0ZfTUFDKSkpDQo+ID4+ICsJ CXJldHVybiAtRU5PVFNVUDsNCj4gPj4gKw0KPiA+PiArCWlmICghZGV2LT5vcHMtPnNldF9jb25m aWcpDQo+ID4+ICsJCXJldHVybiAtRU5PVFNVUDsNCj4gPj4gKw0KPiA+PiArCXJldCA9IGRldi0+ b3BzLT5zZXRfY29uZmlnKGRldiwgZGV2LT5tYWNfYWRkciwNCj4gPj4gKwkJCW9mZnNldG9mKHN0 cnVjdCB2aXJ0aW9fbmV0X2NvbmZpZywgbWFjKSwNCj4gPj4gKwkJCVJURV9FVEhFUl9BRERSX0xF Tik7DQo+ID4+ICsJaWYgKHJldCkNCj4gPj4gKwkJUE1EX0RSVl9MT0coRVJSLCAiKCVzKSBGYWls ZWQgdG8gc2V0IE1BQyBhZGRyZXNzIGluIGRldmljZVxuIiwNCj4gPj4gZGV2LT5wYXRoKTsNCj4g Pj4gKw0KPiA+PiArCXJldHVybiByZXQ7DQo+ID4+ICt9DQo+ID4+ICsNCj4gPj4gK2ludA0KPiA+ PiArdmlydGlvX3VzZXJfZGV2X2dldF9tYWMoc3RydWN0IHZpcnRpb191c2VyX2RldiAqZGV2KQ0K PiA+PiArew0KPiA+PiArCWludCByZXQgPSAwOw0KPiA+PiArDQo+ID4+ICsJaWYgKCEoZGV2LT5k ZXZpY2VfZmVhdHVyZXMgJiAoMVVMTCA8PCBWSVJUSU9fTkVUX0ZfTUFDKSkpDQo+ID4+ICsJCXJl dHVybiAtRU5PVFNVUDsNCj4gPj4gKw0KPiA+PiArCWlmICghZGV2LT5vcHMtPmdldF9jb25maWcp DQo+ID4+ICsJCXJldHVybiAtRU5PVFNVUDsNCj4gPj4gKw0KPiA+PiArCXJldCA9IGRldi0+b3Bz LT5nZXRfY29uZmlnKGRldiwgZGV2LT5tYWNfYWRkciwNCj4gPj4gKwkJCW9mZnNldG9mKHN0cnVj dCB2aXJ0aW9fbmV0X2NvbmZpZywgbWFjKSwNCj4gPj4gKwkJCVJURV9FVEhFUl9BRERSX0xFTik7 DQo+ID4+ICsJaWYgKHJldCkNCj4gPj4gKwkJUE1EX0RSVl9MT0coRVJSLCAiKCVzKSBGYWlsZWQg dG8gZ2V0IE1BQyBhZGRyZXNzIGZyb20gZGV2aWNlXG4iLA0KPiA+PiBkZXYtPnBhdGgpOw0KPiA+ Pg0KPiA+PiAtCWlmIChydGVfZXRoZXJfdW5mb3JtYXRfYWRkcihtYWMsICZ0bXApID09IDApIHsN Cj4gPj4gLQkJbWVtY3B5KGRldi0+bWFjX2FkZHIsICZ0bXAsIFJURV9FVEhFUl9BRERSX0xFTik7 DQo+ID4+ICsJcmV0dXJuIHJldDsNCj4gPj4gK30NCj4gPj4gKw0KPiA+PiArc3RhdGljIHZvaWQN Cj4gPj4gK3ZpcnRpb191c2VyX2Rldl9pbml0X21hYyhzdHJ1Y3QgdmlydGlvX3VzZXJfZGV2ICpk ZXYsIGNvbnN0IGNoYXIgKm1hYykNCj4gPj4gK3sNCj4gPj4gKwlzdHJ1Y3QgcnRlX2V0aGVyX2Fk ZHIgY21kbGluZV9tYWM7DQo+ID4+ICsJaW50IHJldDsNCj4gPj4gKw0KPiA+PiArCWlmIChtYWMg JiYgcnRlX2V0aGVyX3VuZm9ybWF0X2FkZHIobWFjLCAmY21kbGluZV9tYWMpID09IDApIHsNCj4g Pj4gKwkJLyoNCj4gPj4gKwkJICogTUFDIGFkZHJlc3Mgd2FzIHBhc3NlZCBmcm9tIGNvbW1hbmQt bGluZSwgdHJ5IHRvIHN0b3JlDQo+ID4+ICsJCSAqIGl0IGluIHRoZSBkZXZpY2UgaWYgaXQgc3Vw cG9ydHMgaXQuIE90aGVyd2lzZSB0cnkgdG8gdXNlDQo+ID4+ICsJCSAqIHRoZSBkZXZpY2Ugb25l Lg0KPiA+PiArCQkgKi8NCj4gPj4gKwkJbWVtY3B5KGRldi0+bWFjX2FkZHIsICZjbWRsaW5lX21h YywgUlRFX0VUSEVSX0FERFJfTEVOKTsNCj4gPj4gIAkJZGV2LT5tYWNfc3BlY2lmaWVkID0gMTsN Cj4gPg0KPiA+IEhvdyBkbyB3ZSBkZWZpbmUgbWFjX3NwZWNpZmllZD8gSWYgSSB1bmRlcnN0YW5k IGNvcnJlY3RseSwgaXQgbWVhbnMgdGhlIG1hYw0KPiA+IHdlIHNlZSBpcyBmcm9tIGRldmljZSAo d2Ugc2V0IGl0IG9yIHdlIGp1c3QgdXNlIGRldmljZSdzKS4gVGhlbiAnZGV2LQ0KPiA+bWFjX3Nw ZWNpZmllZCA9IDEnDQo+ID4gc2hvdWxkIGJlIGFmdGVyIGdldF9tYWMgc3VjY2VlZHMuDQo+IA0K PiBZb3UgYXJlIGNvcnJlY3QsIG1hY19zcGVjaWZpZWQ9MSBtZWFucyBlaXRoZXIgdXNlciBvciBk ZXZpY2Ugc3BlY2lmaWVkDQo+IE1BQyBhZGRyZXNzLiBJZiBnZXRfbWFjIGZhaWxzIGJlbG93IHRo ZW4gd2UgdXNlIHRoZSB1c2VyIHNwZWNpZmllZCBNQUMNCj4gYWRkcmVzcywgc28gbWFjX3NwZWNp ZmllZCA9IDEgaXMgc3RpbGwgdmFsaWQgaW4gdGhpcyBjYXNlLg0KPiANCj4gPiBOb3RlIHRoYXQg ZHVyaW5nIHZpcnRpb191c2VyX2Rldl9pbml0LCB3ZSBhbHNvIHVzZQ0KPiA+IHRoaXMgdmFsIHRv IHNldCBWSVJUSU9fTkVUX0ZfTUFDLiBCdXQgaGVyZSB0aGUgdmFsIGlzIHNldCB3aXRob3V0IG1h a2luZw0KPiBzdXJlIHRoZQ0KPiA+IGZlYXR1cmUgZXhpc3RzLg0KPiANCj4gSSBhbSBub3Qgc3Vy ZSB0byBnZXQgeW91cmUgcG9pbnQsIGJ1dCBpdCBzZXRzIFZJUlRJT19ORVRfRl9NQUMgaW4gdGhl DQo+IGZyb250ZW5kIGZlYXR1cmVzIHRoZXJlLCB0aGF0IGRvZXMgbm90IG1lYW4gdGhlIGZlYXR1 cmUgaXMgbmVnb3RpYXRlZCBpbg0KPiB0aGUgZW5kLg0KDQpJIHRoaW5rIHlvdSBhcmUgY29ycmVj dCwgSSBtYXkgbWlzdW5kZXJzdG9vZCBzb21ldGhpbmcgd2hlbiBJIHJldmlldyB0aGlzIGZpcnN0 DQp0aW1lLiBBbmQgSSB3YW50IHRvIG1ha2Ugc3VyZSB3ZSBhcmUgb24gdGhlIHNhbWUgcGFnZTog c2luY2UgJ21hY19zcGVjaWZpZWQ9MScNCndpbGwgc2V0IFZJUlRJT19ORVRfRl9NQUMgaW4gZnJv bnRlbmRfZmVhdHVyZXMsIHNvIG9ubHkgd2hlbiB1c2VyIGRvbid0IHNldCBtYWMNCmFuZCB3ZSBk b24ndCBnZXQgbWFjIGluIGRldmljZSB3aWxsIGxlYWQgdG8gdGhpcyBmZWF0dXJlIHVuc3VwcG9y dGVkLCByaWdodD8NCg0KPiANCj4gPj4gKw0KPiA+PiArCQkvKiBTZXR0aW5nIE1BQyBtYXkgZmFp bCwgY29udGludWUgdG8gZ2V0IHRoZSBkZXZpY2Ugb25lIGluIHRoaXMNCj4gPj4gY2FzZSAqLw0K PiA+PiArCQl2aXJ0aW9fdXNlcl9kZXZfc2V0X21hYyhkZXYpOw0KPiA+PiArCQlyZXQgPSB2aXJ0 aW9fdXNlcl9kZXZfZ2V0X21hYyhkZXYpOw0KPiA+PiArCQlpZiAocmV0ID09IC1FTk9UU1VQKQ0K PiA+PiArCQkJcmV0dXJuOw0KPiA+PiArDQo+ID4+ICsJCWlmIChtZW1jbXAoJmNtZGxpbmVfbWFj LCBkZXYtPm1hY19hZGRyLCBSVEVfRVRIRVJfQUREUl9MRU4pKQ0KPiA+PiArCQkJUE1EX0RSVl9M T0coSU5GTywgIiglcykgRGV2aWNlIE1BQyB1cGRhdGUgZmFpbGVkXG4iLCBkZXYtDQo+ID4+PiBw YXRoKTsNCj4gPg0KPiA+IEJlc2lkZXMgQWRyaWFuJ3MgY29tbWVudHMsIGlmIHdlIGRlY2lkZSB0 byByZXR1cm4gbm8gZXJyb3Igb24gdGhpcywgaXQgbWF5DQo+IGFsc28NCj4gPiBiZSBnb29kIHRv IGFkZCBzb21ldGhpbmcgbGlrZSAndXNpbmcgcmFuZG9tIE1BQycgdG8gdGVsbCB1c2VycyB0aGF0 IHRoZQ0KPiBkcml2ZXIgd2lsbA0KPiA+IHVzZSByYW5kb20gbWFjLiBBZGRpbmcgaGVyZSBvciBp biB0aGUgZnVuY3Rpb24gdGhhdCBnZW5lcmF0ZXMgbWFjIGlzIGJvdGggb2suDQo+IA0KPiBJZiBp dCBmYWlscyBoZXJlLCBpdCB3b24ndCBiZSB1c2luZyBhIHJhbmRvbSBNQUMsIGJ1dCB0aGUgTUFD IHByb3ZpZGVkDQo+IGJ5IHRoZSB1c2VyLiBUaGUgbG9nIGNvdWxkIGJlIGltcHJvdmVkIHdpdGgg c29tZXRoaW5nIGxpa2U6DQo+ICJEZXZpY2UgTUFDIHVwZGF0ZSBmYWlsZWQsIHVzaW5nIE1BQyB4 eDp4eDp4eDp4eDp4eCINCg0KWWVhaCEgVGhhdCdzIGdvb2QuDQoNClRoYW5rcywNCkNoZW5ibw0K DQo+IA0KPiBXaGF0IGRvIHlvdSB0aGluaz8NCj4gDQo+ID4gVGhlIHBhdGNoc2V0IG92ZXJhbGwg bG9va3MgZ29vZCB0byBtZS4gSSdtIGxvb2tpbmcgZm9yd2FyZCB0byB2MSDwn5iKDQo+ID4NCj4g PiBUaGFua3MsDQo+ID4gQ2hlbmJvDQo+IA0KPiBUaGFua3MsDQo+IE1heGltZQ0KDQo=