bus: introduce bus abstraction
authorShreyansh Jain <shreyansh.jain@nxp.com>
Wed, 18 Jan 2017 14:05:17 +0000 (19:35 +0530)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Thu, 19 Jan 2017 03:57:18 +0000 (04:57 +0100)
commita97725791eec933a07f160e3632975f0cc836ab4
tree53ddf0c346b756442476d2b78794e040da2cc82a
parent54c7fdba7c9af89c83a0573976c544ad6be0a82d
bus: introduce bus abstraction

This patch introduces the rte_bus abstraction for EAL.
The model is:
 - One or more devices are connected to a Bus
 - Drivers are running instances which manage one or more devices
 - Bus is responsible for identifying devices (and interrupt propogation)
 - Driver is responsible for initializing the device

This patch adds a 'rte_bus' base class which would be extended for
specific implementations. It also introduces Bus registration and
deregistration functions.

Signed-off-by: Shreyansh Jain <shreyansh.jain@nxp.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
lib/librte_eal/bsdapp/eal/Makefile
lib/librte_eal/bsdapp/eal/rte_eal_version.map
lib/librte_eal/common/Makefile
lib/librte_eal/common/eal_common_bus.c [new file with mode: 0644]
lib/librte_eal/common/include/rte_bus.h [new file with mode: 0644]
lib/librte_eal/linuxapp/eal/Makefile
lib/librte_eal/linuxapp/eal/rte_eal_version.map