From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <shreyansh.jain@nxp.com>
Received: from na01-by2-obe.outbound.protection.outlook.com
 (mail-by2on0059.outbound.protection.outlook.com [207.46.100.59])
 by dpdk.org (Postfix) with ESMTP id 2FF6AC31C
 for <dev@dpdk.org>; Wed, 22 Jun 2016 11:06:12 +0200 (CEST)
Received: from BLUPR0301CA0042.namprd03.prod.outlook.com (10.162.113.180) by
 BY2PR0301MB1624.namprd03.prod.outlook.com (10.163.28.30) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id
 15.1.523.12; Wed, 22 Jun 2016 09:06:10 +0000
Received: from BL2FFO11OLC010.protection.gbl (2a01:111:f400:7c09::110) by
 BLUPR0301CA0042.outlook.office365.com (2a01:111:e400:5259::52) with Microsoft
 SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.523.12 via
 Frontend Transport; Wed, 22 Jun 2016 09:06:11 +0000
Authentication-Results: spf=fail (sender IP is 192.88.158.2)
 smtp.mailfrom=nxp.com; 6wind.com; dkim=none (message not signed)
 header.d=none;6wind.com; dmarc=none action=none header.from=nxp.com;
Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not
 designate 192.88.158.2 as permitted sender) receiver=protection.outlook.com;
 client-ip=192.88.158.2; helo=az84smr01.freescale.net;
Received: from az84smr01.freescale.net (192.88.158.2) by
 BL2FFO11OLC010.mail.protection.outlook.com (10.173.160.154) with Microsoft
 SMTP Server (TLS) id 15.1.517.7 via Frontend Transport; Wed, 22 Jun 2016
 09:06:10 +0000
Received: from Tophie.ap.freescale.net (Tophie.ap.freescale.net
 [10.232.14.199])
 by az84smr01.freescale.net (8.14.3/8.14.0) with ESMTP id u5M9663Z022009;
 Wed, 22 Jun 2016 02:06:07 -0700
From: Shreyansh Jain <shreyansh.jain@nxp.com>
To: <dev@dpdk.org>
CC: <viktorin@rehivetech.com>, <thomas.monjalon@6wind.com>
Date: Wed, 22 Jun 2016 14:36:19 +0530
Message-ID: <1466586396-22618-1-git-send-email-shreyansh.jain@nxp.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1466510566-9240-1-git-send-email-shreyansh.jain@nxp.com>
References: <1466510566-9240-1-git-send-email-shreyansh.jain@nxp.com>
X-EOPAttributedMessage: 0
X-Matching-Connectors: 131110599706066969;
 (91ab9b29-cfa4-454e-5278-08d120cd25b8); ()
X-Forefront-Antispam-Report: CIP:192.88.158.2; IPV:NLI; CTRY:US; EFV:NLI;
 SFV:NSPM;
 SFS:(10009020)(6009001)(7916002)(2980300002)(1110001)(1109001)(339900001)(189002)(199003)(4326007)(2950100001)(189998001)(5003940100001)(104016004)(15975445007)(68736007)(6806005)(19580395003)(33646002)(2906002)(110136002)(77096005)(50226002)(586003)(8936002)(69596002)(97736004)(5890100001)(85426001)(86362001)(81166006)(47776003)(8676002)(2351001)(229853001)(105606002)(48376002)(7846002)(106466001)(50466002)(81156014)(356003)(36756003)(76176999)(92566002)(15395725005)(50986999)(87936001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:BY2PR0301MB1624; H:az84smr01.freescale.net;
 FPR:; SPF:Fail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; 
X-Microsoft-Exchange-Diagnostics: 1; BL2FFO11OLC010;
 1:NryUz7mctZFrKe1L+sR8dRcy/2jwH2JGhTGunT+8nYxGeZu0wBBeMow0dECMvvzmfVuR+s1O5Y5d/XybkVMqj+Xbw2aEzW8XGa3D/BKFo0rxKE7jCFX8JDD3wYzsCPGGlWi5vl24HKayK3xjPssCJlsjCCnNuNmmv/9QOrPKSzah2oGZ579IovDc5AHb2q0SH/eWrLyw8qoj44gFgTw7kgVPVrqJ2gkpHbMesKX6vs3nHLbJDOQA9MX9yHp+mIw2UaQ+HT1qKNfCrqOGawmaoXePcrkfyqEv18z4vYKemkRzctDSlZQkajJ83+iKOIDtVh/O/7Hjsdbo/JkXJyRzTeQDfFM9BcCmXmj1b5si7yA0PzuSdsLIDm7lGupdFVHC0xcMRRd+AlQUrg8134ydsMHybxAqSycJ8yOpz4beToCk9J7/Su34Ap/fQeID2BzoAltfawTO+F/pp43d4j+VNifpMPabR/Z1Wsh3xpIlxl9udac3bf2IxkpLTPq4U9rzHODETU2mD/3z08cDcTEXJ/hR7p0bUDItj8goVYKJMfKUGX6QSQ5Z5PHOtWYyurGZc8lnGWl9yXcM5Ej6s4jetw==
MIME-Version: 1.0
Content-Type: text/plain
X-MS-Office365-Filtering-Correlation-Id: e62e94ed-b305-4a0b-c019-08d39a7c743b
X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB1624;
 2:8dyL2yC4pZ2gPIDee0dJrQ27cTn2HHxBaIvDcyVM93uZ2vfqmE8Fj5sr1oSPlaxCgGm9gnYu4OeUQ/nT48R7DB/I1jZlWEpaTSN/k3pqOeoIGt+bRJxWgbBPRoSYPFYZQeuOuvGEyqMySq5MEF54YEZaVWYwUdp+aaau0z62KXbFnmtgJSf4HNj1DdYIqahK;
 3:iW1C1VFbwh3HvcRVoLGI5Qy06EheWNfgoeQOVisoDOrrFkGJjtQk9Fl3JhCo1HiT9DS1hImuAwVNPaQi0GhgIyinVOLzrlxlqAyAHqvSkri+m4chPXpTGs74ucfkPjx+J9taQnTo/DeUnk/Fab3xO9RYDDHAvyyw+61vneyMlV7k8uT3EFQBJbyKKygeEmfEt60Ju+RVKo0/8cX9DzxGoBW0nd9fNT9p3ic29fpX720=;
 25:JqC5gHk2aIFy3BsuqIDhQSFOMP9+wKlhEtoZiP1EONbbowgi3kFqY3FREc5AgfnvpJGiYVqEwz60mzQyeYWwyrLvwxV2u4XuzG/LxlaKSMiwulluwfNZZPfDZIDw7htrnv3cM4X6Ensq4tQrMriIRjxpVUssyQI6j5TBW26thTqSRyUvr6QK4U3nFMMgM127LpC9NXe4DJm5dkGVYyz8O+JBk495abDT47ZsFjhbO1KvrijBp2NkjkTWrfU2FzaSGU7ajtf/A0Ez4W+CyvD3zTIgQjmknF9cNeVyMqP5HiPg/zDQn8rvL77AzuKdtsjHff/kThl6mbOpHMWFo2RckRYNLbTvHMOY/XuIrkhvqAuKDtrYcabiv7qJj8AvxU8PTNBwjx7m1DLZidp0MCKPoUi6erR3PDab5T6y+f9VQKU=
X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY2PR0301MB1624;
X-Microsoft-Antispam-PRVS: <BY2PR0301MB1624FE90AB619EB723E1F7B8902C0@BY2PR0301MB1624.namprd03.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(601004)(2401047)(5005006)(8121501046)(13024025)(13018025)(13017025)(13023025)(13015025)(3002001)(10201501046)(6055026);
 SRVR:BY2PR0301MB1624; BCL:0; PCL:0; RULEID:(400006); SRVR:BY2PR0301MB1624; 
X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB1624;
 4:vrRgXnlMH78Dc/GchUOSudqE19uqybHvlGAYhQIG60x8imXR4G8bf3z9a/23LCiXcC5qnEISaHyv6CNcLoN/rfMyklrfGnBpL6ac3sjofBNECGebAS0sTWViksKG0X655aTK+mhzMRGzP3zgf7fN7Y2hO5Ie8cW6a+xpn676QbRcr2VA+BV50YisP7Ga5B3QorZhwS/04F83089s+KQyidi3x8nZHzhoh8MulmoTQuUx+hnH+S/u+913W8HEL8dLobYvwKZnMTtQ93noZtt5B4Nen+BFYYSDL2TlZPXWI9F/FKAx011YWaoRwAbFIU5MAjFZ1NY1VN4JRCC9IIzeQwGWceQfMnzf+JNoTrlY502fQVm7i/4LzgNnBz2eVlWV96ocVWlyeLitK+eNGc4VY5o2D0+cMsU4Nf0ZdkLSxSHT1M2Ad9+HfGdw+Up9cyZBLbvGL9QtdeOwT3X91Z1bVndFn0f1bIDtHn3yxsyeJl0=
X-Forefront-PRVS: 0981815F2F
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BY2PR0301MB1624;
 23:4tA02vvUMUgBAUHftEfikcxWbsxBd1qXlslPMJd?=
 =?us-ascii?Q?H8x8vB59nXULQNNp9HC0ROexUcbA3KrQUNCYZkur6+JcHAlOxBE/DfmPJxnp?=
 =?us-ascii?Q?waeD3DH0c8dA2scl3iyZRczuj2Kt8EXDsP6fbs3Ja6QwvNK99QqtdRjQqZQf?=
 =?us-ascii?Q?DJQK0mDSB8znKntHr5VQ7W/+k2E7abTTQGUs7XMrOO2jijZjSUTZDMadP1Km?=
 =?us-ascii?Q?NqnbtMLpPNvu8MMaufIi+jorUBpMH8P/Gl6JIby7o4V+P7vrwQRlUZ97b0SO?=
 =?us-ascii?Q?Fz9xdyEmRP3Q8WMT8gtzKpqDSIB2PWv+MjMTFQa/yWIXTihB0mf2jAR1Wh39?=
 =?us-ascii?Q?CHdz0+nS9g6ghjhNlsULqrsAQDBbLpdIHmNf3MXop3yoysuSBKgMQvL4pURe?=
 =?us-ascii?Q?ri3rWlUYYlrt5GGqzJVXh7+Ns1ufbVrdYaG5SP9iumbPUXC+d4xL0oBNLtJ2?=
 =?us-ascii?Q?rhPk5QxRIzSJqB0JtYil2PdnxRe8fZsknHSov2JgleqFQE389vIDiT9mbpTq?=
 =?us-ascii?Q?S4DHT+6NNPY21KwfOhSsX0OZhpKRdcAFxY0ZzVlzKLrsjI9Vfw6Ng+A69w9G?=
 =?us-ascii?Q?0GA+VBNNXC8n4NXxYjP64mWIU2exJrC4fZYoUmvhCtNTJZIhtzzyRpRYVrbW?=
 =?us-ascii?Q?uomdOGhRostti+BoBn+KU33AU25qjRkY9DXPuww2j32TV9bdAOz1PjDREmlo?=
 =?us-ascii?Q?VyD8lcK0T44sGTgW2P8bQXXtm530zc2wLXRqssEQuzQMfYSaBle03JDpgb5N?=
 =?us-ascii?Q?KU71GCtNxZCfn8jdRLylFis5rTfH7qHCU/69so4qpPP5VyhNDxXGho9ynAt8?=
 =?us-ascii?Q?k3H6DbSpDegnX8yuyd4bFHGEL6ngBQ0YSGQOgVFzw0Dsp7TRnbAPj3dHqb4j?=
 =?us-ascii?Q?lxodP2YOhg3Zm/u2KqPF5jxLqzwkQ4uAXZ7QI/Q0kPywToNqLoo9h1S0CfGf?=
 =?us-ascii?Q?ggmlayfn7ElxQ4Q/wpHw7TFcUuc6dWyN1r4F/zt1u+1auE1MJ/36cpFwvHZn?=
 =?us-ascii?Q?AJKN1K5d2UdM5mvBMyltAcMf1vr+RPa/qVlZqyUwFuZE6XwsNeqFbllxJkYA?=
 =?us-ascii?Q?tZBpeWqsbZwRLyTZIs+M47jrB7hgli3/to+Zkvfp7hoYN1lQAAtreLfwaN9k?=
 =?us-ascii?Q?ftL+/+ZIab6CtZzO/o1bc0brEJ7YzmTYO?=
X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB1624;
 6:n01vKtz5qFy3MnfUx5K+3fIiN1TCqO8Ct2nmM8iMrbMNqprYaYS5RVxt/WinlEBQ5YRxmyAp4+LXD9OGE5ps75OK6XpiMsWWUAjfT21a1sSTHUTQrq8uDexOfiTfwBC9WKT+NNoVFzozWp2iOeNW8bDBVXuXYdPYITjr0B5BC8aR+DasCQLzMg8yJJdXtTNDh4PH38fnI6lboiujCK8Ya87qCrQeAg2LJNZkjspYQky2f9dv9dPIRBooTbr6LQ6FH1A+LTsAYhaW2OtdMx6TSMZgtsTxk6aJEmFNhFE5JU0/JgE5uVwArzTSqjj5iAjC;
 5:YsQXE58qVhbvihtASdCKYvTAhhQTcuT3KsxBvoWGi1fGaTa53eVPezlXxDqPsaqf+t0KMpDq7FYhHiIihP+RhMHWcHRnVtnJkGdAOudv5M3F1ogRhv68oyEoVmPfXGxNqJbiGtyrdNJifbXPQFhuZxCTxdNVWKwAW4CujpIkeNM=;
 24:+pe5VwKxwjJdW519PrHc205w7Gh12dHvnteOaN7NmAsNR4RwvTI9tQH7DwBLUqFf1VaWBV+7MR3DWKKQpSn2KWMn0QcE79sVBFfvqanBP8A=;
 7:WsMNxCNJ3dshvDN5fjg+3e51ib6REHHd2dH8K8H2nKwx5R3Q5A4Hxbj7GQPjQrYc0B94iwWMB6NBym115ENuIRJUs3WlKJmECqsV9Tv5FIfLDjYrQS8OxNrTYdzrJUaStH/JQoy3OYnslH15nA8L5XbnKGMIkT7grp7i19Yoz5sx1TVYru+uEVhDjET6Vr1N5/S3+9nAKjOqwrlunDNF68XUh8z38cAab8e3UsUIBoRU+9mZUnzwWDW3mEG7Ht+p5sJ5jhRFBq9dtTQKEoHSbA==
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2016 09:06:10.3726 (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.158.2];
 Helo=[az84smr01.freescale.net]
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY2PR0301MB1624
Subject: [dpdk-dev] [PATCH v5 00/17] Prepare for rte_device / rte_driver
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: patches and discussions about DPDK <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, 22 Jun 2016 09:06:12 -0000

* Original patch series is from David Marchand [1], [2].
* Cover letter text has been modified to make it author agnostic

David created the original patchset based on the discussions on list [3].
Being a large piece of work, this patchset introduces first level of changes
for generalizing the driver-device relationship for supporting hotplug.

Pending work, as per discussions in thread [3]:
- Heirarchical relationship between rte_driver/device, pci_*, crypto_*
- Cleaner device init/deinit methods (probably from rte_driver onwards)
- Moving generic flags/fields from pci_* structure to rte_* structure
- Removing dependency on devargs for pdev/vdev distinction
- Device/Driver lists: discussion and decision on separate or unified lists

This patchset is based on master (34d279)

Changes since v4:
- Fix compilation issue after rebase on HEAD (913154e) in previous series
- Retain rte_eth_dev_get_port_by_name and rte_eth_dev_get_name_by_port which
  were removed by previous patchset. These are being used by pdump library

Changes since v3:
- rebase over HEAD (913154e)
- Update arguments to RTE_EAL_PCI_REGISTER macro as per Jan's suggestion
- modify qede driver to use RTE_EAL_PCI_REGISTER
- Argument check in hotplug functions

Changes since v2:
- rebase over HEAD (d76c193)
- Move SYSFS_PCI_DRIVERS macro to rte_pci.h to avoid compilation issue

Changes since v1:
- rebased on HEAD, new drivers should be okay
- patches have been split into smaller pieces
- RTE_INIT macro has been added, but in the end, I am not sure it is useful
- device type has been removed from ethdev, as it was used only by hotplug
- getting rid of pmd type in eal patch (patch 5 of initial series) has been
  dropped for now, we can do this once vdev drivers have been converted

[1] http://dpdk.org/ml/archives/dev/2016-January/032387.html
[2] http://dpdk.org/ml/archives/dev/2016-April/037686.html
[3] http://dpdk.org/ml/archives/dev/2016-January/031390.html

David Marchand, Shreyansh Jain (17):
  pci: no need for dynamic tailq init
  crypto: no need for a crypto pmd type
  drivers: align pci driver definitions
  eal: remove duplicate function declaration
  eal: introduce init macros
  crypto: export init/uninit common wrappers for pci drivers
  ethdev: export init/uninit common wrappers for pci drivers
  drivers: convert all pdev drivers as pci drivers
  crypto: get rid of crypto driver register callback
  ethdev: get rid of eth driver register callback
  eal/linux: move back interrupt thread init before setting affinity
  pci: add a helper for device name
  pci: add a helper to update a device
  ethdev: do not scan all pci devices on attach
  eal: add hotplug operations for pci and vdev
  ethdev: convert to eal hotplug
  ethdev: get rid of device type

 app/test/virtual_pmd.c                          |   2 +-
 drivers/crypto/qat/rte_qat_cryptodev.c          |  18 +-
 drivers/net/af_packet/rte_eth_af_packet.c       |   2 +-
 drivers/net/bnx2x/bnx2x_ethdev.c                |  35 +--
 drivers/net/bonding/rte_eth_bond_api.c          |   2 +-
 drivers/net/cxgbe/cxgbe_ethdev.c                |  24 +--
 drivers/net/cxgbe/cxgbe_main.c                  |   2 +-
 drivers/net/e1000/em_ethdev.c                   |  16 +-
 drivers/net/e1000/igb_ethdev.c                  |  40 +---
 drivers/net/ena/ena_ethdev.c                    |  20 +-
 drivers/net/enic/enic_ethdev.c                  |  23 +-
 drivers/net/fm10k/fm10k_ethdev.c                |  23 +-
 drivers/net/i40e/i40e_ethdev.c                  |  26 +--
 drivers/net/i40e/i40e_ethdev_vf.c               |  25 +--
 drivers/net/ixgbe/ixgbe_ethdev.c                |  47 +---
 drivers/net/mlx4/mlx4.c                         |  22 +-
 drivers/net/mlx5/mlx5.c                         |  21 +-
 drivers/net/mpipe/mpipe_tilegx.c                |   2 +-
 drivers/net/nfp/nfp_net.c                       |  23 +-
 drivers/net/null/rte_eth_null.c                 |   2 +-
 drivers/net/pcap/rte_eth_pcap.c                 |   2 +-
 drivers/net/qede/qede_ethdev.c                  |  40 +---
 drivers/net/ring/rte_eth_ring.c                 |   2 +-
 drivers/net/szedata2/rte_eth_szedata2.c         |  25 +--
 drivers/net/vhost/rte_eth_vhost.c               |   2 +-
 drivers/net/virtio/virtio_ethdev.c              |  26 +--
 drivers/net/vmxnet3/vmxnet3_ethdev.c            |  23 +-
 drivers/net/xenvirt/rte_eth_xenvirt.c           |   2 +-
 examples/ip_pipeline/init.c                     |  22 --
 lib/librte_cryptodev/rte_cryptodev.c            |  67 ++----
 lib/librte_cryptodev/rte_cryptodev.h            |   2 -
 lib/librte_cryptodev/rte_cryptodev_pmd.h        |  45 ++--
 lib/librte_cryptodev/rte_cryptodev_version.map  |   9 +-
 lib/librte_eal/bsdapp/eal/eal_pci.c             |  52 ++++-
 lib/librte_eal/bsdapp/eal/rte_eal_version.map   |   2 +
 lib/librte_eal/common/eal_common_dev.c          |  47 ++++
 lib/librte_eal/common/eal_common_pci.c          |  19 +-
 lib/librte_eal/common/eal_private.h             |  20 +-
 lib/librte_eal/common/include/rte_dev.h         |  29 ++-
 lib/librte_eal/common/include/rte_eal.h         |   3 +
 lib/librte_eal/common/include/rte_pci.h         |  36 ++++
 lib/librte_eal/common/include/rte_tailq.h       |   4 +-
 lib/librte_eal/linuxapp/eal/eal.c               |   7 +-
 lib/librte_eal/linuxapp/eal/eal_pci.c           |  16 +-
 lib/librte_eal/linuxapp/eal/rte_eal_version.map |   2 +
 lib/librte_ether/rte_ethdev.c                   | 271 ++++--------------------
 lib/librte_ether/rte_ethdev.h                   |  40 ++--
 lib/librte_ether/rte_ether_version.map          |   4 +-
 48 files changed, 395 insertions(+), 799 deletions(-)

-- 
2.7.4