ethdev: support L2 tunnel operations
authorWenzhuo Lu <wenzhuo.lu@intel.com>
Fri, 11 Mar 2016 01:10:08 +0000 (09:10 +0800)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Fri, 11 Mar 2016 22:25:57 +0000 (23:25 +0100)
commitc49b2bad6a028fa53b09699c6cae10143e6f3a3e
tree2e8e3dae603facff4cd539f308284f134538fd46
parent43a942393d1795fa303b490a81bd943970fe9a71
ethdev: support L2 tunnel operations

Add functions to support l2 tunnel configuration and operations.
1, L2 tunnel ether type modification.
   It means modifying the ether type of a specific type of tunnel.
   So the packet with this ether type will be parsed as this type
   of tunnel.
2, Enabling/disabling l2 tunnel support.
   It means enabling/disabling the ability of parsing the specific
   type of tunnel. This ability should be enabled before we enable
   filtering, forwarding, offloading for this specific type of
   tunnel.
3, Insertion and stripping for l2 tunnel tag.
4, Forwarding the packets to a pool based on l2 tunnel tag.

Only support e-tag tunnel now.

Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Acked-by: Shaopeng He <shaopeng.he@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
Tested-by: Yong Liu <yong.liu@intel.com>
lib/librte_ether/rte_eth_ctrl.h
lib/librte_ether/rte_ethdev.c
lib/librte_ether/rte_ethdev.h
lib/librte_ether/rte_ether_version.map