From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0a-0016ce01.pphosted.com (mx0a-0016ce01.pphosted.com [67.231.148.157]) by dpdk.org (Postfix) with ESMTP id 737C1C5FE for ; Sat, 20 Feb 2016 16:40:52 +0100 (CET) Received: from pps.filterd (m0045602.ppops.net [127.0.0.1]) by mx0a-0016ce01.pphosted.com (8.16.0.11/8.16.0.11) with SMTP id u1KFd2se020056 for ; Sat, 20 Feb 2016 07:40:51 -0800 Received: from avcashub1.qlogic.com ([198.186.0.116]) by mx0a-0016ce01.pphosted.com with ESMTP id 216r61r58b-1 (version=TLSv1 cipher=AES128-SHA bits=128 verify=NOT) for ; Sat, 20 Feb 2016 07:40:51 -0800 Received: from avluser01.qlc.com (10.1.113.203) by qlc.com (10.1.4.191) with Microsoft SMTP Server id 14.3.235.1; Sat, 20 Feb 2016 07:40:50 -0800 Received: (from hpatil@localhost) by avluser01.qlc.com (8.14.4/8.14.4/Submit) id u1KFeoMN026808; Sat, 20 Feb 2016 07:40:50 -0800 From: Harish Patil To: Date: Sat, 20 Feb 2016 07:40:25 -0800 Message-ID: <1455982831-21682-1-git-send-email-harish.patil@qlogic.com> X-Mailer: git-send-email 1.7.10.3 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain X-Proofpoint-Virus-Version: vendor=nai engine=5800 definitions=8080 signatures=670693 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=1 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1601100000 definitions=main-1602200235 Subject: [dpdk-dev] [PATCH 0/6] DPDK PMD for new QLogic FastLinQ QL4xxxx 25G/40G CNAs 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: Sat, 20 Feb 2016 15:40:52 -0000 This patch set introduces DPDK poll mode driver for new QLogic FastLinQ QL4xxxx 25G/40G capable family of CNAs as well as their SR-IOV Virtual Functions (VF). The overall PMD driver design includes a common module called ecore that deals with the low level HW and a upper layer portion that provides the glue logic. Specifically, the ecore module contains all of the common logic, e.g. initialization, cleanup, infrastructure for interrupt handling, link management, slowpath etc. as well as protocol agnostic features and supplying an abstraction layer for other modules. The higher layer implements DPDK exported APIs/driver entry points by interfacing with the common module for configuration/status and also the fastpath routines. Included in the patch set is the supporting documentation and maintainers. Please apply. Thanks, Harish Patil (6): qede: add maintainers qede: add documentation qede: add QLogic PCI ids qede: add driver common module qede: add driver qede: enable PMD build MAINTAINERS | 7 + config/common_bsdapp | 15 + config/common_linuxapp | 16 + doc/guides/nics/index.rst | 1 + doc/guides/nics/qede.rst | 344 + drivers/net/Makefile | 1 + drivers/net/qede/LICENSE.qede_pmd | 28 + drivers/net/qede/Makefile | 95 + drivers/net/qede/ecore/bcm_osal.c | 130 + drivers/net/qede/ecore/bcm_osal.h | 408 + drivers/net/qede/ecore/common_hsi.h | 714 ++ drivers/net/qede/ecore/ecore.h | 785 ++ drivers/net/qede/ecore/ecore_attn_values.h | 13287 ++++++++++++++++++++++ drivers/net/qede/ecore/ecore_chain.h | 724 ++ drivers/net/qede/ecore/ecore_cxt.c | 2164 ++++ drivers/net/qede/ecore/ecore_cxt.h | 173 + drivers/net/qede/ecore/ecore_cxt_api.h | 79 + drivers/net/qede/ecore/ecore_dcbx.c | 950 ++ drivers/net/qede/ecore/ecore_dcbx.h | 55 + drivers/net/qede/ecore/ecore_dcbx_api.h | 166 + drivers/net/qede/ecore/ecore_dev.c | 3907 +++++++ drivers/net/qede/ecore/ecore_dev_api.h | 497 + drivers/net/qede/ecore/ecore_gtt_reg_addr.h | 42 + drivers/net/qede/ecore/ecore_gtt_values.h | 33 + drivers/net/qede/ecore/ecore_hsi_common.h | 1912 ++++ drivers/net/qede/ecore/ecore_hsi_eth.h | 1912 ++++ drivers/net/qede/ecore/ecore_hsi_tools.h | 1081 ++ drivers/net/qede/ecore/ecore_hw.c | 1000 ++ drivers/net/qede/ecore/ecore_hw.h | 273 + drivers/net/qede/ecore/ecore_hw_defs.h | 49 + drivers/net/qede/ecore/ecore_init_fw_funcs.c | 1275 +++ drivers/net/qede/ecore/ecore_init_fw_funcs.h | 263 + drivers/net/qede/ecore/ecore_init_ops.c | 610 + drivers/net/qede/ecore/ecore_init_ops.h | 103 + drivers/net/qede/ecore/ecore_int.c | 2234 ++++ drivers/net/qede/ecore/ecore_int.h | 234 + drivers/net/qede/ecore/ecore_int_api.h | 277 + drivers/net/qede/ecore/ecore_iov_api.h | 931 ++ drivers/net/qede/ecore/ecore_iro.h | 168 + drivers/net/qede/ecore/ecore_iro_values.h | 59 + drivers/net/qede/ecore/ecore_l2.c | 1801 +++ drivers/net/qede/ecore/ecore_l2.h | 151 + drivers/net/qede/ecore/ecore_l2_api.h | 401 + drivers/net/qede/ecore/ecore_mcp.c | 1952 ++++ drivers/net/qede/ecore/ecore_mcp.h | 304 + drivers/net/qede/ecore/ecore_mcp_api.h | 629 + drivers/net/qede/ecore/ecore_proto_if.h | 88 + drivers/net/qede/ecore/ecore_rt_defs.h | 449 + drivers/net/qede/ecore/ecore_sp_api.h | 42 + drivers/net/qede/ecore/ecore_sp_commands.c | 531 + drivers/net/qede/ecore/ecore_sp_commands.h | 137 + drivers/net/qede/ecore/ecore_spq.c | 989 ++ drivers/net/qede/ecore/ecore_spq.h | 302 + drivers/net/qede/ecore/ecore_sriov.c | 3422 ++++++ drivers/net/qede/ecore/ecore_sriov.h | 390 + drivers/net/qede/ecore/ecore_status.h | 30 + drivers/net/qede/ecore/ecore_utils.h | 31 + drivers/net/qede/ecore/ecore_vf.c | 1319 +++ drivers/net/qede/ecore/ecore_vf.h | 415 + drivers/net/qede/ecore/ecore_vf_api.h | 185 + drivers/net/qede/ecore/ecore_vfpf_if.h | 588 + drivers/net/qede/ecore/eth_common.h | 526 + drivers/net/qede/ecore/mcp_public.h | 1243 ++ drivers/net/qede/ecore/nvm_cfg.h | 935 ++ drivers/net/qede/ecore/reg_addr.h | 1112 ++ drivers/net/qede/qede_eth_if.c | 461 + drivers/net/qede/qede_eth_if.h | 180 + drivers/net/qede/qede_ethdev.c | 815 ++ drivers/net/qede/qede_ethdev.h | 138 + drivers/net/qede/qede_if.h | 167 + drivers/net/qede/qede_logs.h | 93 + drivers/net/qede/qede_main.c | 587 + drivers/net/qede/qede_rxtx.c | 1346 +++ drivers/net/qede/qede_rxtx.h | 183 + drivers/net/qede/rte_pmd_qede_version.map | 4 + lib/librte_eal/common/include/rte_pci_dev_ids.h | 44 + mk/rte.app.mk | 2 + scripts/test-build.sh | 1 + 78 files changed, 58995 insertions(+) create mode 100644 doc/guides/nics/qede.rst create mode 100644 drivers/net/qede/LICENSE.qede_pmd create mode 100644 drivers/net/qede/Makefile create mode 100644 drivers/net/qede/ecore/bcm_osal.c create mode 100644 drivers/net/qede/ecore/bcm_osal.h create mode 100644 drivers/net/qede/ecore/common_hsi.h create mode 100644 drivers/net/qede/ecore/ecore.h create mode 100644 drivers/net/qede/ecore/ecore_attn_values.h create mode 100644 drivers/net/qede/ecore/ecore_chain.h create mode 100644 drivers/net/qede/ecore/ecore_cxt.c create mode 100644 drivers/net/qede/ecore/ecore_cxt.h create mode 100644 drivers/net/qede/ecore/ecore_cxt_api.h create mode 100644 drivers/net/qede/ecore/ecore_dcbx.c create mode 100644 drivers/net/qede/ecore/ecore_dcbx.h create mode 100644 drivers/net/qede/ecore/ecore_dcbx_api.h create mode 100644 drivers/net/qede/ecore/ecore_dev.c create mode 100644 drivers/net/qede/ecore/ecore_dev_api.h create mode 100644 drivers/net/qede/ecore/ecore_gtt_reg_addr.h create mode 100644 drivers/net/qede/ecore/ecore_gtt_values.h create mode 100644 drivers/net/qede/ecore/ecore_hsi_common.h create mode 100644 drivers/net/qede/ecore/ecore_hsi_eth.h create mode 100644 drivers/net/qede/ecore/ecore_hsi_tools.h create mode 100644 drivers/net/qede/ecore/ecore_hw.c create mode 100644 drivers/net/qede/ecore/ecore_hw.h create mode 100644 drivers/net/qede/ecore/ecore_hw_defs.h create mode 100644 drivers/net/qede/ecore/ecore_init_fw_funcs.c create mode 100644 drivers/net/qede/ecore/ecore_init_fw_funcs.h create mode 100644 drivers/net/qede/ecore/ecore_init_ops.c create mode 100644 drivers/net/qede/ecore/ecore_init_ops.h create mode 100644 drivers/net/qede/ecore/ecore_int.c create mode 100644 drivers/net/qede/ecore/ecore_int.h create mode 100644 drivers/net/qede/ecore/ecore_int_api.h create mode 100644 drivers/net/qede/ecore/ecore_iov_api.h create mode 100644 drivers/net/qede/ecore/ecore_iro.h create mode 100644 drivers/net/qede/ecore/ecore_iro_values.h create mode 100644 drivers/net/qede/ecore/ecore_l2.c create mode 100644 drivers/net/qede/ecore/ecore_l2.h create mode 100644 drivers/net/qede/ecore/ecore_l2_api.h create mode 100644 drivers/net/qede/ecore/ecore_mcp.c create mode 100644 drivers/net/qede/ecore/ecore_mcp.h create mode 100644 drivers/net/qede/ecore/ecore_mcp_api.h create mode 100644 drivers/net/qede/ecore/ecore_proto_if.h create mode 100644 drivers/net/qede/ecore/ecore_rt_defs.h create mode 100644 drivers/net/qede/ecore/ecore_sp_api.h create mode 100644 drivers/net/qede/ecore/ecore_sp_commands.c create mode 100644 drivers/net/qede/ecore/ecore_sp_commands.h create mode 100644 drivers/net/qede/ecore/ecore_spq.c create mode 100644 drivers/net/qede/ecore/ecore_spq.h create mode 100644 drivers/net/qede/ecore/ecore_sriov.c create mode 100644 drivers/net/qede/ecore/ecore_sriov.h create mode 100644 drivers/net/qede/ecore/ecore_status.h create mode 100644 drivers/net/qede/ecore/ecore_utils.h create mode 100644 drivers/net/qede/ecore/ecore_vf.c create mode 100644 drivers/net/qede/ecore/ecore_vf.h create mode 100644 drivers/net/qede/ecore/ecore_vf_api.h create mode 100644 drivers/net/qede/ecore/ecore_vfpf_if.h create mode 100644 drivers/net/qede/ecore/eth_common.h create mode 100644 drivers/net/qede/ecore/mcp_public.h create mode 100644 drivers/net/qede/ecore/nvm_cfg.h create mode 100644 drivers/net/qede/ecore/reg_addr.h create mode 100644 drivers/net/qede/qede_eth_if.c create mode 100644 drivers/net/qede/qede_eth_if.h create mode 100644 drivers/net/qede/qede_ethdev.c create mode 100644 drivers/net/qede/qede_ethdev.h create mode 100644 drivers/net/qede/qede_if.h create mode 100644 drivers/net/qede/qede_logs.h create mode 100644 drivers/net/qede/qede_main.c create mode 100644 drivers/net/qede/qede_rxtx.c create mode 100644 drivers/net/qede/qede_rxtx.h create mode 100644 drivers/net/qede/rte_pmd_qede_version.map -- 1.8.3.1