From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM03-BY2-obe.outbound.protection.outlook.com (mail-by2nam03on0056.outbound.protection.outlook.com [104.47.42.56]) by dpdk.org (Postfix) with ESMTP id 921E97CF9 for ; Fri, 16 Jun 2017 07:33:03 +0200 (CEST) Received: from BN6PR03CA0080.namprd03.prod.outlook.com (10.164.122.146) by BY1PR0301MB1190.namprd03.prod.outlook.com (10.160.195.149) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1157.12; Fri, 16 Jun 2017 05:33:01 +0000 Received: from BY2FFO11FD001.protection.gbl (2a01:111:f400:7c0c::110) by BN6PR03CA0080.outlook.office365.com (2603:10b6:405:6f::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1178.14 via Frontend Transport; Fri, 16 Jun 2017 05:33:00 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none;nxp.com; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BY2FFO11FD001.mail.protection.outlook.com (10.1.14.123) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.1157.12 via Frontend Transport; Fri, 16 Jun 2017 05:32:59 +0000 Received: from Tophie.ap.freescale.net ([10.232.14.39]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id v5G5WNFH001003; Thu, 15 Jun 2017 22:32:58 -0700 From: Shreyansh Jain To: CC: , Date: Fri, 16 Jun 2017 11:10:48 +0530 Message-ID: <1497591668-3320-19-git-send-email-shreyansh.jain@nxp.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1497591668-3320-1-git-send-email-shreyansh.jain@nxp.com> References: <1497591668-3320-1-git-send-email-shreyansh.jain@nxp.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 0 X-Matching-Connectors: 131420647801133080; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.168.50; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(336005)(39840400002)(39380400002)(39860400002)(39410400002)(39400400002)(39450400003)(39850400002)(2980300002)(1110001)(1109001)(339900001)(189002)(199003)(9170700003)(2870700001)(189998001)(77096006)(2906002)(50986999)(76176999)(5820100001)(53936002)(6306002)(6916009)(305945005)(5890100001)(54906002)(36756003)(4326008)(38730400002)(2950100002)(6666003)(47776003)(23676002)(8676002)(356003)(8656002)(5660300001)(33646002)(104016004)(50226002)(498600001)(8936002)(85426001)(110136004)(106466001)(105606002)(2351001)(81166006)(50466002)(86362001)(217873001); DIR:OUT; SFP:1101; SCL:1; SRVR:BY1PR0301MB1190; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; MLV:ovrnspm; MX:1; A:1; PTR:InfoDomainNonexistent; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BY2FFO11FD001; 1:jzPCHRoCuWGajqP0IhGST+cXDZBb4zeoxqdhR/dzEHb8buIwOUjRrrkFw5uWnvFEoiVyTDRr2R4+2FxmqTR+VhmGW76b6ukUWVyd/koGwK+XDh0qTKIJLZc4WbRAFYHnM6wFyiTLW022UGoE5y6lQoqotimfaWSO76SiURyX8+UMTLHYwIpoOFnh0MrbMufGXE/A0F9AdL6nD9lVes2z0tUcynCXHQC5GJC9J8g/T+5b5pKbkoF7ecCKO+XyM1UfZ8b56PzNU90WGlkrFCxSpFBRHE3VzJedEQ2jTD1KjWMal+YOiFUshdkD1iS34MExXlmO7EhWC3DYKsvTRWCXGTtEtCF4aD9UyCSRpBVE48JHXwjYIk3Xi2t8dsw9UU17eEEmWnUYy6syYT+nFWiOwClM33gMNJpb+Nq03fAYA6jT+TmnqF5UDFPBDbk9YJuMOqnHR7bdg2SGgWrQ2wkkSu+ESrE2EXZ8ubIzG6svSpjQjzpziJnQWx3NElq71De9OOabFC6WMItdmH61/ytNHxPXFKUKVgyz6Dtan9vsoTPYRjDKcEOmVJTMEaWsDCHaN7omO7i9MN8gb42HkfPVKCqhSroYGcGCPXzedPUxCA0keQYk1ECgHRWFbjmk1oDairNuaSilu1Qr9UZEdNmzxDdOlY5Mk10BkgIP8iczhYFhkbHgDL6auDIR3nuGM5u3EQqeBMcZRlftVRkbnuBo4BNICGq4l/IUMTYJOpCOGvM= X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BY1PR0301MB1190: X-MS-Office365-Filtering-Correlation-Id: b2d99ab2-f263-47da-36b7-08d4b47926cb X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(201703131430075)(201703131517081); SRVR:BY1PR0301MB1190; X-Microsoft-Exchange-Diagnostics: 1; BY1PR0301MB1190; 3:KX05MM8TE9iH/mqE40CXCJngE1DmpXfl+PzBVRYhGPef8Q3tUl9qCLB1Obivzjs6cVatQo69bBV5r5O3n6YgI/Het7/dxFIrrz0G1ANKp4qBOIGckkIj7h6CsUW1FNa36wtitw6RjF2QTYalt2kezgyHNJyIhaZ9+avOoShArDG/dzYKuhqEByBChOg5ZKTLROnjk/npU3/zAptC4AUsFXKwgjJyM/Nq0psqhhQmjrbBb+kcZbrM6ySQ3Bg4d1jipMPLgoQAESXFShF/muQ94QSFrD0Lt58Y8JHNB6poh/lM7HInA9YkHyvxXCbBCICZRqRkEED2UMAs2jzlihDbf7gdxRYo47frHI6nNSXUStvjeZT/PpigtAYFeRPVVjooHY29Rv6CY7kB4MFN3o1C4OAD06ySnle55XX94g2iTwEmIePnbZQqKbAdzMqmgu3s; 25:IzHY/plglfpQ0cwhayFHx7NfElN56lwcHsFjGKcu31jl3MKyRJvZZiEN3vahz1B4VnDA8tK1Q1ptWEawXf+wCO0dWN/8jPk94pM358iq5wdOBhdbPn1J9Kf5CnFPTDY7g1GynEhizFfQwTyWy/tQv9gKFlPtUupTNnizq6NH9HCDeYi7d7WMqDlNk36F0x3tZpZOZpABHobbcrcusqExpQCkQJCvV2cPy9KOELmSNasABH+A50L/hCR7TQZkJsUQ7zddY95JBV/pjeaR7b6K8k+0nZuI7dDti+PjesSKihfbP4Wnf8N1no3JdX1jAN4TMLT13kkd4QSkp/Z69Dl5btkSO7jtWh7EsNxiCtrraWEKm5yvCRCF9zoAZt8rqB9dlgaTjnKIVyhG9zsdWg1Fl7Yt1WJRfwvLVHgcoWqBlw3UqQ/wUOWwKC5c/wKRuphASw/jfcCrzX9yH/iVWgE5WQ1oz/2v/7tanCEgVEN2QKI= X-Microsoft-Exchange-Diagnostics: 1; BY1PR0301MB1190; 31:SfifY4EzVxmJU7pPJ+5uoazErSDZNhPydlVfj4hGOgtLbCXL3ASF2JpNu1HoIa9pw1lu2eSBLIMoBMZ0TtL8Eavek8EwAd6mLqYFbWE+5fQLzduFwIjJ6fytYajfaibia5i4wWgU8Y3Gy12eo8l9OYSR47S6ZCD2RXAgRsHOUu74Pqmn9NBBXv7xcyCLtTHvJ4aesU4iyMoftFxOQp2jaUw7v5AH4c5P0per4To87vv/F4kQ68ay8oa2uUuA7WIH8gxXX9fS1DiGnAjuHGT8Eg== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(166708455590820)(185117386973197)(275809806118684)(21532816269658)(264314650089876); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6095135)(601004)(2401047)(13018025)(8121501046)(5005006)(13016025)(93006095)(93001095)(100000703101)(100105400095)(10201501046)(3002001)(6055026)(6096035)(201703131430075)(201703131441075)(201703131448075)(201703131433075)(201703161259150)(20161123565025)(20161123563025)(20161123556025)(20161123559100)(20161123561025)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BY1PR0301MB1190; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(400006)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BY1PR0301MB1190; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtCWTFQUjAzMDFNQjExOTA7NDozNkx4bGdHYTRBSGVDV2pYdFo3V0V3K0lj?= =?utf-8?B?Q3lDQmF4c0NST3RCaXNvdGs1MHA3ZW5zdTdPL3JPdmlycGo5ZGtMeWUzb3Ri?= =?utf-8?B?MldRZ0pPbnVCcDFZcHZMOHhZK1d6NnplKy9vMmJlOGVMZk5WWHUvMzJ6SnRy?= =?utf-8?B?Y25OZlFDN09Od0NJMHdmd3RGWW9wQm92WHZtNkVqVTNMV2ZzTEw2UWE0UDla?= =?utf-8?B?aXU5SGZMTlVLSGxZc09aU2xhVHBFVTY5bzc0WTIyWXp3emRPb1V2U0lSZStR?= =?utf-8?B?cVhSb25kTXVpazJXR1orQnMzbnIxeDkzU1RaSUZZVnI4T2d6N3RoOHJ0R2hI?= =?utf-8?B?cEhVYlFmK3BXUHg5aDBTT2hYeG1OdlYzdW9VSFQ0OWVxK1hkOVBCTmh3bFdH?= =?utf-8?B?TFlBTTgwY2MwUGtiQW9iN0V4NEpic2NRczdKS0FxZTNaWk1ra3ozeTV3dndu?= =?utf-8?B?S3J0dlkyazFmbTY3TjVWVysyOWNXd0EwRnp6RUFHNHRSYlBMZm96NEM5VTJL?= =?utf-8?B?eldiWDArSkJQa1Q5cmhxNVhGaU4wU1ZYalZSa2RWRm1yQ29oeUlsSDZOL05z?= =?utf-8?B?QUUveEhZMG52Y2xhd21SR2Izb3g4ZUtQT2syUHBwQ2dtK2RJSndMeG5DSXhN?= =?utf-8?B?MmJ2OTQydnN1WkdGa3lmbm5id2s1MGFyWHVGWVQ5WkFZVi9PcDhHM0FTbE1B?= =?utf-8?B?cUc2ZTJiWUdWQ2lVYS8weitObGR1WUV2aWpiVy91NHRyQWM5NmF6WmtXSFE3?= =?utf-8?B?ejRubHAxMks3VjN1SUNyM3c5WEtuMnVyVzZORGVXMnVRNjg4S2owcmRWSFky?= =?utf-8?B?aDVNZFB4TmE0MEZVa01ib3UwejBBR1dJSmpIdWRlVW4vQ1ZoNTF0cC9mekVE?= =?utf-8?B?ay9WQzNYcFozc0EweFpXR1NEN2UrTEdHYVZjODBDMDhHRUU3YVNNVXM2SEZs?= =?utf-8?B?S0d6VkJObjc0T2FXbGM2cXpiYTN2d1F5RW5SMDByaUczcW5kRStOeEtGUGR1?= =?utf-8?B?SG11a3l2akxub0dFOWEyYmNNVkxEZlAxNG1HRU56TmRZa2pwaWlIZDBjL1B6?= =?utf-8?B?cUJReU1ZcU5GN3BaR0x4WUhNWFhiNmVMQU9mdEJYOFFmY1pyY2J4b2UvL1pq?= =?utf-8?B?RzMyYnQ3eTlzeXhJQnlpaVhWWnVGUENFOGsxd0NQU2x1a3ZMN3MyRkcxMWxi?= =?utf-8?B?Smt6NWwxVW54M3V4cmE4Y1hPMnVTTTkxaDZZVlVvajRhOE5jR3JkWTVTaWFp?= =?utf-8?B?MWV0NHovWEVJbDdmMzRmRDMrQTliT3E2UjNkUWl1b3lXSGs5alNGN1dQZXIw?= =?utf-8?B?ODJxVmhad1hkY2tjbWM5R256TFcrdkZBazN2S1pRQU84ODEzOVplV0FrM0tR?= =?utf-8?B?R2F2VW5GcWZCV1JIZ3FLMC9lYXdUYzFxTHAxT1RxV0NQVG4wa3R1QTR6YzBU?= =?utf-8?B?eTRXZktoRXQ5eFk2KzB3WTJLZHFRYmd2NkUwbm80cnUxcVpraW5PRTArdHV0?= =?utf-8?B?d3ZLQlRuNEpGNmhrZzRtNy90ZVZBUE1PZ1E4OFhoMGZWdGI5T1BrNk11TGVM?= =?utf-8?B?bWJlbGhSTzlvL2Y5SDVncUwyL2Joblh1WXhiaXAvbkE2RXIrZGJDWFF5Qm9Y?= =?utf-8?B?YzhxVG5lZ29Ham1LS2VOQ2NYenNHRU9pNG9iZGVQelY1T0w5cnJKMHhkZ3Bo?= =?utf-8?B?WG1NeWRqeU5BQWFEVE5kbXJ2UGRMVGlJUXBpdDdyV1pYazZRdlZ1dzMza3BU?= =?utf-8?B?YWlabjZrd016K1R4a1RTRUpHb09NNGluMlFpaituYmVUcmdJSTlrWC85c0oz?= =?utf-8?B?Q3F1UFoyOFoxalhITDBGTHNGREdIbjNjekhOYS96SGpEZ3NvTkRmYmZyMEJG?= =?utf-8?Q?KvxB7l/Ebl2DPznPQZpsv3WFtN8RKnnHk?= X-Forefront-PRVS: 0340850FCD X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtCWTFQUjAzMDFNQjExOTA7MjM6cSs5R0pWd1FJUFd2MTU1UUJYYnByNG9O?= =?utf-8?B?cFpScnRnd1lPVW5zSXh3cTR3UEFsa2NXMGR3aWIyUGpueWg3SXMzWjcvL0Y3?= =?utf-8?B?dXZSSkNqQUJiVXJQM1JCMWZ1eXk3UXk2cm9kRkRSVHp5WXZTREFIOFdRMVhV?= =?utf-8?B?Z0JBRTlhdHkxczNYK3p2T045Tm1HUEJ0M3RkaWJsb0RVT08xdHlCL3RLNHA2?= =?utf-8?B?KytYSERJV0NCWHhPRTNJQlBwejlOOXdqZUNBd1ZTc0dkU0QxYkVkQ0doSlV0?= =?utf-8?B?YVhpWk5TQklHNUV6YUhhVld2N0xOM3FFWGt1dGdoNFdkYjBJaTdEVWpOSStk?= =?utf-8?B?RDlJaEtsZWFkcEJJQjBTYnl3MWloOVpOM2lDV3lnZnJ0a0lDT3dTa1FyOXJV?= =?utf-8?B?cVBmRk55Vi9IaFY1d0lhVVc1WDFUS2lSYXg2Q1IzbVJRcmRTbGxzWGRKNm01?= =?utf-8?B?QXZMM2RHYk5zMHpQRG5XVW1kVkZOanFpMytlTjNDenY3cUthRXVQWEhZeWsw?= =?utf-8?B?ZndRR09TQVAvbWRMbjFHWlg3RXdOU3pNajhacXEvQnROYklmYUNFRGQrY0Jk?= =?utf-8?B?Z01DTmpRMm1RK1J4TEtxdFkrRW9uQ2xNTVJkdHRCNTl3V1hoVlNqbEFkWGU3?= =?utf-8?B?bUZMYTBWaUFlVkpJSVJrdnp5MUpOaVk2T20wZEhHR2dHNW9vVWRZdnlLclB5?= =?utf-8?B?Rk5mYWhLdHlVNmYwMmk0SWNPTEttNnR4bGlGeVN1Ti85UzJjQ1d3ajlLMWQr?= =?utf-8?B?UzNnNXNtZ1lZbWFMZlJaY2NLckY2LytvT0tRWmxwellUMUs1MC8vcGx5Smw0?= =?utf-8?B?aUp4SEI0ZWxhMGZVMy8xbEJjZHdCRVU4K2hNTllTK1IvNjJ2a1QwbzNtdGxH?= =?utf-8?B?MTdISVAyODRFc05wZUZ1WURsdXZSNnExVTRxYXkrUDM5eTNFZXRSRW9RbnV3?= =?utf-8?B?ZmhkdDNZNDJiTDB0UWJlV1J5aFp6L25rT2d6eWxtdldKbFhmS3M0cDQ4VTRB?= =?utf-8?B?cmFPa1I0NEsxa2xmUTNsQTQ2ZHZjczlDSkVoUit5OXVadEdMeVgrcktMdzFa?= =?utf-8?B?TGxHaTdTTWJkK3dJUnlxcCsyeW4vYWNYeFFWQWVZOUVCUWtnbk96VGgveVQ2?= =?utf-8?B?U3FjQzMrMFo3SHRHKzBaTFh6WWQ2SCtYR3JIb1Yyb1JJMGZTc0RRWXpBTm1F?= =?utf-8?B?N1R4bEJOd0cvTmFORk1wUU9DWlcwVVl3MU9RUWE2Q3Qvd0xZYWk2WTRCbFQ5?= =?utf-8?B?NVo3S01aS3ZYZ05rUVlaOEh1NXF4dnJxWXNmSjM0L20rV1NHdEhCUDVTNGlO?= =?utf-8?B?RHdoT0NnRmpXMW5FMWtJSExOTjRMYnMvQ0dmUFQxWHpiOWxCRFpIRHRqZFZi?= =?utf-8?B?SDhNVnFFYS9ueGFwNXBmckJ4Z0lxNzhiWTlRb0pKZFM0bkVDU0VXWTZ1R1lC?= =?utf-8?B?M0x3czRkR0xXMXN6NlRsL1dQMTFVYk9PWTBqSjB4YUpLT3VQdnFQWVB5K0l0?= =?utf-8?B?bmloR3hkYmsxdHJoSUJGN1NWRmFYTFRDTmMzMlZjUWZZUmNGdTVkL3RFWVJ6?= =?utf-8?B?TlVKanVueWl0VXJZUmpsYXdGdG0yK3hyUk9DZkF6aHRQakNLVG1qTXBuU0Vs?= =?utf-8?B?c3BKZzlTVWlzNHRZNUE4M3VvV2p0cGhVQUdHZFN0RXc3c1FINlJmMmFINzln?= =?utf-8?B?TnRRcURqbjhDMDF1VlZQTDRlMmNEaTluR0VSRlNVQVgvUEt1V21GWXBMTmxO?= =?utf-8?B?YXppVHZoTVkvd0E5NzlSRUJXZU5ZTkFkeFhqY1BzMFY2bjBQd1pmL0ZyY1ha?= =?utf-8?Q?XoIyAJ1Jads1MRY?= X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtCWTFQUjAzMDFNQjExOTA7NjpNMkYxSElUeTNJQVVDcjBwRys1a2VmYkdH?= =?utf-8?B?SzY4K3pUUE9LZUdPcThqdXhkYTRGS2RxLzYxL1VXaGs5TU9zWVYyUTNaY2dZ?= =?utf-8?B?elBINHVvWjE1RUk0Sm92emZReFlXd211T2hTVlRWb1FEK2pZa0JDelNsS0VZ?= =?utf-8?B?YU1CaUZZOXhsVzR0Z1VjZU1CNGFXckVSYjBLc001OGw2RzZHazlJN0JHcXZk?= =?utf-8?B?c2hnZDVnVU1laDc2dEZnc2tUZUtBbEhBcXdjTmJXSTlTOFpIQmcwd2VkMkJG?= =?utf-8?B?R3JoclBJUlg1ZkRlZnlnYzRkT0lBVDdXSGo4d1g1djZWaTRLMi85akdxcXdU?= =?utf-8?B?emFSd3hrelhLQndoWXpxTFB5VHE3eE9ORHNkSFFKc2JadGJyOGdraGx2dFhl?= =?utf-8?B?K05tc0gyNTU2dUo2dTZwZHpzZmJjVFgzYzVXdll0VVZYWGxXUGx1Q2NHRXBF?= =?utf-8?B?dUUwenlmZjlHVlpHY0lkTFY1c2l5SjczMFJ4cmx1UlJtTGRwZHBZRGErTXNx?= =?utf-8?B?WFZ6UnBYOXVJY0FaY1B6Rm5OWjNQOXhza2U0ZHRreXFhbkcwQk5yRy9EdzNH?= =?utf-8?B?cG1TY3gxZUxxWGhUNU9saTlBMlNRQTBLOHN4VlFtRm9GYVA1UFpoTmwvN2hp?= =?utf-8?B?K2JhRVNMS3hjWVJYTjhyZ2tCM2RReFY1ZGlMbG9pRmM1MHRPaTFnRjhESmxy?= =?utf-8?B?aHVqT0c1YXVxa01Ma3pjVEYvVWNVMGl6bzFuaGRESW5NdkV2c0FPZVYya1Z4?= =?utf-8?B?Y20rUFlEUDFLSGFrcHdMN2xzc1pNVGpJalFaemdnOUJVcW5qeTdzT210TFVK?= =?utf-8?B?OThhUnphYXRVRmczR244UmpJRTBrODUxVXY5ajFjUEQxRGNZMllJN1BTalZn?= =?utf-8?B?a3JGSjg1bTlOKzQ1RVROdTM3L1pWNy9SQVg0M1BpV0hGYk9Na3EwTjJFV3NL?= =?utf-8?B?Yzc5ZEphL1FJcGl1NTVBSDU3UnZ2dXdQTjFwTzc3Qm5ab0taTUF1OVcrUFhl?= =?utf-8?B?cDc5U1N3cnV3VVVRV0dEdWp5bHZ2UEx0c05WUHNyTjlSQTY5Q3BXR2FWUTNH?= =?utf-8?B?Yll5OHVmSEd6WHJaWVk3azVhWEZpanpsa2xCUUJVVEdOSHJFT0ovMGIxWnB0?= =?utf-8?B?QXFiM1lZZUtHcmh4aGF2Tm5LTEZQbkt3WFVsMVYrSDBMVzFhMXp5S1ZROXBI?= =?utf-8?B?S2hJUG5KQWVSaDFmOEVya21VR0tNMnI0T09RWFg4WE43eU5pZFI3eXhNL0lz?= =?utf-8?B?U1h6M0NqNXRvc3JkMVBQNlhzN1R3Y2JIK2ZjVGdPVmlOYlFnbDlMZTc5QXZZ?= =?utf-8?B?LzdVN2daK01FZGpBPT0=?= X-Microsoft-Exchange-Diagnostics: 1; BY1PR0301MB1190; 5:RhTX7sAI612cvscReJ/9LpXZAamaWVRgDb/+nSBJFPJKopGS3TBTRkBo4QGJx2e5EWdWq/xH/JkAQVnFl7ecyXSA96JjRl8588IUjrXNhPnLMhKylkI0zcGr3UuV6knKEF+ZNK11vi6T0m2TYErnUsBUAuYCOze+v1YfMLOUNk+950ACf0lH1+R3PoasOIJgsx3+ui+aJhka9s+aFJVuLlcwJNH46GHhRKRSeLoxV5PK7R+WWvytGcQtHnAWSmAZ27SNGdpFEPcv2M2MdOd3a2EvAbqPebWEGiM9LVrFpG1zq7y9TU5LUZn9gVqrui48t55vsvXyMZtNf3v8M7SgIN1Byk5zi6xTZhgiwihzfSqVULV47yy6DVuPczgyzAmaBYfz4g196GsE0x1AD2P+zsVhfNg9AorxbNPr+B0Wysj7rx/qrTzL9V8Qi+Z7U8cyb1Q9PH1sWkUwCOPg76vTmMbXUbr7MlJuVwCeqBB18PqTVl1vA1TzTSSbXLOeuDgy1PmxSi1TQ01s9KvaCxyWFg==; 24:Y4eyja2nhK5c2me7TxfpiUlTPMhf4JBgoQphRkoKV8HTH1elf6CnrtROaM+jAQzXj2cuFh5653b2meN3v91971GBRMZVNohQLTz6t7JqHXM= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BY1PR0301MB1190; 7:IDAkUajC6KN2b+ypjsgPZZCqQZlaC1cNiBHOuwbO7Zl5RUILJZYtlBYyhGWEEevyj61FWfjUl1cY2KievOPv8FsymuE1WVUNFylV9LjqzR1zWG5SFw+5xOfBPVkAAh5gH/6p/Re3sW3WfqzKm9WJBMx1qibeueWfv/kY1KmOdRLhHgs4bhM7T8fAs4AgWDq590uWtEuvXUSvYMuntPzELhBAkwUQyyuSAbJuy1Uwn66EHTbBkYHu/V+fL76tDHPH3L8DGBOcuvDgGwy8MevaEHnMmpsizkWeRCj//3eJb7sikzwkPt3AyK5i8uh3qGWe91zu5ZFLCMAFmNDDjCIuCidE+V6yBMcuC4s+qi75Oq7UAM5JO2bL/HoNzY+h5Jq3jFPm2HIWz2Bnz8zUOKiP27Sb3Kq/OkoQamK/3lgHNK+hdjQTk9/8+z5Nno+wxbsWOak9dju+7oxyD9QGYh5/nWG6PTmHZvezbDUflgHd93vOL5+J/LLGbsZkJl70lOPS57D6xOsUoUTQ5U4v1WimoOsOn53MLBpt2sCXNV/Tli4+p44aYjUduiBYLug+n5cExxAGa360lqFraXN4wxXmMlOrcmjLwYjB0sH+8wKAKd2DuzKdU2G+GNbX+KyEMyYCSu99WFq6i2+qpspmTxWfEZ1+UnSMBMlo+Xp9jY7K+HoIbweo7QFXHLeVJCl/G1pyCXarWv5+BQQ3Hl/7Md0RpI8+YMQOb3iyfi9d8Fl53HDzFtTkjBPUYm3Ui7ZWKdof/AinHC4zQ80jfC1DOXnHdGDg2Ws7eyd78qQDntFbRSk= X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2017 05:32:59.9105 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR0301MB1190 Subject: [dpdk-dev] [PATCH 18/38] doc: add NXP DPAA PMD documentation 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: Fri, 16 Jun 2017 05:33:04 -0000 Signed-off-by: Hemant Agrawal Signed-off-by: Shreyansh Jain --- MAINTAINERS | 2 + doc/guides/nics/dpaa.rst | 360 ++++++++++++++++++++++++++++++++++++++ doc/guides/nics/features/dpaa.ini | 8 + doc/guides/nics/index.rst | 1 + 4 files changed, 371 insertions(+) create mode 100644 doc/guides/nics/dpaa.rst create mode 100644 doc/guides/nics/features/dpaa.ini diff --git a/MAINTAINERS b/MAINTAINERS index 803c2af..c14b7b3 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -392,6 +392,8 @@ NXP dpaa M: Hemant Agrawal M: Shreyansh Jain F: drivers/bus/dpaa/ +F: doc/guides/nics/dpaa.rst +F: doc/guides/nics/features/dpaa.ini NXP dpaa2 M: Hemant Agrawal diff --git a/doc/guides/nics/dpaa.rst b/doc/guides/nics/dpaa.rst new file mode 100644 index 0000000..cabd340 --- /dev/null +++ b/doc/guides/nics/dpaa.rst @@ -0,0 +1,360 @@ +.. BSD LICENSE + Copyright 2017 NXP. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name of NXP nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +DPAA Poll Mode Driver +===================== + +The DPAA NIC PMD (**librte_pmd_dpaa**) provides poll mode driver +support for the inbuilt NIC found in the **NXP DPAA** SoC family. + +More information can be found at `NXP Official Website +`_. + +NXP DPAA (Data Path Acceleration Architecture - Gen 1) +------------------------------------------------------ + +This section provides an overview of the NXP DPAA architecture +and how it is integrated into the DPDK. + +Contents summary + +- DPAA overview +- DPAA driver architecture overview + +.. _dpaa_overview: + +DPAA Overview +~~~~~~~~~~~~~ + +Reference: `FSL DPAA Architecture `_. + +The QorIQ Data Path Acceleration Architecture (DPAA) is a set of hardware +components on specific QorIQ series multicore processors. This architecture +provides the infrastructure to support simplified sharing of networking +interfaces and accelerators by multiple CPU cores, and the accelerators +themselves. + +DPAA includes: + +- Cores +- Network and packet I/O +- Hardware offload accelerators +- Infrastructure required to facilitate flow of packets between the components above + +Infrastructure components are: + +- The Queue Manager (QMan) is a hardware accelerator that manages frame queues. + It allows CPUs and other accelerators connected to the SoC datapath to + enqueue and dequeue ethernet frames, thus providing the infrastructure for + data exchange among CPUs and datapath accelerators. +- The Buffer Manager (BMan) is a hardware buffer pool management block that + allows software and accelerators on the datapath to acquire and release + buffers in order to build frames. + +Hardware accelerators are: + +- SEC - Cryptographic accelerator +- PME - Pattern matching engine + +The Network and packet I/O component: + +- The Frame Manager (FMan) is a key component in the DPAA and makes use of the + DPAA infrastructure (QMan and BMan). FMan is responsible for packet + distribution and policing. Each frame can be parsed, classified and results + may be attached to the frame. This meta data can be used to select + particular QMan queue, which the packet is forwarded to. + + +DPAA DPDK - Poll Mode Driver Overview +------------------------------------- + +This section provides an overview of the drivers for DPAA: + +* Bus driver and associated "DPAA infrastructure" drivers +* Functional object drivers (such as Ethernet). + +Brief description of each driver is provided in layout below as well as +in the following sections. + +.. code-block:: console + + +------------+ + | DPDK DPAA | + | PMD | + +-----+------+ + | + +-----+------+ +---------------+ + : Ethernet :.......| DPDK DPAA | + . . . . . . . . . : (FMAN) : | Mempool driver| + . +---+---+----+ | (BMAN) | + . ^ | +-----+---------+ + . | | . + . | | . + . +---+---V----+ . + . . . . . . . . . . .: Portal drv : . + . . : : . + . . +-----+------+ . + . . : QMAN : . + . . : Driver : . + +----+------+-------+ +-----+------+ . + | DPDK DPAA Bus | | . + | driver |....................|..................... + | /bus/dpaa | | + +-------------------+ | + | + ========================== HARDWARE =====|======================== + PHY + =========================================|======================== + +In the above representation, solid lines represent components which interface +with DPDK RTE Framework and dotted lines represent DPAA internal components. + +DPAA Bus driver +~~~~~~~~~~~~~~~ + +The DPAA bus driver is a ``rte_bus`` driver which scans the platform like bus. +Key functions include: + +- Scanning and parsing the various objects and adding them to their respective + device list. +- Performing probe for available drivers against each scanned device +- Creating necessary ethernet instance before passing control to the PMD + +DPAA NIC Driver (PMD) +~~~~~~~~~~~~~~~~~~~~~ + +DPAA PMD is traditional DPDK PMD which provides necessary interface between +RTE framework and DPAA internal components/drivers. + +- Once devices have been identified by DPAA Bus, each device is associated + with the PMD +- PMD is responsible for implementing necessary glue layer between RTE APIs + and lower level QMan and FMan blocks. + The Ethernet driver is bound to a FMAN port and implements the interfaces + needed to connect the DPAA network interface to the network stack. + Each FMAN Port corresponds to a DPDK network interface. + + +Features +^^^^^^^^ + + Features of the DPAA PMD are: + + - Multiple queues for TX and RX + - Receive Side Scaling (RSS) + - Packet type information + - Checksum offload + - Promiscuous mode + +DPAA Mempool Driver +~~~~~~~~~~~~~~~~~~~ + +DPAA has a hardware offloaded buffer pool manager, called BMan, or Buffer +Manager. + +- Using standard Mempools operations RTE API, the mempool driver interfaces + with RTE to service each mempool creation, deletion, buffer allocation and + deallocation requests. +- Each FMAN instance has a BMan pool attached to it during initialization. + Each Tx frame can be automatically released by hardware, if allocated from + this pool. + + +Supported DPAA SoCs +------------------- + +- LS1043A/LS1023A +- LS1046A/LS1026A + +Prerequisites +------------- + +There are three main pre-requisities for executing DPAA PMD on a DPAA +compatible board: + +1. **ARM 64 Tool Chain** + + For example, the `*aarch64* Linaro Toolchain `_. + +2. **Linux Kernel** + + It can be obtained from `NXP's Github hosting `_. + +3. **Rootfile system** + + Any *aarch64* supporting filesystem can be used. For example, + Ubuntu 15.10 (Wily) or 16.04 LTS (Xenial) userland which can be obtained + from `here `_. + +As an alternative method, DPAA PMD can also be executed using images provided +as part of SDK from NXP. The SDK includes all the above prerequisites necessary +to bring up a DPAA board. + +The following dependencies are not part of DPDK and must be installed +separately: + +- **NXP Linux SDK** + + NXP Linux software development kit (SDK) includes support for family + of QorIQ® ARM-Architecture-based system on chip (SoC) processors + and corresponding boards. + + It includes the Linux board support packages (BSPs) for NXP SoCs, + a fully operational tool chain, kernel and board specific modules. + + SDK and related information can be obtained from: `NXP QorIQ SDK `_. + +- **DPDK Extra Scripts** + + DPAA based resources can be configured easily with the help of ready scripts + as provided in the DPDK Extra repository. + + `DPDK Extras Scripts `_. + +Currently supported by DPDK: + +- NXP SDK **2.0+**. +- Supported architectures: **arm64 LE**. + +- Follow the DPDK :ref:`Getting Started Guide for Linux ` + to setup the basic DPDK environment. + +.. note:: + + Some part of dpaa bus code (qbman and fman - library) routines are + dual licensed (BSD & GPLv2). + +Pre-Installation Configuration +------------------------------ + +Config File Options +~~~~~~~~~~~~~~~~~~~ + +The following options can be modified in the ``config`` file. +Please note that enabling debugging options may affect system performance. + +- ``CONFIG_RTE_LIBRTE_DPAA_BUS`` (default ``n``) + + By default it is enabled only for defconfig_arm64-dpaa-* config. + Toggle compilation of the ``librte_bus_dpaa`` driver. + +- ``CONFIG_RTE_LIBRTE_DPAA_PMD`` (default ``n``) + + By default it is enabled only for defconfig_arm64-dpaa-* config. + Toggle compilation of the ``librte_pmd_dpaa`` driver. + +- ``CONFIG_RTE_LIBRTE_DPAA_DEBUG_DRIVER`` (default ``n``) + + Toggle display of generic debugging messages + +- ``CONFIG_RTE_LIBRTE_DPAA_DEBUG_INIT`` (default ``n``) + + Toggle display of initialization related messages. + +- ``CONFIG_RTE_LIBRTE_DPAA_DEBUG_RX`` (default ``n``) + + Toggle display of receive fast path run-time message + +- ``CONFIG_RTE_LIBRTE_DPAA_DEBUG_TX`` (default ``n``) + + Toggle display of transmit fast path run-time message + +- ``CONFIG_RTE_LIBRTE_DPAA_DEBUG_TX_FREE`` (default ``n``) + + Toggle display of transmit fast path buffer free run-time message + +- ``CONFIG_RTE_LIBRTE_DPAA_DEBUG_DRIVER_DISPLAY`` (default ``n``) + + Toggle display of each Tx/Rx frame contents (dump) + +- ``CONFIG_RTE_LIBRTE_DPAA_CHECKING`` (default ``n``) + + Toggle lower level driver validations (asserts) + +- ``CONFIG_RTE_MBUF_DEFAULT_MEMPOOL_OPS`` (default ``dpaa``) + + This is not a DPAA specific configuration - it is a generic RTE config. + For optimal performance and hardware utilization, it is expected that DPAA + Mempool driver is used for mempools. For that, this configuration needs to + enabled. + +Driver compilation and testing +------------------------------ + +Refer to the document :ref:`compiling and testing a PMD for a NIC ` +for details. + +#. Running testpmd: + + Follow instructions available in the document + :ref:`compiling and testing a PMD for a NIC ` + to run testpmd. + + Example output: + + .. code-block:: console + + ./arm64-dpaa-linuxapp-gcc/testpmd -c 0xff -n 1 \ + -- -i --portmask=0x3 --nb-cores=1 --no-flush-rx + + ..... + EAL: Registered [pci] bus. + EAL: Registered [dpaa] bus. + EAL: Detected 4 lcore(s) + ..... + EAL: dpaa: Bus scan completed + ..... + Configuring Port 0 (socket 0) + Port 0: 00:00:00:00:00:01 + Configuring Port 1 (socket 0) + Port 1: 00:00:00:00:00:02 + ..... + Checking link statuses... + Port 0 Link Up - speed 10000 Mbps - full-duplex + Port 1 Link Up - speed 10000 Mbps - full-duplex + Done + testpmd> + +Limitations +----------- + +Platform Requirement +~~~~~~~~~~~~~~~~~~~~ +DPAA drivers for DPDK can only work on NXP SoCs as listed in the +``Supported DPAA SoCs``. + +Maximum packet length +~~~~~~~~~~~~~~~~~~~~~ + +The DPAA SoC family support a maximum of a 10240 jumbo frame. The value +is fixed and cannot be changed. So, even when the ``rxmode.max_rx_pkt_len`` +member of ``struct rte_eth_conf`` is set to a value lower than 10240, frames +up to 10240 bytes can still reach the host interface. diff --git a/doc/guides/nics/features/dpaa.ini b/doc/guides/nics/features/dpaa.ini new file mode 100644 index 0000000..9e8befc --- /dev/null +++ b/doc/guides/nics/features/dpaa.ini @@ -0,0 +1,8 @@ +; +; Supported features of the 'dpaa' network poll mode driver. +; +; Refer to default.ini for the full list of available PMD features. +; +[Features] +ARMv8 = Y +Usage doc = Y diff --git a/doc/guides/nics/index.rst b/doc/guides/nics/index.rst index 240d082..6fc8eaf 100644 --- a/doc/guides/nics/index.rst +++ b/doc/guides/nics/index.rst @@ -42,6 +42,7 @@ Network Interface Controller Drivers bnx2x bnxt cxgbe + dpaa dpaa2 e1000em ena -- 2.7.4