From patchwork Fri Jun 10 17:42:52 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Clemens Gruber X-Patchwork-Id: 633870 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 3rR8qj0JGwz9sD3 for ; Sat, 11 Jun 2016 03:51:29 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753386AbcFJRv0 (ORCPT ); Fri, 10 Jun 2016 13:51:26 -0400 Received: from mail.pqgruber.com ([178.189.19.235]:58729 "EHLO mail.pqgruber.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752130AbcFJRv0 (ORCPT ); Fri, 10 Jun 2016 13:51:26 -0400 X-Greylist: delayed 450 seconds by postgrey-1.27 at vger.kernel.org; Fri, 10 Jun 2016 13:51:25 EDT Received: from archie.tuxnet.lan (chello213047168109.15.14.vie.surfer.at [213.47.168.109]) by mail.pqgruber.com (Postfix) with ESMTPSA id 80D927599F; Fri, 10 Jun 2016 19:43:52 +0200 (CEST) From: Clemens Gruber To: netdev@vger.kernel.org Cc: Florian Fainelli , linux-kernel@vger.kernel.org, "David S . Miller" , Clemens Gruber Subject: [PATCH] phy: marvell: remove LED config override Date: Fri, 10 Jun 2016 19:42:52 +0200 Message-Id: <20160610174252.14017-1-clemens.gruber@pqgruber.com> X-Mailer: git-send-email 2.8.3 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Configuring the PHY LED registers for the Marvell 88E1510 and others is not possible, because regardless of the values in marvell,reg-init, it is later overridden in m88e1121_config_aneg with a non-standard default. This became visible after we moved the call of marvell_of_reg_init in commit 79be1a1c9090 ("phy: marvell: Fix and unify reg-init behavior"). Moving it to _config_init was necessary due to the PHY state machine getting stuck if the PHY interrupts were not enabled early on. As that default LED configuration is set in _config_aneg, it overrides the marvell,reg-init configuration from the device tree. This patch removes this override and allows the user to again set the PHY LED configuration through marvell,reg-init or if that does not exist, keep the original defaults as documented in the datasheet. Signed-off-by: Clemens Gruber --- drivers/net/phy/marvell.c | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/drivers/net/phy/marvell.c b/drivers/net/phy/marvell.c index 280e879..7a94039 100644 --- a/drivers/net/phy/marvell.c +++ b/drivers/net/phy/marvell.c @@ -115,10 +115,6 @@ #define MII_88E1318S_PHY_WOL_CTRL_CLEAR_WOL_STATUS BIT(12) #define MII_88E1318S_PHY_WOL_CTRL_MAGIC_PACKET_MATCH_ENABLE BIT(14) -#define MII_88E1121_PHY_LED_CTRL 16 -#define MII_88E1121_PHY_LED_PAGE 3 -#define MII_88E1121_PHY_LED_DEF 0x0030 - #define MII_M1011_PHY_STATUS 0x11 #define MII_M1011_PHY_STATUS_1000 0x8000 #define MII_M1011_PHY_STATUS_100 0x4000 @@ -407,15 +403,7 @@ static int m88e1121_config_aneg(struct phy_device *phydev) if (err < 0) return err; - oldpage = phy_read(phydev, MII_MARVELL_PHY_PAGE); - - phy_write(phydev, MII_MARVELL_PHY_PAGE, MII_88E1121_PHY_LED_PAGE); - phy_write(phydev, MII_88E1121_PHY_LED_CTRL, MII_88E1121_PHY_LED_DEF); - phy_write(phydev, MII_MARVELL_PHY_PAGE, oldpage); - - err = genphy_config_aneg(phydev); - - return err; + return genphy_config_aneg(phydev); } static int m88e1318_config_aneg(struct phy_device *phydev)