From mboxrd@z Thu Jan 1 00:00:00 1970 From: Liang-Min Larry Wang Subject: [PATCH v15 0/4] User-space Ethtool Date: Mon, 13 Jul 2015 22:18:47 -0400 Message-ID: <1436840331-13112-1-git-send-email-liang-min.wang@intel.com> References: <1432946276-9424-1-git-send-email-liang-min.wang@intel.com> Cc: Liang-Min Larry Wang To: dev@dpdk.org Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id 690DEA10 for ; Tue, 14 Jul 2015 04:18:58 +0200 (CEST) In-Reply-To: <1432946276-9424-1-git-send-email-liang-min.wang@intel.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" This implementation is designed to provide a familar interface for applications that rely on kernel-space driver to support ethtool_op and net_device_op for device management. The initial implementation focuses on ops that can be implemented through existing netdev APIs. More ops will be supported in latter release. v15 changes: - Replace rte_eth_dev_is_valid_port with macro VALID_PORTID_OR_ERR_RET - Fix VALID_PORTID_OR_ERR_RET issue (unused macro variable) - Fix api version map (move from 2.0 to 2.1) v14 changes: - Add library path to fix top-level, $RTE_SDK, example/l2fwd-ethtool build v13 changes: - Rebase beause patch 1588 v12 changes: - Update coding style to match latest change over rte_ethdev.c (by shemming@brocade.com) v11 changes: - Fixed a typo and clean coding style. v10 changes: - Merged const fix back to igb/ixgbe. v9 changes: - Fixed checkpatch errors. v8 changes: - Changed register tables to const. v7 change: - Remove rte_eth_dev_get_ringparam implementation v6 change: - Rebase to match new changes over librte_ether v5 change: - Change API name from 'leng' to 'length' - Remove unused data structure rte_dev_vf_info - Remove placeholder API rte_eth_dev_set_ringparam - Clean up set_mac_addr implementation v4 change: - Add rte_eth_xxx apis and respective ops over igb and ixgbe to support ethtool and net device alike ops - Add an example to demonstrate the use of ethtool library v3 change: - Fix a build issue v2 change: - Implement rte_eth_dev_default_mac_addr_set through dev_ops::mac_addr_set so it would support NIC devices other than ixgbe and igb Liang-Min Larry Wang (4): ethdev: add apis to support access device info ixgbe: add ops to support ethtool ops igb: add ops to support ethtool ops examples: new example: l2fwd-ethtool drivers/net/e1000/igb_ethdev.c | 175 ++++ drivers/net/e1000/igb_regs.h | 223 +++++ drivers/net/ixgbe/ixgbe_ethdev.c | 178 +++- drivers/net/ixgbe/ixgbe_regs.h | 376 ++++++++ examples/Makefile | 3 + examples/l2fwd-ethtool/Makefile | 55 ++ examples/l2fwd-ethtool/l2fwd-app/Makefile | 59 ++ examples/l2fwd-ethtool/l2fwd-app/main.c | 1066 ++++++++++++++++++++++ examples/l2fwd-ethtool/l2fwd-app/netdev_api.h | 769 ++++++++++++++++ examples/l2fwd-ethtool/l2fwd-app/shared_fifo.h | 158 ++++ examples/l2fwd-ethtool/lib/Makefile | 55 ++ examples/l2fwd-ethtool/lib/rte_ethtool.c | 308 +++++++ examples/l2fwd-ethtool/lib/rte_ethtool.h | 384 ++++++++ examples/l2fwd-ethtool/nic-control/Makefile | 55 ++ examples/l2fwd-ethtool/nic-control/nic_control.c | 471 ++++++++++ lib/librte_ether/Makefile | 1 + lib/librte_ether/rte_eth_dev_info.h | 57 ++ lib/librte_ether/rte_ethdev.c | 83 +- lib/librte_ether/rte_ethdev.h | 118 +++ lib/librte_ether/rte_ether_version.map | 6 + 20 files changed, 4597 insertions(+), 3 deletions(-) create mode 100644 drivers/net/e1000/igb_regs.h create mode 100644 drivers/net/ixgbe/ixgbe_regs.h create mode 100644 examples/l2fwd-ethtool/Makefile create mode 100644 examples/l2fwd-ethtool/l2fwd-app/Makefile create mode 100644 examples/l2fwd-ethtool/l2fwd-app/main.c create mode 100644 examples/l2fwd-ethtool/l2fwd-app/netdev_api.h create mode 100644 examples/l2fwd-ethtool/l2fwd-app/shared_fifo.h create mode 100644 examples/l2fwd-ethtool/lib/Makefile create mode 100644 examples/l2fwd-ethtool/lib/rte_ethtool.c create mode 100644 examples/l2fwd-ethtool/lib/rte_ethtool.h create mode 100644 examples/l2fwd-ethtool/nic-control/Makefile create mode 100644 examples/l2fwd-ethtool/nic-control/nic_control.c create mode 100644 lib/librte_ether/rte_eth_dev_info.h -- 2.1.4