[dpdk-dev] [PATCH v9 0/5] User-space Ethtool

Liang-Min Larry Wang liang-min.wang at intel.com
Sat Jun 27 03:19:03 CEST 2015


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.

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 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
  ixgbe/igb: changed register tables to const

 drivers/net/e1000/igb_ethdev.c                   |  187 ++++
 drivers/net/e1000/igb_regs.h                     |  226 +++++
 drivers/net/ixgbe/ixgbe_ethdev.c                 |  190 +++-
 drivers/net/ixgbe/ixgbe_regs.h                   |  379 ++++++++
 examples/l2fwd-ethtool/Makefile                  |   55 ++
 examples/l2fwd-ethtool/l2fwd-app/Makefile        |   58 ++
 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                    |   99 ++
 lib/librte_ether/rte_ethdev.h                    |  117 +++
 lib/librte_ether/rte_ether_version.map           |    6 +
 19 files changed, 4639 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_eth_dev_info.h

-- 
2.1.4



More information about the dev mailing list