From patchwork Wed Oct 25 22:04:10 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Doug Berger X-Patchwork-Id: 830405 Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="kPSTYyMy"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3yMklM01lhz9t2W for ; Thu, 26 Oct 2017 09:07:27 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932291AbdJYWFI (ORCPT ); Wed, 25 Oct 2017 18:05:08 -0400 Received: from mail-qt0-f193.google.com ([209.85.216.193]:55256 "EHLO mail-qt0-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932141AbdJYWFG (ORCPT ); Wed, 25 Oct 2017 18:05:06 -0400 Received: by mail-qt0-f193.google.com with SMTP id z19so1959016qtg.11; Wed, 25 Oct 2017 15:05:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=Gr5IhZgaaHElOO5npa7ED3XjdhWnr/yAoJUOxpoJ/Zs=; b=kPSTYyMyJ50hVnMmb8stvV2Eiu0Q9fjjADfcgWLMgqGQSqlzqFLiT2+gdA+/UiPKpc g3QwrnEHHnQOXf+02/Uz3sDbgHMnc5iRTY4+/eqYVSfLO4VOzBT5xqddVj3amW4C5VXY kCUX/zeBac9esyOUzTpPSFh653nY2T1XzfdblWpFRcYvTDvD6WRQRH3N0bPG8+TIoBYw OFmC/s4lzLWlZROPbELCrRwS/8LByoU2MXJ8H1gUSWsH34/6PP5SRLBXv3Gg1WUhsgfL yjMbfA4283cbhsSnaElIi9fCrbbX4kVdN+keu0jCUY9EVYkMktIYqREpv1xkkyGp1sbT 8lDQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=Gr5IhZgaaHElOO5npa7ED3XjdhWnr/yAoJUOxpoJ/Zs=; b=Uqaqoq91Py+TpLYDIXmMIcOyca8AitkhJ7c2K3xDBZkz9LvMflDaLQUXNFWIE5gwQo jabeVq6/YedkyGwmv2p8Tzf7r3/OBjqtxdr8oxt9zF0zf0kfAgZNpcytAWkH/4BFMUEb k7+P5oSyV92SL955mj7+sGTG+HbysGCNuomQ8hAl//qPgZEo7DdXqCrb+Pz7CTqG7c1N aYoZbF9GxQOjemCvO/GZbpsfljZ7X2kYDEDNcZM+3aKKJvEIqDEXEgSUIaRv3v+edFdF lj2/jSPgiubW3+SBSC3fuliSHyCcOYlH4S9DPdqhuWcETA94b8WAQvES0cde2l0m47/Z IH8A== X-Gm-Message-State: AMCzsaW+HrTCDLiPPR/c3lCbFPRA4kaaMmxqXccjmINZky3qmtSlV3a/ htKwb+G1ODXNgBJfckGQ83aGLjU8 X-Google-Smtp-Source: ABhQp+QWPtAnXKtM0v81xGLR5+f7PtfPvvelok3dkh70Dss+Y1boaC3P0Lc7H+X9eEI1FPqTZvW8eg== X-Received: by 10.200.26.99 with SMTP id q32mr32782488qtk.222.1508969105429; Wed, 25 Oct 2017 15:05:05 -0700 (PDT) Received: from stb-bld-02.irv.broadcom.com ([192.19.255.250]) by smtp.gmail.com with ESMTPSA id f38sm2690246qtf.17.2017.10.25.15.05.04 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 25 Oct 2017 15:05:04 -0700 (PDT) From: Doug Berger To: Florian Fainelli Cc: Doug Berger , netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH net-next 0/9] net: bcmgenet: start/stop sequence refinement Date: Wed, 25 Oct 2017 15:04:10 -0700 Message-Id: <20171025220419.24951-1-opendmb@gmail.com> X-Mailer: git-send-email 2.14.1 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org This commit set is the result of an investigation into an issue that occurred when bringing the interface up and down repeatedly with an external 100BASE-T PHY. In some cases the MAC would experience mass receive packet duplication that could in rare cases lead to a stall from overflow. The fix for this is contained in the third commit. The first 3 commits represent bug fixes that should be applied to the net repository and are candidates for backporting to stable releases. The remaining commits are enhancements which is why the set is being submitted to net-next but they are implemented on top of the fixes. The first fix is provided as justification for why the set isn't split between a net submission and a net-next submission. Doug Berger (9): net: bcmgenet: correct bad merge net: bcmgenet: prevent duplicate calls of bcmgenet_dma_teardown net: bcmgenet: enable loopback during UniMAC sw_reset net: bcmgenet: move NAPI initialization to ring initialization net: bcmgenet: cleanup ring interrupt masking and unmasking net: bcmgenet: rework bcmgenet_netif_start and bcmgenet_netif_stop net: bcmgenet: relax lock constraints to reduce IRQ latency Revert "net: bcmgenet: Software reset EPHY after power on" net: bcmgenet: use dev->phydev instead of priv->phydev drivers/net/ethernet/broadcom/genet/bcmgenet.c | 269 +++++++------------------ drivers/net/ethernet/broadcom/genet/bcmgenet.h | 2 - drivers/net/ethernet/broadcom/genet/bcmmii.c | 33 +-- 3 files changed, 83 insertions(+), 221 deletions(-)