On 6/12/15, 3:03 PM, "Liang-Min Larry Wang" <liang-min.wang at intel.com> wrote:
>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. > >v6 change: >- Rebase to match new changes over dpdk repository (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 | 186 ++++ > drivers/net/e1000/igb_regs.h | 217 +++++ > drivers/net/ixgbe/ixgbe_ethdev.c | 202 +++++ > drivers/net/ixgbe/ixgbe_regs.h | 357 ++++++++ > drivers/net/ixgbe/ixgbe_rxtx.c | 16 + > drivers/net/ixgbe/ixgbe_rxtx.h | 1 + > examples/l2fwd-ethtool/Makefile | 55 ++ > examples/l2fwd-ethtool/l2fwd-app/Makefile | 58 ++ > examples/l2fwd-ethtool/l2fwd-app/main.c | 1052 >++++++++++++++++++++++ > examples/l2fwd-ethtool/l2fwd-app/netdev_api.h | 821 +++++++++++++++++ > examples/l2fwd-ethtool/l2fwd-app/shared_fifo.h | 153 ++++ > examples/l2fwd-ethtool/lib/Makefile | 55 ++ > examples/l2fwd-ethtool/lib/rte_ethtool.c | 326 +++++++ > examples/l2fwd-ethtool/lib/rte_ethtool.h | 412 +++++++++ > examples/l2fwd-ethtool/nic-control/Makefile | 55 ++ > examples/l2fwd-ethtool/nic-control/nic_control.c | 427 +++++++++ > lib/librte_ether/Makefile | 1 + > lib/librte_ether/rte_eth_dev_info.h | 67 ++ > lib/librte_ether/rte_ethdev.c | 134 +++ > lib/librte_ether/rte_ethdev.h | 144 +++ > lib/librte_ether/rte_ether_version.map | 7 + > 21 files changed, 4746 insertions(+) > 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 Acked-by: Andrew Harvey (agh) <agh at cisco.com>