From patchwork Thu May 11 08:28:00 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tom Barbette X-Patchwork-Id: 24221 X-Patchwork-Delegate: thomas@monjalon.net 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 5A21747CE; Thu, 11 May 2017 10:28:38 +0200 (CEST) Received: from serv108.segi.ulg.ac.be (serv108.segi.ulg.ac.be [139.165.32.111]) by dpdk.org (Postfix) with ESMTP id 0CA962E83 for ; Thu, 11 May 2017 10:28:36 +0200 (CEST) Received: from tom.run.montefiore.ulg.ac.be (tom.run.montefiore.ulg.ac.be [139.165.223.24]) by serv108.segi.ulg.ac.be (Postfix) with ESMTP id EFC3A200F0E9; Thu, 11 May 2017 10:28:35 +0200 (CEST) From: Tom Barbette To: thomas@monjalon.net Cc: dev@dpdk.org, Tom Barbette Date: Thu, 11 May 2017 10:28:00 +0200 Message-Id: <20170511082800.17608-1-tom.barbette@ulg.ac.be> X-Mailer: git-send-email 2.9.3 Subject: [dpdk-dev] [PATCH] ethernet api: Document rte_eth_vmdq_rx_conf 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 documentation it is very unclear how VMDq configuration can be tweaked, and online search offer very poor results. This patch will ultimately spawn an online documentation page for the rte_eth_vmdq_rx_conf struct which will eventually add a bit of documentation about the rx_mode tag and how to allow e.g. VMDq pools to receive packets without VLAN tags. --- lib/librte_ether/rte_ethdev.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h index 0f38b45..b4b3c79 100644 --- a/lib/librte_ether/rte_ethdev.h +++ b/lib/librte_ether/rte_ethdev.h @@ -629,6 +629,24 @@ struct rte_eth_vmdq_dcb_conf { /**< Selects a queue in a pool */ }; +/** + * A structure used to configure the VMDQ feature of an Ethernet port when + * not combined with the DCB feature. + * + * Using this feature, packets are routed to a pool of queues. By default, the + * pool selection is based on the MAC address, the vlan id in the vlan tag as + * specified in the pool_map array. + * Passing the ETH_VMDQ_ACCEPT_UNTAGGED in the rx_mode field allows pool + * selection using only the MAC address. MAC address to pool mapping is done + * using the rte_eth_dev_mac_addr_add function, with the pool parameter + * corresponding to the pool id. + * + * Queue selection within the selected pool will be done using RSS when + * it is enabled or revert to the first queue of the pool if not. + * + * A default pool may be used, if desired, to route all traffic which + * does not match the vlan filter rules or any pool MAC address. + */ struct rte_eth_vmdq_rx_conf { enum rte_eth_nb_pools nb_queue_pools; /**< VMDq only mode, 8 or 64 pools */ uint8_t enable_default_pool; /**< If non-zero, use a default pool */