Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp3221520imu; Sat, 24 Nov 2018 00:26:35 -0800 (PST) X-Google-Smtp-Source: AFSGD/V8SWeKHbjZbMFd2Jg6YHZfVCJEIllsCtSoNKMxK7vRBOu9jl+Fv4wiDSDfhOHqp6ePkrfh X-Received: by 2002:a17:902:780a:: with SMTP id p10mr19634029pll.54.1543047995483; Sat, 24 Nov 2018 00:26:35 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1543047995; cv=none; d=google.com; s=arc-20160816; b=IbnAgn2eJu/affbpYXZZZqkcms0CUTZLd3XwF0Goj1gl5JPJYf1/JkxANtn8Vkc7Jo VXCjgsgZdVxTIKWS8Sab7jT/uF6u7+jwn03fQmJC66ztjz6CIXVdUStNTNeJahNv2vyE r6fYwHETHVBe+CRpmMlYAlfyC0k3RP9aMOsmUdZIu2Ka2s41RsPZDC7Gnlim3ca2w5P+ WP1yb429s0LQODnOOHlWc/ivLBlfJ2VK6cqAbMfYJ0FQ4F4KZb5zhbbzVwqHyhZ5V07d JE7Oi/MbEhD5OVtLY9V3/34APWAn2wIoplBFX0iDILEpJIYID//k958yzsa3BO3t/nDQ UmIQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from; bh=s3Z97V9YeibPfaehxSyGUu175tPSWyE9PaD27mht2pw=; b=ra8YisN7SuvbAtiTuUjf1M5m6P1YqXdizCVTOuq3rWKhmgSX5Tvd/42kKuWR8mXk/t 5RxLKhzHlMbhpNXsk/DrlBGpX9taGgot60wECjpkQHeEU5/tQ0ZUvlmABF/sku2uyQzH mC4EKe31LxvpZhHXaBD/IHzc8JoKCwGWSlYamFkhJ8nD/GivomCUvAXq1w1ZD3FAnUAt w9i4+kU+1HdECMzkDRXzrxV/lXGB/PFvVK0i2w3CcpukEIwL43q3q90oE40IC/j9tHba b8xIb60DKuWCYMFY5ahyuM4DP3qKp+A1bc+wJDHI6tK07ZHeCJxpivaj9liAU56hCu/W mkpw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id y5si20202050pgs.588.2018.11.24.00.26.21; Sat, 24 Nov 2018 00:26:35 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2503380AbeKWV3w (ORCPT + 99 others); Fri, 23 Nov 2018 16:29:52 -0500 Received: from inva020.nxp.com ([92.121.34.13]:32804 "EHLO inva020.nxp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387625AbeKWV3w (ORCPT ); Fri, 23 Nov 2018 16:29:52 -0500 Received: from inva020.nxp.com (localhost [127.0.0.1]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id 9956A1A03CE; Fri, 23 Nov 2018 11:46:04 +0100 (CET) Received: from inva024.eu-rdc02.nxp.com (inva024.eu-rdc02.nxp.com [134.27.226.22]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id 977AD1A03C4; Fri, 23 Nov 2018 11:46:04 +0100 (CET) Received: from fsr-ub1664-016.ea.freescale.net (fsr-ub1664-016.ea.freescale.net [10.171.71.216]) by inva024.eu-rdc02.nxp.com (Postfix) with ESMTP id 56B7920622; Fri, 23 Nov 2018 11:46:04 +0100 (CET) From: Claudiu Manoil To: "David S . Miller" , netdev@vger.kernel.org Cc: linux-kernel@vger.kernel.org, alexandru.marginean@nxp.com, catalin.horghidan@nxp.com Subject: [PATCH net-next v3 0/4] Introduce ENETC ethernet drivers Date: Fri, 23 Nov 2018 12:45:59 +0200 Message-Id: <1542969963-10676-1-git-send-email-claudiu.manoil@nxp.com> X-Mailer: git-send-email 2.7.4 X-Virus-Scanned: ClamAV using ClamSMTP Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org ENETC is a multi-port virtualized Ethernet controller supporting GbE designs and Time-Sensitive Networking (TSN) functionality. ENETC is operating as an SR-IOV multi-PF capable Root Complex Integrated Endpoint (RCIE). As such, it contains multiple physical (PF) and virtual (VF) PCIe functions, discoverable by standard PCI Express. The patch series adds basic enablement for these otherwise standard buffer descriptor (BD) ring based ethernet devices (PCIe PFs and VFs), currently included in the 64-bit dual ARMv8 processors LS1028A SoC. The driver is portable to 32-bit designs, and it's independent of CPU endianness. Contributors: Alex Marginean Catalin Horghidan TODO list: * IEEE 1588 PTP support; * TSN support; * MDIO support and VF link management; * power management support; * flow control support; * TC offloading with h/w MQPRIO; * interrupt coalescing, configurable BD ring sizes, and other usual config options if missing. Claudiu Manoil (4): enetc: Introduce basic PF and VF ENETC ethernet drivers enetc: Add ethtool statistics enetc: Add vf to pf messaging support enetc: Add RFS and RSS support MAINTAINERS | 6 + drivers/net/ethernet/freescale/Kconfig | 1 + drivers/net/ethernet/freescale/Makefile | 3 + drivers/net/ethernet/freescale/enetc/Kconfig | 19 + drivers/net/ethernet/freescale/enetc/Makefile | 15 + drivers/net/ethernet/freescale/enetc/enetc.c | 1575 ++++++++++++++++++++ drivers/net/ethernet/freescale/enetc/enetc.h | 229 +++ drivers/net/ethernet/freescale/enetc/enetc_cbdr.c | 210 +++ .../net/ethernet/freescale/enetc/enetc_ethtool.c | 597 ++++++++ drivers/net/ethernet/freescale/enetc/enetc_hw.h | 519 +++++++ drivers/net/ethernet/freescale/enetc/enetc_msg.c | 164 ++ drivers/net/ethernet/freescale/enetc/enetc_pf.c | 921 ++++++++++++ drivers/net/ethernet/freescale/enetc/enetc_pf.h | 49 + drivers/net/ethernet/freescale/enetc/enetc_vf.c | 255 ++++ 14 files changed, 4563 insertions(+) create mode 100644 drivers/net/ethernet/freescale/enetc/Kconfig create mode 100644 drivers/net/ethernet/freescale/enetc/Makefile create mode 100644 drivers/net/ethernet/freescale/enetc/enetc.c create mode 100644 drivers/net/ethernet/freescale/enetc/enetc.h create mode 100644 drivers/net/ethernet/freescale/enetc/enetc_cbdr.c create mode 100644 drivers/net/ethernet/freescale/enetc/enetc_ethtool.c create mode 100644 drivers/net/ethernet/freescale/enetc/enetc_hw.h create mode 100644 drivers/net/ethernet/freescale/enetc/enetc_msg.c create mode 100644 drivers/net/ethernet/freescale/enetc/enetc_pf.c create mode 100644 drivers/net/ethernet/freescale/enetc/enetc_pf.h create mode 100644 drivers/net/ethernet/freescale/enetc/enetc_vf.c -- 2.7.4