From patchwork Sat Jan 26 00:40:37 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vladimir Oltean X-Patchwork-Id: 1031361 X-Patchwork-Delegate: joe.hershberger@gmail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="Fnoab+lS"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 43mcWp2xGWz9s7T for ; Sat, 26 Jan 2019 11:41:10 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 28D97C21DD4; Sat, 26 Jan 2019 00:40:56 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.6 required=5.0 tests=RCVD_IN_SORBS_WEB, SPF_HELO_PASS, T_DKIM_INVALID autolearn=no autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 5B2B8C21CB6; Sat, 26 Jan 2019 00:40:40 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id DAAB2C21CB6; Sat, 26 Jan 2019 00:40:38 +0000 (UTC) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-eopbgr150059.outbound.protection.outlook.com [40.107.15.59]) by lists.denx.de (Postfix) with ESMTPS id 43191C21CB6 for ; Sat, 26 Jan 2019 00:40:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cjVO/i591LGvcGmIZc890EmxOQAfZVEnqnxVGRdkYrM=; b=Fnoab+lS3aBjzDv3yYWLeUfT3ZH49P9lrzGVSwvcBb1/ipi67dCiVf36F/KdFp8ch0hs8UX4a+rOPL+0jquSRXxfsGOPtt3DzqdPzCGezq2kT9EEV1hMPv3tzttcZeaGSHmqGfjcRmsnFs+PCwemHKeZJjS9I5SU+7aCFxSLAv0= Received: from DB7PR04MB5163.eurprd04.prod.outlook.com (20.176.235.75) by DB7PR04MB4380.eurprd04.prod.outlook.com (52.135.137.142) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1558.18; Sat, 26 Jan 2019 00:40:37 +0000 Received: from DB7PR04MB5163.eurprd04.prod.outlook.com ([fe80::515:3d2f:7821:7703]) by DB7PR04MB5163.eurprd04.prod.outlook.com ([fe80::515:3d2f:7821:7703%6]) with mapi id 15.20.1558.021; Sat, 26 Jan 2019 00:40:37 +0000 From: Vladimir Oltean To: "u-boot@lists.denx.de" , "joe.hershberger@ni.com" Thread-Topic: [PATCH v3 1/6] net: phy: ar803x: Address packet drops at low traffic rate due to SmartEEE feature Thread-Index: AQHUtQ/B/ir8FBTkr0m1/E50d9MNVg== Date: Sat, 26 Jan 2019 00:40:37 +0000 Message-ID: <1548463214-18159-2-git-send-email-vladimir.oltean@nxp.com> References: <1548463214-18159-1-git-send-email-vladimir.oltean@nxp.com> In-Reply-To: <1548463214-18159-1-git-send-email-vladimir.oltean@nxp.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.7.4 x-clientproxiedby: VI1P18901CA0004.EURP189.PROD.OUTLOOK.COM (2603:10a6:801::14) To DB7PR04MB5163.eurprd04.prod.outlook.com (2603:10a6:10:1d::11) authentication-results: spf=none (sender IP is ) smtp.mailfrom=vladimir.oltean@nxp.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [86.34.165.90] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; DB7PR04MB4380; 6:1wH1bCGGqAAfDYFdbFUImZAaU8jNOnA5uU1cUIyyqduIEkKVoGG9wYV3vmMHz9ikB/6ObouR3MA5ZPFgwN9MOkufDj+OzOl3Rn8Bhb8shTWWV6ZdV8rtRBPybuOQRny80C/dBbsUnic7GmpM4PXci7Ta+CS04JMOtpd7EbAI8Bh9pLmWl7XKEcMvgp/Cv4haKZTeZ9jivtDs/GgELHAyresdSRP+JY27ULXGvV4IsDmZeCK1e1NCzrRibFLeGTVoOkL0vX828K/aiV7CYNBkTJSmN3zOXBypvWzwoqB2UnTMAX5pOwBsMQE8MnIr8x4d06WhEoLdr3dCYhvdp3ij58TYudsAWCk9BaYQEADZm5zPAjF/oJLswmC/Is0tjCKBjY33LaQACSmevGftxVvIB9W7gi6Hca0o683wwYr0D1b9GZ+QL1VHUIyEUOIw7Gsvz/UyLgzRPwY//y/Bt9/8ig==; 5:vT3oluxFKAd5NAFUYrJx/hckTqjtlRVI2t6fNOpnN740kg8bJ48pD+ArxGiRJzTFeifQekzalyE45mAE0io4aNeRvd7IkIOfWlBMgg/QnRR8sEmh647UruaJCEJfbODpGgZlAASXNayl9jsSnbDeGAZv4oGhO8ZMK8fsM3vsE1ruYVTO4KnWGOrzaf3u/l1twMtP4EkFTufPeTTYIw7CwQ==; 7:YngQ1dj3gq8FoCuYTwP9/u6cqQJfwpYmaICaEj9WuzpQPE5/frJobMLXL7dIgjpgCEGLNaRfqCYuymI2wYU5DoY+Dy7NjcpUI8Ywb78HP5J9z884pcqI4uM1DcuutVBSk1jxFXCORxAtvTSOPTgChg== x-ms-office365-filtering-correlation-id: afbb8e27-9202-4ab9-521d-08d68326e366 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600110)(711020)(4605077)(4618075)(2017052603328)(7153060)(7193020); SRVR:DB7PR04MB4380; x-ms-traffictypediagnostic: DB7PR04MB4380: x-microsoft-antispam-prvs: x-forefront-prvs: 0929F1BAED x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(346002)(366004)(376002)(136003)(39860400002)(396003)(189003)(199004)(2906002)(53936002)(25786009)(50226002)(106356001)(68736007)(105586002)(486006)(14454004)(2501003)(6486002)(44832011)(99286004)(81166006)(19627235002)(478600001)(6512007)(7736002)(305945005)(8676002)(81156014)(4326008)(6436002)(256004)(86362001)(8936002)(36756003)(6116002)(3846002)(76176011)(66066001)(52116002)(71200400001)(71190400001)(11346002)(386003)(446003)(186003)(110136005)(54906003)(6506007)(102836004)(97736004)(316002)(2616005)(476003)(26005)(16453002); DIR:OUT; SFP:1101; SCL:1; SRVR:DB7PR04MB4380; H:DB7PR04MB5163.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: LKq9JX0InjNl5bO2GctrVFBolqiduABI+xFwtupCqF48AmhmtJP2RDU3+9HY6kMbmcag3qMeFaHOzPowUhvTUuB/a/YWAZmij7kHX1zx1tXKFZeWDgUU8tT0/oFiuAx/6qjMXfkmQiORQ5ovMRPoL0E71DkDVIbTIx32TvuA55B3YhmO/ipmm2Y5Ytg9PtAb4uw5HJ0M8YfaqDt/ePN74vTuuHFq9Js8qw15q8jJPZA26PpQ4OBQPy2LXci1fdMvZ5sBUArFL9K3LfhW3YafD2psywoFcvq3vZ2uGodoWibM119zr/052aTOqvdEL6KIc75oQcNCaVunno8GgxjDYjuJczZG0Pow6qrIYrp8SjPQmuZS9f5rGDFIp8BDB62eZ3LwaYzOk0GARB3kTTm6XWFsoKCbg44BEDWPQhzecZc= MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: afbb8e27-9202-4ab9-521d-08d68326e366 X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Jan 2019 00:40:36.3041 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR04MB4380 Cc: Vladimir Oltean , "ccaione@baylibre.com" , "joseph.hershberger@ni.com" Subject: [U-Boot] [PATCH v3 1/6] net: phy: ar803x: Address packet drops at low traffic rate due to SmartEEE feature X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" According to the AR8031 and AR8035 datasheets, smartEEE mode (active by default) makes the PHY enter sleep after a configurable idle time. It does this autonomously, without LPI (Low Power Idle) signals coming from MAC. AR8021 does not appear to support this. This patch allows disabling the SmartEEE feature of above PHYs. Tested with ping (default of 1 second interval) over back-to-back RGMII between 2 boards having AR8035 at both ends: - Without SmartEEE: 225 packets transmitted, 145 received, 35% packet loss, time 229334ms - With SmartEEE: 144 packets transmitted, 144 received, 0% packet loss, time 146378ms Signed-off-by: Vladimir Oltean Acked-by: Joe Hershberger --- Changes in v3: * Got rid of magic numbers. drivers/net/phy/Kconfig | 21 +++++++++++++++++++++ drivers/net/phy/atheros.c | 26 ++++++++++++++++++++++++++ 2 files changed, 47 insertions(+) diff --git a/drivers/net/phy/Kconfig b/drivers/net/phy/Kconfig index 3dc0822..6abe8c5 100644 --- a/drivers/net/phy/Kconfig +++ b/drivers/net/phy/Kconfig @@ -94,6 +94,27 @@ config PHY_AQUANTIA_FW_NAME config PHY_ATHEROS bool "Atheros Ethernet PHYs support" +config PHY_ATHEROS_SMART_EEE + depends on PHY_ATHEROS + default y + tristate "SmartEEE feature for Atheros PHYs" + help + Enables the Atheros SmartEEE feature (not IEEE 802.3az). When 2 PHYs + which support this feature are connected back-to-back, they may + negotiate a low-power sleep mode autonomously, without the Ethernet + controller's knowledge. This setting may cause issues under 2 known + circumstances (both noticed at low traffic rates): + - If the voltage rails on the PHY are unstable, then the PHY can + actually reset as it enters the low power state. This means that + the frames it is supposed to buffer until it wakes up are going + to be dropped instead. + - If 1588/PTP synchronization is the only traffic source over this + PHY, the delays caused by the sleep/wakeup time are going to add + to the synchronization error between the master and the slave. + Default y, which means that the PHY's out-of-reset state is not + changed (SmartEEE active). To work around the issues described + above, change to n. + config PHY_BROADCOM bool "Broadcom Ethernet PHYs support" diff --git a/drivers/net/phy/atheros.c b/drivers/net/phy/atheros.c index 3783d15..7303267 100644 --- a/drivers/net/phy/atheros.c +++ b/drivers/net/phy/atheros.c @@ -5,6 +5,7 @@ * Copyright 2011, 2013 Freescale Semiconductor, Inc. * author Andy Fleming */ +#include #include #include @@ -17,6 +18,21 @@ #define AR803x_DEBUG_REG_0 0x0 #define AR803x_RGMII_RX_CLK_DLY 0x8000 +#define AR803x_SMART_EEE_CTRL3_REG 0x805D +#define AR803x_LPI_EN BIT(8) + +static void ar803x_enable_smart_eee(struct phy_device *phydev, bool on) +{ + int regval; + + regval = phy_read_mmd(phydev, MDIO_MMD_PCS, AR803x_SMART_EEE_CTRL3_REG); + if (on) + regval |= AR803x_LPI_EN; + else + regval &= ~AR803x_LPI_EN; + phy_write_mmd(phydev, MDIO_MMD_PCS, AR803x_SMART_EEE_CTRL3_REG, regval); +} + static int ar8021_config(struct phy_device *phydev) { phy_write(phydev, MDIO_DEVAD_NONE, 0x00, 0x1200); @@ -29,6 +45,11 @@ static int ar8021_config(struct phy_device *phydev) static int ar8031_config(struct phy_device *phydev) { +#ifdef CONFIG_PHY_ATHEROS_SMART_EEE + ar803x_enable_smart_eee(phydev, true); +#else + ar803x_enable_smart_eee(phydev, false); +#endif if (phydev->interface == PHY_INTERFACE_MODE_RGMII_TXID || phydev->interface == PHY_INTERFACE_MODE_RGMII_ID) { phy_write(phydev, MDIO_DEVAD_NONE, AR803x_PHY_DEBUG_ADDR_REG, @@ -57,6 +78,11 @@ static int ar8035_config(struct phy_device *phydev) { int regval; +#ifdef CONFIG_PHY_ATHEROS_SMART_EEE + ar803x_enable_smart_eee(phydev, true); +#else + ar803x_enable_smart_eee(phydev, false); +#endif phy_write(phydev, MDIO_DEVAD_NONE, 0xd, 0x0007); phy_write(phydev, MDIO_DEVAD_NONE, 0xe, 0x8016); phy_write(phydev, MDIO_DEVAD_NONE, 0xd, 0x4007); From patchwork Sat Jan 26 00:40:37 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vladimir Oltean X-Patchwork-Id: 1031362 X-Patchwork-Delegate: joe.hershberger@gmail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="dJ2Vfabn"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 43mcXf5vfNz9s7T for ; Sat, 26 Jan 2019 11:41:54 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 89A7EC21D56; Sat, 26 Jan 2019 00:41:09 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.6 required=5.0 tests=RCVD_IN_SORBS_WEB, SPF_HELO_PASS, T_DKIM_INVALID autolearn=no autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id DEFBBC21DED; Sat, 26 Jan 2019 00:40:40 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 44C8CC21CB6; Sat, 26 Jan 2019 00:40:39 +0000 (UTC) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-eopbgr150080.outbound.protection.outlook.com [40.107.15.80]) by lists.denx.de (Postfix) with ESMTPS id E9A64C21D56 for ; Sat, 26 Jan 2019 00:40:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jXfrZ14PTEjai6Ta7u4WT4rkba0B5eiVdTKcPLGWV+M=; b=dJ2VfabnZzCEE21+lXfBiAIX2hhrULMeMPeA4DUNbq1gAfPXv2uChJ4CYZCJm4DjGn4gb+w03dky6kCwJCKE+BaQlW9TfslEF/qabLv4Z3bVm7kK8eXW0obYszH+b7gJu3Vlq5q99/CYskUvFgWaQPmMQAVGHNf5A3Nd2v+JgsY= Received: from DB7PR04MB5163.eurprd04.prod.outlook.com (20.176.235.75) by DB7PR04MB4380.eurprd04.prod.outlook.com (52.135.137.142) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1558.18; Sat, 26 Jan 2019 00:40:37 +0000 Received: from DB7PR04MB5163.eurprd04.prod.outlook.com ([fe80::515:3d2f:7821:7703]) by DB7PR04MB5163.eurprd04.prod.outlook.com ([fe80::515:3d2f:7821:7703%6]) with mapi id 15.20.1558.021; Sat, 26 Jan 2019 00:40:37 +0000 From: Vladimir Oltean To: "u-boot@lists.denx.de" , "joe.hershberger@ni.com" Thread-Topic: [PATCH v3 2/6] net: phy: ar803x: Make RGMII Tx delays actually configurable for AR8035 Thread-Index: AQHUtQ/BQlK88dGKDUCfn0zZV6HNpw== Date: Sat, 26 Jan 2019 00:40:37 +0000 Message-ID: <1548463214-18159-3-git-send-email-vladimir.oltean@nxp.com> References: <1548463214-18159-1-git-send-email-vladimir.oltean@nxp.com> In-Reply-To: <1548463214-18159-1-git-send-email-vladimir.oltean@nxp.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.7.4 x-clientproxiedby: VI1P18901CA0004.EURP189.PROD.OUTLOOK.COM (2603:10a6:801::14) To DB7PR04MB5163.eurprd04.prod.outlook.com (2603:10a6:10:1d::11) authentication-results: spf=none (sender IP is ) smtp.mailfrom=vladimir.oltean@nxp.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [86.34.165.90] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; DB7PR04MB4380; 6:ItrIP/vEHyUW6ZHEON4AbzXr6KfNf7bTkzXlOMOX/V3olSpLNLr81Age/25lxVDDz/FOKZbzK9qf8leFxcaJ++fPfyIYitBaiMacGXFcdN1rvYyN5vni3n3NmJb3xRKP+A5dN7k9xZwEYVhZJIvRavM7nxIJ8FtUcGYTPlNYbVsECt/qYFsqayb36ciEvOKSRieFoDM3UUV1LK3tMSpnnzAhgJEOT3DhMKcZ3kgbl8AEMYaptWMzJiHvqKkFrhJ0m6m/JAXuJqXJcHyL74oPzcPRKu4jP3n2W/61VbZ7FjPytVUoWTA/UQLh/S2VNLq5NeQiUUSvAuLBw6fYr6OdAaDV480c6UD62AcUgDUhr0A/V20aaKjEf4mLQ6ZFqHpNhDH5AZD0RZ+/Y+TcFyRdfiyKqmBUsfje9d9OtgIHKgYgY/2zVT+xEL0vNZFEEt/0NtGKNBKAGIsobidwbtmRFg==; 5:H5SbMY4tXg8cDufgapbiG2bnj7hgncP8PdlLWjGCCssgXGfXYW3z6GHCsDZTOEFTovCkn6BjXyfVU0GqorQBv5K2wDRf8bplSzTJlO6JyazJ7cseDFO6dK3dM4cmCF77hg8luzY6Xe/P3/+rd3ApzQll6kHde63HWxlyq2+9fUmNikdANNgYV+3lPo8lq3EZJtePFjPMu1lQ97iDW04dlQ==; 7:6qVzUlrTZS2zotu6sNUklM9AIG0XobjZnaJi2Lf3VCdB582J2NCQLHxOY4NP84h/DW7IRyrW2mR58B1n2PzMVJL7KBFArkw1RzzmYyps+rGoBw6r0XKERRZrbuzISudQKSVNF6WsDdn+YHollXJmdg== x-ms-office365-filtering-correlation-id: a2a8e190-b0f3-4b70-c29b-08d68326e3ed x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600110)(711020)(4605077)(4618075)(2017052603328)(7153060)(7193020); SRVR:DB7PR04MB4380; x-ms-traffictypediagnostic: DB7PR04MB4380: x-microsoft-antispam-prvs: x-forefront-prvs: 0929F1BAED x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(346002)(366004)(376002)(136003)(39860400002)(396003)(189003)(199004)(2906002)(53936002)(25786009)(50226002)(106356001)(68736007)(105586002)(486006)(14454004)(2501003)(6486002)(44832011)(99286004)(81166006)(478600001)(6512007)(7736002)(305945005)(8676002)(81156014)(4326008)(6436002)(14444005)(256004)(86362001)(8936002)(36756003)(6116002)(3846002)(76176011)(66066001)(52116002)(71200400001)(71190400001)(11346002)(386003)(446003)(186003)(110136005)(54906003)(6506007)(102836004)(97736004)(316002)(2616005)(476003)(26005); DIR:OUT; SFP:1101; SCL:1; SRVR:DB7PR04MB4380; H:DB7PR04MB5163.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: kdcrG9dlpHHZ28X2KuUJGYDuFkko2cA09hm9qYyoq7jCvEdbOmm1SLmsOzUELcDljY494nLg48DfSkdFnVyYlIX+ZI0WtUNxoHmlV5l+jjvsCoZGFPgt4l7/LBNzz+HJjV5Q5IiLbZvvqKFhVx/DJQwJUm00CxaWL9GWdp+NslVgZfrzcLACjcuHiIKAvOePvDwJBE3NFLZrz9gc6VmMGbpa6IMVsabVROAcx0PB6nFCmWjMkH2eiUG26eRM6a6NRt+gMQNFIcINzrdhdUoHcIEtZ1lVPWBGBAIP+ZhHuN0E1//nQTz6/i1BZpizAY5a90TKoRdxkha1Rhemm1zSrHEr8VGC0Wnj1tx6UJEqJu0nPu8KyeHmjT5oVeriOA5Y5SobXZEPu6+Y1BGvWq6jtMySQM+4vx7Yanxad5NmADg= MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: a2a8e190-b0f3-4b70-c29b-08d68326e3ed X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Jan 2019 00:40:37.1967 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR04MB4380 Cc: Vladimir Oltean , "ccaione@baylibre.com" , "joseph.hershberger@ni.com" Subject: [U-Boot] [PATCH v3 2/6] net: phy: ar803x: Make RGMII Tx delays actually configurable for AR8035 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Delete the extraneous write to debug reg 5 that enables Tx delay When the driver was originally introduced in commit "6027384a phylib: Add Atheros AR8035 GETH PHY support", the Tx delay was being unconditionally enabled. Then during "2ec4d10b phy: atheros: add support for RGMII_ID, RGMII_TXID and RGMII_RXID", the author did not notice that code for enabling Tx delay code was already. Therefore, the if condition for Tx delay has always been useless for this PHY since this commit introduced it. Prior to this patch, every AR8035 PHY in U-boot had Tx delay enabled. After this patch, only those who define the interface as RGMII_TXID or RGMII_ID will. This is to be expected, but will nonetheless break the setups of those who didn't know they rely on Tx delay implicitly. Signed-off-by: Vladimir Oltean Acked-by: Joe Hershberger --- Changes in v3: * Patch added in this version. drivers/net/phy/atheros.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/drivers/net/phy/atheros.c b/drivers/net/phy/atheros.c index 7303267..6a98316 100644 --- a/drivers/net/phy/atheros.c +++ b/drivers/net/phy/atheros.c @@ -89,10 +89,6 @@ static int ar8035_config(struct phy_device *phydev) regval = phy_read(phydev, MDIO_DEVAD_NONE, 0xe); phy_write(phydev, MDIO_DEVAD_NONE, 0xe, (regval|0x0018)); - phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x05); - regval = phy_read(phydev, MDIO_DEVAD_NONE, 0x1e); - phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, (regval|0x0100)); - if ((phydev->interface == PHY_INTERFACE_MODE_RGMII_ID) || (phydev->interface == PHY_INTERFACE_MODE_RGMII_TXID)) { /* select debug reg 5 */ From patchwork Sat Jan 26 00:40:38 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vladimir Oltean X-Patchwork-Id: 1031363 X-Patchwork-Delegate: joe.hershberger@gmail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="RHipUXF3"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 43mcYY6sj7z9s7T for ; Sat, 26 Jan 2019 11:42:41 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 89F73C21E1D; Sat, 26 Jan 2019 00:41:22 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.6 required=5.0 tests=RCVD_IN_SORBS_WEB, SPF_HELO_PASS, T_DKIM_INVALID autolearn=no autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 62032C21D65; Sat, 26 Jan 2019 00:40:45 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 2FAD8C21D56; Sat, 26 Jan 2019 00:40:40 +0000 (UTC) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-eopbgr150083.outbound.protection.outlook.com [40.107.15.83]) by lists.denx.de (Postfix) with ESMTPS id D4344C21D56 for ; Sat, 26 Jan 2019 00:40:39 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MDz8pSHv3NYiQG5JRGv72ujMEryhCXBc/tMMuXYXnBE=; b=RHipUXF3YCe7auA/YWdJQ+RWVGOXcTpYgrdYCzv8cOgIX37zd4pPUO4+oeko+U1cyMUEIsxr25RGCL88+nm2knUNmtv5SW6dV7sKe/JIMwSOzlxieSp0pKfXqxR8/qP5SjV792qGbkRdYLz5osYJL+qLqLQTu1eVPEMz9zb417w= Received: from DB7PR04MB5163.eurprd04.prod.outlook.com (20.176.235.75) by DB7PR04MB4380.eurprd04.prod.outlook.com (52.135.137.142) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1558.18; Sat, 26 Jan 2019 00:40:38 +0000 Received: from DB7PR04MB5163.eurprd04.prod.outlook.com ([fe80::515:3d2f:7821:7703]) by DB7PR04MB5163.eurprd04.prod.outlook.com ([fe80::515:3d2f:7821:7703%6]) with mapi id 15.20.1558.021; Sat, 26 Jan 2019 00:40:38 +0000 From: Vladimir Oltean To: "u-boot@lists.denx.de" , "joe.hershberger@ni.com" Thread-Topic: [PATCH v3 3/6] net: phy: ar803x: Use common functions for RGMII internal delays Thread-Index: AQHUtQ/CSWjZdiLKXUuIjBrlyctfIA== Date: Sat, 26 Jan 2019 00:40:38 +0000 Message-ID: <1548463214-18159-4-git-send-email-vladimir.oltean@nxp.com> References: <1548463214-18159-1-git-send-email-vladimir.oltean@nxp.com> In-Reply-To: <1548463214-18159-1-git-send-email-vladimir.oltean@nxp.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.7.4 x-clientproxiedby: VI1P18901CA0004.EURP189.PROD.OUTLOOK.COM (2603:10a6:801::14) To DB7PR04MB5163.eurprd04.prod.outlook.com (2603:10a6:10:1d::11) authentication-results: spf=none (sender IP is ) smtp.mailfrom=vladimir.oltean@nxp.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [86.34.165.90] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; DB7PR04MB4380; 6:9qrkHAJyinQxFLz064XPeDZCICTN8bqEVaPgygcoJv3/0YxV+Y/A5LJgqxrEMWP/9qg8Zkg0r1pZjyTKshuJIRdRtRF51BIcn5XoTEJZh7GAMpmlim2zZwnl5zjpi1ONtAlkraJJw/XXGhHXx0Te2rAu0Z4vtaQf6DqTtDPiNgo53onRrJHd6aLJ75bzyg50fyDAoBAIUkJJ+EN/vLzUDie86iIbzz6hScvKEf4Me1+ZmxPIWTgQ6C0afRxDVVX0aoWRkajJr+KFQwohLv7QS8e/qBrUCo0ByGwCSx6ptSoWW+ap2TOKbnZlP9IXeDOCFn8F8AxhQtzaSZR/OQ1Hebrm5t0b6dGgLUVWKg4v4sXBhQsora/KMkw3YGibFsLLK3/xjAA24Tmyx+PkDejaPGkV2J4Gio2svEvYbwnEmkJDKNS3MiY0kfmDffZa6CSVQ65RW4k2WohQGQrc6zwHOQ==; 5:XfCtPwjLUFr1pyYQUO8uJf+I/go0lbndqToA7Nbf+tAqbkntJ7S/gOShgq5pILxL3IghA/V35ftY0aijIj7FyYZ3qGmVOvQp+2WY+PYHAOfKRSu7Z9bVHheJG29eLmpKM2LuKgWJjRyQ+3ojUq9pQpCoLtei5n2h9LC9HGyvJWf8ZhGWQ8KhSUjnXLVjajMyvVbjU+Q6hGU1Q1Cd4zAtFQ==; 7:a5TFqaNesG+lcKSdXnXCi6q55mC8wNKBq4Ey0J7lpJNdP0wYvawzEnNcYXonVdDeHknGlKmHGZKM2ysJSnUtbeOSJuRjbIfYFCnLud7FH2GfYx7nONGGSM2p7tlib6oh/djdwvmnBfH8RE1K8VuELw== x-ms-office365-filtering-correlation-id: 221deddf-8111-4a54-33d9-08d68326e456 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600110)(711020)(4605077)(4618075)(2017052603328)(7153060)(7193020); SRVR:DB7PR04MB4380; x-ms-traffictypediagnostic: DB7PR04MB4380: x-microsoft-antispam-prvs: x-forefront-prvs: 0929F1BAED x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(346002)(366004)(376002)(136003)(39860400002)(396003)(189003)(199004)(2906002)(53936002)(25786009)(50226002)(106356001)(68736007)(105586002)(486006)(14454004)(2501003)(6486002)(44832011)(99286004)(81166006)(19627235002)(478600001)(6512007)(7736002)(305945005)(8676002)(81156014)(4326008)(6436002)(14444005)(256004)(86362001)(8936002)(36756003)(6116002)(3846002)(76176011)(66066001)(52116002)(71200400001)(71190400001)(11346002)(386003)(446003)(186003)(110136005)(54906003)(6506007)(102836004)(97736004)(316002)(2616005)(476003)(26005); DIR:OUT; SFP:1101; SCL:1; SRVR:DB7PR04MB4380; H:DB7PR04MB5163.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: fUIHjv8hViNnwIMYGCe3M6TR7Q5DcoFd5nhUQm6/bxpVn7r7kav+1GRbdn3W4F3TtAMO4Ley8uw+RX1+gtG7hTfk5rgP7Mr/kj955PAp+IPIENRj/gzezcmXcs0c13yXmNzIeW2KjHDBLInAoQRQ4VbrNt0oqOHDin6iB9FlGqqhysv0mVmqgxRUpc2wyYpRk3RdJLxokUlhmARcHirJTrC+1wwGHPa72f4JQeoJY1imOquNAiRK0/vnWRN3kT8ZDIAcbtHEP5php9E+hF9stsI1el3Yr5kemfAyNgzS0JA2eE2NoPL5I9t4IG3fOGj7CPLtSkCBhWWIb5h3oLWXkUJO7Bxcr2sS9Ck9h7ZRZPcDzgqPQ1t6s1toh7CySrb+iB3QsambyP/NNXJpYNQXEGm+qwnzkS3IYYgdBNSRsNU= MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 221deddf-8111-4a54-33d9-08d68326e456 X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Jan 2019 00:40:37.8801 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR04MB4380 Cc: Vladimir Oltean , "ccaione@baylibre.com" , "joseph.hershberger@ni.com" Subject: [U-Boot] [PATCH v3 3/6] net: phy: ar803x: Use common functions for RGMII internal delays X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Signed-off-by: Vladimir Oltean Acked-by: Joe Hershberger --- Changes in v3: * Removed access to magic register 0x5 which turned out to be duplicated code with unwanted consequences. Broke that out into separate patch (2/6). drivers/net/phy/atheros.c | 69 ++++++++++++++++++++++++++++------------------- 1 file changed, 41 insertions(+), 28 deletions(-) diff --git a/drivers/net/phy/atheros.c b/drivers/net/phy/atheros.c index 6a98316..72e7fac 100644 --- a/drivers/net/phy/atheros.c +++ b/drivers/net/phy/atheros.c @@ -13,10 +13,10 @@ #define AR803x_PHY_DEBUG_DATA_REG 0x1e #define AR803x_DEBUG_REG_5 0x5 -#define AR803x_RGMII_TX_CLK_DLY 0x100 +#define AR803x_RGMII_TX_CLK_DLY BIT(8) #define AR803x_DEBUG_REG_0 0x0 -#define AR803x_RGMII_RX_CLK_DLY 0x8000 +#define AR803x_RGMII_RX_CLK_DLY BIT(15) #define AR803x_SMART_EEE_CTRL3_REG 0x805D #define AR803x_LPI_EN BIT(8) @@ -33,11 +33,40 @@ static void ar803x_enable_smart_eee(struct phy_device *phydev, bool on) phy_write_mmd(phydev, MDIO_MMD_PCS, AR803x_SMART_EEE_CTRL3_REG, regval); } +static void ar803x_enable_rx_delay(struct phy_device *phydev, bool on) +{ + int regval; + + phy_write(phydev, MDIO_DEVAD_NONE, AR803x_PHY_DEBUG_ADDR_REG, + AR803x_DEBUG_REG_0); + regval = phy_read(phydev, MDIO_DEVAD_NONE, AR803x_PHY_DEBUG_DATA_REG); + if (on) + regval |= AR803x_RGMII_RX_CLK_DLY; + else + regval &= ~AR803x_RGMII_RX_CLK_DLY; + phy_write(phydev, MDIO_DEVAD_NONE, AR803x_PHY_DEBUG_DATA_REG, regval); +} + +static void ar803x_enable_tx_delay(struct phy_device *phydev, bool on) +{ + int regval; + + phy_write(phydev, MDIO_DEVAD_NONE, AR803x_PHY_DEBUG_ADDR_REG, + AR803x_DEBUG_REG_5); + regval = phy_read(phydev, MDIO_DEVAD_NONE, AR803x_PHY_DEBUG_DATA_REG); + if (on) + regval |= AR803x_RGMII_TX_CLK_DLY; + else + regval &= ~AR803x_RGMII_TX_CLK_DLY; + phy_write(phydev, MDIO_DEVAD_NONE, AR803x_PHY_DEBUG_DATA_REG, regval); +} + static int ar8021_config(struct phy_device *phydev) { phy_write(phydev, MDIO_DEVAD_NONE, 0x00, 0x1200); - phy_write(phydev, MDIO_DEVAD_NONE, 0x1d, 0x05); - phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x3D47); + phy_write(phydev, MDIO_DEVAD_NONE, AR803x_PHY_DEBUG_ADDR_REG, + AR803x_DEBUG_REG_5); + phy_write(phydev, MDIO_DEVAD_NONE, AR803x_PHY_DEBUG_DATA_REG, 0x3D47); phydev->supported = phydev->drv->features; return 0; @@ -51,20 +80,12 @@ static int ar8031_config(struct phy_device *phydev) ar803x_enable_smart_eee(phydev, false); #endif if (phydev->interface == PHY_INTERFACE_MODE_RGMII_TXID || - phydev->interface == PHY_INTERFACE_MODE_RGMII_ID) { - phy_write(phydev, MDIO_DEVAD_NONE, AR803x_PHY_DEBUG_ADDR_REG, - AR803x_DEBUG_REG_5); - phy_write(phydev, MDIO_DEVAD_NONE, AR803x_PHY_DEBUG_DATA_REG, - AR803x_RGMII_TX_CLK_DLY); - } + phydev->interface == PHY_INTERFACE_MODE_RGMII_ID) + ar803x_enable_tx_delay(phydev, true); if (phydev->interface == PHY_INTERFACE_MODE_RGMII_RXID || - phydev->interface == PHY_INTERFACE_MODE_RGMII_ID) { - phy_write(phydev, MDIO_DEVAD_NONE, AR803x_PHY_DEBUG_ADDR_REG, - AR803x_DEBUG_REG_0); - phy_write(phydev, MDIO_DEVAD_NONE, AR803x_PHY_DEBUG_DATA_REG, - AR803x_RGMII_RX_CLK_DLY); - } + phydev->interface == PHY_INTERFACE_MODE_RGMII_ID) + ar803x_enable_rx_delay(phydev, true); phydev->supported = phydev->drv->features; @@ -90,20 +111,12 @@ static int ar8035_config(struct phy_device *phydev) phy_write(phydev, MDIO_DEVAD_NONE, 0xe, (regval|0x0018)); if ((phydev->interface == PHY_INTERFACE_MODE_RGMII_ID) || - (phydev->interface == PHY_INTERFACE_MODE_RGMII_TXID)) { - /* select debug reg 5 */ - phy_write(phydev, MDIO_DEVAD_NONE, 0x1D, 0x5); - /* enable tx delay */ - phy_write(phydev, MDIO_DEVAD_NONE, 0x1E, 0x0100); - } + (phydev->interface == PHY_INTERFACE_MODE_RGMII_TXID)) + ar803x_enable_tx_delay(phydev, true); if ((phydev->interface == PHY_INTERFACE_MODE_RGMII_ID) || - (phydev->interface == PHY_INTERFACE_MODE_RGMII_RXID)) { - /* select debug reg 0 */ - phy_write(phydev, MDIO_DEVAD_NONE, 0x1D, 0x0); - /* enable rx delay */ - phy_write(phydev, MDIO_DEVAD_NONE, 0x1E, 0x8000); - } + (phydev->interface == PHY_INTERFACE_MODE_RGMII_RXID)) + ar803x_enable_rx_delay(phydev, true); phydev->supported = phydev->drv->features; From patchwork Sat Jan 26 00:40:39 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vladimir Oltean X-Patchwork-Id: 1031365 X-Patchwork-Delegate: joe.hershberger@gmail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="Ji9skzbE"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 43mcZl32bWz9s7T for ; Sat, 26 Jan 2019 11:43:43 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 1E6CEC21D8E; Sat, 26 Jan 2019 00:41:35 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.6 required=5.0 tests=RCVD_IN_SORBS_WEB, SPF_HELO_PASS, T_DKIM_INVALID autolearn=no autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id D7BFEC21E3B; Sat, 26 Jan 2019 00:40:47 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 6CE5EC21DD3; Sat, 26 Jan 2019 00:40:43 +0000 (UTC) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-eopbgr150085.outbound.protection.outlook.com [40.107.15.85]) by lists.denx.de (Postfix) with ESMTPS id 42F1BC21DA2 for ; Sat, 26 Jan 2019 00:40:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wYLT9y4tlB7mpbbh2RLHLlDrAsgqR4BVpP4+0Pe0kYg=; b=Ji9skzbExBifNkMxsEjtw+/ebtNRy/mTjf1R69YGHMpPfKt7Z2DPlCWx1MF5IK/KAezXoHbNGtNEe8WSPnsOdKxhHcr7JYQEi6M2pzQN/jM+p08qeppnkGzzxGGhJmLnCBG2g8VAzbn11Sy+/tOBKTV6w8xSDctHkdps+YyVelA= Received: from DB7PR04MB5163.eurprd04.prod.outlook.com (20.176.235.75) by DB7PR04MB4380.eurprd04.prod.outlook.com (52.135.137.142) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1558.18; Sat, 26 Jan 2019 00:40:39 +0000 Received: from DB7PR04MB5163.eurprd04.prod.outlook.com ([fe80::515:3d2f:7821:7703]) by DB7PR04MB5163.eurprd04.prod.outlook.com ([fe80::515:3d2f:7821:7703%6]) with mapi id 15.20.1558.021; Sat, 26 Jan 2019 00:40:39 +0000 From: Vladimir Oltean To: "u-boot@lists.denx.de" , "joe.hershberger@ni.com" Thread-Topic: [PATCH v3 4/6] net: phy: ar803x: Explicitly disable RGMII delays Thread-Index: AQHUtQ/CBiiS3d8Wk0mw6Q+pVGqC1A== Date: Sat, 26 Jan 2019 00:40:39 +0000 Message-ID: <1548463214-18159-5-git-send-email-vladimir.oltean@nxp.com> References: <1548463214-18159-1-git-send-email-vladimir.oltean@nxp.com> In-Reply-To: <1548463214-18159-1-git-send-email-vladimir.oltean@nxp.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.7.4 x-clientproxiedby: VI1P18901CA0004.EURP189.PROD.OUTLOOK.COM (2603:10a6:801::14) To DB7PR04MB5163.eurprd04.prod.outlook.com (2603:10a6:10:1d::11) authentication-results: spf=none (sender IP is ) smtp.mailfrom=vladimir.oltean@nxp.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [86.34.165.90] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; DB7PR04MB4380; 6:OF1NHZ7I89nU3EcJhPJrly4+VWQVidVjOWD9NoroZ3hMHdAGEWTNY83qfgL/mKd79IkDE+M8PQ+UY6aqlcjEn6CDvNVsm2KfBw9+hc8erLVzJxNITijgcyRbeYdpZ0EstbWysymbtS7cqMaNbfcQEJjdLuDBMk+VQEdMeIpMMh1XAhLStS/QGTUEg8KEsw4oz2lL9FB4S15L+mVnh5E4aP8l3b4XahWuLIXIlNKO09ftEQS0+Cs30ptuP30fOjbmHeEm25F/JmouankfB3uoOmhX7ijXKd1zATjqfYT22wDRz7oNnQb9i8nfAXM7ncpytJawLpRPVkLK2j4my8N93hrXmyJYS7Y6cwF8X0uk+qdEy/fQoZXwUpg4nPM+b6pwiz7gTnIiqz1f5l7RuR2NvWNbQZmzLBFw7PiN9uiLD6oxmOv9JV89hTNGM98ykWuq5scE/TZSY3QMKQCXhaoKvA==; 5:cqwpSO4A16D4EITP7MCSh91kq0p5vMmgYHIXAyMKDkla4a6TtoSvVNGH9ylGucnK/kA2vvHlOfyav9q85MqN8sJXYDPPdrsukz8b8cPjZr9dcbWnAgOHhAmWul9GLIHvQy6e0+EIF3TQfRTt7qmiHgir/ae5NLQGbnFsaNFnpJgmekHX8RzXsCYPwH7u9bQJemtwjucACxS3aNAEz8ydew==; 7:yBuVB0sJexUA4GvlRDFN4fgigiXUVne7Jq9x39swSrNCLJr5VLrXH5OG3XlyRpz1Fy5Ui3mCcbT8YU8hIq8wiS7aqu3afdzSev5TpBAeFAELvCqnkdgk3glhBoF+OHZeqNG1xXo1lWZuAYqnY9+8vw== x-ms-office365-filtering-correlation-id: a4121277-67c0-4579-6709-08d68326e4ca x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600110)(711020)(4605077)(4618075)(2017052603328)(7153060)(7193020); SRVR:DB7PR04MB4380; x-ms-traffictypediagnostic: DB7PR04MB4380: x-microsoft-antispam-prvs: x-forefront-prvs: 0929F1BAED x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(346002)(366004)(376002)(136003)(39860400002)(396003)(189003)(199004)(2906002)(53936002)(25786009)(50226002)(106356001)(68736007)(105586002)(486006)(14454004)(2501003)(6486002)(44832011)(99286004)(81166006)(478600001)(6512007)(7736002)(305945005)(8676002)(81156014)(4326008)(6436002)(256004)(86362001)(8936002)(36756003)(6116002)(3846002)(76176011)(66066001)(52116002)(71200400001)(71190400001)(11346002)(386003)(446003)(186003)(110136005)(54906003)(6506007)(102836004)(97736004)(316002)(2616005)(476003)(26005); DIR:OUT; SFP:1101; SCL:1; SRVR:DB7PR04MB4380; H:DB7PR04MB5163.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: +eiQqyJZQvtOmiIn8n5R5qse5n3MyraSR7Z6//N77iAl3fJCYVJzelu+LwqLK23ioBHUg3jafsJYP3Yj4l+R7H9BR4+5BL6ZLc4AvDC99Vaq09Qf6XxxUWzcN1gZ8udEBiDBll+yXerxLAvgXAPzHQhWYUquV23tOTy7Y+OGsPRUZPi7OGHyTiiGVeHMititRpLa/qZB04nVucttWTTr5pmeWKnekHElxh0qA0f7w03hNYQmfiACP7HXoVXpsQnxOGQj6wnYlL3tlYfPvXy+0GIJkUM/iYq0IUAs5z+ezr48IDtA3981gn8JX/3OVtQrrfgjegpWjAHz/NXTOQYDwsvyKQ3aF7D2L+1Rdl2zT4xwR5kZOOMvohxI3hCL5j3dh0uXbNNP7qmtlbYQYz25Zjjp0JRyUg1WQYuP4nAfLIA= MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: a4121277-67c0-4579-6709-08d68326e4ca X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Jan 2019 00:40:38.6407 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR04MB4380 Cc: Vladimir Oltean , "ccaione@baylibre.com" , "joseph.hershberger@ni.com" Subject: [U-Boot] [PATCH v3 4/6] net: phy: ar803x: Explicitly disable RGMII delays X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" To eliminate any doubts about the out-of-reset value of the PHY, that the driver previously relied on. Signed-off-by: Vladimir Oltean Acked-by: Joe Hershberger --- Changes in v3: * Patch added in this version. drivers/net/phy/atheros.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/net/phy/atheros.c b/drivers/net/phy/atheros.c index 72e7fac..02aa61f 100644 --- a/drivers/net/phy/atheros.c +++ b/drivers/net/phy/atheros.c @@ -82,10 +82,14 @@ static int ar8031_config(struct phy_device *phydev) if (phydev->interface == PHY_INTERFACE_MODE_RGMII_TXID || phydev->interface == PHY_INTERFACE_MODE_RGMII_ID) ar803x_enable_tx_delay(phydev, true); + else + ar803x_enable_tx_delay(phydev, false); if (phydev->interface == PHY_INTERFACE_MODE_RGMII_RXID || phydev->interface == PHY_INTERFACE_MODE_RGMII_ID) ar803x_enable_rx_delay(phydev, true); + else + ar803x_enable_rx_delay(phydev, false); phydev->supported = phydev->drv->features; @@ -113,10 +117,14 @@ static int ar8035_config(struct phy_device *phydev) if ((phydev->interface == PHY_INTERFACE_MODE_RGMII_ID) || (phydev->interface == PHY_INTERFACE_MODE_RGMII_TXID)) ar803x_enable_tx_delay(phydev, true); + else + ar803x_enable_tx_delay(phydev, false); if ((phydev->interface == PHY_INTERFACE_MODE_RGMII_ID) || (phydev->interface == PHY_INTERFACE_MODE_RGMII_RXID)) ar803x_enable_rx_delay(phydev, true); + else + ar803x_enable_rx_delay(phydev, false); phydev->supported = phydev->drv->features; From patchwork Sat Jan 26 00:40:39 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vladimir Oltean X-Patchwork-Id: 1031364 X-Patchwork-Delegate: joe.hershberger@gmail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="ZZgA2GuN"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 43mcZT0mS8z9s7T for ; Sat, 26 Jan 2019 11:43:29 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id C912AC21E45; Sat, 26 Jan 2019 00:41:47 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.6 required=5.0 tests=RCVD_IN_SORBS_WEB, SPF_HELO_PASS, T_DKIM_INVALID autolearn=no autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 575A8C21D83; Sat, 26 Jan 2019 00:40:48 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 2A8ABC21DD7; Sat, 26 Jan 2019 00:40:44 +0000 (UTC) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-eopbgr150081.outbound.protection.outlook.com [40.107.15.81]) by lists.denx.de (Postfix) with ESMTPS id D3BDFC21DEC for ; Sat, 26 Jan 2019 00:40:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8fzwThGcXKthrk+68lXJkP2B2fepunCVSkEtq4RYGQE=; b=ZZgA2GuNFp1Yy1rh3KKnZ5cxJVhEKzzopjIugYJknr+rV5qM5RUJMQLMJ08A7XGESJSWJRN6vMiohoue5WSaCDuHZLZzVNF77z3LXqXl3V0/pIZvBeI9aRfrqOG7O7jCb2Si4qEfWhxKi0L0Vvl1fgcCTb6Acrd2mrYM+2Zb/Oo= Received: from DB7PR04MB5163.eurprd04.prod.outlook.com (20.176.235.75) by DB7PR04MB4380.eurprd04.prod.outlook.com (52.135.137.142) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1558.18; Sat, 26 Jan 2019 00:40:39 +0000 Received: from DB7PR04MB5163.eurprd04.prod.outlook.com ([fe80::515:3d2f:7821:7703]) by DB7PR04MB5163.eurprd04.prod.outlook.com ([fe80::515:3d2f:7821:7703%6]) with mapi id 15.20.1558.021; Sat, 26 Jan 2019 00:40:40 +0000 From: Vladimir Oltean To: "u-boot@lists.denx.de" , "joe.hershberger@ni.com" Thread-Topic: [PATCH v3 5/6] net: phy: ar803x: Clarify the configuration of the CLK_25M output pin Thread-Index: AQHUtQ/Ciflsh1nPBk21jMh3HDWE5w== Date: Sat, 26 Jan 2019 00:40:39 +0000 Message-ID: <1548463214-18159-6-git-send-email-vladimir.oltean@nxp.com> References: <1548463214-18159-1-git-send-email-vladimir.oltean@nxp.com> In-Reply-To: <1548463214-18159-1-git-send-email-vladimir.oltean@nxp.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.7.4 x-clientproxiedby: VI1P18901CA0004.EURP189.PROD.OUTLOOK.COM (2603:10a6:801::14) To DB7PR04MB5163.eurprd04.prod.outlook.com (2603:10a6:10:1d::11) authentication-results: spf=none (sender IP is ) smtp.mailfrom=vladimir.oltean@nxp.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [86.34.165.90] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; DB7PR04MB4380; 6:xu0gAKyM8DwIijRITKtvCKvgai2ZZeOW/uIqTeBafp9UGGYhvXM39Ysq63rI3PypKH9UYwgOEXJH1YnRQH0BM5xU7XmiKcn8zFgO9SlFRUKET0+4PXq/wL17AvKXUAgSDG19CoMsdRguRPYrGHif2xOHqh7qfdfgT5cBUYfsL2d3KMRSX4WzrlKHw2PLuhWwDT2MRcoecA7LTaOg3vMvt9VGQOO+5EcfzcCQJXotglQ9EB32wpURtU+0qRtm/N/XvddRA4VOCaggy8VZ3Dbxw5O8047tRcHhmgK8oLqbqDNhuYgOhg/nWZ4lRKjNPfvkhikg6m5eXmEKSC/2Hsb9UwdaXuJ86IW63d3quD3oiC8lKj50hpTY2MqlZuJPpmroqU7lbZ/3xketMax8xU+AgaN5yb8cYBdC9fMJL7fYNnVgw8D9evCpJjeanjCiFUOI9SViA1vlS43FwUhkG2eyTg==; 5:GuEaLNICghugviH9UYfSLq5ZVwn+JJiiDoTCxjfgmFwT8/AHO+94p8JL/x1Ym/zaqcfV0v6hSQAbL38VpXMwGA9LaH36Ui/Rmr2IUTejSPE7jZaPbD3w+yRZ2gq7klVyfMGRKsp0u3W6qDLvnDi3lfc56195mVUbeO+Lh0enjAplOJk+wk3H2YczaFkw1bMG9/W8M7uPPxoJ2laGxR2tBQ==; 7:h51rJdS1IMnc8vHBiu54MFYYBuaVKD1PbJgtGsYOOfm2kfRWfX5EvE3Y8mHGy4u0B3VKo6MxXQQzCYR4jIBi4NW5hGWJUM3wBzguAn/CHBYbnKclmz+j/cCPnY4Cc70R6rAQz1ioEyaTdh39wD1WWQ== x-ms-office365-filtering-correlation-id: 327ec80a-50bc-4556-9f9d-08d68326e531 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600110)(711020)(4605077)(4618075)(2017052603328)(7153060)(7193020); SRVR:DB7PR04MB4380; x-ms-traffictypediagnostic: DB7PR04MB4380: x-microsoft-antispam-prvs: x-forefront-prvs: 0929F1BAED x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(346002)(366004)(376002)(136003)(39860400002)(396003)(189003)(199004)(2906002)(53936002)(25786009)(50226002)(106356001)(68736007)(105586002)(486006)(14454004)(2501003)(6486002)(44832011)(99286004)(81166006)(19627235002)(478600001)(6512007)(7736002)(305945005)(8676002)(81156014)(4326008)(6436002)(256004)(86362001)(8936002)(36756003)(6116002)(3846002)(76176011)(66066001)(52116002)(71200400001)(71190400001)(11346002)(386003)(446003)(186003)(110136005)(54906003)(6506007)(102836004)(97736004)(316002)(2616005)(476003)(26005); DIR:OUT; SFP:1101; SCL:1; SRVR:DB7PR04MB4380; H:DB7PR04MB5163.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: We775LIWjWUptx87gSNCer3ECseQK4elQioJrdDoduhLQyu5JzSmUQHWvDwMECF309BrUAM58PD5VoV6HJjfhw5kSqnqSrhgsNPylRA4+jD0VHuwSNzbi8UEJ5zoTlqE9Ce41QuX4Prs0M8dhNhv0TFLhZLFdqK/ui6V1rdeirYNu6UnBIZE3kwkl+gYEyyZvu4aO2Imj8IiriUs+VqzxWCvAu+PXl04fLaKhrX8ou0FpsGNDrTC1AitKcAyPcfTZQmN676QIE9+K0M5HHuRJUZ60AuwQr3G/a5MhZxuGVQH8hkXfg2QtT5iBO2SpJGstu5TzmUzMshQrxp2Qh6vRguvYZfdvBTWCtfqVNtqb18UMwwoLNBSBRtdE6+FFMTyqXtkMRgli9blX7g5ItU2FCFUcohJ1n3pbzGk+wJr+b4= MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 327ec80a-50bc-4556-9f9d-08d68326e531 X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Jan 2019 00:40:39.3191 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR04MB4380 Cc: Vladimir Oltean , "ccaione@baylibre.com" , "joseph.hershberger@ni.com" Subject: [U-Boot] [PATCH v3 5/6] net: phy: ar803x: Clarify the configuration of the CLK_25M output pin X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Also take the opportunity to use the phy_read_mmd and phy_write_mmd convenience functions. Signed-off-by: Vladimir Oltean Acked-by: Joe Hershberger --- Changes in v3: * Patch added in this version. Partially squashed with patch 1/3 from v2, since addressing the comments on that patch gave its commit message a new meaning. drivers/net/phy/atheros.c | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/drivers/net/phy/atheros.c b/drivers/net/phy/atheros.c index 02aa61f..a2d0e0d 100644 --- a/drivers/net/phy/atheros.c +++ b/drivers/net/phy/atheros.c @@ -18,6 +18,15 @@ #define AR803x_DEBUG_REG_0 0x0 #define AR803x_RGMII_RX_CLK_DLY BIT(15) +/* CLK_25M register is at MMD 7, address 0x8016 */ +#define AR803x_CLK_25M_SEL_REG 0x8016 +/* AR8035: Select frequency on CLK_25M pin through bits 4:3 */ +#define AR8035_CLK_25M_FREQ_25M (0 | 0) +#define AR8035_CLK_25M_FREQ_50M (0 | BIT(3)) +#define AR8035_CLK_25M_FREQ_62M (BIT(4) | 0) +#define AR8035_CLK_25M_FREQ_125M (BIT(4) | BIT(3)) +#define AR8035_CLK_25M_MASK GENMASK(4, 3) + #define AR803x_SMART_EEE_CTRL3_REG 0x805D #define AR803x_LPI_EN BIT(8) @@ -108,11 +117,11 @@ static int ar8035_config(struct phy_device *phydev) #else ar803x_enable_smart_eee(phydev, false); #endif - phy_write(phydev, MDIO_DEVAD_NONE, 0xd, 0x0007); - phy_write(phydev, MDIO_DEVAD_NONE, 0xe, 0x8016); - phy_write(phydev, MDIO_DEVAD_NONE, 0xd, 0x4007); - regval = phy_read(phydev, MDIO_DEVAD_NONE, 0xe); - phy_write(phydev, MDIO_DEVAD_NONE, 0xe, (regval|0x0018)); + /* Configure CLK_25M output clock at 125 MHz */ + regval = phy_read_mmd(phydev, MDIO_MMD_AN, AR803x_CLK_25M_SEL_REG); + regval &= ~AR8035_CLK_25M_MASK; /* No surprises */ + regval |= AR8035_CLK_25M_FREQ_125M; + phy_write_mmd(phydev, MDIO_MMD_AN, AR803x_CLK_25M_SEL_REG, regval); if ((phydev->interface == PHY_INTERFACE_MODE_RGMII_ID) || (phydev->interface == PHY_INTERFACE_MODE_RGMII_TXID)) From patchwork Sat Jan 26 00:40:40 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vladimir Oltean X-Patchwork-Id: 1031366 X-Patchwork-Delegate: joe.hershberger@gmail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="MAUoUnLD"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 43mcZr5y74z9s7T for ; Sat, 26 Jan 2019 11:43:48 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 6A7F1C21DF8; Sat, 26 Jan 2019 00:42:01 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.6 required=5.0 tests=RCVD_IN_SORBS_WEB, SPF_HELO_PASS, T_DKIM_INVALID autolearn=no autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id D6B6EC21E50; Sat, 26 Jan 2019 00:40:54 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id DBF5DC21E0F; Sat, 26 Jan 2019 00:40:45 +0000 (UTC) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-eopbgr150059.outbound.protection.outlook.com [40.107.15.59]) by lists.denx.de (Postfix) with ESMTPS id B7153C21DF3 for ; Sat, 26 Jan 2019 00:40:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8zYLbcu1GHUEuDSsYhiw7Bzq/ObEvYLbslbpJfnFnkc=; b=MAUoUnLDSMdeV/12u8M0cQm2KeBMVxXt3d7ZyjCU+r9OqNiqir0qNd2kF+xBUQp4Kyf1kALttdRIn7K/RTQMJrPPu91Y+eUKB69zsAeYgonkklJoXutM3kqaY0AwMOzE3pcfVxEErLCVNKU9pWfJMUuNkToYJ0rjQIwXMqDM82U= Received: from DB7PR04MB5163.eurprd04.prod.outlook.com (20.176.235.75) by DB7PR04MB4380.eurprd04.prod.outlook.com (52.135.137.142) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1558.18; Sat, 26 Jan 2019 00:40:40 +0000 Received: from DB7PR04MB5163.eurprd04.prod.outlook.com ([fe80::515:3d2f:7821:7703]) by DB7PR04MB5163.eurprd04.prod.outlook.com ([fe80::515:3d2f:7821:7703%6]) with mapi id 15.20.1558.021; Sat, 26 Jan 2019 00:40:40 +0000 From: Vladimir Oltean To: "u-boot@lists.denx.de" , "joe.hershberger@ni.com" Thread-Topic: [PATCH v3 6/6] net: phy: ar803x: Clarify the intention of ar8021_config Thread-Index: AQHUtQ/DV37ekrdZjkibS46bahHLJg== Date: Sat, 26 Jan 2019 00:40:40 +0000 Message-ID: <1548463214-18159-7-git-send-email-vladimir.oltean@nxp.com> References: <1548463214-18159-1-git-send-email-vladimir.oltean@nxp.com> In-Reply-To: <1548463214-18159-1-git-send-email-vladimir.oltean@nxp.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.7.4 x-clientproxiedby: VI1P18901CA0004.EURP189.PROD.OUTLOOK.COM (2603:10a6:801::14) To DB7PR04MB5163.eurprd04.prod.outlook.com (2603:10a6:10:1d::11) authentication-results: spf=none (sender IP is ) smtp.mailfrom=vladimir.oltean@nxp.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [86.34.165.90] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; DB7PR04MB4380; 6:DZNPEccjU2rgfblZ26fkJtnx4cHFVhd5RwN9Xs5gtksNcIn9EKBmn/KJpfWwiKOi9SZK1Wg89AOAgtRqC9QcTPY4BZAnPpe4esyJ0IUNPiAOgKwLM+PAphPYCDDSEJcQxHtof+A51YAX+EclNYJgkFpzVDbTfoQSPmzOP5025tIiOcMYEQLZenu4/uZobdgb038k9crUrVnOFRs2IT7ElmZ6aS7Y38B+hArn/cuLNSzniQQmrSsNoVIu7nS6nTqfxpdZqcnSFmhv86Nl72ptqAqFW9rn22Xi+etUVjppLQUhTPSOVvJMYvbnuS3EtdPVSoU0WBUGl0afismhBaRhdkjPI2XLDb55xRFWkzwoIyR0vh/TjJCoH0BvFzV0Z61MZaaiJAs42kGRBRCz0LtDc9A7W4AcTpTkTduaiDWlTIqmgbKhasmxtnDOppJTzgXmiGJSoJyYrJWP9vbXNzuSsQ==; 5:/TkXtFtnwHNKnhfiiwFvExe+xwOEAI02n2Ucgu1EoZvqW2HkxtcXgBUjtHVcP9whFrN4Wbk2uSViqnCyY/4oLTeyWNNAFMKqXYzIL8b2dYaa/fhu5CoSK/9k+rH9AzGExUizMCy2o1t4Y0vMNIdotrGh8vqFYIG4CFQmI7vzJBfGqcaK+ynUnZ1QO9P0sWaMSPkMUyhofYYcELPxnwpsKQ==; 7:m5KkG+d/niIsdzbxSIVMe12N8IAzp1xLcL/wefHlsuhrVmns93obP60sweL/HPxHDpEyMnIlfgP/5KDkXuMBXVqKL9UizW7iGf7APqc1umdtNxUTz5Jakw/z15pEpQJNthyLA2hcboxjl1JRT4JWNQ== x-ms-office365-filtering-correlation-id: 870c0a32-3893-45cd-dc00-08d68326e596 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600110)(711020)(4605077)(4618075)(2017052603328)(7153060)(7193020); SRVR:DB7PR04MB4380; x-ms-traffictypediagnostic: DB7PR04MB4380: x-microsoft-antispam-prvs: x-forefront-prvs: 0929F1BAED x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(346002)(366004)(376002)(136003)(39860400002)(396003)(189003)(199004)(2906002)(53936002)(25786009)(50226002)(106356001)(68736007)(105586002)(486006)(14454004)(2501003)(6486002)(44832011)(99286004)(81166006)(478600001)(6512007)(7736002)(305945005)(8676002)(81156014)(4326008)(6436002)(256004)(86362001)(8936002)(36756003)(6116002)(3846002)(76176011)(66066001)(52116002)(71200400001)(71190400001)(11346002)(386003)(446003)(186003)(110136005)(54906003)(6506007)(102836004)(97736004)(316002)(2616005)(476003)(26005); DIR:OUT; SFP:1101; SCL:1; SRVR:DB7PR04MB4380; H:DB7PR04MB5163.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: 0SPvLf9tjI+4/YpKhPB9D/NKTZ0mm2KFxrtxsQp36JYPxL1R32aVqFrkRfNAdwb/mqWIVrhB90x4i8BafLO+U1LZ/MoVdVwjO85sWwi7KmIrB/k904I8J/Fo7rAUwRWGAfkBvkmDmWe5YGLPRaavJQ+fu9jGRcX+DtIfUOnIcR+lm5gapmU4sDuPsuZqAUjuwfWUB9770rv8V7z9RQ3wQkQKZo+pLObbm1LoyrWrApXjwxw8wDSrC+I7Yrnvp3RqFs8brXkStVaKn0WmVyPCfq/FVURCrRI9zi/tfoX5T0WPoLJmJ0MWFO62RrmLMV7mKfQQRQ8h1sOgm563O4RGDVAdi9keUQJPvLkrvwR26hMZuUjPztVfka56b4z82arEMiS0NZgj+wqFNprduphs2m312XDF8826oIGVtFwsYfo= MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 870c0a32-3893-45cd-dc00-08d68326e596 X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Jan 2019 00:40:39.9816 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR04MB4380 Cc: Vladimir Oltean , "ccaione@baylibre.com" , "joseph.hershberger@ni.com" Subject: [U-Boot] [PATCH v3 6/6] net: phy: ar803x: Clarify the intention of ar8021_config X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Debug register 5 contains TX_CLK DELAY at bit 8 and reserved values at the other bit positions, just like the other PHYs in the family do. Therefore, it is not necessary to hardcode the reserved values, but instead simply follow the read-modify-write procedure from the common function. Signed-off-by: Vladimir Oltean Acked-by: Joe Hershberger --- Changes in v3: * Patch added in this version. Addresses the previous comments on patch 3/3 from v2. drivers/net/phy/atheros.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/net/phy/atheros.c b/drivers/net/phy/atheros.c index a2d0e0d..90568d5 100644 --- a/drivers/net/phy/atheros.c +++ b/drivers/net/phy/atheros.c @@ -72,10 +72,10 @@ static void ar803x_enable_tx_delay(struct phy_device *phydev, bool on) static int ar8021_config(struct phy_device *phydev) { - phy_write(phydev, MDIO_DEVAD_NONE, 0x00, 0x1200); - phy_write(phydev, MDIO_DEVAD_NONE, AR803x_PHY_DEBUG_ADDR_REG, - AR803x_DEBUG_REG_5); - phy_write(phydev, MDIO_DEVAD_NONE, AR803x_PHY_DEBUG_DATA_REG, 0x3D47); + phy_write(phydev, MDIO_DEVAD_NONE, MII_BMCR, + BMCR_ANENABLE | BMCR_ANRESTART); + + ar803x_enable_tx_delay(phydev, true); phydev->supported = phydev->drv->features; return 0;