From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by dpdk.space (Postfix) with ESMTP id B1594A0096 for ; Fri, 12 Apr 2019 09:05:22 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 3AF135B26; Fri, 12 Apr 2019 09:04:37 +0200 (CEST) Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-eopbgr80052.outbound.protection.outlook.com [40.107.8.52]) by dpdk.org (Postfix) with ESMTP id A02985689 for ; Fri, 12 Apr 2019 09:04:17 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9TMPQPbW5mYIjPdh23PDablmzdyM0KnVEyOSGaEnCAU=; b=hysS/rywAJkM4XApcsvFAcOVN2cxMyke9OvnMZT1WavXwJIbfD5awbr/eogk/ZHlnSOVqxa6jncCb/iNUxzIBco7caedehLLd+ypqUDXmhzrWr2pshmfJpA0pR3jcCeQX+W/UN5Gp9CbT5thhsn6+OYxWIAh9ekfD2R7RrW6ZLE= Received: from VE1PR04MB6365.eurprd04.prod.outlook.com (10.255.118.78) by VE1PR04MB6461.eurprd04.prod.outlook.com (20.179.233.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1792.17; Fri, 12 Apr 2019 07:04:16 +0000 Received: from VE1PR04MB6365.eurprd04.prod.outlook.com ([fe80::f5ad:f178:4c55:13e0]) by VE1PR04MB6365.eurprd04.prod.outlook.com ([fe80::f5ad:f178:4c55:13e0%3]) with mapi id 15.20.1792.016; Fri, 12 Apr 2019 07:04:16 +0000 From: Gagandeep Singh To: "dev@dpdk.org" , "ferruh.yigit@intel.com" CC: "thomas@monjalon.net" , Gagandeep Singh Thread-Topic: [PATCH v2 07/13] net/enetc: remove forward declarations Thread-Index: AQHU8P3wl/7IGf9gaESOe5qrgwBOCw== Date: Fri, 12 Apr 2019 07:04:16 +0000 Message-ID: <1555075598-4988-8-git-send-email-g.singh@nxp.com> References: <1554745507-15089-1-git-send-email-g.singh@nxp.com> <1555075598-4988-1-git-send-email-g.singh@nxp.com> In-Reply-To: <1555075598-4988-1-git-send-email-g.singh@nxp.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: BM1PR0101CA0038.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:1a::24) To VE1PR04MB6365.eurprd04.prod.outlook.com (2603:10a6:803:12a::14) x-mailer: git-send-email 1.9.1 authentication-results: spf=none (sender IP is ) smtp.mailfrom=G.Singh@nxp.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [92.120.1.67] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 9c75cf07-b52c-4128-94d2-08d6bf15131b x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600139)(711020)(4605104)(4618075)(2017052603328)(7193020); SRVR:VE1PR04MB6461; x-ms-traffictypediagnostic: VE1PR04MB6461: x-microsoft-antispam-prvs: x-forefront-prvs: 0005B05917 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(136003)(39860400002)(376002)(366004)(396003)(346002)(189003)(199004)(6512007)(102836004)(256004)(86362001)(36756003)(14444005)(486006)(25786009)(6486002)(2501003)(26005)(386003)(2906002)(66066001)(7736002)(71190400001)(14454004)(71200400001)(6506007)(53936002)(97736004)(186003)(76176011)(8676002)(52116002)(105586002)(106356001)(99286004)(446003)(81166006)(81156014)(72206003)(478600001)(50226002)(11346002)(476003)(2616005)(6116002)(54906003)(5660300002)(110136005)(4326008)(316002)(8936002)(6436002)(68736007)(3846002)(305945005); DIR:OUT; SFP:1101; SCL:1; SRVR:VE1PR04MB6461; H:VE1PR04MB6365.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: CNvEjR6V9LUymaEypvkbsCZDTV+Ta9oRmF9636bagftJ71IrsLNsNxDeF+Aykgxuc8Da038gqe4GzQMcgiZVltiX7EA4MWGQF9f4nJawY2uJMngioqKeoMTEmAZe1foX+xmLlHeSYvVHnqNhGQ/UKBhvl2/nmCqHrPW+c4qpXVVGQI5x4FzkzvlOCRg84Rv9hIE99KDSwUDNmA8d1PANwIVfbSqa4iHVvRziH4AiePjJVM0PqovMjj+JD9nDCVpZfrTnaylM0jtUsYXs+dGLsTiEez5tZio36vmQ791uypcpmKbIo0CJd+EzSvr3s/VvTRJmIN4UCLKK8eGtsnCASfEhTthkB7zMvjQtItSJoD4ZHJGXYFFJ8i1E/ZAwEnm421uEgTp0DjIVqrUC/VOUNg0Y+H+qAeuZdO9uHMlulIE= Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9c75cf07-b52c-4128-94d2-08d6bf15131b X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Apr 2019 07:04:16.1321 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB6461 Subject: [dpdk-dev] [PATCH v2 07/13] net/enetc: remove forward declarations 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" Message-ID: <20190412070416.xgVYYcunFXeBrFd50UrNfbWNu9jnMh5JX5Xq2kL2uWs@z> UmVtb3ZlIHVubmVlZGVkIGZvcndhcmQgZGVjbGFyYXRpb25zIGFuZCByZS1vcmRlciB0aGUgY29k ZS4NCg0KU2lnbmVkLW9mZi1ieTogR2FnYW5kZWVwIFNpbmdoIDxnLnNpbmdoQG54cC5jb20+DQot LS0NCiBkcml2ZXJzL25ldC9lbmV0Yy9lbmV0Y19ldGhkZXYuYyB8IDIzNyArKysrKysrKysrKysr KysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiAxIGZpbGUgY2hhbmdlZCwgMTA3IGluc2VydGlv bnMoKyksIDEzMCBkZWxldGlvbnMoLSkNCg0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2VuZXRj L2VuZXRjX2V0aGRldi5jIGIvZHJpdmVycy9uZXQvZW5ldGMvZW5ldGNfZXRoZGV2LmMNCmluZGV4 IDJkOGM0ZTYuLmQwZjllMmIgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL25ldC9lbmV0Yy9lbmV0Y19l dGhkZXYuYw0KKysrIGIvZHJpdmVycy9uZXQvZW5ldGMvZW5ldGNfZXRoZGV2LmMNCkBAIC0xMCwx MTUgKzEwLDYgQEANCiANCiBpbnQgZW5ldGNfbG9ndHlwZV9wbWQ7DQogDQotLyogRnVuY3Rpb25z IFByb3RvdHlwZXMgKi8NCi1zdGF0aWMgaW50IGVuZXRjX2Rldl9jb25maWd1cmUoc3RydWN0IHJ0 ZV9ldGhfZGV2ICpkZXYpOw0KLXN0YXRpYyBpbnQgZW5ldGNfZGV2X3N0YXJ0KHN0cnVjdCBydGVf ZXRoX2RldiAqZGV2KTsNCi1zdGF0aWMgdm9pZCBlbmV0Y19kZXZfc3RvcChzdHJ1Y3QgcnRlX2V0 aF9kZXYgKmRldik7DQotc3RhdGljIHZvaWQgZW5ldGNfZGV2X2Nsb3NlKHN0cnVjdCBydGVfZXRo X2RldiAqZGV2KTsNCi1zdGF0aWMgdm9pZCBlbmV0Y19kZXZfaW5mb3NfZ2V0KHN0cnVjdCBydGVf ZXRoX2RldiAqZGV2LA0KLQkJCQlzdHJ1Y3QgcnRlX2V0aF9kZXZfaW5mbyAqZGV2X2luZm8pOw0K LXN0YXRpYyBpbnQgZW5ldGNfbGlua191cGRhdGUoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsIGlu dCB3YWl0X3RvX2NvbXBsZXRlKTsNCi1zdGF0aWMgaW50IGVuZXRjX2hhcmR3YXJlX2luaXQoc3Ry dWN0IGVuZXRjX2V0aF9odyAqaHcpOw0KLXN0YXRpYyBpbnQgZW5ldGNfcnhfcXVldWVfc2V0dXAo c3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsIHVpbnQxNl90IHJ4X3F1ZXVlX2lkLA0KLQkJdWludDE2 X3QgbmJfcnhfZGVzYywgdW5zaWduZWQgaW50IHNvY2tldF9pZCwNCi0JCWNvbnN0IHN0cnVjdCBy dGVfZXRoX3J4Y29uZiAqcnhfY29uZiwNCi0JCXN0cnVjdCBydGVfbWVtcG9vbCAqbWJfcG9vbCk7 DQotc3RhdGljIHZvaWQgZW5ldGNfcnhfcXVldWVfcmVsZWFzZSh2b2lkICpyeHEpOw0KLXN0YXRp YyBpbnQgZW5ldGNfdHhfcXVldWVfc2V0dXAoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsIHVpbnQx Nl90IHR4X3F1ZXVlX2lkLA0KLQkJdWludDE2X3QgbmJfdHhfZGVzYywgdW5zaWduZWQgaW50IHNv Y2tldF9pZCwNCi0JCWNvbnN0IHN0cnVjdCBydGVfZXRoX3R4Y29uZiAqdHhfY29uZik7DQotc3Rh dGljIHZvaWQgZW5ldGNfdHhfcXVldWVfcmVsZWFzZSh2b2lkICp0eHEpOw0KLXN0YXRpYyBjb25z dCB1aW50MzJfdCAqZW5ldGNfc3VwcG9ydGVkX3B0eXBlc19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2 ICpkZXYpOw0KLXN0YXRpYyBpbnQgZW5ldGNfc3RhdHNfZ2V0KHN0cnVjdCBydGVfZXRoX2RldiAq ZGV2LA0KLQkJc3RydWN0IHJ0ZV9ldGhfc3RhdHMgKnN0YXRzKTsNCi1zdGF0aWMgdm9pZCBlbmV0 Y19zdGF0c19yZXNldChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldik7DQotDQotLyoNCi0gKiBUaGUg c2V0IG9mIFBDSSBkZXZpY2VzIHRoaXMgZHJpdmVyIHN1cHBvcnRzDQotICovDQotc3RhdGljIGNv bnN0IHN0cnVjdCBydGVfcGNpX2lkIHBjaV9pZF9lbmV0Y19tYXBbXSA9IHsNCi0JeyBSVEVfUENJ X0RFVklDRShQQ0lfVkVORE9SX0lEX0ZSRUVTQ0FMRSwgRU5FVENfREVWX0lEKSB9LA0KLQl7IFJU RV9QQ0lfREVWSUNFKFBDSV9WRU5ET1JfSURfRlJFRVNDQUxFLCBFTkVUQ19ERVZfSURfVkYpIH0s DQotCXsgLnZlbmRvcl9pZCA9IDAsIC8qIHNlbnRpbmVsICovIH0sDQotfTsNCi0NCi0vKiBGZWF0 dXJlcyBzdXBwb3J0ZWQgYnkgdGhpcyBkcml2ZXIgKi8NCi1zdGF0aWMgY29uc3Qgc3RydWN0IGV0 aF9kZXZfb3BzIGVuZXRjX29wcyA9IHsNCi0JLmRldl9jb25maWd1cmUgICAgICAgID0gZW5ldGNf ZGV2X2NvbmZpZ3VyZSwNCi0JLmRldl9zdGFydCAgICAgICAgICAgID0gZW5ldGNfZGV2X3N0YXJ0 LA0KLQkuZGV2X3N0b3AgICAgICAgICAgICAgPSBlbmV0Y19kZXZfc3RvcCwNCi0JLmRldl9jbG9z ZSAgICAgICAgICAgID0gZW5ldGNfZGV2X2Nsb3NlLA0KLQkubGlua191cGRhdGUgICAgICAgICAg PSBlbmV0Y19saW5rX3VwZGF0ZSwNCi0JLnN0YXRzX2dldCAgICAgICAgICAgID0gZW5ldGNfc3Rh dHNfZ2V0LA0KLQkuc3RhdHNfcmVzZXQgICAgICAgICAgPSBlbmV0Y19zdGF0c19yZXNldCwNCi0J LmRldl9pbmZvc19nZXQgICAgICAgID0gZW5ldGNfZGV2X2luZm9zX2dldCwNCi0JLnJ4X3F1ZXVl X3NldHVwICAgICAgID0gZW5ldGNfcnhfcXVldWVfc2V0dXAsDQotCS5yeF9xdWV1ZV9yZWxlYXNl ICAgICA9IGVuZXRjX3J4X3F1ZXVlX3JlbGVhc2UsDQotCS50eF9xdWV1ZV9zZXR1cCAgICAgICA9 IGVuZXRjX3R4X3F1ZXVlX3NldHVwLA0KLQkudHhfcXVldWVfcmVsZWFzZSAgICAgPSBlbmV0Y190 eF9xdWV1ZV9yZWxlYXNlLA0KLQkuZGV2X3N1cHBvcnRlZF9wdHlwZXNfZ2V0ID0gZW5ldGNfc3Vw cG9ydGVkX3B0eXBlc19nZXQsDQotfTsNCi0NCi0vKioNCi0gKiBJbml0aWFsaXNhdGlvbiBvZiB0 aGUgZW5ldGMgZGV2aWNlDQotICoNCi0gKiBAcGFyYW0gZXRoX2Rldg0KLSAqICAgLSBQb2ludGVy IHRvIHRoZSBzdHJ1Y3R1cmUgcnRlX2V0aF9kZXYNCi0gKg0KLSAqIEByZXR1cm4NCi0gKiAgIC0g T24gc3VjY2VzcywgemVyby4NCi0gKiAgIC0gT24gZmFpbHVyZSwgbmVnYXRpdmUgdmFsdWUuDQot ICovDQotc3RhdGljIGludA0KLWVuZXRjX2Rldl9pbml0KHN0cnVjdCBydGVfZXRoX2RldiAqZXRo X2RldikNCi17DQotCWludCBlcnJvciA9IDA7DQotCXN0cnVjdCBydGVfcGNpX2RldmljZSAqcGNp X2RldiA9IFJURV9FVEhfREVWX1RPX1BDSShldGhfZGV2KTsNCi0Jc3RydWN0IGVuZXRjX2V0aF9o dyAqaHcgPQ0KLQkJRU5FVENfREVWX1BSSVZBVEVfVE9fSFcoZXRoX2Rldi0+ZGF0YS0+ZGV2X3By aXZhdGUpOw0KLQ0KLQlQTURfSU5JVF9GVU5DX1RSQUNFKCk7DQotCWV0aF9kZXYtPmRldl9vcHMg PSAmZW5ldGNfb3BzOw0KLQlldGhfZGV2LT5yeF9wa3RfYnVyc3QgPSAmZW5ldGNfcmVjdl9wa3Rz Ow0KLQlldGhfZGV2LT50eF9wa3RfYnVyc3QgPSAmZW5ldGNfeG1pdF9wa3RzOw0KLQ0KLQkvKiBS ZXRyaWV2aW5nIGFuZCBzdG9yaW5nIHRoZSBIVyBiYXNlIGFkZHJlc3Mgb2YgZGV2aWNlICovDQot CWh3LT5ody5yZWcgPSAodm9pZCAqKXBjaV9kZXYtPm1lbV9yZXNvdXJjZVswXS5hZGRyOw0KLQlo dy0+ZGV2aWNlX2lkID0gcGNpX2Rldi0+aWQuZGV2aWNlX2lkOw0KLQ0KLQllcnJvciA9IGVuZXRj X2hhcmR3YXJlX2luaXQoaHcpOw0KLQlpZiAoZXJyb3IgIT0gMCkgew0KLQkJRU5FVENfUE1EX0VS UigiSGFyZHdhcmUgaW5pdGlhbGl6YXRpb24gZmFpbGVkIik7DQotCQlyZXR1cm4gLTE7DQotCX0N Ci0NCi0JLyogQWxsb2NhdGUgbWVtb3J5IGZvciBzdG9yaW5nIE1BQyBhZGRyZXNzZXMgKi8NCi0J ZXRoX2Rldi0+ZGF0YS0+bWFjX2FkZHJzID0gcnRlX3ptYWxsb2MoImVuZXRjX2V0aCIsIEVUSEVS X0FERFJfTEVOLCAwKTsNCi0JaWYgKCFldGhfZGV2LT5kYXRhLT5tYWNfYWRkcnMpIHsNCi0JCUVO RVRDX1BNRF9FUlIoIkZhaWxlZCB0byBhbGxvY2F0ZSAlZCBieXRlcyBuZWVkZWQgdG8gIg0KLQkJ CSAgICAgICJzdG9yZSBNQUMgYWRkcmVzc2VzIiwNCi0JCQkgICAgICBFVEhFUl9BRERSX0xFTiAq IDEpOw0KLQkJZXJyb3IgPSAtRU5PTUVNOw0KLQkJcmV0dXJuIC0xOw0KLQl9DQotDQotCS8qIENv cHkgdGhlIHBlcm1hbmVudCBNQUMgYWRkcmVzcyAqLw0KLQlldGhlcl9hZGRyX2NvcHkoKHN0cnVj dCBldGhlcl9hZGRyICopaHctPm1hYy5hZGRyLA0KLQkJCSZldGhfZGV2LT5kYXRhLT5tYWNfYWRk cnNbMF0pOw0KLQ0KLQlFTkVUQ19QTURfREVCVUcoInBvcnRfaWQgJWQgdmVuZG9ySUQ9MHgleCBk ZXZpY2VJRD0weCV4IiwNCi0JCQlldGhfZGV2LT5kYXRhLT5wb3J0X2lkLCBwY2lfZGV2LT5pZC52 ZW5kb3JfaWQsDQotCQkJcGNpX2Rldi0+aWQuZGV2aWNlX2lkKTsNCi0JcmV0dXJuIDA7DQotfQ0K LQ0KLXN0YXRpYyBpbnQNCi1lbmV0Y19kZXZfdW5pbml0KHN0cnVjdCBydGVfZXRoX2RldiAqZXRo X2RldiBfX3J0ZV91bnVzZWQpDQotew0KLQlQTURfSU5JVF9GVU5DX1RSQUNFKCk7DQotCXJldHVy biAwOw0KLX0NCi0NCiBzdGF0aWMgaW50DQogZW5ldGNfZGV2X2NvbmZpZ3VyZShzdHJ1Y3QgcnRl X2V0aF9kZXYgKmRldiBfX3J0ZV91bnVzZWQpDQogew0KQEAgLTE3OSwyNyArNzAsNiBAQCBzdGF0 aWMgaW50IGVuZXRjX3N0YXRzX2dldChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldiwNCiAJCSAgICAg IHZhbCAmICh+KEVORVRDX1BNMF9UWF9FTiB8IEVORVRDX1BNMF9SWF9FTikpKTsNCiB9DQogDQot c3RhdGljIHZvaWQNCi1lbmV0Y19kZXZfY2xvc2Uoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYpDQot ew0KLQl1aW50MTZfdCBpOw0KLQ0KLQlQTURfSU5JVF9GVU5DX1RSQUNFKCk7DQotCWVuZXRjX2Rl dl9zdG9wKGRldik7DQotDQotCWZvciAoaSA9IDA7IGkgPCBkZXYtPmRhdGEtPm5iX3J4X3F1ZXVl czsgaSsrKSB7DQotCQllbmV0Y19yeF9xdWV1ZV9yZWxlYXNlKGRldi0+ZGF0YS0+cnhfcXVldWVz W2ldKTsNCi0JCWRldi0+ZGF0YS0+cnhfcXVldWVzW2ldID0gTlVMTDsNCi0JfQ0KLQlkZXYtPmRh dGEtPm5iX3J4X3F1ZXVlcyA9IDA7DQotDQotCWZvciAoaSA9IDA7IGkgPCBkZXYtPmRhdGEtPm5i X3R4X3F1ZXVlczsgaSsrKSB7DQotCQllbmV0Y190eF9xdWV1ZV9yZWxlYXNlKGRldi0+ZGF0YS0+ dHhfcXVldWVzW2ldKTsNCi0JCWRldi0+ZGF0YS0+dHhfcXVldWVzW2ldID0gTlVMTDsNCi0JfQ0K LQlkZXYtPmRhdGEtPm5iX3R4X3F1ZXVlcyA9IDA7DQotfQ0KLQ0KIHN0YXRpYyBjb25zdCB1aW50 MzJfdCAqDQogZW5ldGNfc3VwcG9ydGVkX3B0eXBlc19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpk ZXYgX19ydGVfdW51c2VkKQ0KIHsNCkBAIC02NDgsNiArNTE4LDExMyBAQCBpbnQgZW5ldGNfc3Rh dHNfZ2V0KHN0cnVjdCBydGVfZXRoX2RldiAqZGV2LA0KIAllbmV0Y19wb3J0X3dyKGVuZXRjX2h3 LCBFTkVUQ19QTTBfU1RBVF9DT05GSUcsIEVORVRDX0NMRUFSX1NUQVRTKTsNCiB9DQogDQorc3Rh dGljIHZvaWQNCitlbmV0Y19kZXZfY2xvc2Uoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYpDQorew0K Kwl1aW50MTZfdCBpOw0KKw0KKwlQTURfSU5JVF9GVU5DX1RSQUNFKCk7DQorCWVuZXRjX2Rldl9z dG9wKGRldik7DQorDQorCWZvciAoaSA9IDA7IGkgPCBkZXYtPmRhdGEtPm5iX3J4X3F1ZXVlczsg aSsrKSB7DQorCQllbmV0Y19yeF9xdWV1ZV9yZWxlYXNlKGRldi0+ZGF0YS0+cnhfcXVldWVzW2ld KTsNCisJCWRldi0+ZGF0YS0+cnhfcXVldWVzW2ldID0gTlVMTDsNCisJfQ0KKwlkZXYtPmRhdGEt Pm5iX3J4X3F1ZXVlcyA9IDA7DQorDQorCWZvciAoaSA9IDA7IGkgPCBkZXYtPmRhdGEtPm5iX3R4 X3F1ZXVlczsgaSsrKSB7DQorCQllbmV0Y190eF9xdWV1ZV9yZWxlYXNlKGRldi0+ZGF0YS0+dHhf cXVldWVzW2ldKTsNCisJCWRldi0+ZGF0YS0+dHhfcXVldWVzW2ldID0gTlVMTDsNCisJfQ0KKwlk ZXYtPmRhdGEtPm5iX3R4X3F1ZXVlcyA9IDA7DQorfQ0KKw0KKy8qDQorICogVGhlIHNldCBvZiBQ Q0kgZGV2aWNlcyB0aGlzIGRyaXZlciBzdXBwb3J0cw0KKyAqLw0KK3N0YXRpYyBjb25zdCBzdHJ1 Y3QgcnRlX3BjaV9pZCBwY2lfaWRfZW5ldGNfbWFwW10gPSB7DQorCXsgUlRFX1BDSV9ERVZJQ0Uo UENJX1ZFTkRPUl9JRF9GUkVFU0NBTEUsIEVORVRDX0RFVl9JRCkgfSwNCisJeyBSVEVfUENJX0RF VklDRShQQ0lfVkVORE9SX0lEX0ZSRUVTQ0FMRSwgRU5FVENfREVWX0lEX1ZGKSB9LA0KKwl7IC52 ZW5kb3JfaWQgPSAwLCAvKiBzZW50aW5lbCAqLyB9LA0KK307DQorDQorLyogRmVhdHVyZXMgc3Vw cG9ydGVkIGJ5IHRoaXMgZHJpdmVyICovDQorc3RhdGljIGNvbnN0IHN0cnVjdCBldGhfZGV2X29w cyBlbmV0Y19vcHMgPSB7DQorCS5kZXZfY29uZmlndXJlICAgICAgICA9IGVuZXRjX2Rldl9jb25m aWd1cmUsDQorCS5kZXZfc3RhcnQgICAgICAgICAgICA9IGVuZXRjX2Rldl9zdGFydCwNCisJLmRl dl9zdG9wICAgICAgICAgICAgID0gZW5ldGNfZGV2X3N0b3AsDQorCS5kZXZfY2xvc2UgICAgICAg ICAgICA9IGVuZXRjX2Rldl9jbG9zZSwNCisJLmxpbmtfdXBkYXRlICAgICAgICAgID0gZW5ldGNf bGlua191cGRhdGUsDQorCS5zdGF0c19nZXQgICAgICAgICAgICA9IGVuZXRjX3N0YXRzX2dldCwN CisJLnN0YXRzX3Jlc2V0ICAgICAgICAgID0gZW5ldGNfc3RhdHNfcmVzZXQsDQorCS5kZXZfaW5m b3NfZ2V0ICAgICAgICA9IGVuZXRjX2Rldl9pbmZvc19nZXQsDQorCS5yeF9xdWV1ZV9zZXR1cCAg ICAgICA9IGVuZXRjX3J4X3F1ZXVlX3NldHVwLA0KKwkucnhfcXVldWVfcmVsZWFzZSAgICAgPSBl bmV0Y19yeF9xdWV1ZV9yZWxlYXNlLA0KKwkudHhfcXVldWVfc2V0dXAgICAgICAgPSBlbmV0Y190 eF9xdWV1ZV9zZXR1cCwNCisJLnR4X3F1ZXVlX3JlbGVhc2UgICAgID0gZW5ldGNfdHhfcXVldWVf cmVsZWFzZSwNCisJLmRldl9zdXBwb3J0ZWRfcHR5cGVzX2dldCA9IGVuZXRjX3N1cHBvcnRlZF9w dHlwZXNfZ2V0LA0KK307DQorDQorLyoqDQorICogSW5pdGlhbGlzYXRpb24gb2YgdGhlIGVuZXRj IGRldmljZQ0KKyAqDQorICogQHBhcmFtIGV0aF9kZXYNCisgKiAgIC0gUG9pbnRlciB0byB0aGUg c3RydWN0dXJlIHJ0ZV9ldGhfZGV2DQorICoNCisgKiBAcmV0dXJuDQorICogICAtIE9uIHN1Y2Nl c3MsIHplcm8uDQorICogICAtIE9uIGZhaWx1cmUsIG5lZ2F0aXZlIHZhbHVlLg0KKyAqLw0KK3N0 YXRpYyBpbnQNCitlbmV0Y19kZXZfaW5pdChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmV0aF9kZXYpDQor ew0KKwlpbnQgZXJyb3IgPSAwOw0KKwlzdHJ1Y3QgcnRlX3BjaV9kZXZpY2UgKnBjaV9kZXYgPSBS VEVfRVRIX0RFVl9UT19QQ0koZXRoX2Rldik7DQorCXN0cnVjdCBlbmV0Y19ldGhfaHcgKmh3ID0N CisJCUVORVRDX0RFVl9QUklWQVRFX1RPX0hXKGV0aF9kZXYtPmRhdGEtPmRldl9wcml2YXRlKTsN CisNCisJUE1EX0lOSVRfRlVOQ19UUkFDRSgpOw0KKwlldGhfZGV2LT5kZXZfb3BzID0gJmVuZXRj X29wczsNCisJZXRoX2Rldi0+cnhfcGt0X2J1cnN0ID0gJmVuZXRjX3JlY3ZfcGt0czsNCisJZXRo X2Rldi0+dHhfcGt0X2J1cnN0ID0gJmVuZXRjX3htaXRfcGt0czsNCisNCisJLyogUmV0cmlldmlu ZyBhbmQgc3RvcmluZyB0aGUgSFcgYmFzZSBhZGRyZXNzIG9mIGRldmljZSAqLw0KKwlody0+aHcu cmVnID0gKHZvaWQgKilwY2lfZGV2LT5tZW1fcmVzb3VyY2VbMF0uYWRkcjsNCisJaHctPmRldmlj ZV9pZCA9IHBjaV9kZXYtPmlkLmRldmljZV9pZDsNCisNCisJZXJyb3IgPSBlbmV0Y19oYXJkd2Fy ZV9pbml0KGh3KTsNCisJaWYgKGVycm9yICE9IDApIHsNCisJCUVORVRDX1BNRF9FUlIoIkhhcmR3 YXJlIGluaXRpYWxpemF0aW9uIGZhaWxlZCIpOw0KKwkJcmV0dXJuIC0xOw0KKwl9DQorDQorCS8q IEFsbG9jYXRlIG1lbW9yeSBmb3Igc3RvcmluZyBNQUMgYWRkcmVzc2VzICovDQorCWV0aF9kZXYt PmRhdGEtPm1hY19hZGRycyA9IHJ0ZV96bWFsbG9jKCJlbmV0Y19ldGgiLCBFVEhFUl9BRERSX0xF TiwgMCk7DQorCWlmICghZXRoX2Rldi0+ZGF0YS0+bWFjX2FkZHJzKSB7DQorCQlFTkVUQ19QTURf RVJSKCJGYWlsZWQgdG8gYWxsb2NhdGUgJWQgYnl0ZXMgbmVlZGVkIHRvICINCisJCQkgICAgICAi c3RvcmUgTUFDIGFkZHJlc3NlcyIsDQorCQkJICAgICAgRVRIRVJfQUREUl9MRU4gKiAxKTsNCisJ CWVycm9yID0gLUVOT01FTTsNCisJCXJldHVybiAtMTsNCisJfQ0KKw0KKwkvKiBDb3B5IHRoZSBw ZXJtYW5lbnQgTUFDIGFkZHJlc3MgKi8NCisJZXRoZXJfYWRkcl9jb3B5KChzdHJ1Y3QgZXRoZXJf YWRkciAqKWh3LT5tYWMuYWRkciwNCisJCQkmZXRoX2Rldi0+ZGF0YS0+bWFjX2FkZHJzWzBdKTsN CisNCisJRU5FVENfUE1EX0RFQlVHKCJwb3J0X2lkICVkIHZlbmRvcklEPTB4JXggZGV2aWNlSUQ9 MHgleCIsDQorCQkJZXRoX2Rldi0+ZGF0YS0+cG9ydF9pZCwgcGNpX2Rldi0+aWQudmVuZG9yX2lk LA0KKwkJCXBjaV9kZXYtPmlkLmRldmljZV9pZCk7DQorCXJldHVybiAwOw0KK30NCisNCitzdGF0 aWMgaW50DQorZW5ldGNfZGV2X3VuaW5pdChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmV0aF9kZXYgX19y dGVfdW51c2VkKQ0KK3sNCisJUE1EX0lOSVRfRlVOQ19UUkFDRSgpOw0KKwlyZXR1cm4gMDsNCit9 DQorDQogc3RhdGljIGludA0KIGVuZXRjX3BjaV9wcm9iZShzdHJ1Y3QgcnRlX3BjaV9kcml2ZXIg KnBjaV9kcnYgX19ydGVfdW51c2VkLA0KIAkJCSAgIHN0cnVjdCBydGVfcGNpX2RldmljZSAqcGNp X2RldikNCi0tIA0KMS45LjENCg0K