From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id 11717BE7C for ; Thu, 16 Jul 2015 15:25:43 +0200 (CEST) Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga102.fm.intel.com with ESMTP; 16 Jul 2015 06:25:43 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.15,488,1432623600"; d="scan'208";a="748561673" Received: from lwang14-mobl6.amr.corp.intel.com ([10.127.188.51]) by fmsmga001.fm.intel.com with ESMTP; 16 Jul 2015 06:25:42 -0700 From: Liang-Min Larry Wang To: dev@dpdk.org Date: Thu, 16 Jul 2015 09:25:32 -0400 Message-Id: <1437053137-10460-1-git-send-email-liang-min.wang@intel.com> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1432946276-9424-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 Subject: [dpdk-dev] [PATCH v17 0/5] User-space Ethtool X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 16 Jul 2015 13:25:44 -0000 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. v17 changes: - Separate bug fix to a separate submission - Separate rte_eth_dev_default_mac_addr_set implementation to a new patch file - Change data structure names and comments v16 changes: - Re-do patch v15 and separate changes between v15 and v14 into patch files 005 and 006 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 (5): ethdev: add api to support setting default mac addr 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 | 770 ++++++++++++++++ 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_dev_info.h | 57 ++ lib/librte_ether/rte_ethdev.c | 81 ++ lib/librte_ether/rte_ethdev.h | 119 +++ lib/librte_ether/rte_ether_version.map | 6 + 20 files changed, 4598 insertions(+), 2 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_dev_info.h -- 2.1.4