DPDK patches and discussions
 help / color / mirror / Atom feed
From: Thomas Monjalon <thomas.monjalon@6wind.com>
To: Shreyansh Jain <shreyansh.jain@nxp.com>
Cc: dev@dpdk.org
Subject: [dpdk-dev] [PATCH v11 00/13] rte_bus + rte_pci_bus
Date: Thu, 19 Jan 2017 05:45:04 +0100	[thread overview]
Message-ID: <1484801117-779-1-git-send-email-thomas.monjalon@6wind.com> (raw)
In-Reply-To: <1484748329-5418-1-git-send-email-shreyansh.jain@nxp.com>

I've continued the work done by Shreyansh for bus abstraction
and PCI implementation.
This change has two benefits:
  - ease future introduction of new bus
  - clean existing buses (only PCI here)
The same kind of work must be done on VDEV in order to move
these implementations as bus drivers.

changes in v11:
- fixes for BSD
- remove useless bus object retrieving
- remove useless bus reference in rte_device
- some rewording and patch reordering

Unfortunately, it is not ready to be integrated in 17.02.
More specifically:
  - the tests need some review/rework
  - the PCI implementation requires more work
  - the documentation must be updated

However there are some new buses waiting for the bus abstraction,
which is simple and good enough.
That's why I have isolated the generic bus model in first patches
and will apply them in 17.02-rc1. It will allow to base new buses
on top of rte_bus.


Shreyansh Jain (13):
  bus: introduce bus abstraction
  bus: add scanning
  bus: add probing
  app/test: check bus registration
  app/test: check bus scan
  app/test: check bus probe
  pci: split match and probe
  pci: remove loop over drivers in device detach
  pci: add bus driver
  app/test: add PCI bus driver
  pci: use bus driver for scan/probe
  pci: use bus driver for attach/detach
  doc: remove deprecation notice for rte_bus

 MAINTAINERS                                     |   1 +
 app/test/Makefile                               |   2 +-
 app/test/autotest_data.py                       |   6 +
 app/test/test.h                                 |   1 +
 app/test/test_bus.c                             | 678 ++++++++++++++++++++++++
 app/test/test_pci.c                             | 164 ++++--
 doc/guides/rel_notes/deprecation.rst            |   5 -
 doc/guides/rel_notes/release_17_02.rst          |   2 +-
 lib/librte_eal/bsdapp/eal/Makefile              |   3 +-
 lib/librte_eal/bsdapp/eal/eal.c                 |  13 +-
 lib/librte_eal/bsdapp/eal/eal_pci.c             |  43 +-
 lib/librte_eal/bsdapp/eal/rte_eal_version.map   |  15 +-
 lib/librte_eal/common/Makefile                  |   2 +-
 lib/librte_eal/common/eal_common_bus.c          | 133 +++++
 lib/librte_eal/common/eal_common_dev.c          |  56 +-
 lib/librte_eal/common/eal_common_pci.c          | 350 +++++++-----
 lib/librte_eal/common/eal_private.h             |  10 -
 lib/librte_eal/common/include/rte_bus.h         | 192 +++++++
 lib/librte_eal/common/include/rte_pci.h         | 142 ++++-
 lib/librte_eal/linuxapp/eal/Makefile            |   3 +-
 lib/librte_eal/linuxapp/eal/eal.c               |  13 +-
 lib/librte_eal/linuxapp/eal/eal_pci.c           |  50 +-
 lib/librte_eal/linuxapp/eal/rte_eal_version.map |  15 +-
 23 files changed, 1600 insertions(+), 299 deletions(-)
 create mode 100644 app/test/test_bus.c
 create mode 100644 lib/librte_eal/common/eal_common_bus.c
 create mode 100644 lib/librte_eal/common/include/rte_bus.h

-- 
2.7.0

  parent reply	other threads:[~2017-01-19  4:45 UTC|newest]

Thread overview: 146+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-01-16 15:38 [dpdk-dev] [PATCH v6 0/8] Introducing EAL Bus-Device-Driver Model Shreyansh Jain
2017-01-16 15:38 ` [dpdk-dev] [PATCH v6 1/8] eal/bus: introduce bus abstraction Shreyansh Jain
2017-01-16 15:38 ` [dpdk-dev] [PATCH v6 2/8] test: add basic bus infrastructure tests Shreyansh Jain
2017-01-16 15:38 ` [dpdk-dev] [PATCH v6 3/8] pci: split match and probe function Shreyansh Jain
2017-01-16 18:24   ` Stephen Hemminger
2017-01-17 10:10     ` Shreyansh Jain
2017-01-16 19:53   ` Ferruh Yigit
2017-01-17  4:54     ` Shreyansh Jain
2017-01-17  9:58       ` Ferruh Yigit
2017-01-17 10:14         ` Shreyansh Jain
2017-01-16 15:38 ` [dpdk-dev] [PATCH v6 4/8] eal/bus: support for scanning of bus Shreyansh Jain
2017-01-16 15:38 ` [dpdk-dev] [PATCH v6 5/8] eal: introduce bus scan and probe in EAL Shreyansh Jain
2017-01-16 19:58   ` Ferruh Yigit
2017-01-17  5:03     ` Shreyansh Jain
2017-01-17 23:04       ` Thomas Monjalon
2017-01-17 10:13     ` Shreyansh Jain
2017-01-16 15:38 ` [dpdk-dev] [PATCH v6 6/8] test: update bus and pci unit test cases Shreyansh Jain
2017-01-16 15:38 ` [dpdk-dev] [PATCH v6 7/8] eal: enable PCI bus Shreyansh Jain
2017-01-16 19:58   ` Ferruh Yigit
2017-01-17  5:04     ` Shreyansh Jain
2017-01-17 10:11     ` Shreyansh Jain
2017-01-16 15:38 ` [dpdk-dev] [PATCH v6 8/8] eal: enable hotplugging of devices on bus Shreyansh Jain
2017-01-17  7:24   ` Shreyansh Jain
2017-01-16 18:27 ` [dpdk-dev] [PATCH v6 0/8] Introducing EAL Bus-Device-Driver Model Stephen Hemminger
2017-01-17  5:08   ` Shreyansh Jain
2017-01-17  5:09   ` Shreyansh Jain
2017-01-17 10:09 ` [dpdk-dev] [PATCH v7 0/9] " Shreyansh Jain
2017-01-17 10:09   ` [dpdk-dev] [PATCH v7 1/9] eal/bus: introduce bus abstraction Shreyansh Jain
2017-01-17 10:09   ` [dpdk-dev] [PATCH v7 2/9] test: add basic bus infrastructure tests Shreyansh Jain
2017-01-17 10:09   ` [dpdk-dev] [PATCH v7 3/9] pci: split match and probe function Shreyansh Jain
2017-01-17 10:09   ` [dpdk-dev] [PATCH v7 4/9] eal/bus: support for scanning of bus Shreyansh Jain
2017-01-17 10:09   ` [dpdk-dev] [PATCH v7 5/9] eal/bus: introduce support for bus probing Shreyansh Jain
2017-01-17 10:09   ` [dpdk-dev] [PATCH v7 6/9] eal: integrate bus scan and probe with EAL Shreyansh Jain
2017-01-17 10:09   ` [dpdk-dev] [PATCH v7 7/9] test: update bus and pci unit test cases Shreyansh Jain
2017-01-17 10:09   ` [dpdk-dev] [PATCH v7 8/9] eal: enable PCI bus Shreyansh Jain
2017-01-17 10:09   ` [dpdk-dev] [PATCH v7 9/9] eal: enable hotplugging of devices on bus Shreyansh Jain
2017-01-17 10:47     ` Ferruh Yigit
2017-01-17 11:04       ` Shreyansh Jain
2017-01-17 13:40         ` Shreyansh Jain
2017-01-17 10:50   ` [dpdk-dev] [PATCH v7 0/9] Introducing EAL Bus-Device-Driver Model Ferruh Yigit
2017-01-17 13:37   ` [dpdk-dev] [PATCH v8 " Shreyansh Jain
2017-01-17 13:37     ` [dpdk-dev] [PATCH v8 1/9] eal/bus: introduce bus abstraction Shreyansh Jain
2017-01-17 23:19       ` Thomas Monjalon
2017-01-18  5:12         ` Shreyansh Jain
2017-01-17 13:37     ` [dpdk-dev] [PATCH v8 2/9] test: add basic bus infrastructure tests Shreyansh Jain
2017-01-17 23:23       ` Thomas Monjalon
2017-01-18  5:13         ` Shreyansh Jain
2017-01-18  6:56           ` Shreyansh Jain
2017-01-18  7:28             ` Thomas Monjalon
2017-01-18  8:42               ` Shreyansh Jain
2017-01-17 13:37     ` [dpdk-dev] [PATCH v8 3/9] pci: split match and probe function Shreyansh Jain
2017-01-17 23:31       ` Thomas Monjalon
2017-01-18  6:17         ` Shreyansh Jain
2017-01-18  7:31           ` Thomas Monjalon
2017-01-17 13:37     ` [dpdk-dev] [PATCH v8 4/9] eal/bus: support for scanning of bus Shreyansh Jain
2017-01-17 23:37       ` Thomas Monjalon
2017-01-18  5:15         ` Shreyansh Jain
2017-01-18  7:32           ` Thomas Monjalon
2017-01-17 13:37     ` [dpdk-dev] [PATCH v8 5/9] eal/bus: introduce support for bus probing Shreyansh Jain
2017-01-17 23:38       ` Thomas Monjalon
2017-01-17 13:37     ` [dpdk-dev] [PATCH v8 6/9] eal: integrate bus scan and probe with EAL Shreyansh Jain
2017-01-17 23:44       ` Thomas Monjalon
2017-01-17 13:37     ` [dpdk-dev] [PATCH v8 7/9] test: update bus and pci unit test cases Shreyansh Jain
2017-01-17 23:46       ` Thomas Monjalon
2017-01-17 13:37     ` [dpdk-dev] [PATCH v8 8/9] eal: enable PCI bus Shreyansh Jain
2017-01-17 23:57       ` Thomas Monjalon
2017-01-17 13:37     ` [dpdk-dev] [PATCH v8 9/9] eal: enable hotplugging of devices on bus Shreyansh Jain
2017-01-17 15:17       ` Ferruh Yigit
2017-01-18 10:37     ` [dpdk-dev] [PATCH v9 00/12] Introducing EAL Bus-Device-Driver Model Shreyansh Jain
2017-01-18 10:37       ` [dpdk-dev] [PATCH v9 01/12] eal/bus: introduce bus abstraction Shreyansh Jain
2017-01-18 10:46         ` Thomas Monjalon
2017-01-18 10:52           ` Shreyansh Jain
2017-01-18 10:37       ` [dpdk-dev] [PATCH v9 02/12] test: add basic bus infrastructure tests Shreyansh Jain
2017-01-18 10:37       ` [dpdk-dev] [PATCH v9 03/12] pci: split match and probe function Shreyansh Jain
2017-01-18 10:37       ` [dpdk-dev] [PATCH v9 04/12] eal: remove loop over drivers in device detach Shreyansh Jain
2017-01-18 10:41         ` Shreyansh Jain
2017-01-18 11:12         ` Thomas Monjalon
2017-01-18 12:15           ` Shreyansh Jain
2017-01-18 10:37       ` [dpdk-dev] [PATCH v9 05/12] eal/bus: support for scanning of bus Shreyansh Jain
2017-01-18 10:37       ` [dpdk-dev] [PATCH v9 06/12] eal/bus: introduce support for bus probing Shreyansh Jain
2017-01-18 10:37       ` [dpdk-dev] [PATCH v9 07/12] eal: integrate bus scan and probe with EAL Shreyansh Jain
2017-01-18 10:37       ` [dpdk-dev] [PATCH v9 08/12] eal/pci: add support for PCI bus Shreyansh Jain
2017-01-18 10:37       ` [dpdk-dev] [PATCH v9 09/12] test: add test cases for scan and probe on BUS Shreyansh Jain
2017-01-18 10:37       ` [dpdk-dev] [PATCH v9 10/12] test: add Bus based scan and probe test cases for PCI Shreyansh Jain
2017-01-18 10:37       ` [dpdk-dev] [PATCH v9 11/12] eal: enable PCI bus Shreyansh Jain
2017-01-18 10:38       ` [dpdk-dev] [PATCH v9 12/12] eal: enable hotplugging of devices on bus Shreyansh Jain
2017-01-18 11:10       ` [dpdk-dev] [PATCH v9 00/12] Introducing EAL Bus-Device-Driver Model Thomas Monjalon
2017-01-18 14:05       ` [dpdk-dev] [PATCH v10 00/13] " Shreyansh Jain
2017-01-18 14:05         ` [dpdk-dev] [PATCH v10 01/13] eal/bus: introduce bus abstraction Shreyansh Jain
2017-01-18 14:05         ` [dpdk-dev] [PATCH v10 02/13] test: add basic bus infrastructure tests Shreyansh Jain
2017-01-18 14:05         ` [dpdk-dev] [PATCH v10 03/13] pci: split match and probe function Shreyansh Jain
2017-01-18 14:05         ` [dpdk-dev] [PATCH v10 04/13] eal: remove loop over drivers in device detach Shreyansh Jain
2017-01-18 14:05         ` [dpdk-dev] [PATCH v10 05/13] eal/bus: support for scanning of bus Shreyansh Jain
2017-01-18 14:05         ` [dpdk-dev] [PATCH v10 06/13] eal/bus: introduce support for bus probing Shreyansh Jain
2017-01-18 14:05         ` [dpdk-dev] [PATCH v10 07/13] eal: integrate bus scan and probe with EAL Shreyansh Jain
2017-01-18 14:05         ` [dpdk-dev] [PATCH v10 08/13] eal/pci: add support for PCI bus Shreyansh Jain
2017-01-18 14:05         ` [dpdk-dev] [PATCH v10 09/13] test: add test cases for scan and probe on BUS Shreyansh Jain
2017-01-18 14:05         ` [dpdk-dev] [PATCH v10 10/13] test: add Bus based scan and probe test cases for PCI Shreyansh Jain
2017-01-18 14:05         ` [dpdk-dev] [PATCH v10 11/13] eal: enable PCI bus Shreyansh Jain
2017-01-18 14:05         ` [dpdk-dev] [PATCH v10 12/13] eal: enable hotplugging of devices on bus Shreyansh Jain
2017-01-18 14:05         ` [dpdk-dev] [PATCH v10 13/13] doc: remove deprecation notice for rte_bus Shreyansh Jain
2017-01-19  4:45         ` Thomas Monjalon [this message]
2017-01-19  4:45           ` [dpdk-dev] [PATCH v11 01/13] bus: introduce bus abstraction Thomas Monjalon
2017-01-19  4:45           ` [dpdk-dev] [PATCH v11 02/13] bus: add scanning Thomas Monjalon
2017-01-19  4:45           ` [dpdk-dev] [PATCH v11 03/13] bus: add probing Thomas Monjalon
2017-01-19  4:45           ` [dpdk-dev] [PATCH v11 04/13] app/test: check bus registration Thomas Monjalon
2017-01-19  4:45           ` [dpdk-dev] [PATCH v11 05/13] app/test: check bus scan Thomas Monjalon
2017-01-19  4:45           ` [dpdk-dev] [PATCH v11 06/13] app/test: check bus probe Thomas Monjalon
2017-01-19  4:45           ` [dpdk-dev] [PATCH v11 07/13] pci: split match and probe Thomas Monjalon
2017-02-15 10:45             ` Jan Blunck
2017-02-15 11:22               ` Thomas Monjalon
2017-02-15 11:52                 ` Shreyansh Jain
2017-02-15 11:30               ` Shreyansh Jain
2017-01-19  4:45           ` [dpdk-dev] [PATCH v11 08/13] pci: remove loop over drivers in device detach Thomas Monjalon
2017-01-19  4:45           ` [dpdk-dev] [PATCH v11 09/13] pci: add bus driver Thomas Monjalon
2017-02-15 10:42             ` Jan Blunck
2017-02-15 11:20               ` Thomas Monjalon
2017-01-19  4:45           ` [dpdk-dev] [PATCH v11 10/13] app/test: add PCI " Thomas Monjalon
2017-01-19  4:45           ` [dpdk-dev] [PATCH v11 11/13] pci: use bus driver for scan/probe Thomas Monjalon
2017-01-19  4:45           ` [dpdk-dev] [PATCH v11 12/13] pci: use bus driver for attach/detach Thomas Monjalon
2017-02-15 11:08             ` Jan Blunck
2017-02-15 11:26               ` Thomas Monjalon
2017-02-15 11:39                 ` Jan Blunck
2017-02-15 14:04                   ` [dpdk-dev] [RFC] eal: use busname and devargs to attach devices Jan Blunck
2017-01-19  4:45           ` [dpdk-dev] [PATCH v11 13/13] doc: remove deprecation notice for rte_bus Thomas Monjalon
2017-01-19 17:40             ` Mcnamara, John
2017-01-19  4:50           ` [dpdk-dev] [PATCH v11 00/13] rte_bus + rte_pci_bus Thomas Monjalon
2017-04-07 15:28           ` [dpdk-dev] [PATCH v12 0/5] rte_bus_pci Gaetan Rivet
2017-04-07 15:28             ` [dpdk-dev] [PATCH v12 1/5] pci: split match and probe Gaetan Rivet
2017-04-07 15:28             ` [dpdk-dev] [PATCH v12 2/5] pci: remove loop over drivers in device detach Gaetan Rivet
2017-04-07 15:28             ` [dpdk-dev] [PATCH v12 3/5] pci: add bus driver Gaetan Rivet
2017-04-07 15:28             ` [dpdk-dev] [PATCH v12 4/5] pci: use bus driver for scan/probe Gaetan Rivet
2017-04-07 15:28             ` [dpdk-dev] [PATCH v12 5/5] test: remove pci tests Gaetan Rivet
2017-04-11 11:07             ` [dpdk-dev] [PATCH v13 0/7] rte_bus_pci Gaetan Rivet
2017-04-11 11:07               ` [dpdk-dev] [PATCH v13 1/7] test: remove pci tests Gaetan Rivet
2017-04-11 11:07               ` [dpdk-dev] [PATCH v13 2/7] pci: split match and probe Gaetan Rivet
2017-04-11 11:07               ` [dpdk-dev] [PATCH v13 3/7] pci: remove loop over drivers in device detach Gaetan Rivet
2017-04-11 11:07               ` [dpdk-dev] [PATCH v13 4/7] pci: add bus driver Gaetan Rivet
2017-04-11 11:07               ` [dpdk-dev] [PATCH v13 5/7] pci: use bus driver for scan/probe Gaetan Rivet
2017-04-11 11:07               ` [dpdk-dev] [PATCH v13 6/7] pci: use bus driver for attach/detach Gaetan Rivet
2017-04-14  8:43                 ` Thomas Monjalon
2017-04-11 11:07               ` [dpdk-dev] [PATCH v13 7/7] doc: remove deprecation notice for rte_bus Gaetan Rivet
2017-04-11 11:32                 ` Shreyansh Jain
2017-04-11 11:54                   ` Gaëtan Rivet
2017-04-12 16:09               ` [dpdk-dev] [PATCH v13 0/7] rte_bus_pci Stephen Hemminger
2017-04-14 12:16                 ` Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1484801117-779-1-git-send-email-thomas.monjalon@6wind.com \
    --to=thomas.monjalon@6wind.com \
    --cc=dev@dpdk.org \
    --cc=shreyansh.jain@nxp.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).