From patchwork Thu Jun 15 08:58:38 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nipun Gupta X-Patchwork-Id: 25323 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id 453082C0B; Thu, 15 Jun 2017 10:59:54 +0200 (CEST) Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0064.outbound.protection.outlook.com [104.47.32.64]) by dpdk.org (Postfix) with ESMTP id 514422BC3 for ; Thu, 15 Jun 2017 10:59:50 +0200 (CEST) Received: from BN3PR03CA0109.namprd03.prod.outlook.com (10.174.66.27) by BY1PR0301MB1191.namprd03.prod.outlook.com (10.160.195.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1157.12; Thu, 15 Jun 2017 08:59:48 +0000 Received: from BL2FFO11FD043.protection.gbl (2a01:111:f400:7c09::190) by BN3PR03CA0109.outlook.office365.com (2603:10b6:400:4::27) 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; Thu, 15 Jun 2017 08:59:47 +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 BL2FFO11FD043.mail.protection.outlook.com (10.173.161.139) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.1157.12 via Frontend Transport; Thu, 15 Jun 2017 08:59:47 +0000 Received: from b27504-OptiPlex-790.ap.freescale.net (b27504-OptiPlex-790.ap.freescale.net [10.232.132.60]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id v5F8xWSW012830; Thu, 15 Jun 2017 01:59:44 -0700 From: Nipun Gupta To: CC: , , , , , , Nipun Gupta Date: Thu, 15 Jun 2017 14:28:38 +0530 Message-ID: <1497517136-11824-3-git-send-email-nipun.gupta@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1497517136-11824-1-git-send-email-nipun.gupta@nxp.com> References: <1495735361-4840-1-git-send-email-nipun.gupta@nxp.com> <1497517136-11824-1-git-send-email-nipun.gupta@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131419907876835866; (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)(39860400002)(39840400002)(39450400003)(39400400002)(39850400002)(39410400002)(39380400002)(2980300002)(1110001)(1109001)(339900001)(189002)(199003)(9170700003)(106466001)(5660300001)(305945005)(54906002)(2950100002)(53936002)(498600001)(6916009)(110136004)(38730400002)(6666003)(85426001)(2906002)(104016004)(50226002)(189998001)(81166006)(50986999)(36756003)(76176999)(77096006)(50466002)(105606002)(8656002)(8936002)(48376002)(33646002)(2351001)(8676002)(5003940100001)(47776003)(575784001)(4326008)(356003)(86362001)(41533002); DIR:OUT; SFP:1101; SCL:1; SRVR:BY1PR0301MB1191; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; MLV:ovrnspm; MX:1; A:1; PTR:InfoDomainNonexistent; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BL2FFO11FD043; 1:czWukR7HnbDrYa/ALsRXIxcevSZ4uwnKG5hV9OjIS2Yr5IHKqmZNanMjrIcqHCCziEFHtyO887ZRGx0GPLfcoNyaAsZi9BqMMtaiIJ1UOsc/keF1wgqNptvO9xXyq1R/vIqPE2qkH4/VSxXizbKIhwcfS0RRfNqTxeiYi213/o4o4WlCxyNODBQ97vidRnPClnwPbRNNeRIeoYR7nqoVgAIK7XOzxI42lcE95O4030hR1prA06SxerLvOFDp12LYJ0PKprwnq1pjDCspyUg8UMLYhCZlwWXhkW2U1JfNjORN8DC+q2IPwze4hSjW5G8ApWdqQbeFLoevQmVrGXTSUK4yeng5O+113SIVFEmtYEGhcIiGiXTfUp7D2P7bmQxvdjfhklDu+qy1DryxV9QZivGMjnzs7nnWb34KUrwD0XyEuu+wEy2gVoWhe0SnYgS3qFZUb28tkZE9RWZLyucXp+nyN1pYeUwBDrDHEK7HEjW+ajF0NZDpG+HTYK0NCHXKeZnyQJM6FRsfmTNjPElgxfyzG0pUlBUOEIx/KIuzPYK86WLr1fJSBgzZ+hNiBWKBQ6UKTz6nigx9ftTOqJFMYAo8O9Ju/V7+8vy411VCDpv5f1UOH5dxKN+Gr7Hc1kcZdyQaVOj3IYZLNBSoR4TZwwtIAvayzAVEOnUEJf7tYZajaJG7FM+NfW6gdibuDD3WWRS2voL4hjSW3E4eZ7OyB8v9fAPLgFsqUcpnTXANA+I= MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BY1PR0301MB1191: X-MS-Office365-Filtering-Correlation-Id: b2ac73b8-5115-4c27-d21a-08d4b3ccdfe0 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(201703131430075)(201703131517081); SRVR:BY1PR0301MB1191; X-Microsoft-Exchange-Diagnostics: 1; BY1PR0301MB1191; 3:B4UKLhHTVNE7U74C4j3rIxG3k7lu2eR/LySbIxTuc1H+6jwzpf1XXqDgDKlqgZcB/PLMje+f8cV44TwhQ7TcxOMRYguWtOzGge9yO9s6W0BNYDRjgJslI/WhQBrAifW7tjVerctp6SN6nPFG34lcp1G1ghvlOm4jEm5s/LdLIavo2cDEKuFrkGVfidXN8G3lrQHWSWyfmvMUoU+WgtYJIU4FxooC+VkIDaYJ1Y/IZqPFmRJ074vGE0kVrkzuj9OrFii1BWvACgvoL5pGiYOgq3oQc/UPuQwXTQA8vASxplTBGsT8mZBLoypa//hbEQk2J/qQB51iFYhKGKqMtfGXE15pK7Y3rEnasGMC/dUlTwNMHpS/Ja92j4qq/0t7PptPzVaG1kHfwy6ZninNaYd8xASiVdlisme6kGvB2MfuyJer9xWtCSLNAHB88h9BXH+W; 25:aKgUvjQWaEqPwysFxWt8C72dulNI72ohaP21F5V1ELkGuSUbmAkHgi9Csy9c/QbYsvr93S/hukhaCyjJoZhOmeSQbGZqV/gas0p0o0dpG2FF/FNoFAwybV3DqsBlOeqzxgJjeBJyRmwOMnv70njDCvk58r50YTFYwOIO9fJknfX3SEUpZo6e8OQzuCHUoRbC938GzTX5B86qBMnP2Bw7Hzuih/pXjpB4/iqGJZGSSsV8nAcGOop3jwAODHyqG7ODzedH5Ra1oN8SUc83HSNJEuhdD9b0M0epbd2pd1299c+o+AXCLFSJOowuwAX5BYlTQYBx1I2XkSGogDgq56n9i+XbZZtZHPgMkFWohTRPAPwBXKsjb6Pm+hrJgFuP89ew+lHGlqPOP1ImQyQi4ygg4BUJnnEPHbGibIauU4uLFrprrgNUXq7i7OwUCjlny7IYf3AdhltJP29vXj2oHbnuvfl1j0MPV7Mq0imDVh6tXEE= X-Microsoft-Exchange-Diagnostics: 1; BY1PR0301MB1191; 31:nbB09Av2s5HvQYWTwFzYrj9Zw88UxiksImJyCCno9hK/LhxrBecp+f4OcxoyPsu6YlkeMzKBNG8y3ljNEa0epZJx7sfVyzrC6a2ihJC2yIKaDqdd/0jszbr9t/HfnwQVarFlwEzb3NK3jwCV6TPWxy9b41dnxmCGfc2/jk0MwdPGyHDP+Fn5uYLoYIgFovfxMHoOArGgcEslWb01AjurCy9h5nbYtFmxHoHOgqV0+7TC8zMscrgxllkZDSIV95eT60OjVpY91woP+jSxtZw6AA== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); 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)(3002001)(10201501046)(100000703101)(100105400095)(6055026)(6096035)(20161123561025)(20161123559100)(20161123565025)(201703131430075)(201703131441075)(201703131448075)(201703131433075)(201703161259150)(20161123556025)(20161123563025)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BY1PR0301MB1191; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(400006)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BY1PR0301MB1191; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BY1PR0301MB1191; 4:RfEw1o376pzprkiS7ijdxI4Fs09p6Ba2TqOsbx/W?= I+5dUIvpgXGCsAkcQr70ONRQeocth122B8YwPWs5Z3dD/p3DmG50dHagnOX+0JBx+U01y6mEWACZPjHUW6JB3P9lqr5Y3DXMLe4OXPu1GDJAaQsnBPg4COvZA4aY54slRfZXhKFMxBC6iQ0DAbzJNwk0/BNq4w6htUTLoFX5+rdKJuyQT0xedhyu2xqb9eqjWHWwk1vcbzK+kIx3K/bA7+oL1nBXmMH5sotI9GvcKw1odwh8CE0u6TiKtKidBGE58oEoaBCpKsH27AabM4tpxGgpVdG1NocwI8eWmUTkeLkeMgw807zQ0VgyoNX3Gk3EJYRG00VrjsAdGQKtNjDBk9zU0CaYrt+6Dn5zwh9dOFvKATdIDv3AV3g+oYtdgfLpelbCcO60ajdTFmCF9s+d3Uda6zPN7UWhn29eYsn5+qbngfMyPLV54H3vufCKR/HwkRRspGLHPrio1vis28txt3ac0le7SKGiVMYqwwxyrlkXaOamX6aKVK/30pzO1t8v6FBQl3DsOVOhDDZB2HEjRgSkjMazfvkuNaFKwvUkRYsG9mTFhul/Lq/oKeNlfW6kgKXlk82pfcSgzbsnKx63VS0bXuF5+5FhbEVwBf5SFUZzhKzmV9QcCpudlRRjF80B3z1jjNlzOS6UckDSFrkAQITCEhe0DNQZMHdT+TAJew7ByhkPhe2FVc3GbEbZxk6JFbLgK7XRFYVkF0IsgDQiTrRsNDjBrFMqD94CudCQv8wB1UoC+0gRM3qGvaEDGK1ODB1BYWWpUwgud9e60szcGwbY8Os66DscCOQ0fqQyHFi27l1oUBSJlk5I5mrHy0obVmkpQk8BN0pCWElp2LGTtVOiV8VhJvhoIfpyhL2O8vNJjvt+jd2S3FnSYG0ESua3gPO4m3iGPB1E7zFcWNdlEbuzgGQCPLPVc+iGlpyXgg59OqYTIrnJo7hptXp2TpnIZbi57XZIXFi0psYdWPA8jxxp3CNf1U8kXewfuuInHAhx1iSQeqqwrs3vkcDRmpS3pnZ1toaXCPS0yldsfSwsA6WyREHWThEGkHZn9xP/78GpyQj/V5ea+nwDKVriwXZJ4YBZhWBmIuM3qky8hiBSQyRLi7lDJnT27x334ao/8QvJ1sbtBoD/wE6C2SIQErOgikKHVoDC2mHNnYga0aF6oMH00KJOlmztttlj4LaRGCMpcIYSAgKCtZTl6j4JRGwU9GKF8AGeWFig41UmXZjIPlGh X-Forefront-PRVS: 0339F89554 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BY1PR0301MB1191; 23:GLoPnhh6qHklvaRnqeLPwwPoDQoEukAieGIE1Cc?= wgY4posf4RvZDc+tse6tLH1Hv0feHDlSIothR4mVIWZNwVLhbRcVfRBGphi20iVORvWKbLRnRjIdaAq1QH+pmPklJAJnsF2I+kFHkEdKjGNzG8d9rVZ+I5PzVzGBKOavTp3bptmd7GNmK5sro/VbDY0hSr3cwfueVLvQIYAVbqgmHzgJcGhAPlXOtH1TYmE7FTuHAsiyTXr1OkxhEyhUMTT6BRX2b4w0MuPH3naS+oD+DBT7pQzituAbAYPuXIYhqFxsnv2Gd67tkR3t12/a07AxQY7Yx5GDgg5Nwhnvt7dS+/9OR7kSkF8ZoaTtkqJUNTK1hbxq6DhznpPISAT8vhQtpkcnqOVQv+SuKg6Zv4g+MsGtuV6Gxie/liIUxrwQoVxb4bFry+3IKCrBZ1x6tMlgVftf1cUnTREUkhe048vS4UotMSbD1LRZ3UbCMCZLprVp02PnrEQ1B8ofnuGWHHFxliAKnzsNTYPcuJaLHMzbrFKf+lkRo7qHwhrLZs/MsaE9X8zbU7O3AwA7E2YiiA/rS1shwxXpov66v1YG2IUHQxjogK4EYVEcMeXq3/HWYx29r47Wd6elkggJD2snbX6P1ulteXzZg/3zUKvNnfxCca8oWMaerhDPRSZ25aPNohW2rjQvU2CozRDY7ZtAP7emooGMOdS4fWBc+7eOBmQ+xpohPecIOwEp3hmsPaolUvgzmHY5rbdlGW8qmgVin4Jsaky8DtkuRvgR/C8w0Zg+Ey6DSIPi/PPOx5Uf2A2kZnmD4gxi4TSzoV7Wh0rfzUbqE0i+Igq28sI2yBZfn6TvklxTqi6NksCTBeHwrXvl3E8SAlQ+/GH0SxR6BLwbkfl7zOjggNty1BkPSz3TdPC3xL7UYpT4xPml7bn2lE49+VOchyo/BYaGip2O5g65Jt6If9uK57TiqK8S5sIwE0d+SJW8dO48V7qecT+hqorDx0DckABKo8mtDaOnoEqaXegWTg7mzglSjr3sp3VYR43NJ6GHVG7qzPOYE4Pi+GJzFMcq727lY1n6QKLHGmwF+oI7CjhdAG2sUSbnIKOF/MmUSsIsGI7Oh6kBFAWQnSciuYuW2+jbUC1ji7FTHDhbS7bJdDkrE6mW2Kv81s0kH1Sp3iAv0e8qZ/mh+m3rTYprGry65yZOSs4Xon3lcx8udztfJdTnFXpVJZWvQYjAn9gCGabgI2BvocIuI5g31NnQgZ6sjRRMfXmJX5B/oJz9Ho637U0v9WHf8ay6wmCxQW45yFg== X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BY1PR0301MB1191; 6:deJ7oBHM/mUeTqfPS6dnKQCubmcCmXxfYXWxsoGf?= 9kwe3eK97ovXftKO2z0rN884yxXeCr/Q91LL7ApYTQdw23H64MdOINJ4+9Ag47uPcJHVFrTLTp1gL/vJJAhfb65CAVOs+tYnlcBiiyUGloWs4Dm4v7zcJn96G5VUaAyZ+Kh0s/Q480nITjlqVc9To32BuKnSfYdMb0TaBFH2pwMi6R38y4qYOzokWnQCjMn6BvtEDVRbKQIMq6vOCIGvGOS9Ka01FdhwDwPVNY153Jl7MptWs36uhPXrQSQ7xhRsD5jswXnJhmsPGTeziq2MN1yx5wEl6FEKxofocGjAdCkvXHC1qBWS1i6UnF9rHxkTBoQgI6V/sMyHLE1M3KwkSUHM6F6/zsOxtR8aB2GxcsaA1KitRaPoLtChxKisC7sCB+lxy2P3rBroXevfa8gUqCzn+uoqgmREp6cpJ5xrH7xjp3gNQzvKSB3kb59hY9kyyre0suEbv8oHDFQXHge8aeOd2Gjt+GIDBd6IoMZ33iifj7AEIJ09PyxaqJuCDYU+FSja23M9C4IKK2az/+/dmyTDkzxjLuSatESlXYZW6OZ+387Eh+jZNawTxbhoRvwTffvQkUXUAV/FrjcNgrW29KVshi7ICzmWXzimiVu8RJGZAAdC3/DLMoanFlV0mufVn+jzBP+sfJVb0oX2gSIFbi+NKvOq4oZ83u5Gw9JIrUOljbyeEC6DiD/RRrTF3XxnPu0aAE1SBaxPEbmuVod31/2JvNZbIC0iR64XdIpaCVQZVa3mDOCB/E9yZG4COR9IIvZiI/ZSb+Mcz7NaKEwnSyCxkDZrNaM2Xuhtn5CG7exLx239JGkEnfL6ITUrwkzB8Rj5mAi3Vmqzh5cnYkoOVqCd4eugscAScH42KT8EzSb4x93+ypQxmZ2GkpPFfV3eSKw05U7RbFda6hKnCQ+ZakpNbU5t12vB2blNp+LIx1hjhg== X-Microsoft-Exchange-Diagnostics: 1; BY1PR0301MB1191; 5:6wG1VVPTPK6TxpnaIwLmzE7uBz4w2HnMosT7UyjwfUURxfwTLBByklKNFjms3wkw9h8yhTHcQ5Oq0VMnpf+ULl5T3c+/qfwnmqj7KQ7d7TTTExGPAORqI68jlaZ+t+yTB3EpYFZbunLryuEXJ333F1PvEIh2rtYdnqGk+cA7IkiKGRUZb3w0VPTaniTt/CJlrWCeZsyUFJTPrz2tIRweTPj/Qr90YJCGMibFQQDaRX6kSwXoFOKfUUeRKoeecSBKbxfVsX85rGS0Y7HrLhJ9NFL6QkEroW9XYSFLBhwBqNxzmjxG7Tjl9OmPBO3sXJrmjqY/Fq2X0SkM5o4xQx4LXwUdVKXfcmPti5inJxMq87+GvLLk2fJs2LCnn0T23Zawbm2nTvV9sDn6TcU1BjLTDsCtxiVgt9jrBC4RwGgsIb7zeYVgVxfsLDXRlaVB/i0DdqVHVq+wkMx1no7XibXrtm4OFSzUvprkq1mTmgaxnjpIB8hvo7upw3tfn7N5P3IiuDIiflQw2XYIeXqHgV6KwA==; 24:8hFcbOmVqOxXPgwJg9YSYd6ocHiTb9KSjPJC4EjB9O/JoxjHYIwBFZLdpI6bxqaQB3DwLpEt2qpdUul6TIf/xDPeZOAguXbucDXGIQIlk4M= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BY1PR0301MB1191; 7:pZ+/y9Vlz+tPUSc/NwN0vxXG4f3162UsXhyykPcziJAovM5bR3KcRxE+BM8bj4Pb8fnqNR3qosSqom2XMehMk94anzxs0ss1IFy+bIMR4HnONha+kdW7x2w2zcMju5OdoI9XcLCWpPG0ExDw8u4oycVtbp5+W902OlFWqFxCumAh4/LawLLWzzzQZoCD3R9C8+yD2M/WtuHipKD9gSvUSK3VUxmk7uaRTZeZZlc5zYGGQH2PQ4L3qZqS5T1GeOjCxHHIzFuXcJlmFNKg9LY6G8VQ5sy7aTVCEDvOiXXl1bWa944yEwzTOqS07BnKtGaJAJoeWLogfzfwYgc8hRnFB4X9z1AWlS8VXaNV/t3cwA8SukjOQ5HfpEaIVCWAVTOp2jnQ7Snwqxj4nU4uZ90+q+xRYPxWmrm4FbQpqNhZ0ORiELTdUwjY5hcGq36ab6uDZoMJqfBseArT8UycjEXVRZQCOx7pWEFkZKHkhIoNgl6yqMbU73Gatnb/znUjdWzv0Gc6ku5sGV1KTUwvY+RWh5vb/+GQyHvVhpy/Qd+4Fv6/ofdLf3mBlIPTa0ufxMZt5uJdBVVohREpn6c/48Ozg9WvUlGaW79BtFcNVDLFGuj+IS0bz2yzGfiMA6+oE46vuJ3JZ1GFy0DfRb2x+u29FaF4ZX0HpFzP1QqXhfB74DOhHFQplZt8LR2EriUKZJvqKrsJ/IHkSwICMzoY7hbVbW/L6HH+O1ZvofO1kC/bI4T/j4bnITxUEqimNWUDFSmLb3oezsI8t2Y3C/O6qeNsD+kqT74c1q92QAqrjpmxblQ= X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2017 08:59:47.5119 (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: BY1PR0301MB1191 Subject: [dpdk-dev] [PATCH 02/20 v2] bus/fslmc: generic framework for mc object creation 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" From: Hemant Agrawal There are muliple help mc object, which are not an independent device, but they are required for dpaa2 based devices. This framework allows registration and handling of all such mc devices. Signed-off-by: Hemant Agrawal Signed-off-by: Nipun Gupta --- drivers/bus/fslmc/fslmc_vfio.c | 11 +++++++++ drivers/bus/fslmc/fslmc_vfio.h | 37 +++++++++++++++++++++++++++++ drivers/bus/fslmc/rte_bus_fslmc_version.map | 6 +++++ 3 files changed, 54 insertions(+) diff --git a/drivers/bus/fslmc/fslmc_vfio.c b/drivers/bus/fslmc/fslmc_vfio.c index 5d4ac67..b9ea358 100644 --- a/drivers/bus/fslmc/fslmc_vfio.c +++ b/drivers/bus/fslmc/fslmc_vfio.c @@ -80,6 +80,17 @@ void *(*rte_mcp_ptr_list); static uint32_t mcp_id; static int is_dma_done; +static struct rte_fslmc_object_list fslmc_obj_list = + TAILQ_HEAD_INITIALIZER(fslmc_obj_list); + +/*register a fslmc bus based dpaa2 driver */ +void +rte_fslmc_object_register(struct rte_dpaa2_object *object) +{ + RTE_VERIFY(object); + + TAILQ_INSERT_TAIL(&fslmc_obj_list, object, next); +} static int vfio_connect_container(struct fslmc_vfio_group *vfio_group) { diff --git a/drivers/bus/fslmc/fslmc_vfio.h b/drivers/bus/fslmc/fslmc_vfio.h index 53dd0b7..58b3acd 100644 --- a/drivers/bus/fslmc/fslmc_vfio.h +++ b/drivers/bus/fslmc/fslmc_vfio.h @@ -63,6 +63,24 @@ struct fslmc_vfio_group *group_list[VFIO_MAX_GRP]; } fslmc_vfio_container; +struct rte_dpaa2_object; + +TAILQ_HEAD(rte_fslmc_object_list, rte_dpaa2_object); + +typedef int (*rte_fslmc_obj_create_t)(struct fslmc_vfio_device *vdev, + struct vfio_device_info *obj_info, + int object_id); + +/** + * A structure describing a DPAA2 driver. + */ +struct rte_dpaa2_object { + TAILQ_ENTRY(rte_dpaa2_object) next; /**< Next in list. */ + const char *name; /**< Name of Object. */ + uint16_t object_id; /**< DPAA2 Object ID */ + rte_fslmc_obj_create_t create; +}; + int vfio_dmamap_mem_region( uint64_t vaddr, uint64_t iova, @@ -79,4 +97,23 @@ int dpaa2_create_dpio_device(struct fslmc_vfio_device *vdev, int dpaa2_create_dpbp_device(int dpbp_id); +/** + * Register a DPAA2 MC Object driver. + * + * @param mc_object + * A pointer to a rte_dpaa_object structure describing the mc object + * to be registered. + */ +void rte_fslmc_object_register(struct rte_dpaa2_object *object); + +/** Helper for DPAA2 object registration */ +#define RTE_PMD_REGISTER_DPAA2_OBJECT(nm, dpaa2_obj) \ +RTE_INIT(dpaa2objinitfn_ ##nm); \ +static void dpaa2objinitfn_ ##nm(void) \ +{\ + (dpaa2_obj).name = RTE_STR(nm);\ + rte_fslmc_object_register(&dpaa2_obj); \ +} \ +RTE_PMD_EXPORT_NAME(nm, __COUNTER__) + #endif /* _FSLMC_VFIO_H_ */ diff --git a/drivers/bus/fslmc/rte_bus_fslmc_version.map b/drivers/bus/fslmc/rte_bus_fslmc_version.map index 2db0fce..4c03e67 100644 --- a/drivers/bus/fslmc/rte_bus_fslmc_version.map +++ b/drivers/bus/fslmc/rte_bus_fslmc_version.map @@ -49,3 +49,9 @@ DPDK_17.05 { local: *; }; + +DPDK_17.08 { + global: + + rte_fslmc_object_register; +} DPDK_17.05;