The patch-set contains the support of the HiNIC Ethernet driver for hinic family of PCIE Network Interface Cards.
The Huawei's PCIE HiNIC card is a new Ethernet card and hence there was a need of a new driver. The current driver is meant to be used for the Physical Function and there would soon be a support for Virtual Function and more features once the basic PF driver has been accepted. Changes v1 -> v2: 1. remove driver version - Andrew Lunn comment https://lkml.org/lkml/2017/7/12/372 2. replace kzalloc by devm_kzalloc for short clean - Andrew Lunn comment https://lkml.org/lkml/2017/7/12/372 3. replace pr_ functions by dev_ functions - Andrew Lunn comment https://lkml.org/lkml/2017/7/12/375 4. seperate last patch by moving ops to a new patch - Andrew Lunn comment https://lkml.org/lkml/2017/7/12/377 Aviad Krawczyk (21): net-next/hinic: Initialize hw interface net-next/hinic: Initialize hw device components net-next/hinic: Initialize api cmd resources net-next/hinic: Initialize api cmd hw net-next/hinic: Add management messages net-next/hinic: Add api cmd commands net-next/hinic: Add aeqs net-next/hinic: Add port management commands net-next/hinic: Add Rx mode and link event handler net-next/hinic: Add logical Txq and Rxq net-next/hinic: Add wq net-next/hinic: Add qp resources net-next/hinic: Set qp context net-next/hinic: Initialize cmdq net-next/hinic: Add ceqs net-next/hinic: Add cmdq commands net-next/hinic: Add cmdq completion handler net-next/hinic: Add Rx handler net-next/hinic: Add Tx operation net-next/hinic: Add ethtool and stats net-next/hinic: Add select_queue and netpoll Documentation/networking/hinic.txt | 125 +++ MAINTAINERS | 7 + drivers/net/ethernet/Kconfig | 1 + drivers/net/ethernet/Makefile | 1 + drivers/net/ethernet/huawei/Kconfig | 19 + drivers/net/ethernet/huawei/Makefile | 5 + drivers/net/ethernet/huawei/hinic/Kconfig | 13 + drivers/net/ethernet/huawei/hinic/Makefile | 6 + drivers/net/ethernet/huawei/hinic/hinic_common.c | 80 ++ drivers/net/ethernet/huawei/hinic/hinic_common.h | 38 + drivers/net/ethernet/huawei/hinic/hinic_dev.h | 64 ++ .../net/ethernet/huawei/hinic/hinic_hw_api_cmd.c | 978 +++++++++++++++++ .../net/ethernet/huawei/hinic/hinic_hw_api_cmd.h | 208 ++++ drivers/net/ethernet/huawei/hinic/hinic_hw_cmdq.c | 940 ++++++++++++++++ drivers/net/ethernet/huawei/hinic/hinic_hw_cmdq.h | 302 ++++++ drivers/net/ethernet/huawei/hinic/hinic_hw_csr.h | 149 +++ drivers/net/ethernet/huawei/hinic/hinic_hw_dev.c | 1058 ++++++++++++++++++ drivers/net/ethernet/huawei/hinic/hinic_hw_dev.h | 239 ++++ drivers/net/ethernet/huawei/hinic/hinic_hw_eqs.c | 877 +++++++++++++++ drivers/net/ethernet/huawei/hinic/hinic_hw_eqs.h | 265 +++++ drivers/net/ethernet/huawei/hinic/hinic_hw_if.c | 353 ++++++ drivers/net/ethernet/huawei/hinic/hinic_hw_if.h | 272 +++++ drivers/net/ethernet/huawei/hinic/hinic_hw_io.c | 537 +++++++++ drivers/net/ethernet/huawei/hinic/hinic_hw_io.h | 97 ++ drivers/net/ethernet/huawei/hinic/hinic_hw_mgmt.c | 599 ++++++++++ drivers/net/ethernet/huawei/hinic/hinic_hw_mgmt.h | 153 +++ drivers/net/ethernet/huawei/hinic/hinic_hw_qp.c | 864 +++++++++++++++ drivers/net/ethernet/huawei/hinic/hinic_hw_qp.h | 394 +++++++ .../net/ethernet/huawei/hinic/hinic_hw_qp_ctxt.h | 214 ++++ drivers/net/ethernet/huawei/hinic/hinic_hw_wq.c | 885 +++++++++++++++ drivers/net/ethernet/huawei/hinic/hinic_hw_wq.h | 113 ++ drivers/net/ethernet/huawei/hinic/hinic_main.c | 1142 ++++++++++++++++++++ .../net/ethernet/huawei/hinic/hinic_pci_id_tbl.h | 27 + drivers/net/ethernet/huawei/hinic/hinic_port.c | 403 +++++++ drivers/net/ethernet/huawei/hinic/hinic_port.h | 198 ++++ drivers/net/ethernet/huawei/hinic/hinic_rx.c | 518 +++++++++ drivers/net/ethernet/huawei/hinic/hinic_rx.h | 55 + drivers/net/ethernet/huawei/hinic/hinic_tx.c | 516 +++++++++ drivers/net/ethernet/huawei/hinic/hinic_tx.h | 62 ++ 39 files changed, 12777 insertions(+) create mode 100644 Documentation/networking/hinic.txt create mode 100644 drivers/net/ethernet/huawei/Kconfig create mode 100644 drivers/net/ethernet/huawei/Makefile create mode 100644 drivers/net/ethernet/huawei/hinic/Kconfig create mode 100644 drivers/net/ethernet/huawei/hinic/Makefile create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_common.c create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_common.h create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_dev.h create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.c create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_api_cmd.h create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_cmdq.c create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_cmdq.h create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_csr.h create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_dev.c create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_dev.h create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_eqs.c create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_eqs.h create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_if.c create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_io.c create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_io.h create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_mgmt.c create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_mgmt.h create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_qp.c create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_qp.h create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_qp_ctxt.h create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_wq.c create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw_wq.h create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_main.c create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_pci_id_tbl.h create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_port.c create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_port.h create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_rx.c create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_rx.h create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_tx.c create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_tx.h -- 1.9.1