From patchwork Fri Oct 5 10:24:37 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Igor Russkikh X-Patchwork-Id: 10627829 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 5113815A6 for ; Fri, 5 Oct 2018 10:24:52 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 43CF628FD2 for ; Fri, 5 Oct 2018 10:24:52 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 36F5728FDE; Fri, 5 Oct 2018 10:24:52 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C4BE028FD2 for ; Fri, 5 Oct 2018 10:24:51 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727974AbeJERWu (ORCPT ); Fri, 5 Oct 2018 13:22:50 -0400 Received: from mail-bn3nam01on0079.outbound.protection.outlook.com ([104.47.33.79]:58664 "EHLO NAM01-BN3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1727601AbeJERWu (ORCPT ); Fri, 5 Oct 2018 13:22:50 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=AQUANTIA1COM.onmicrosoft.com; s=selector1-aquantia-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3/jONvyyg39/996TeNeowsUtMAhVLD9zh836Mt/bwyk=; b=u27Z6C+kDqEmD0OGSKYpj368lqwB0/Rp+5jBPVFJ/2oR3lxEbP6uH9MwBO5j7qw6COEaJquNMto+WOByVl+nm3QcQPWVeub09EXooALTY/HP/ajlxTvN+UEMhVvstPBvZYPxuDTzy1yDAnJYHQKzODhwdiCg34Dn0BeIdboFiJU= Received: from BY1PR0701MB1660.namprd07.prod.outlook.com (10.162.110.22) by BY1PR0701MB1641.namprd07.prod.outlook.com (10.162.110.158) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1207.21; Fri, 5 Oct 2018 10:24:37 +0000 Received: from BY1PR0701MB1660.namprd07.prod.outlook.com ([fe80::346d:e756:e70e:17]) by BY1PR0701MB1660.namprd07.prod.outlook.com ([fe80::346d:e756:e70e:17%2]) with mapi id 15.20.1207.021; Fri, 5 Oct 2018 10:24:37 +0000 From: Igor Russkikh To: "David S . Miller" CC: "linux-usb@vger.kernel.org" , "netdev@vger.kernel.org" , Igor Russkikh Subject: [PATCH net-next 00/19] Add support for Aquantia AQtion USB to 5/2.5GbE devices Thread-Topic: [PATCH net-next 00/19] Add support for Aquantia AQtion USB to 5/2.5GbE devices Thread-Index: AQHUXJWeFwCp5p7M3EquxKClp+4PtA== Date: Fri, 5 Oct 2018 10:24:37 +0000 Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: AM5PR0602CA0024.eurprd06.prod.outlook.com (2603:10a6:203:a3::34) To BY1PR0701MB1660.namprd07.prod.outlook.com (2a01:111:e400:522a::22) authentication-results: spf=none (sender IP is ) smtp.mailfrom=Igor.Russkikh@aquantia.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [95.79.108.179] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1;BY1PR0701MB1641;6:yYHhb/iG6t0yFj7sfqBG+jktlZIgilZKdtovAD+3KNtRSCitNtfKXZEGjSqBsPjAtYAHcxoQPX5ZmopOSk3YeHFlJXtWAsa1HEHXywFWLzE5rS+KJBodiyNkVjU84Eo/cYR73tionhc6HQX/o233DH55Wounq/5dSMMY8iZxL1DAsr3a63/hTGhdMIw5MbCXWe5osj1DJbpkEUAIAGzvQiNThdJSscoBT4ej2XYZfHBXvFc4Rpohs8AX4ImMlIpDIxSEISCYNwDPeBUm90RUhtNvLdSTcldKFtHI2dJGKenOicO370c02fjnxJi77pZfnNhcqkfNwn/KooAJO6LR1smH0hOyX1saISGcAzzYkvlAg3gyXQDM4ksLedZHvMt3XIClIbfv+i78PR8FzSnNJZ2EaRuzljupdfAGvHjL3JL98+Ob0on1/No6AdHXYsQdKYcDGki+IT6gL6Na53/lZA==;5:gDAy/ty1Bf2S9g0bmy02lq3BWVHkrtLF3pExwMJ3Q+ahUnbWRIjBtyNvulER0cYVmqR+hCNLKF2OuSEmxwy253VKHbc+teIKRxMntn+VJ51i358SPER7n0dzgUAurK9O9cj+7xmPDPEvdyCctCisVEk7ttRo3xlTgfqGSdqdNAQ=;7:gMtfow9xTqWlUTpbKcnSxRpajG0c+bltZS/fjYIL+QlL7cBbzm/WCPfzUQQuB00r5RBgBz3/9TDljp102+TwbxJ9swWpJA/NT2rKt3xB5CBG99sK9IV7kiCRJPU5Q+SHp2Q5duXTBQiMbNbWVZbF+08swfMrMWchl26tatkgFjbfmjvf8JzEr2tjxnWCjMptAR12hPSXCx20YTjw1i7QLvy3sziuPZMj+HTjc08/mEWQVRT5NR7Bur6WRsvZJGBu x-ms-office365-filtering-correlation-id: ecb3bcaf-7227-45ee-f283-08d62aacbff4 x-microsoft-antispam: BCL:0;PCL:0;RULEID:(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600074)(711020)(2017052603328)(7153060)(7193020);SRVR:BY1PR0701MB1641; x-ms-traffictypediagnostic: BY1PR0701MB1641: x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:; x-ms-exchange-senderadcheck: 1 x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(6040522)(2401047)(8121501046)(5005006)(3231355)(944501410)(52105095)(3002001)(10201501046)(93006095)(93001095)(149066)(150057)(6041310)(20161123564045)(20161123562045)(20161123558120)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(201708071742011)(7699051);SRVR:BY1PR0701MB1641;BCL:0;PCL:0;RULEID:;SRVR:BY1PR0701MB1641; x-forefront-prvs: 0816F1D86E x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(376002)(366004)(346002)(136003)(39850400004)(396003)(199004)(189003)(81166006)(81156014)(6436002)(86362001)(8676002)(316002)(14454004)(6512007)(8936002)(66066001)(256004)(386003)(2900100001)(2906002)(6506007)(6486002)(52116002)(36756003)(107886003)(3846002)(486006)(53936002)(71190400001)(476003)(99286004)(105586002)(14444005)(97736004)(26005)(44832011)(2616005)(68736007)(54906003)(186003)(5660300001)(5250100002)(71200400001)(7736002)(4326008)(102836004)(106356001)(305945005)(478600001)(6116002)(6916009)(72206003)(25786009);DIR:OUT;SFP:1101;SCL:1;SRVR:BY1PR0701MB1641;H:BY1PR0701MB1660.namprd07.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; received-spf: None (protection.outlook.com: aquantia.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: 2NpoFuQaxWa13sLxuZ4kIsuu5EkRV6GvSxWwG3dX9gsVz4yM3gSIuvAMHgtWTCpb1l8EENhyigtRizi4yLjXEZq6eg+qzOEd+CJprVbrw8aXEBwTSBCr5IK1cybA5II5WPU00kQPOo8tmqgnt4OV0UxeXOQbhgbCV5bFtBq3DzqwmHJr9D2BqCTx/B9byPyEvWo5i7VS4rhs9CDuMncTFCft33EGZlGzjQPmIWz8A06xtESkOBZm6I4iE+RtSl2SBby14YcAXP8D4hRIMj8iqcZBsTN+wR16fvNOwV+PkvrRBI8soIY3b9cDEOisn774D+pHYo7emIYa67WAhSO29KIFRC8+070o3oO7Z91HigA= spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM MIME-Version: 1.0 X-OriginatorOrg: aquantia.com X-MS-Exchange-CrossTenant-Network-Message-Id: ecb3bcaf-7227-45ee-f283-08d62aacbff4 X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Oct 2018 10:24:37.4778 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 83e2e134-991c-4ede-8ced-34d47e38e6b1 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR0701MB1641 Sender: linux-usb-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP This patchset introduces support for new multigig ethernet to USB dongle, developed jointly by Aquantia (Phy) and ASIX (USB MAC). The driver has similar structure with other ASIX MAC drivers (AX88179), but with a number of important differences: - Driver supports both direct Phy and custom firmware interface for Phy programming. This is due to different firmware modules available with this product. - Driver handles new 2.5G/5G link speed configuration and reporting. - Device support all speeds from 100M up to 5G. - Device supports MTU up to 16K. Device supports various standard networking features, like checksum offloads, vlan tagging/filtering, TSO. The code of this driver is based on original ASIX sources and was extended by Aquantia for 5G multigig support. Dmitry Bezrukov (19): net: usb: aqc111: Driver skeleton for Aquantia AQtion USB to 5GbE net: usb: aqc111: Add bind and empty unbind callbacks net: usb: aqc111: Add implementation of read and write commands net: usb: aqc111: Various callbacks implementation net: usb: aqc111: Introduce PHY access net: usb: aqc111: Introduce link management net: usb: aqc111: Add support for getting and setting of MAC address net: usb: aqc111: Implement TX data path net: usb: aqc111: Implement RX data path net: usb: aqc111: Add checksum offload support net: usb: aqc111: Add support for changing MTU net: usb: aqc111: Add support for enable/disable checksum offload net: usb: aqc111: Add support for TSO net: usb: aqc111: Implement set_rx_mode callback net: usb: aqc111: Add support for VLAN_CTAG_TX/RX offload net: usb: aqc111: Add RX VLAN filtering support net: usb: aqc111: Initialize ethtool_ops structure net: usb: aqc111: Implement get/set_link_ksettings callbacks net: usb: aqc111: Add support for wake on LAN by MAGIC packet drivers/net/usb/Kconfig | 12 + drivers/net/usb/Makefile | 1 + drivers/net/usb/aqc111.c | 1583 ++++++++++++++++++++++++++++++++++++++++++++++ drivers/net/usb/aqc111.h | 345 ++++++++++ 4 files changed, 1941 insertions(+) create mode 100644 drivers/net/usb/aqc111.c create mode 100644 drivers/net/usb/aqc111.h