From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <hemant.agrawal@nxp.com>
Received: from NAM01-BN3-obe.outbound.protection.outlook.com
 (mail-bn3nam01on0072.outbound.protection.outlook.com [104.47.33.72])
 by dpdk.org (Postfix) with ESMTP id B02AE2C8
 for <dev@dpdk.org>; Wed,  7 Dec 2016 07:57:47 +0100 (CET)
Received: from CY1PR03CA0035.namprd03.prod.outlook.com (10.174.128.45) by
 DM2PR0301MB0750.namprd03.prod.outlook.com (10.160.97.146) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id
 15.1.734.8; Wed, 7 Dec 2016 06:57:45 +0000
Received: from BY2FFO11FD005.protection.gbl (2a01:111:f400:7c0c::136) by
 CY1PR03CA0035.outlook.office365.com (2603:10b6:600::45) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id
 15.1.761.9 via Frontend Transport; Wed, 7 Dec 2016 06:57:45 +0000
Authentication-Results: spf=fail (sender IP is 192.88.168.50)
 smtp.mailfrom=nxp.com; intel.com; dkim=none (message not signed)
 header.d=none;intel.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
 BY2FFO11FD005.mail.protection.outlook.com (10.1.14.126) with Microsoft SMTP
 Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.734.4
 via Frontend Transport; Wed, 7 Dec 2016 06:57:45 +0000
X-IncomingTopHeaderMarker: OriginalChecksum:; UpperCasedChecksum:;
 SizeAsReceived:995; Count:13
Received: from [127.0.0.1] ([10.232.133.65])
 by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id uB76vcpb005866;
 Tue, 6 Dec 2016 23:57:42 -0700
To: Ferruh Yigit <ferruh.yigit@intel.com>, <dev@dpdk.org>
References: <1480875447-23680-1-git-send-email-hemant.agrawal@nxp.com>
 <1480875447-23680-11-git-send-email-hemant.agrawal@nxp.com>
 <5858af6b-8fba-02f0-9a1d-0210ef113920@intel.com>
CC: <thomas.monjalon@6wind.com>, <bruce.richardson@intel.com>,
 <shreyansh.jain@nxp.com>
From: Hemant Agrawal <hemant.agrawal@nxp.com>
Message-ID: <e16ea3a1-27e3-4667-b15b-0b2a82e36364@nxp.com>
Date: Wed, 7 Dec 2016 12:27:38 +0530
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101
 Thunderbird/45.4.0
MIME-Version: 1.0
In-Reply-To: <5858af6b-8fba-02f0-9a1d-0210ef113920@intel.com>
Content-Type: text/plain; charset="windows-1252"; format=flowed
Content-Transfer-Encoding: 7bit
X-IncomingHeaderCount: 13
X-EOPAttributedMessage: 0
X-Matching-Connectors: 131255674655006593;
 (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)(7916002)(2980300002)(1109001)(1110001)(3190300001)(336004)(339900001)(199003)(377454003)(189002)(24454002)(50466002)(626004)(23746002)(50986999)(230700001)(54356999)(76176999)(229853002)(105606002)(81156014)(81166006)(8936002)(33646002)(39840400001)(5660300001)(39850400001)(39860400001)(64126003)(106466001)(5001770100001)(4001350100001)(120886001)(97736004)(7246003)(7126002)(4326007)(47776003)(39410400001)(39380400001)(39400400001)(31686004)(104016004)(68736007)(83506001)(65826007)(8666005)(7846002)(2906002)(65806001)(305945005)(65956001)(36756003)(189998001)(2950100002)(77096006)(31696002)(39450400002)(356003)(6666003)(8676002)(38730400001)(575784001)(92566002)(85426001)(86362001)(7059030);
 DIR:OUT; SFP:1101; SCL:1; SRVR:DM2PR0301MB0750; H:tx30smr01.am.freescale.net;
 FPR:; SPF:Fail; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; 
X-Microsoft-Exchange-Diagnostics: 1; BY2FFO11FD005;
 1:NLoHMvg4ipb2vazOhfwyOsv7E5KJaQ4MNf+Tfs46E9BfaAfKdOdbJ2yDmNTe7HYFTIsx/WvEVBIYITL7GJ+lCozmd9n0BI/T8Ef53b6QoYkNc3nw+uCHjg9O2CYcPXzrn51FnQCrY5535EUDuwRDc50NjRTIVIXga+ZARApOm4kn7GDfbnixtFJbOAnW3DFKoxDE6s+9s4YnkeFFOooWO9NS1vKhmS6NOSg/0zJJQ9zOuKwZRp6tg/SXPqtNlTRvnhm1brC2Z5pRDP9fsB2ZqRpSPVGHzdgk0eQfekVEwn2T3Zvtl1PvQQU1BHS60ArRhDW0c2HafPh/GpvRaEnw+NhBZ08x806hJ5ai26oIvvJQet0jjoqWf5E8UjLC7qwIDuu/Ss9vBiHLl1iDgHcJxHq43kaB92/aR8DPFOTlJTNLPqYEatE1xEbR28o25Z8uQ1zx6w9bIjl8krZLhMSBheKyjmTIuONHLoejMUoQmSDcjqtFuFXxe2bocRFAAoMWhygH0AQ/nsXkovN8uQCvlU2Uk+VvPsUrq+5eU0GSVnjBSLyTq+8TC9IqX1wV2MlnlSjjij1ivCmbnsWHA2NQ65oV/rXXi5/E7B2i7R1HZ4dpbndaR2gmmCMF/IU+4lYqVqGR7pWNoiOQ419bj8Vp2Cr9dogTAK2qtuLMdmsImNQ=
X-Microsoft-Exchange-Diagnostics: 1; DM2PR0301MB0750;
 2:+xzFcMaM9bBhAwUigCz/TS7ozu0WZcf6r0EEA7Oy6Kp14ogoJejVsN4d4rIXb7vmK+QI286zoHY3+2Xdt42MmYHIpi2GirBTDDNBltccIc9/3VbeEgEqCwgOPWi/HAu0PkoYMDcyCFs0RHw57tsPHWUK1Bf4gEDaxRglLuRAp3E=;
 3:FDpiFwJmFXBo8noVHrMi8Inn/o+/kiW69ICqwGrVfQX8czC/6VoOuvmOqD3dqbs1HaRLsb1oJCQcLWmjiknGDTJu4oPq6A2ddYKa8Q2sDQaIgHjBTbMPphR3KOQIiupiQhYVsuMxWopZKBJ3jozNdsk1vQFtGhHMxhpj9HsQHM9HATeNdtb1Wu1e3JWq/r6yl7yASzjgAqhfaqpjPdVLu13Z+AVHUO3n8sX4LdpUjRSPMTi5YrAOiXPOIkdv4C65O6MpzVQNo+V+ZSbUvHhheg==
X-MS-Office365-Filtering-Correlation-Id: 610dbea2-45d8-402c-35e1-08d41e6e58f7
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001);
 SRVR:DM2PR0301MB0750; 
X-Microsoft-Exchange-Diagnostics: 1; DM2PR0301MB0750;
 25:C+Edb+Os2za8HdE3fhPzXBGkvDSj4pUSUSzT6efPWxKSzg12Dfyr8S6awmEHWj7pn3USjusYGjPs5um8BdC5ezW7Qy3F9ph33i63STzCfHRnYOayAoRjE18SJSVhPIcN9NQkvwjYpf5ZaOYEzo6X5btVHPK9SP/hUxo/Uz261l8ErWM2G897NMswKs5U6jGjw+grGqIyHEhOq9B5gQ1SYQjs2UskAkTyxD4kUBaJeKsv+yIn29akKnbJ/VSlszLFU2XKAIF1VAVxQMgAxQM54CgonG51UNnmmn+zpmDOOEg8iRrCFzi8G2lOXAzIHM+rN3VW1bqDgf3ix/K3EwJpRCP6cmNR4LfoFlK/8QZHSVBBU+tcx5q17g1Gvl/sUmfTD2XtOOeM1RjQJEwYedNOGHeDcSIx1hE1SFpOCL3xcAQSKDHMsP2dKzjBG176jks4iLCsCIrDMuAT2CjxYM5re9d4G1iXrcBbW5fF4N9reFyBoNBAwCF4ULBPFnphG8PqHfZ4tDJOcXS/0cYS5KuuuaR6jH6hNHS9RBQzTyuk9vCJ2C0dgrJovoeB8CKIQShx02gNcBJlte4l5/vTxLLkp7rM6KTOc9r28L2FSgKlYX0M5q+PMWt5rS9JybYsPXxiDfyyo4GbNFjDur5+HtFywRsjQTLyvjunv7ZsByM6KtnB2a4fXMWE+SZMhJszNxVU0KtSLBeBg2yKphHe3QWPldRVarwprBMsq6/QYqJk2uJ3lWeqrF530DF0bDZhhguvhSNyFDTuBgSHT9BdsHI7lOYxRPKcuYho/tYkCishis4=
X-Microsoft-Exchange-Diagnostics: 1; DM2PR0301MB0750;
 31:+tsxbytJ6MjBsLzlEu/vEvenVyuYGHQj0bXV8QdHwPCymb4LQVel2t2FmHSQT0xGqtV4wjSSDRJBwMzhNHQcf0+rje7LLw5BLIlFCZNMU4apwozvseGFlLM6axEtl4TH00DmwiPlk8qDRxKoIQbRVdmF1NHbB1wN5oUVtG1UWBvFC2YFVPmDy61/myHjqhbxtZCumqAFpjXZTZIKHlSGfoqkkZyOxU4qxTlzEh/GW7zMPdRbdLmZoGkUMgozOyNxHfKAOcWy3PMr8l6aZbDOkeon+88Td4bo5nXHZj6M8mw=
X-Microsoft-Antispam-PRVS: <DM2PR0301MB075057F812D227B8B48F836489850@DM2PR0301MB0750.namprd03.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(185117386973197);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(6095060)(601004)(2401047)(13017025)(13015025)(13024025)(13023025)(5005006)(8121501046)(13018025)(3002001)(10201501046)(6055026)(6096035)(20161123556025)(20161123559025)(20161123565025)(20161123563025)(20161123561025);
 SRVR:DM2PR0301MB0750; BCL:0; PCL:0; RULEID:(400006); SRVR:DM2PR0301MB0750; 
X-Microsoft-Exchange-Diagnostics: 1; DM2PR0301MB0750;
 4:6dNlQOY+SxSzH/GE3GAGlNtJihKHk7Cuy1Qwcq78yn7MNbmI0ZTT6wWAePbBcIcIQDHN9PNxenSPIk9Ul3xuvZDgdafPdLVgymWDl7ayHjJYcCpN8u2pIFipwtRmvnCFDHS84hvZESWtKN0qRP8otxT2ydiQZ9Y3+h30dEU9WrU4mYUWwvW3wKj5k1OWqdZlMv6lwkdko92QDlEKM5hdJw+Aarf3q84L1Hj9E4mQQGeYgcjpoAihtGRcfGJXtAigvA8KXYZgf0Z3xOqQmrRq9oy016meit2pbPM+Sjvr+gzawvbkyWcEaHASEm+WmuAXEsZoy+r/qs6RvYBxKOdUjiKjitnHjsxF51q4ioQIYCAz7hiW4Ey5jq7x4Q8tFPAf+6KW8SlW7FJTw0yikzgrXSyNxHrQnm6vGyqB3upJZbXWGXj6LKbgmYzFIw3iWKNP5yjsbcMu7B4fam3MwJJ5HMs8i0LaK/LyGRlShBoSZBqy4btjKxl4LTakNGHHXTPqwsYQ+/MIzwt8hxmmZup3jYNKJIlzaHO+yy0xc1iPnmtxcF2FEz3Ix7ac6snlcEl0T9c02JDjTxsys+69Pz62XToswDRnOBRilQ17KMAmHjLtEPC8LRvTxXTyUXIWKXse6S+OkCS2zmowJ4RnShE/oaxp5Hm1F6WW3UY244oZ36MLMkHz2pD/M3TQio/g4Ov6g5tTkU0HP4LNrVSM8P3WcXPNkifFCmwL47OUcdSs1MFlTK8YA5dv8WwKeW41B4kw
X-Forefront-PRVS: 01494FA7F7
X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1; DM2PR0301MB0750;
 23:DCWoeYsXAMyFJvOXRA7Lj4NB0ktV14oL0s9?=
 =?Windows-1252?Q?eEaFtDherYJb5EpCmjxit+3AsObHOerrREJ4gf16us595dHTVxwiGrAY?=
 =?Windows-1252?Q?R74BvmMUsbB9R52Na9zVmSZsW8F2LsenMcYVhGZ5gKmxJF2PX8K2CwY0?=
 =?Windows-1252?Q?l2Cr85RS+FVcgngA1KcvIKONx9SXNbtxff5tpzQcUEB6Otr3Bd7vBoE9?=
 =?Windows-1252?Q?P/IzuEN6ZmcxniI18wpdKjt2gqh/FTnIGP1U2b6eQReRG6Jvn0coUh7Z?=
 =?Windows-1252?Q?GDV7PzT5EfjCcE34TRUwGsesnUrizPY1U0ktS0J0om1hhJ9utlVNUBqm?=
 =?Windows-1252?Q?J5BmUKsX6v6vX/6CrTdfrs1mImC897n0ik/0M2IgGPBcKYfImhY6ujKR?=
 =?Windows-1252?Q?4Zi+nR724gL9lKN3B0p+7VQnCAjNWmt/G8Thjlj77mwbcupPo6zoLDFo?=
 =?Windows-1252?Q?wzPea35O1UejsfXoZxP+UMD2836nARpPR+0paXgNyhT5cmZvhWpDIONq?=
 =?Windows-1252?Q?DCVKJ5k40J4tXSZqcF72QPngGx0G68MqxE3HtNQH6oPYSAlZc9GbnKLl?=
 =?Windows-1252?Q?xuh4Us2PMb1LMlNnem8oRbl1Gk+xCJ68YE7sz8o9qVNlsRKN4Cy4+nNY?=
 =?Windows-1252?Q?2RQ3DzpuqQrQx+xH5ITHfZWtEu0kqkcsJ+dJZuZD0AI6gPCPaJdXRUGr?=
 =?Windows-1252?Q?CNkLJbTGlVXKUAKDcfdObdsLeTra0b6T8dkt1sP779cra//8GL5Uh2ht?=
 =?Windows-1252?Q?ZrhJjHzciEQuAMfcGTIxGhDAauiKBcNyiGflPmIZ61GpnkhTi2nfaoD4?=
 =?Windows-1252?Q?n0lgnTI1a3Fmh/XOOlc2QWLOcyzdB+9wvYmxc1zUu+JGIOkQfKvRdskT?=
 =?Windows-1252?Q?Do6ugmZve+bxG8ktgev8laxCME/8Z7YfAPloJMhr8/59h7awyXlGmDcs?=
 =?Windows-1252?Q?HwfZZxdTzzl/19tnUu5i4gH9GbH+agUKEbhBxZIFwuafsuigatYnF2N+?=
 =?Windows-1252?Q?odpWjSB5KfahGwDCyrD8Sf/8vk/WBoo6VJ1ma4OiIx22mp5NlWxbX4Tg?=
 =?Windows-1252?Q?1OeZFDovLnseAF7wFOGmZoxhFGZV/SI2eRQ4sxE2NgmpEEc0W7Slcw/m?=
 =?Windows-1252?Q?Lja0BScxQjgI4VNJXST/I/ceEMpH9so4zKuJy3rKdAbIokERUAYmAQB/?=
 =?Windows-1252?Q?PbiMGt3XdDyoBUbiBjZaMA0pzugO/O88eQefjLrKeNAhGVNBeYY6kIHe?=
 =?Windows-1252?Q?Kow0AiYmEPP6lsM5CLST9JObHCokH+wWhWWeaynsnGu77xLUnAFnUEkf?=
 =?Windows-1252?Q?CFtUzNp/hR0n9va1OXerf8+JE87bQNFAspBNKJG3T/KJVH6dftIyY9kS?=
 =?Windows-1252?Q?DmylZn5oIuS/BpmEiZjYXSBAL5aMcx4VeAGyZT3d3zVCQJ55qVKSj8v7?=
 =?Windows-1252?Q?hTIDXu1hV3KV7slbJoLWrAUaIVTvRCA2G7GfJkC+ccgTbnTnqYQCcJ8A?=
 =?Windows-1252?Q?61Eno8GvCdGbdBVfvDT9TL+k9H0Mg1Tg7t2DPP5tw/vO5sfEY2pXEpP2?=
 =?Windows-1252?Q?8sLptGCx9i8v0mFB9d+ncHeb2w+eAbGqW2xBOqqQAkXF9+G5K+fyxZfQ?=
 =?Windows-1252?Q?WFgi+vh8CsrM7/Ml3Kj/JsoKJeCYqqzUm8oQMmuzNY3/lmayizNz2r4i?=
 =?Windows-1252?Q?2IJXF7DtAC0OQZk8Pck9e6eO91xvv7b2jNvkg094+uswJrc547exo5wz?=
 =?Windows-1252?Q?AuHzw+sN+C7En3uqTvV4RUSZof5geiy8iiagumx4=3D?=
X-Microsoft-Exchange-Diagnostics: 1; DM2PR0301MB0750;
 6:EZWWxAjhQYZQ9Z0WK9at84eOEC986kdDeUaYOZdvcHhbf4Pai473u9/0EF7TBzPMuuJ6htPMtG/Mkx070d0+2KNKOcap9b6iZhfLYfKzVMC7megjuIHn7uV5a0NfvO01PuAdEPwv6PN9jFCimQUmbjtBPPUZSOfOjQ0x9BSpyR8nrEqERPg6n/90n9CccKCnZ3nEeJQa7ysw4CKppLgnIc2Xdv85kTTcpk1dv1fG7PfxLAqCGcBkMtNn2RhUyr/q4VtdUnUX6TMb/yHrqVF9NsRwCTPHJtYa0jfmD8Y6xz95/dBn0js6ew2NwtB7GWdDhiv/LRoNhDdjhJo+S/M1uw==;
 5:efp2pl3soZ6YnsjN+jXOmwSz6sazcq8+rxcYNncvpHdDlOnIOV3SvjkEYIIDg7lCtpAETSEyOVXQzf1Mo/+OyOYPyvbWlpR7GF86vxHo+KWzuJPm+PokyHHjWYFft8L1YeNhFvo3mo1yvFcbj7RM0m8mFRm4IWE1Mpp4qfQmIHSHnJ7bPANwfBc8SpiaI/FT;
 24:OTNraCrOsXC/+lqeDstjvPQv74FRvZR4bfckKJO2BSMGnZ4/Z8zOrCBGJBZzjIOLs7ZkOKM9CVYJ3eewoBiHDB/TTCKxxLhnnor+X5wJVGE=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; DM2PR0301MB0750;
 7:vNYBQtSei7d/8zzOV0wiG/uAuDCf5+ZaJQ926E6wKnehuKzwzY05WQV8CKBICPNMjorUoBVv1QcQ85C14/h99cgX7E2X5Sp+Tzi3mmbZYll51RzWSerN7U2YOs1gV3MadO3PvSI9VHLEifYOV79hRBKb16xQKRVzobLG5Z4me+5nQHtnsT7alMjfM0YefVWHfDNqbsQMIXrFCP7zYUQV20h6/BP6Xhuy6Nsq83Y6rdXw8s5xuL4qU2+qg0oz7MGASadLvYtfPZiq6wfMKCvoEl8+FC9O64SHIuG4dThHnmvKGj7tyFNt2kHWWiy0fieNHkLNa9iyLTNmfOOwGe1RLxkSg7PkBRSL2rrUBURM8XY=
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Dec 2016 06:57:45.1886 (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: DM2PR0301MB0750
Subject: Re: [dpdk-dev] [PATCH 10/32] net/dpaa2: introducing dpaa2 bus
 driver for fsl-mc bus
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <http://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <http://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Wed, 07 Dec 2016 06:57:48 -0000

On 12/7/2016 1:19 AM, Ferruh Yigit wrote:
> On 12/4/2016 6:17 PM, Hemant Agrawal wrote:
>> The DPAA2 bus driver is a rte_bus driver which scans the fsl-mc bus.
>>
>> Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
>> ---
>>  drivers/net/Makefile                        |   2 +-
>>  drivers/net/dpaa2/Makefile                  |  60 ++++++++++++++
>>  drivers/net/dpaa2/dpaa2_bus.c               |  99 +++++++++++++++++++++++
>>  drivers/net/dpaa2/rte_dpaa2.h               | 121 ++++++++++++++++++++++++++++
>>  drivers/net/dpaa2/rte_pmd_dpaa2_version.map |   4 +
>>  mk/rte.app.mk                               |   1 +
>>  6 files changed, 286 insertions(+), 1 deletion(-)
>>  create mode 100644 drivers/net/dpaa2/Makefile
>>  create mode 100644 drivers/net/dpaa2/dpaa2_bus.c
>>  create mode 100644 drivers/net/dpaa2/rte_dpaa2.h
>>  create mode 100644 drivers/net/dpaa2/rte_pmd_dpaa2_version.map
>>
>> diff --git a/drivers/net/Makefile b/drivers/net/Makefile
>> index bc93230..2bcf67b 100644
>> --- a/drivers/net/Makefile
>> +++ b/drivers/net/Makefile
>> @@ -55,7 +55,7 @@ DIRS-$(CONFIG_RTE_LIBRTE_THUNDERX_NICVF_PMD) += thunderx
>>  DIRS-$(CONFIG_RTE_LIBRTE_VIRTIO_PMD) += virtio
>>  DIRS-$(CONFIG_RTE_LIBRTE_VMXNET3_PMD) += vmxnet3
>>  DIRS-$(CONFIG_RTE_LIBRTE_PMD_XENVIRT) += xenvirt
>> -
>> +DIRS-$(CONFIG_RTE_LIBRTE_DPAA2_PMD) += dpaa2
>
> Add as alphabetically sorted manner please.
>
>>  ifeq ($(CONFIG_RTE_LIBRTE_VHOST),y)
>>  DIRS-$(CONFIG_RTE_LIBRTE_PMD_VHOST) += vhost
>>  endif # $(CONFIG_RTE_LIBRTE_VHOST)
>> diff --git a/drivers/net/dpaa2/Makefile b/drivers/net/dpaa2/Makefile
>> new file mode 100644
>> index 0000000..a99ce22
>> --- /dev/null
>> +++ b/drivers/net/dpaa2/Makefile
>> @@ -0,0 +1,60 @@
>> +#   BSD LICENSE
>> +#
>> +#   Copyright (c) 2016 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.
>> +
>> +include $(RTE_SDK)/mk/rte.vars.mk
>> +
>> +#
>> +# library name
>> +#
>> +LIB = librte_pmd_dpaa2.a
>> +
>> +CFLAGS += -O3
>> +CFLAGS += $(WERROR_FLAGS)
>> +
>> +CFLAGS += -I$(RTE_SDK)/drivers/net/dpaa2
>> +CFLAGS += -I$(RTE_SDK)/lib/librte_eal/common/
>> +CFLAGS += -I$(RTE_SDK)/lib/librte_eal/linuxapp/eal
>
> Last two shouldn't be required.
>
>> +
>> +# versioning export map
>> +EXPORT_MAP := rte_pmd_dpaa2_version.map
>> +
>> +# library version
>> +LIBABIVER := 1
>> +
>> +
>> +# Interfaces with DPDK
>> +SRCS-$(CONFIG_RTE_LIBRTE_DPAA2_PMD) += dpaa2_bus.c
>> +
>> +# library dependencies
>> +DEPDIRS-y += lib/librte_eal
>> +DEPDIRS-y += drivers/common/dpaa/mc
>> +DEPDIRS-y += drivers/common/dpaa/qbman
>
> Again for consistency, DEPDIRS-$(CONFIG_RTE_LIBRTE_DPAA2_PMD) +=
>

agree, will fix it in v2

>> +
>> +include $(RTE_SDK)/mk/rte.lib.mk
>> diff --git a/drivers/net/dpaa2/dpaa2_bus.c b/drivers/net/dpaa2/dpaa2_bus.c
>> new file mode 100644
>> index 0000000..571066c
>> --- /dev/null
>> +++ b/drivers/net/dpaa2/dpaa2_bus.c
>> @@ -0,0 +1,99 @@
>> +/*-
>> + *   BSD LICENSE
>> + *
>> + *   Copyright (c) 2016 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.
>> + */
>> +
>> +#include <string.h>
>> +#include <dirent.h>
>> +
>> +#include <rte_log.h>
>> +#include <rte_bus.h>
>> +#include <rte_dpaa2.h>
>> +#include <rte_eal_memconfig.h>
>> +#include <rte_malloc.h>
>> +#include <rte_devargs.h>
>> +#include <rte_memcpy.h>
>> +#include <rte_ethdev.h>
>> +
>> +#include "eal_filesystem.h"
>> +#include "eal_private.h"
>> +
>> +void
>> +rte_dpaa2_register(struct rte_dpaa2_driver *driver)
>> +{
>> +	struct rte_bus *bus;
>> +
>> +	bus = rte_eal_get_bus("dpaa2");
>> +	if (!bus) {
>> +		RTE_LOG(ERR, EAL, "DPAA2 bus not registered\n");
>> +		return;
>> +	}
>> +
>> +	rte_eal_bus_add_driver(bus, &driver->driver);
>> +}
>> +
>> +void
>> +rte_dpaa2_unregister(struct rte_dpaa2_driver *driver)
>> +{
>> +	struct rte_bus *bus;
>> +
>> +	bus = driver->driver.bus;
>> +	if (!bus) {
>> +		RTE_LOG(ERR, EAL, "Unable to find bus for device\n");
>> +		return;
>> +	}
>> +
>> +	rte_eal_bus_remove_driver(&driver->driver);
>> +}
>> +
>> +int rte_dpaa2_probe(struct rte_driver *driver __rte_unused,
>> +				    struct rte_device *device __rte_unused)
>> +{
>> +	return 0;
>> +}
>> +
>> +int rte_dpaa2_scan(struct rte_bus *bus_d __rte_unused)
>> +{
>> +	return 0;
>> +}
>> +
>> +int rte_dpaa2_match(struct rte_driver *driver __rte_unused,
>> +		    struct rte_device *device __rte_unused)
>> +{
>> +	return 0;
>> +}
>> +
>> +struct rte_bus dpaa2_bus = {
>> +	.scan = rte_dpaa2_scan,
>> +	.match = rte_dpaa2_match,
>> +	.probe = rte_dpaa2_probe,
>> +};
>> +
>> +RTE_REGISTER_BUS(dpaa2, dpaa2_bus);
>> diff --git a/drivers/net/dpaa2/rte_dpaa2.h b/drivers/net/dpaa2/rte_dpaa2.h
>> new file mode 100644
>> index 0000000..b36eed8
>> --- /dev/null
>> +++ b/drivers/net/dpaa2/rte_dpaa2.h
>> @@ -0,0 +1,121 @@
>> +/*-
>> + *   BSD LICENSE
>> + *
>> + *   Copyright (c) 2016 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.
>> + */
>> +
>> +#ifndef _RTE_DPAA2_H_
>> +#define _RTE_DPAA2_H_
>> +
>> +/**
>> + * @file
>> + *
>> + * RTE DPAA2 Interface
>> + */
>> +
>> +#ifdef __cplusplus
>> +extern "C" {
>> +#endif
>> +
>> +#include <stdio.h>
>> +#include <stdlib.h>
>> +#include <limits.h>
>> +#include <errno.h>
>> +#include <sys/queue.h>
>> +#include <stdint.h>
>> +#include <inttypes.h>
>> +
>> +#include <rte_debug.h>
>> +#include <rte_interrupts.h>
>> +#include <rte_dev.h>
>> +
>> +
>> +struct rte_dpaa2_driver;
>> +/**
>> + * A structure describing a DPAA2 device.
>> + */
>> +struct rte_dpaa2_device {
>> +	TAILQ_ENTRY(rte_dpaa2_device) next; /**< Next probed DPAA2 device. */
>> +	struct rte_device device;           /**< Inherit core device */
>> +	uint16_t dev_type;                  /**< Device Type */
>> +	uint16_t object_id;             /**< DPAA2 Object ID */
>> +	struct rte_intr_handle intr_handle; /**< Interrupt handle */
>> +	struct rte_dpaa2_driver *driver;    /**< Associated driver */
>> +};
>> +
>> +/**
>> + * A structure describing a DPAA2 driver.
>> + */
>> +struct rte_dpaa2_driver {
>> +	TAILQ_ENTRY(rte_dpaa2_driver) next; /**< Next in list. */
>> +	struct rte_driver driver;           /**< Inherit core driver. */
>> +	uint32_t drv_flags;                 /**< Flags contolling handling of device. */
>> +};
>> +
>> +/**
>> + * Register a DPAA2 driver.
>> + *
>> + * @param driver
>> + *   A pointer to a rte_dpaa2_driver structure describing the driver
>> + *   to be registered.
>> + */
>> +void rte_dpaa2_register(struct rte_dpaa2_driver *driver);
>> +
>> +/**
>> + * Unregister a DPAA2 driver.
>> + *
>> + * @param driver
>> + *   A pointer to a rte_dpaa2_driver structure describing the driver
>> + *   to be unregistered.
>> + */
>> +void rte_dpaa2_unregister(struct rte_dpaa2_driver *driver);
>> +
>> +/**
>> + *
>> + */
>> +int rte_dpaa2_probe(struct rte_driver *driver, struct rte_device *device);
>> +int rte_dpaa2_match(struct rte_driver *driver, struct rte_device *device);
>> +int rte_dpaa2_scan(struct rte_bus *bus);
>
> Shouldn't these functions be static?

agree, will fix it in v2
>
>> +
>> +/** Helper for DPAA2 device registration from driver (eth, crypto) instance */
>> +#define RTE_PMD_REGISTER_DPAA2(nm, dpaa2_drv) \
>> +RTE_INIT(dpaa2initfn_ ##nm); \
>> +static void dpaa2initfn_ ##nm(void) \
>> +{\
>> +	(dpaa2_drv).driver.name = RTE_STR(nm);\
>> +	rte_dpaa2_register(&dpaa2_drv); \
>> +} \
>> +RTE_PMD_EXPORT_NAME(nm, __COUNTER__)
>> +
>> +
>> +#ifdef __cplusplus
>> +}
>> +#endif
>> +
>> +#endif /* _RTE_DPAA2_H_ */
>> diff --git a/drivers/net/dpaa2/rte_pmd_dpaa2_version.map b/drivers/net/dpaa2/rte_pmd_dpaa2_version.map
>> new file mode 100644
>> index 0000000..31eca32
>> --- /dev/null
>> +++ b/drivers/net/dpaa2/rte_pmd_dpaa2_version.map
>> @@ -0,0 +1,4 @@
>> +DPDK_17.02 {
>> +
>> +	local: *;
>> +};
>> diff --git a/mk/rte.app.mk b/mk/rte.app.mk
>> index f75f0e2..9e1c17c 100644
>> --- a/mk/rte.app.mk
>> +++ b/mk/rte.app.mk
>> @@ -101,6 +101,7 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_CFGFILE)        += -lrte_cfgfile
>>
>>  _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_BOND)       += -lrte_pmd_bond
>>  _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_XENVIRT)    += -lrte_pmd_xenvirt -lxenstore
>> +_LDLIBS-$(CONFIG_RTE_LIBRTE_DPAA2_PMD)      += -lrte_pmd_dpaa2 -ldpaa2_mc -ldpaa2_qbman
>
> This should go within no shared library case (below), in a sorted manner
> please.
>
ok, will fix it in v2

> btw, for shared compilation, PMDs loaded dynamically, as plugins. For
> dpaa case, there will be multiple libraries, not if it will work with
> multiple -d params for each lib, it worth testing.
>

I will look into it.

>>
>>  ifeq ($(CONFIG_RTE_BUILD_SHARED_LIB),n)
>>  # plugins (link only if static libraries)
>>
>
>