From patchwork Wed Mar 15 19:57:21 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Florian Fainelli X-Patchwork-Id: 739419 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3vk2Sw59NSz9ryj for ; Thu, 16 Mar 2017 06:57:36 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="WkysO6aY"; dkim-atps=neutral Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753985AbdCOT5e (ORCPT ); Wed, 15 Mar 2017 15:57:34 -0400 Received: from mail-wm0-f66.google.com ([74.125.82.66]:36640 "EHLO mail-wm0-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753821AbdCOT5c (ORCPT ); Wed, 15 Mar 2017 15:57:32 -0400 Received: by mail-wm0-f66.google.com with SMTP id x124so774350wmf.3 for ; Wed, 15 Mar 2017 12:57:31 -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=5Mqv1gqfNStf0qLxj07d5rvchLEuyA7Q8/5bGkj7rRE=; b=WkysO6aYyi0vEhOO6XUtkf8FC8EoBh211Te8N6G90DdJ2g/RyOEiowZIkDMBY5ULuw Y5bTkvc28cNNeKmZzm+aPup6cYuLiv02pG64J9ZmJMUuuKVE+83/NJNo9zkgnHbqAiQG hAjCXbkXGVpP0dp5uDl2m4uQoEt5lPSV2MMDPqcqFZkKBovXYib+RQ72D1l8rDksVCSI 5QJBMih9S/D5nXD+11YrmY8r5m5p6K4oiiDUcw7P+trrRwmydp25UqevRIbUCIu5lAme 29uCUOnJvebRDylV5HY+znLUlHu99WxpJeR+SxG0ceph0PODHuKSVCm73V5GN4gqWKa6 r5Zw== 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=5Mqv1gqfNStf0qLxj07d5rvchLEuyA7Q8/5bGkj7rRE=; b=NI0rop52rD2v7UuyzAT9O6CNxKwDsxpfvIhG2/9xCVrOxeHNFEGNHNpQI4qqwrYd/D EsdnbfDDpjyENwy7y6nfXSf1CdNugcZmgwv5H53wqsPJ2cx5lhLPYOrSZ+2bTsBZ2VKB Q5Y9kTRFz+c3B4dob99mA9N5JLWkrGn36LlVSoKpyGd9eqY71PLIiJsa97t86bEqHaw2 aS6RPk7jKN65sO6OP5blpmirycFZM8Ph2a0EFIHOXw+zFaZ4ez5K9zU0Kwv6TkGB0J47 KROTO8O+6TZ0YAASB8cmPsBjAUQvo62i78k6m4GEm8vJtgT1HsVoyXWBt9PZUXGeJKM+ EP8A== X-Gm-Message-State: AFeK/H2sOABvXwD/xXgXjb/pwcXYQ3yuvi/hf12l/9tXNIkRhMhOjS8heY8he6csNPpOdg== X-Received: by 10.28.6.203 with SMTP id 194mr22334755wmg.125.1489607850355; Wed, 15 Mar 2017 12:57:30 -0700 (PDT) Received: from fainelli-desktop.irv.broadcom.com ([192.19.255.250]) by smtp.gmail.com with ESMTPSA id l41sm3507124wre.23.2017.03.15.12.57.28 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 15 Mar 2017 12:57:29 -0700 (PDT) From: Florian Fainelli To: netdev@vger.kernel.org Cc: davem@davemloft.net, opendmb@gmail.com, pgynther@google.com, jaedon.shin@gmail.com, Florian Fainelli Subject: [PATCH net] net: bcmgenet: Do not suspend PHY if Wake-on-LAN is enabled Date: Wed, 15 Mar 2017 12:57:21 -0700 Message-Id: <20170315195721.11507-1-f.fainelli@gmail.com> X-Mailer: git-send-email 2.9.3 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Suspending the PHY would be putting it in a low power state where it may no longer allow us to do Wake-on-LAN. Fixes: cc013fb48898 ("net: bcmgenet: correctly suspend and resume PHY device") Signed-off-by: Florian Fainelli --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c b/drivers/net/ethernet/broadcom/genet/bcmgenet.c index 69015fa50f20..365895ed3c3e 100644 --- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c +++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c @@ -3481,7 +3481,8 @@ static int bcmgenet_suspend(struct device *d) bcmgenet_netif_stop(dev); - phy_suspend(priv->phydev); + if (!device_may_wakeup(d)) + phy_suspend(priv->phydev); netif_device_detach(dev); @@ -3578,7 +3579,8 @@ static int bcmgenet_resume(struct device *d) netif_device_attach(dev); - phy_resume(priv->phydev); + if (!device_may_wakeup(d)) + phy_resume(priv->phydev); if (priv->eee.eee_enabled) bcmgenet_eee_enable_set(dev, true);