Received: by 2002:a17:90a:b81:0:0:0:0 with SMTP id 1csp662889pjr; Fri, 9 Aug 2019 04:21:24 -0700 (PDT) X-Google-Smtp-Source: APXvYqwu05z3EnhiW3mQO84pRxYg8KdfSnE+EmYEdOOlQNLHEyGFhYxpdeYS7DROuE2BXBLziZi5 X-Received: by 2002:a63:de4f:: with SMTP id y15mr17605370pgi.239.1565349684748; Fri, 09 Aug 2019 04:21:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1565349684; cv=none; d=google.com; s=arc-20160816; b=hYAadKeX/DK2bJpKoR0bjr2zXtjUF4acoob/NzjfQBUG0kZipDBqtP4G4NqtThwjBs Fay4VISE32NqPYG1MUKg2IqN4NSxzLX+7NdFZUCYN0uQ3TyK6QFAmmy8j84U8di7DQcJ mI3XxFmWQwE7Gv71csud2XHVlH2OjrtM6f6DR4epjZXgkGQIHxcv5r/0YGnzHhxfS6pv N9zbSPgCBT0pxArun7obk7Pz2YnQqxiNDCi1D01wrNDivjq8ODcWxjwVuyHR14qq3+PU 6IcnvcNyDV9yDCZQQoxJchr4NOzzlAoOpwu1wXWnrIZpvGYDNPHtQqYxYJJG8YgJajAm DCnA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=2TA4E4ioABoApo3cN10r+bj+j/F58l9Z+lpydwND1/A=; b=ZfauK62IGod7lkNYbR5JaWFtjJ1bVSVZ5BXF2MCuBmAWlfafZpedBhDQ8zR+SaZclQ 0pmc0xX7HaGUqLZKO5OeE8HcU/8GmUmVHUIN4/JnAwqkwBq1GloYIjtl26w9iDyaJXhv Oagz27LmQqwVgsU8HAMCTRjc+0JovciZdfDF6lEmBrXvnTzqzc+hrduDLKQY6aSxr0bn cFtizXR/FhurTgzpEjl3ixnASlx4TuLuHgzbWV0hDMUWXjIOg8arbsOeDB0Av0yBVSBe 16dn7K4XaTfqfSY0/3+R3vOdjflXAWp6+Ry6XuriD27qNIfAktQ/+/EvAZak07KmelJy dRHQ== 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id k3si4111724pjt.103.2019.08.09.04.21.08; Fri, 09 Aug 2019 04:21:24 -0700 (PDT) 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726537AbfHILUe (ORCPT + 99 others); Fri, 9 Aug 2019 07:20:34 -0400 Received: from mail-wr1-f67.google.com ([209.85.221.67]:43970 "EHLO mail-wr1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726152AbfHILUd (ORCPT ); Fri, 9 Aug 2019 07:20:33 -0400 Received: by mail-wr1-f67.google.com with SMTP id p13so23312433wru.10; Fri, 09 Aug 2019 04:20:32 -0700 (PDT) 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:in-reply-to :references:mime-version:content-transfer-encoding; bh=2TA4E4ioABoApo3cN10r+bj+j/F58l9Z+lpydwND1/A=; b=jcxCYjjPC4sqE62z3SxLSdG/ix84v8vX0Z/CRAqbAqNrnccE5dHy3x/TUJGOHBtxfC BC7rt9vBcPPhkPEL3ZGRVXESN0hp6wqp2r+s4KhAGEw652ndQklPtePHFTrS4N79bpBE UYEpTf5ooI+Z6C/SBQyBemQ+pNoxJGmG13ArTVyh1wtG8gsG01TyCDJD4WLqHwiwMabW EZKs+PylXnmAPbOuQJgzWNhODNW2WG1l3REoW/JeVA5XqCrHX/jBAXmS7qxph9wYcXO6 DbLQZHGbFBK31cQ0yqaBIhugmLg8uWomK6i2s424+eCyEe/Ls7UMneWtlKLY7AeWT297 dUwA== X-Gm-Message-State: APjAAAVwaKiw0wMphc4eQ7K+TTl4iSLWDK9fyLP7XTmrmUAz75V2zrMU AHCf0+nB+9I2bXVrhm8/sJFX46+TZzdQ8Q== X-Received: by 2002:adf:e884:: with SMTP id d4mr13902945wrm.99.1565349631718; Fri, 09 Aug 2019 04:20:31 -0700 (PDT) Received: from tfsielt31850.garage.tyco.com ([77.107.218.170]) by smtp.gmail.com with ESMTPSA id u1sm6018079wml.14.2019.08.09.04.20.30 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Fri, 09 Aug 2019 04:20:30 -0700 (PDT) From: =?UTF-8?q?Andr=C3=A9=20Draszik?= To: linux-kernel@vger.kernel.org Cc: =?UTF-8?q?Andr=C3=A9=20Draszik?= , Andrew Lunn , Florian Fainelli , Heiner Kallweit , "David S. Miller" , netdev@vger.kernel.org Subject: [PATCH v2] net: phy: at803x: stop switching phy delay config needlessly Date: Fri, 9 Aug 2019 12:20:25 +0100 Message-Id: <20190809112025.27482-1-git@andred.net> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190809005754.23009-1-git@andred.net> References: <20190809005754.23009-1-git@andred.net> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This driver does a funny dance disabling and re-enabling RX and/or TX delays. In any of the RGMII-ID modes, it first disables the delays, just to re-enable them again right away. This looks like a needless exercise. Just enable the respective delays when in any of the relevant 'id' modes, and disable them otherwise. Also, remove comments which don't add anything that can't be seen by looking at the code. Signed-off-by: André Draszik CC: Andrew Lunn CC: Florian Fainelli CC: Heiner Kallweit CC: "David S. Miller" CC: netdev@vger.kernel.org --- v2: also remove braces around single lines --- drivers/net/phy/at803x.c | 32 ++++++++------------------------ 1 file changed, 8 insertions(+), 24 deletions(-) diff --git a/drivers/net/phy/at803x.c b/drivers/net/phy/at803x.c index 222ccd9ecfce..6ad8b1c63c34 100644 --- a/drivers/net/phy/at803x.c +++ b/drivers/net/phy/at803x.c @@ -257,36 +257,20 @@ static int at803x_config_init(struct phy_device *phydev) * after HW reset: RX delay enabled and TX delay disabled * after SW reset: RX delay enabled, while TX delay retains the * value before reset. - * - * So let's first disable the RX and TX delays in PHY and enable - * them based on the mode selected (this also takes care of RGMII - * mode where we expect delays to be disabled) */ - - ret = at803x_disable_rx_delay(phydev); - if (ret < 0) - return ret; - ret = at803x_disable_tx_delay(phydev); - if (ret < 0) - return ret; - if (phydev->interface == PHY_INTERFACE_MODE_RGMII_ID || - phydev->interface == PHY_INTERFACE_MODE_RGMII_RXID) { - /* If RGMII_ID or RGMII_RXID are specified enable RX delay, - * otherwise keep it disabled - */ + phydev->interface == PHY_INTERFACE_MODE_RGMII_RXID) ret = at803x_enable_rx_delay(phydev); - if (ret < 0) - return ret; - } + else + ret = at803x_disable_rx_delay(phydev); + if (ret < 0) + return ret; if (phydev->interface == PHY_INTERFACE_MODE_RGMII_ID || - phydev->interface == PHY_INTERFACE_MODE_RGMII_TXID) { - /* If RGMII_ID or RGMII_TXID are specified enable TX delay, - * otherwise keep it disabled - */ + phydev->interface == PHY_INTERFACE_MODE_RGMII_TXID) ret = at803x_enable_tx_delay(phydev); - } + else + ret = at803x_disable_tx_delay(phydev); return ret; } -- 2.20.1