From patchwork Fri Jul 13 14:40:31 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pankaj Bansal X-Patchwork-Id: 943365 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="Yatz221N"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 41RnBy0sDjz9s2M for ; Fri, 13 Jul 2018 19:12:42 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id BC5DEC21D9A; Fri, 13 Jul 2018 09:11:41 +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=2.4 required=5.0 tests=BAD_ENC_HEADER, DATE_IN_FUTURE_03_06,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 C7A36C21FFB; Fri, 13 Jul 2018 09:10:59 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 21709C21E7D; Fri, 13 Jul 2018 09:10:46 +0000 (UTC) Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-eopbgr50052.outbound.protection.outlook.com [40.107.5.52]) by lists.denx.de (Postfix) with ESMTPS id 8AC61C21FDB for ; Fri, 13 Jul 2018 09:10:42 +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=91P6W1IgLSLbBqz80C+FadiKq4jvVZufqCKhFSkC7eE=; b=Yatz221Nx707Zu083xXYEw3VkiCkJbGpky66TeN9Z61zIkyla5TecWJzFcl8YN9rxFGlVhMlHzxA8lfPqJRSVzOxytn4U4Tl3qNG3DZv0U1f3EJHBi7f3ZZCzSv1CTsfZrzC4CBWKr5SdG//EdVqfl1ZOm0MK6MtFk0OkIqWkwI= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=pankaj.bansal@nxp.com; Received: from uefi-workstation-2.ap.freescale.net (14.142.187.166) by AM0PR0402MB3313.eurprd04.prod.outlook.com (2603:10a6:208:19::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.952.17; Fri, 13 Jul 2018 09:10:40 +0000 From: Pankaj Bansal To: u-boot@lists.denx.de Date: Fri, 13 Jul 2018 20:10:31 +0530 Message-Id: <20180713144036.17606-2-pankaj.bansal@nxp.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180713144036.17606-1-pankaj.bansal@nxp.com> References: <20180713144036.17606-1-pankaj.bansal@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BMXPR01CA0016.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:d::26) To AM0PR0402MB3313.eurprd04.prod.outlook.com (2603:10a6:208:19::18) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 5fa684f2-4faa-4b1a-ee3f-08d5e8a081f6 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(5600053)(711020)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(8990107)(48565401081)(2017052603328)(7153060)(7193020); SRVR:AM0PR0402MB3313; X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 3:oaj6WRRFjSg366nAUWi3V5Jrw4vGUg3sWpbUXX1Mq+MaOfDUFTvypVeZiQ7Z7ZkXGNjahGc4eBHfsZ0fh0qR2zqXBc6Yg4VNxuZ9hZQ0ulXZpcUJJJLo3F+UgqjHxqkuui/WEXlPNhoqZv67a7pMts56Uzu6yBhMCrEhg6ztWITlvWRTJ9JGJVchVsMkiCOlh43IXpeeEbmzRv8TKkXEa1viiZUJv0YrWEEiBtXio9I64fPWK0OPRgO1qeOn8zf8; 25:J1TOZzQPdnfkfPZh/xf3gGe+i8SyLIk/WPAwFxV3sXZQsfbc2lLolSTH/Zv6LZzcxOJe7z2o+EI2+5o8EyOo6rInk5PIvIYp/nXPqs/IfLHIl5kFVHjhWOsLEHiYo4dYxtcLFO+5B2XB3LukdRBZnFfSzsklfRjOadaeN858j+SyeFWMpWMwRIJk+E/becDnjy4U4XW/KqUYh6EhI/f1WKp5QDFZmwfy+o4emGa2ziVnDhiG5mIAaF9a880ku20+x6Zr3IDNAjwwc618/rIpddLIuOIHhfHADCF+ZwMm7pyr7rC3peN+3h+2epIjp0qu6uDn3a0kdekvPeX5rVJhbg==; 31:eXsfM+rZ3+AWOg1yI6gOys30v5/yDtDxlIlqNKdDRbMXk1wGEIm8J61PhkenrkJ/8NCL7ITidv06THSRatKKLvs4Je3SG7uy2I1/U4yrqTYBJgQhXiCjYSFUbknuQm9bpVVc1pGborHZ/zM0FL9WdmFVgoeiwLeIKwgo9uTNPjqMxhA5Yb4yeALdvP77eAu1keuP8VA6GoK06vvO8vMloKvzHWxNqwetWHbi21yB3K0= X-MS-TrafficTypeDiagnostic: AM0PR0402MB3313: X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 20:TbDOWV19Ri5Nidm77l7PcPLmchuG1oR+7vWV9fTIxhgai3tjHmD18VloBSMVw/61Nvch27G06U7UfCsBtIQ3tHi9Sdk95vByj2xblhDlsrvmvoBGkl6KH9qzLgE3Tfj13aPY/J8rQjEiNqWNbmAI7K51ZFhrDvL3hyDTFZ90KIirX5VMJldsB4HDaFW4DBahecENWnnFONm1ZAmMU04R8VC5WLpuF/nVClI/UzhWCwTef3eK/VuH4+j+hsOYL47wRmqbzrxAIIfQtcqKOPSY6atg6ONRr9T9H9Uae2dx/GbWmy/QUwopE/xn0Y4KVuyJ0fL39x9hNIkiWls9rkY34XvyhL3YofA0v7r6+iwicgg04cGsZdLwwhDvksY9EmZldzBJcr9kGUdRQPq2ixKSkbaUk1AVYfPIKYWMJ6uEctPPge+b5wxu9sgcQGQIC4cm90v9gq0MclD3z2ic6gMdn6uGWpviKc2lowoHnpd1ah6AmG8+yHtnOvP2wuvSvIGy; 4:lKoH+aS8+TBgXpGkTeTbCuPhkGqF7WMoUDEKHG0OHgTyBWZ79E4OkzzZdEljoXXckKotbY43KhD5y+l0RcZ0qudD62squnQfsgFJcipWd9J06iCIkpdCBxE+UrG5qnNHZRs57++atWbDQMeOZU/xJ3jweswWLH8JPcHHSidn2vQmbDorufy5+Qqi4S0jj8g0A5wIAVBslazKph1i5aZRtiFt7pyFPp8BdZfiL8ubNpPL1iS7hG8GTI2Lr9Ml2DoZ1MN5t7ZmP8cBTpIy/QZTvbZV5kclZhts5/+r74tEeU9jyaWTEGKbG2we4nlX18EW X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231311)(944501410)(52105095)(10201501046)(3002001)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(20161123562045)(20161123558120)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:AM0PR0402MB3313; BCL:0; PCL:0; RULEID:; SRVR:AM0PR0402MB3313; X-Forefront-PRVS: 07326CFBC4 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(979002)(376002)(346002)(39860400002)(396003)(366004)(136003)(189003)(199004)(478600001)(3846002)(6666003)(53936002)(6116002)(26005)(14444005)(6486002)(50226002)(2361001)(6916009)(66066001)(55236004)(47776003)(5009440100003)(2906002)(186003)(86362001)(16526019)(1076002)(6512007)(11346002)(446003)(25786009)(81166006)(105586002)(81156014)(8936002)(51416003)(386003)(305945005)(956004)(2616005)(4326008)(8676002)(5660300001)(52116002)(6506007)(76176011)(476003)(106356001)(97736004)(44832011)(486006)(7736002)(2351001)(50466002)(16586007)(48376002)(36756003)(316002)(68736007)(110426005)(969003)(989001)(999001)(1009001)(1019001); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR0402MB3313; H:uefi-workstation-2.ap.freescale.net; 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-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM0PR0402MB3313; 23:U4XqLJjuIyoyvOGJuLLbEjdu1WUQoBW69qR/sNA?= 9DZZqQP2QmB8UeTmvIsOorbT2Y8sa3p2Ol6UutPCCJY+k004JYUZ1MlYk5hZGCRBTnfa7btKADpuh2viYCJRYrjx8GSJKX5UCrqp+DFfKxZkqdaTvIztke7OktRQRrN6kGVUIDBheka0uWxFF00HH3hWcVu7435YgRFShPC+2LHURidCZ3M9BZfm36G7UGkE/yLm1ndRMJYGJxQ/xJwEsDzYmzxx4wGaW4kjf/oYDO4ZpFrNTrEhI+26gnLLZejjUmeqKhieQjndfRI2LTR6PEEMUwUFB/llLhJuZFZek62axZ09Z8fn2nTdQ8jIXYSdS5mfeOWab2Y9A5NxtkjF2gxYZXqlmnuFHgZImaYFjpONXudq/ax+UsbptNwKej/wjKIIV9r5qgBAMK7hem9q92YD7/YqUG6zMnfVdNj2EXGBg7NfIFtwU8EhsBV8vbpr0z9q4a7ILCzxaSGk4BM/+DCay52h40qIzB2GqhHJt65fz7AxofSrRXdqDeT9WBL5ZEGOT8zoKs2EJx4MnSkHemlm6OvAueH4ATlw4sGkZMNjSD4Azj0/2wvqhCnUXySXjol8Z1ZGlEaFdk01ltPAGTzdd1VIROcDp/Rr8wf1Nybsqjqsn88cn5yFpnWruNXNnX/0yjNtlJ0xknZC7PxYJihjMmunwdqeUQjw+AXUS+kAuYvxpKv/h4Abtcw7ej2GzCYPmV9jXOc+huiaKqSj0n6PiFSlT6pr/oUSh0wk2T5u/nj4bCNASL/XBphqVcl3ODasxGoRoDQW7gJ1syt/hK5d9OSanp6yMQ07U+0g/rtrvOQKXom/2fl2WcL7K4Rzi3WztYmZhzXZ/Hd+1tRGg+GcLIqDa0IZCtvPIoBYqyw6v8puK8A0Wsx7yCxrAYi39JB+184wtamUvSdKnbipM1YhT5QrRINTD9t6F4oiTMtR0+5B6JHLbctmtlkdQwz5k4Xfxa1yth2AZ3eVEDcStAEMQdvnW/ipz31adrwlLCg/4xoNT2F0unKUcCM5/Xk1o2NaOBFhSQZQXR7SgC5FJmEenB3X/M+Yg0/x3p+oElnPJ389YOHdIG/XEqarbMzf7btNa5ejg4i/sSCvMWK7ErjgjvMgTvW581bSoztxNXI5aJyQFYaM8sKO3dYTLDHNZTQHsMDwJfj5N1PR3N2ObrT0qZvMAvgm8gzoqCVVWjezA/DccPxap9WHN4ZgNgUOHmuzAYzADmLAILrF3NfVYZSB7PTwmTKgI6u5CdzaxJRmSSe2DVv1V1FSJbr7yJyWGfyTNF+H4CRUXTQuMbOk4O6PhHhhB2vZJXpLKyN02429ecsd9O7x8V+/Ocxf+ia3F7PZUhHbAYaLy1xRV2sNVgBdfq/eI6qv04xoktkDsh1FI7EA+5rxSd0IZI8DW7BaESWs= X-Microsoft-Antispam-Message-Info: j7I9suK2rjALnO85gjC86TafwHYiaskKVe2RxVuv0zJ5Q4hemrQFpnp/9+0yLUud48lQr8WvNp0E9BgBIFm5DQ9N9r78YZto1suBudD3IGAwFGwnGovlmfVq5JMdcucQJbVu2QW/aIU0OW8L/hSaU+L0aUVKpCcuZj8vmfJEOWRwzEHXqQ0EgFzVTUXaOTpzkrV2fEgrsiZqYMMkO9i+BfMZOeUd/hyF2/vu6VDpmdPhKfHrKRvLnJ//XTIss63xh0RCDMmn65KtHPqNSCB+7cZ87q/BQMdGFA1TRwExoZY/PFDjq/2Mwkt7Dxoo0sAnAl/yF11nr847dT/ZKitJBsEWo7HmFDdZKMUlbr0IBtQ= X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 6:V3FegSwkAKb2z4+7JEfPz1jIGE5EZHZrlJdbcX1MoyERo7EN+ifAHjB8qRw2BcigmRm4ZK9ASjB67lRWUV1QCrGAf8r24pr+loz1EIIJqYPZE/oo+sIy0IfpFVOlzSpmYsYWcCxpiTRcyWSuUyJJRdYwI6i9zd8dlQ9+/GPd3NU/7F8PqlSsFin/L6pWnBh0fyQWaubPbYhgQ3pEVmAuUTM2MOPFbmv0zWmHxYRIJ8vHpg30M3dpIv6XupYXp42Lf0cF35ZPLBYZvxjTy5MJeg0uvxf2BItVRWu7qQP8uNs8rxvdLBR7eO8VnQCI7HeOQYXIdjmBu8jj5TYbCsgRbxJUzcKvtIZgeyVNqhftmrg6DewXAqUuGlqh0KlBUjPTZQwGdkeeJcQMZyffE5ZmZlij92JJ+4WnniW6D4H7GZ3P5+KdYShnzOWFQPhrZbgX6jJHq6GJgj1MgcvRA1HqTA==; 5:wO727LFXI8lp9To7V6FYR1i7R5jnrFXK9tDK8tICJXfbdUzOaxJwhMytrXGCHf52ojtM8Y5X7i8bMOOhMm75VWjK5hKtJ+c9m2QCh6pjSLbJxIVakVj86nOagFX7kKExeDvWmmWf2NaiKvh2jkwWrA1tQlOS8hX1/k4rplKMJmg=; 24:VNN3Dp3dBvKDg7SsoZEWMYgk40SpYPArwXqT6kDdofIySfi3zlLLDS2JdSZ9bcuKXH3XWllI9S2oJvUs++fvjMblwgcGpcHoFnOZDkvHnZQ= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 7:xSfcIJgygU98JqiqU4jpyGF4P65nHI3Eg8LFmRZGo+0NdpcAxHfVgeq5VU+gpga8lGLrfpni4XJUOlap6KXv83neB2B7LHGtLuKt2CJFmhFfZ+6MZxUddl4KAVV01NxRICw6baphHf2QVjsqZ6x4NpsDdq/fsk78JUVYniHV+M+bLEt7NQzTlyCDXGb5XrjHLAXvyIxZK2ddJZziTVaBqToLU2TvxPogZVcDuyzFca/bNcIgyWnrlz0KFVtGTNz3 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jul 2018 09:10:40.2188 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 5fa684f2-4faa-4b1a-ee3f-08d5e8a081f6 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR0402MB3313 Cc: priyanka.jain@nxp.com, joe.hershberger@ni.com, V.Sethi@nxp.com Subject: [U-Boot] [PATCH 1/6] driver: net: fsl-mc: modify the label name 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" The goto label name is misspelled it should be DPMAC not DPAMC Signed-off-by: Pankaj Bansal Acked-by: Joe Hershberger --- drivers/net/ldpaa_eth/ldpaa_eth.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/net/ldpaa_eth/ldpaa_eth.c b/drivers/net/ldpaa_eth/ldpaa_eth.c index 79facb4a44..18bc05790a 100644 --- a/drivers/net/ldpaa_eth/ldpaa_eth.c +++ b/drivers/net/ldpaa_eth/ldpaa_eth.c @@ -413,7 +413,7 @@ static int ldpaa_eth_open(struct eth_device *net_dev, bd_t *bd) if (err) { printf("%s: Could not initialize\n", priv->phydev->dev->name); - goto err_dpamc_bind; + goto err_dpmac_bind; } } #else @@ -441,13 +441,13 @@ static int ldpaa_eth_open(struct eth_device *net_dev, bd_t *bd) if (!priv->phydev->link) { printf("%s: No link.\n", priv->phydev->dev->name); err = -1; - goto err_dpamc_bind; + goto err_dpmac_bind; } /* DPMAC binding DPNI */ err = ldpaa_dpmac_bind(priv); if (err) - goto err_dpamc_bind; + goto err_dpmac_bind; /* DPNI initialization */ err = ldpaa_dpni_setup(priv); @@ -540,7 +540,7 @@ err_dpni_bind: err_dpbp_setup: dpni_close(dflt_mc_io, MC_CMD_NO_FLAGS, dflt_dpni->dpni_handle); err_dpni_setup: -err_dpamc_bind: +err_dpmac_bind: dpmac_close(dflt_mc_io, MC_CMD_NO_FLAGS, priv->dpmac_handle); dpmac_destroy(dflt_mc_io, dflt_dprc_handle, From patchwork Fri Jul 13 14:40:32 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pankaj Bansal X-Patchwork-Id: 943366 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="c+tzLOF0"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 41RnCB65J6z9s2M for ; Fri, 13 Jul 2018 19:12:54 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 7D832C21FC1; Fri, 13 Jul 2018 09:11:20 +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=2.4 required=5.0 tests=BAD_ENC_HEADER, DATE_IN_FUTURE_03_06,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 98C4AC21FCA; Fri, 13 Jul 2018 09:10:55 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 42DEFC21FDD; Fri, 13 Jul 2018 09:10:47 +0000 (UTC) Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-eopbgr50088.outbound.protection.outlook.com [40.107.5.88]) by lists.denx.de (Postfix) with ESMTPS id 584CDC21FE5 for ; Fri, 13 Jul 2018 09:10:44 +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=eJiRWBKvxBE7Bqd8TNWxlzzQEotInFYMpreuD9xYHcg=; b=c+tzLOF0EZJjgajUU0nHzfLc7nMa7M59o+opRGyye6/+6QMiNkjIPC9heOgPsxZL0cTzkjpAUmR4qYIwPKBuekFJh0OyF7s05bsd6rHlzaCDWWH+yS33p7t8xlm0ucKI6TlZ8Mp3z4vmbOyCCiI7K/3PimVxcEfdgjwsCoH+D70= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=pankaj.bansal@nxp.com; Received: from uefi-workstation-2.ap.freescale.net (14.142.187.166) by AM0PR0402MB3313.eurprd04.prod.outlook.com (2603:10a6:208:19::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.952.17; Fri, 13 Jul 2018 09:10:42 +0000 From: Pankaj Bansal To: u-boot@lists.denx.de Date: Fri, 13 Jul 2018 20:10:32 +0530 Message-Id: <20180713144036.17606-3-pankaj.bansal@nxp.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180713144036.17606-1-pankaj.bansal@nxp.com> References: <20180713144036.17606-1-pankaj.bansal@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BMXPR01CA0016.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:d::26) To AM0PR0402MB3313.eurprd04.prod.outlook.com (2603:10a6:208:19::18) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 60714b5d-e4d8-41d5-f871-08d5e8a08305 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(5600053)(711020)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(8990107)(48565401081)(2017052603328)(7153060)(7193020); SRVR:AM0PR0402MB3313; X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 3:a09ngAONDZRVkxLuzjSf3G83O+na7KdKXHfGSJqzqLeZ2PIePqqmIxpgch1DA3qfWWiCQ/3P3sJE5LCd6oyd543Mw2Csq0Jc+pEGQgi5Dv5I/5wd+oX6+Qsbyeh0YgWdYStpcv+/5xQZ55TUUKPVmqWN9WnbXVfSmzFAQzkDBYtsp6GdYkmcleh5PQm8ZhvTJgjWyNCM30EbVB6HfcwGnA2d9DRsNhrbzWcvAPDAhWJccl3I84LBCnuj5BXJltZ9; 25:x73os2r9eQGleLD8OUvRlEucmLUFoHZAPWDOcdOPkzyCLKzyhQYexMBZS138saNQ0uBd5pJ5oSEkFz1aSBCdsLo/GiUmkoe7jHjJ8iHu7zbRJOHEI5Fjm3nxU/l+pgEmGY6kzJIYxjAu7ZbdcRQ5kvLXQk15eNRvtL0g4qVAFy/V1U+Oi80vFZVToGMKc4AAKIKwOhY7OxYp+JRGsbAFI/OrcmBXDXQNOAJ6scSWk24kx5kEbtf7ll+iLn6C6g8KBf2G4lS8pHsW4awLIE7IfZMivvimOi6N/j5Ax5vLLGJ/3NUuUgXUAK2U/XGN2dyvwkPTJ/I46OTlwflqAfV74A==; 31:m/SKKK05QVZyZ5hvbVtUsLDmAlZNjduRn1OCy/YSOyfN5+nXFPTZim132KlNocFIyLlSKysh0EwuFjjvN2GayXw6EqX1Lx3xKEazxKH+Q939uN8pPcWbQwtpDvjb7lSwCpoRTZZs62Ct3VqhR8AYcrfVCcDnN/wImZbSoRrSYxt2Rj/57lyVOZqzZOmAC/chWz/tsU00OymzMoZw38L7rr+m1BbMXmRgsvhY3Ili63g= X-MS-TrafficTypeDiagnostic: AM0PR0402MB3313: X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 20:p8x7cwiU5N5AM1kTIGEqrJUHLHolW5sfeFulyZffN0Q9m7MLp/BO2xjMmadKvAIDH95AmEBHRmrZy6PmIZtSIbMY8hSs3JuvPVhue8s8AdmwgH7A0CKNtVf9RV3rxgkUBqA0k44h4RujZGvVfuHFzVuCsgcWdv766IqfF3pfp2faEpOsrFwxjI7QQvaoYLExJjpu7wVz6iJ5iiNfnYoygrtDRnd9SgwjZA9XlJBHgN9Z56MkngAMjl7EuXV07HITIkP3M6eP93Q3Lr/v++Ffnkkua63wMUJEbtDyJVwbK15Kfe8XlH83oNiuf55j+C9oFgG8aMwA5K8EhFwBSbsCuqNt+ctk56ZNYo94cwx2NwMz3iXHJmzYg4saZUFQ1VKSDlRJWkcxEeEJLWtFE9vbK+3bRWaeqGHZEfhpJSMzgAPP1oDxtg+NB5vk72V21fks8F/1jtCRpMh5/pWowqE5vUS96M1PZP7qjryf7zKpExCZE72alfzZ28GxTFYgHRs8; 4:I94cczqfRnbwIGp6drEmOoiubKssWVSJlw0P4GFHZjUXouVnaZzk8Hy3jssr7r4cXP3rdwXtzSIKQwdYJZHDVBriDzuX5YlTv5wueErNlAQCeJGhFpCg2tIwNWA7Ne5OS+hqyi1y+g7wGp9w3OEfU6kl4F+rHR0W/zq+TdcJ3ndj328D7jQG68uawHGmjGfOqHHDsoW3+hozMoPx3euh0P3I4jwyEtypoBkJtOgDIvJErbGc49mgY+YmQqR1BUl0AoEugIXuThSti25mltfO+SCb2j2JR5XQ3/MLHGGTNYy+xFkFYFtHFeoQM/dI1/LVBve2thP1gf0b/AuzmSkrPPVE7CscyFQgGDdlE7wk5eA= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(131327999870524)(185117386973197); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231311)(944501410)(52105095)(10201501046)(3002001)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(20161123562045)(20161123558120)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:AM0PR0402MB3313; BCL:0; PCL:0; RULEID:; SRVR:AM0PR0402MB3313; X-Forefront-PRVS: 07326CFBC4 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(346002)(39860400002)(396003)(366004)(136003)(189003)(199004)(51234002)(478600001)(3846002)(6666003)(53936002)(6116002)(26005)(6486002)(50226002)(2361001)(6916009)(66066001)(55236004)(47776003)(5009440100003)(2906002)(186003)(86362001)(16526019)(1076002)(6512007)(11346002)(446003)(25786009)(81166006)(105586002)(81156014)(8936002)(51416003)(386003)(305945005)(956004)(2616005)(4326008)(8676002)(5660300001)(52116002)(6506007)(76176011)(476003)(106356001)(97736004)(44832011)(486006)(7736002)(2351001)(50466002)(16586007)(48376002)(36756003)(316002)(68736007)(110426005); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR0402MB3313; H:uefi-workstation-2.ap.freescale.net; 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-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM0PR0402MB3313; 23:T10iVGJioquiiDyd/lYyfU8Fq3TuVD51vv5zEZ4?= 0Mw7ENxpIhq9czifl1zCNFP1TJTh06cIS3fmTIKZxW52z60SPWkkxiigTrxO8Mpq4+jhV898ufCXIt1XJRtnL5VSAecntw567WxyMLFA4Sb/FhIpAUXpvJEvx1y8NtdRHqjBv7pygexhSQQvXlZ+G5ZqRnQsJsBjZZFQNNvI9E5Qel1C1tx3QfpM7SamqCsUBbbLAZXsporitMgny0eXE403kc89uxEU3Xd7hvLHmiMcpXUwpIT4Pko9EhhPDyUKjn67taNV0B8gSSTXzqj92syc87ZaDI7kQjhcglRVqofg+iDwnX4pdsh7eKuoXVBHGbYJ0ne143MM9NF3wEz+/3Av89MzxCQC0U/ZpEFAvGklkDIq3F6yhXWi29is1+7GRvUJVwYwyRcKEpWZgspvRFSU+QsDCBRIIscN/s00PJYTBNtI4hHuFkmAmSoNhtae5HlFeYNBytWBP6V0Ph08phaaDwe3FSSHGHe9IyE96XmXYq7Ba8UMu+QcG8maYt0IEMCmltknN7yn0h4u7NWmpgVUO8h9EL0Owtz4YdXU0EZIaZ06qJ5oWpxAZI38Oo35ZUdAnqUAdRLA+8c49LJoui2sDEQYSJEiCKEOtW/jW4hbGrjr1c3hIthfXQX/pbC62gD+eaW2p0eq4ArdHKJUFBCaO2KFwgFOzka91JQ63Ntibwmw83qh2qMIPk40lUWkszEVGfkatKm83Z8KzezcbbnamcGpvchhn0fgLbLYl1R0TwiUM9SkTpNWXyZVQSH7/iG2L+XxBwgldoKlTFr1okyf6GeU5igTaYhK4BwoSeJMW8sraCMytjPDdTmQ21+8YBj5xx2/nC61A9ZMSdn7QGgbzB7LJNIkXUi4AYzGz1tyhKQ3EVcNTFF2EG6hQ1icTCXAJXnqrFwTX1qBdSwNdyPqbZ67P5N7wFGF4+xCFQ044JCclL2fJ0gzG98MfstYwDTyJQ7ux9dRuLPy+3o7+EmTs5NOWYDTHBr7mRmqL3wl5y4IWx4ijPPqpMqV2IhqbCzQTcY0VRS9/iGf1gmoByaxsv/Z3S5Mheu+CTE8ipkWOl9FbPTzJ5qsmRzJ7+MrH3WlQO0bNaV2vvvhKucFsInoZNEKUVmlUAvWMvmZuyy6ySBzoxba6qtJ2QvddW4ySLNq7M9kpLKgYAhYxzGeAVQ+ujumC7/wviMFyioGhLUK+0wVfWSp0yK8qMJgvdvOAj22prxII5PbNoDN3st73E8qBSXuXxJnxX2wlsHCkV6+DWeAm9D6+yzZJf2q35iXo0XQoHAVubrTNYg8lFMfrNJCy X-Microsoft-Antispam-Message-Info: xK8x4EOFuqegEI/zy6gOrRBLS+t2MRwlV8DFhLaMHH9Qq09ihU0/UYfVL6hzReQr4DZtVsHfcpqDdl+xo131WRPzm9pd9knZAocmYK6apMpDoAFEFjNMknl10W8RIAB/ThndqevWuWz1RXA8f+Nbe3BkVtxP7HlnpoknI3SrWaueUe4H/fLmbHCbF1XAfV8lSLJOGtz8NNCg/nd2zBTwwkbaReLlzOUTNk7F8RHYDDPaTOOIPgyMRIK8XeMnNBcYNI8ib9uNVzHlJ3Ktt9jMjLtENgwp7C0IBP1AjL8ZJbuGuJPowlF8J+LjxFDaT5ltKIUuZUU9V2luBpZ3PdwNaX0KQnvM5uadGW1Hjy2rxVU= X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 6:SrvcY56g5yqMX32joJxpRUPCRbSJpqVYriYxcC6fUARRisMg5rmplWA35XQa9IoWJf0om5vtt/m6dI4JjTglE96OO5SoNap/6+farRieRQ+1upB9RHs++mthNm5EPGh2TEHQj10l3lTF1bV6iXZqOTsRoBoex8qUgdSvM5Qxxq7m9+DEtqG4ovwdrEnS/z4ie+oO+KkPuxwCwhYv2YcNEddtEDFaGD4OkTXE2x0N7yM1ZId+gvRclpn3ESz0lyqgCR+KCo6rN1vuQ/im2g+tDFp0/c+RH5vvJHJ9e0HppXs4YIHW52Nd8P5i7EvoU/z9POFsumW005ueAOdx64RqE7gtU/kPAFBTO77CVpCggKkPtba58Gl70OLWE6t7LaJ7TFn6Wwyz48Q4GmMiB1B1r/e7zLq4MyfgdUWZO9rbejzd7HYpD7tr+/J+EK47ZU2uGUcmwFtSEBtJcQYfxZ+x8A==; 5:HXh6dKEY9mjZelT8FlvgRRdMpAkZI38EYgbpA8sXcMCONkTdULTbF+Eeiaxu0ij6dbUp9gswA0u5kKTltsEm0nkvaT5vjDpfnY/ql506j+nG6IBXPXLKFjFIQf0ivrAVbYBobCZr0LynbZNCaOjk8mQ+VF5yvr26bZmjZFNWuXc=; 24:ngyx8JSypcZMOXtFEkBjfq+Xv4xYqWkqVGf/qqhnfzvgNiDwXsM3m2oJCbfIqUxztGkEaReauLkHoGcCCpz0BO4p91JbQ8ZheqTy8DTxumo= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 7:1cU8iyS+KcBPl+H0191OHZXhD5da/FDH93FYqboG15U7xXwylrZg7glUBz3pZHxCUya3emSJnDvEiC3xvd2NiYiQ+kUNCuEXqWWSpJ6WqcyKoHtr4zTD5gtdpPXYHhYQ+yqAnAHkTbuZd02mf1CGCXJiGuJqDxYjk45BUAzlrCDwi6Yzq5EE4pXmU+u6WSwzhSd2i5jN+oDRvmTRIJr8CvgJ3SAfOSuK7vUEuO5HgYrNgqzW5uAhB+6GcwZUGV0O X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jul 2018 09:10:42.0061 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 60714b5d-e4d8-41d5-f871-08d5e8a08305 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR0402MB3313 Cc: priyanka.jain@nxp.com, joe.hershberger@ni.com, V.Sethi@nxp.com Subject: [U-Boot] [PATCH v3 2/6] driver: net: fsl-mc: remove unused strcture elements 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" The phydev structure is present in both ldpaa_eth_priv and wriop_dpmac_info. the phydev in wriop_dpmac_info is not being used As the phydev is created based on phy_addr and bus members of wriop_dpmac_info, it is appropriate to keep phydev in wriop_dpmac_info. Also phy_regs is not being used, therefore remove it Signed-off-by: Pankaj Bansal Acked-by: Joe Hershberger --- drivers/net/ldpaa_eth/ldpaa_eth.c | 57 +++++++++++++++------------ drivers/net/ldpaa_eth/ldpaa_eth.h | 1 - drivers/net/ldpaa_eth/ldpaa_wriop.c | 2 + include/fsl-mc/ldpaa_wriop.h | 1 - 4 files changed, 34 insertions(+), 27 deletions(-) diff --git a/drivers/net/ldpaa_eth/ldpaa_eth.c b/drivers/net/ldpaa_eth/ldpaa_eth.c index 18bc05790a..fbc724fc33 100644 --- a/drivers/net/ldpaa_eth/ldpaa_eth.c +++ b/drivers/net/ldpaa_eth/ldpaa_eth.c @@ -35,7 +35,7 @@ static int init_phy(struct eth_device *dev) return -1; } - priv->phydev = phydev; + wriop_set_phy_dev(priv->dpmac_id, phydev); return phy_config(phydev); } @@ -388,6 +388,7 @@ static int ldpaa_eth_open(struct eth_device *net_dev, bd_t *bd) struct mii_dev *bus; phy_interface_t enet_if; struct dpni_queue d_queue; + struct phy_device *phydev = NULL; if (net_dev->state == ETH_STATE_ACTIVE) return 0; @@ -408,38 +409,41 @@ static int ldpaa_eth_open(struct eth_device *net_dev, bd_t *bd) goto err_dpmac_setup; #ifdef CONFIG_PHYLIB - if (priv->phydev) { - err = phy_startup(priv->phydev); + phydev = wriop_get_phy_dev(priv->dpmac_id); + if (phydev) { + err = phy_startup(phydev); if (err) { printf("%s: Could not initialize\n", - priv->phydev->dev->name); + phydev->dev->name); goto err_dpmac_bind; } } #else - priv->phydev = (struct phy_device *)malloc(sizeof(struct phy_device)); - memset(priv->phydev, 0, sizeof(struct phy_device)); + phydev = (struct phy_device *)malloc(sizeof(struct phy_device)); + memset(phydev, 0, sizeof(struct phy_device)); + wriop_set_phy_dev(priv->dpmac_id, phydev); - priv->phydev->speed = SPEED_1000; - priv->phydev->link = 1; - priv->phydev->duplex = DUPLEX_FULL; + phydev->speed = SPEED_1000; + phydev->link = 1; + phydev->duplex = DUPLEX_FULL; #endif bus = wriop_get_mdio(priv->dpmac_id); enet_if = wriop_get_enet_if(priv->dpmac_id); if ((bus == NULL) && (enet_if == PHY_INTERFACE_MODE_XGMII)) { - priv->phydev = (struct phy_device *) + phydev = (struct phy_device *) malloc(sizeof(struct phy_device)); - memset(priv->phydev, 0, sizeof(struct phy_device)); + memset(phydev, 0, sizeof(struct phy_device)); + wriop_set_phy_dev(priv->dpmac_id, phydev); - priv->phydev->speed = SPEED_10000; - priv->phydev->link = 1; - priv->phydev->duplex = DUPLEX_FULL; + phydev->speed = SPEED_10000; + phydev->link = 1; + phydev->duplex = DUPLEX_FULL; } - if (!priv->phydev->link) { - printf("%s: No link.\n", priv->phydev->dev->name); + if (!phydev->link) { + printf("%s: No link.\n", phydev->dev->name); err = -1; goto err_dpmac_bind; } @@ -476,17 +480,17 @@ static int ldpaa_eth_open(struct eth_device *net_dev, bd_t *bd) return err; } - dpmac_link_state.rate = priv->phydev->speed; + dpmac_link_state.rate = phydev->speed; - if (priv->phydev->autoneg == AUTONEG_DISABLE) + if (phydev->autoneg == AUTONEG_DISABLE) dpmac_link_state.options &= ~DPMAC_LINK_OPT_AUTONEG; else dpmac_link_state.options |= DPMAC_LINK_OPT_AUTONEG; - if (priv->phydev->duplex == DUPLEX_HALF) + if (phydev->duplex == DUPLEX_HALF) dpmac_link_state.options |= DPMAC_LINK_OPT_HALF_DUPLEX; - dpmac_link_state.up = priv->phydev->link; + dpmac_link_state.up = phydev->link; err = dpmac_set_link_state(dflt_mc_io, MC_CMD_NO_FLAGS, priv->dpmac_handle, &dpmac_link_state); @@ -530,7 +534,7 @@ static int ldpaa_eth_open(struct eth_device *net_dev, bd_t *bd) goto err_qdid; } - return priv->phydev->link; + return phydev->link; err_qdid: err_get_queue: @@ -556,6 +560,7 @@ static void ldpaa_eth_stop(struct eth_device *net_dev) #ifdef CONFIG_PHYLIB struct mii_dev *bus = wriop_get_mdio(priv->dpmac_id); #endif + struct phy_device *phydev = NULL; if ((net_dev->state == ETH_STATE_PASSIVE) || (net_dev->state == ETH_STATE_INIT)) @@ -588,11 +593,13 @@ static void ldpaa_eth_stop(struct eth_device *net_dev) printf("dpni_disable() failed\n"); #ifdef CONFIG_PHYLIB - if (priv->phydev && bus != NULL) - phy_shutdown(priv->phydev); + phydev = wriop_get_phy_dev(priv->dpmac_id); + if (phydev && bus != NULL) + phy_shutdown(phydev); else { - free(priv->phydev); - priv->phydev = NULL; + free(phydev); + phydev = NULL; + wriop_set_phy_dev(priv->dpmac_id, phydev); } #endif diff --git a/drivers/net/ldpaa_eth/ldpaa_eth.h b/drivers/net/ldpaa_eth/ldpaa_eth.h index ee784a55ee..3f9154b5bb 100644 --- a/drivers/net/ldpaa_eth/ldpaa_eth.h +++ b/drivers/net/ldpaa_eth/ldpaa_eth.h @@ -127,7 +127,6 @@ struct ldpaa_eth_priv { uint16_t tx_flow_id; enum ldpaa_eth_type type; /* 1G or 10G ethernet */ - struct phy_device *phydev; }; struct dprc_endpoint dpmac_endpoint; diff --git a/drivers/net/ldpaa_eth/ldpaa_wriop.c b/drivers/net/ldpaa_eth/ldpaa_wriop.c index 0731a795c8..afbb1ca91e 100644 --- a/drivers/net/ldpaa_eth/ldpaa_wriop.c +++ b/drivers/net/ldpaa_eth/ldpaa_wriop.c @@ -26,6 +26,7 @@ void wriop_init_dpmac(int sd, int dpmac_id, int lane_prtcl) dpmac_info[dpmac_id].enabled = 0; dpmac_info[dpmac_id].id = 0; dpmac_info[dpmac_id].phy_addr = -1; + dpmac_info[dpmac_id].phydev = NULL; dpmac_info[dpmac_id].enet_if = PHY_INTERFACE_MODE_NONE; enet_if = wriop_dpmac_enet_if(dpmac_id, lane_prtcl); @@ -42,6 +43,7 @@ void wriop_init_dpmac_enet_if(int dpmac_id, phy_interface_t enet_if) dpmac_info[dpmac_id].id = dpmac_id; dpmac_info[dpmac_id].phy_addr = -1; dpmac_info[dpmac_id].enet_if = enet_if; + dpmac_info[dpmac_id].phydev = NULL; } diff --git a/include/fsl-mc/ldpaa_wriop.h b/include/fsl-mc/ldpaa_wriop.h index 07e5130264..8971c6c55b 100644 --- a/include/fsl-mc/ldpaa_wriop.h +++ b/include/fsl-mc/ldpaa_wriop.h @@ -41,7 +41,6 @@ struct wriop_dpmac_info { u8 id; u8 board_mux; int phy_addr; - void *phy_regs; phy_interface_t enet_if; struct phy_device *phydev; struct mii_dev *bus; From patchwork Fri Jul 13 14:40:33 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pankaj Bansal X-Patchwork-Id: 943364 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="lGU6GJ06"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 41Rn9D11mzz9s2M for ; Fri, 13 Jul 2018 19:11:12 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id C7ACDC21FBA; Fri, 13 Jul 2018 09:11:00 +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=2.4 required=5.0 tests=BAD_ENC_HEADER, DATE_IN_FUTURE_03_06,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 D0418C21F9B; Fri, 13 Jul 2018 09:10:54 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id E4FBAC21FBA; Fri, 13 Jul 2018 09:10:49 +0000 (UTC) Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-eopbgr50080.outbound.protection.outlook.com [40.107.5.80]) by lists.denx.de (Postfix) with ESMTPS id 0E4A6C21FBA for ; Fri, 13 Jul 2018 09:10:46 +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=a/dFfOYS2eN7p4Zf1xU8KlPQI4M2V1Iudzn02sPhgZA=; b=lGU6GJ06/x+OSh+jB5p0mhGE0dXbbRs9D9bSVVwRPmNcH4W4z6+qrszlgXFbZOT9a6FJXWbrIOmUScJcxmqfzNTBQENqJ2jAlqJ6EUCFXm60op+CIStG0FuPt4CpYtnqHZQJX0NAqxKhiH58rHI00yXjkiY69Qdu7hBe2qC0EQk= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=pankaj.bansal@nxp.com; Received: from uefi-workstation-2.ap.freescale.net (14.142.187.166) by AM0PR0402MB3313.eurprd04.prod.outlook.com (2603:10a6:208:19::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.952.17; Fri, 13 Jul 2018 09:10:43 +0000 From: Pankaj Bansal To: u-boot@lists.denx.de Date: Fri, 13 Jul 2018 20:10:33 +0530 Message-Id: <20180713144036.17606-4-pankaj.bansal@nxp.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180713144036.17606-1-pankaj.bansal@nxp.com> References: <20180713144036.17606-1-pankaj.bansal@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BMXPR01CA0016.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:d::26) To AM0PR0402MB3313.eurprd04.prod.outlook.com (2603:10a6:208:19::18) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 2a589ec7-30db-4f1d-9c9e-08d5e8a0840c X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(5600053)(711020)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(8990107)(48565401081)(2017052603328)(7153060)(7193020); SRVR:AM0PR0402MB3313; X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 3:eUgV2pyv6nfRR72YVimAFiH+yd1Hnu0p4sVingdxI0f2uhN7Qbq6CHi6ph18rxoomm1PCem8mAYRC1S5+Hg18qa6Fxgp3Ul4jBIl6xXXoOTQHU+GJhY6/q9t8FedCMbHtf+mMIoRc58+T2PSSKDxsDv8/I94SXbkppPUHw6IaI5gjgBBS26BS/3JpQaGvqKQ/tIGwEKpRCixoDhRBTjU2KvRrJ5WIsPOitfs3SJQjZum6XMXvQ6HC0Ggm/ysPr0H; 25:N28gd+ZS8IznFAkHaw7q+7fSL3FobrVGg/TVnV4sP+Fua34sVvbt+i8SPv83uf0hYgnCREBd/2VvAsC1KBltq7iqkyvYhqZnqNpqy3HnPAu2mZPM1740q2+70X9HHiS3Jr14LBIpP+mm4n+4j5mayn9A3u4obP5IJhpGZAc6BDKE7/AikhGCZ6wIQs8SMFpjA+zodIr4+FupP0TOkxSZXJCQ9WOJv5jgHvT7lE7eC05MgthX7m7UVO07b2hGEhhYTJX0NLEcBJqFhspWUXrhQrSVJ625IhpwqVg53rAVtXlzMkv7fzSx8vcljC6UG0SvcVJywkpa4dIVfyJVLA5E5g==; 31:54aa7LDTO2qRRS84iN/9DQtVjaZ5kumYm+552X/A82si84oDGA55bugPMckCGVhycP8klkDhj1cKOFU48oepnX/qeNg/As/Ed70++cb0HB/pSggdlOk7B+KMxWRSXKDF8EO5ssKRmeeWV6EOyUI893z7pl0tUTnnSIYnjb/XpFNXEywOwMQFrS1j89xrcI1TxsRqnD17VOD25FzrU9hZxgkta9zrbnnX3GhXg8Anvkw= X-MS-TrafficTypeDiagnostic: AM0PR0402MB3313: X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 20:U8JIPh2aJY6SAtWjkx/yIuBBEhYkameCBwZyMQ3YQRTGz2d7CUcsAZkQavBQfxdGcbJw0SGlNkWgl8PElro38sGVasZmmhs/lzhnjvDs8p6qszIKiF5byBQMtqlEbEmNKRIFUPSjp9fReEj+1fjgoaUb0GG8VcQjZ5LkPaVt9+98KDvtcjYiHlzdM+NvaqDBeFJOqRzqXMmlOEnKyA26tSALMlWKEnEHxF+9M5NxbvfYdLu6I4c+9pykvjHJ03LIskR+NzfBVDUG+zL/bC4OeIKPdYODcpbesQ86/i42xY17wn/8QyHy9KN+gm7RUESYxv5Mkv2nApLMKP7nipESmjQnmU+WGEEWXQ3U2ZKwQP5TeRuaqGZFo7ksLjWwgQkYbdyD5VT+0mxUKGubxWsaUiEqEISBuZ4iR2B/af2yu3SlnMj8K/KO301vJdpa8sq0VqAr31FKz8d9GGZDyDnILzgPq2ZrpigjzF4nqJWIAIYEuYbILMBGLEbaW0gqa5pH; 4:A1ZG6RhCwICzU4u/cSf+2/mtTZyMX9niiGNMJHeLo0N8C94m8DxS6CyQmuirKtGi0BbNd5QIWtp8k4Vzt/Kb4ErsRcKLOcKSplsCHwUIKMbvOBnOOnmqWx+uSanZctWgxJaU7IX5aEmokgI4UbYH/cq2gZRwAhom6lEREAnboATw2smYXpwx3DciuvcPYCGatyxJ2CMFLk+MwyNmfrnSM+0+Cyz1cz1UBfxlK3t2jNkRslGOdWlyGlr49QpufES7Bc8dVqyGHA8uDs+eG7nGIVGvp7hf4arXlU823msu9umZJ5fK2SH1QLe0NTe5q4nf X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231311)(944501410)(52105095)(10201501046)(3002001)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(20161123562045)(20161123558120)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:AM0PR0402MB3313; BCL:0; PCL:0; RULEID:; SRVR:AM0PR0402MB3313; X-Forefront-PRVS: 07326CFBC4 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(346002)(39860400002)(396003)(366004)(136003)(189003)(199004)(478600001)(3846002)(6666003)(53936002)(6116002)(26005)(14444005)(6486002)(50226002)(2361001)(6916009)(66066001)(55236004)(47776003)(5009440100003)(2906002)(186003)(86362001)(16526019)(1076002)(6512007)(11346002)(446003)(25786009)(81166006)(105586002)(81156014)(8936002)(51416003)(386003)(305945005)(956004)(2616005)(4326008)(8676002)(5660300001)(52116002)(6506007)(76176011)(476003)(106356001)(97736004)(44832011)(486006)(7736002)(2351001)(50466002)(16586007)(48376002)(36756003)(316002)(68736007)(110426005); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR0402MB3313; H:uefi-workstation-2.ap.freescale.net; 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-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM0PR0402MB3313; 23:1lqbA+TobuvgvRVBdQ4IzM4jtT35scybLUosVtc?= Tu/NbTHO0ZmDLFsrf25H8BQxfhA7tYegdrsle5rBEB2FLpg5IrcbtIFMg6/W1ozd4CZaTZIwW82Zl0pVX0lSFzTGo9/rly3ODyNgBLr5nMHwtqTzL5gvkZD/b7XJPDmho8IO9aC24ckNVl1TwOH7XEAwuj4nYPs9pq182ryOTiPCRbwGhZ+xMbyMgB7xq0bIUT01VIe1qWl3D80/qa4UYzcPvBc7r/z0k18uPgZ+wh1nxKxRjBCWOCDTIog3ObR8Fc5QXFbeXhxIqEd6zWFLjUmd/JH7IpPMdMsv+1bY8pn+V6ygQuchzFfSNfwwt1q3EbSAIEM1rzwvzf96eQaZqru/k5nSn4IymyUm4SP4FExpm2BZhYzYZ5WYk9sq54FBUKCXjBp2H02ipwwS3JuY6/e71dPDisPpl6VV49FvMoOKTmwofHP8gItJef99rCqj3SyZwASAcOCccrN9WeZ8a/32G/nPgeyYiVIwRBguI7+riNKRnpM/4GlXWVzEYIkZLM2sYPWl75odrWsmtvuUQA76Td/kZ8xkx8VbhFF3SpdTVwjJd1hnmLJ7lHhFj5U7zHMHTIq4hE8irRtNMKVt/LUQmx//Eg6SlHh6O0PJbMVTpQF09t0sCZaZIrHitnWnhRyzUUvHgHzR2ZZ87S4O4Zsdv3za8ntn+xSzcxIeMuTkvqyde9nyMhwFILcatKfcYAEoqHqjS+phmYW/z32JMgYWoCKnNDv2dLwujLZ/Awe/79F/f5+nF0GQWtNjfWXnxmxJvJ7iUTr//kCFtW8UBGwOrzsigHfWjYgQjE4db8A4+HiJ7gu+43oRhsgT8JppAanJ+q3hmwhUWEy98JvqYNYqMCiwVMQUqJByqDLzRHQe9z1ODoZJrDM0RiteuD64Jbcz27VxEgsguODWAXaCS9EBfH3OYkEqYzCqeEpR3TtnkVt9RbRcXcZqp8NKO0huCg1Im7PA1xqWu/VtA4D6jlQppvoEhFrmOI6ovbSHyOH/SljPYBBSs/zh0/RDXh0YGHiD3Tt75eY09GVgdU1J4ze+PlEI/s9WDoGwyQ2kNZJ56jH1fN+3UqX4gbeO+R4DlpoesF4jaIL3lUtQLciWaD2BNqGIVDav+T9xVRFpytV+8Vb0GIr8x3Ewdh6jfeLpvc0GOa+0m05nBeRH/45vQ1+JcmjTlOQaJKOsjghj0R7DN2gVGpZkMhrNI/uwLxwI4DLOH/5FJlUbq3BgSPiZRveEP34wN6+4NeSuu93ziWqi6tW1Rqp4JNWk6H50+rjqDUWz8PHilpA2Xbdh/RFcWgdRv X-Microsoft-Antispam-Message-Info: yTTfLdg5StYvwQi0YrJDEDpMTDJ4s5Ax5OCyUIBGb8zeewt6ZaofPqBH6v3JtOvR/xgvlAoF/XtmEOFk8UU1Z8ugt2b+nfhQDggdFlw6E4IJmHH2xG5/iataEgDcyaiZaUikwrSgweKaSvRZGHEVq+eQMdDNWv0LFc+Mn02oPeaRmKH8uINhLrOVr92jEJWDOQJPDiXkc2ESzYlkIPUJq5Qxqf3kY2sNZ3nFa3YFfndY9G92WKIntCM+zUvy27UMDlBEdA/o8XRSHn6c0aTTL5kMM+bO5qvR4qwL8AEa8v/CXTrHoR2/Erz96h4TvHAjRtoZEr8tiOrifDswBc9Mpt3RVaVhJ6wrZwvV01CrujQ= X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 6:37RfC+ZZukSZ13OqSS9tHT82WwTJiGVrZ6cbu8C1mNLUxUa6IdjBpko+7caALRXdo0xgQBa9qnWWH4itzPWCEi7YvpGxqbFBF8zT4s804fYMbpmsVrgy5g3zf1m29VLqJZIsPwaP/j5599S9TO872c4xQLjDIg6mj+NfRutBF3WtQXiPiQt3bS1mpq1Tg/Vc76s+cEdrt5nyf7SmE5WMr+YBQZLtRonoRPDWuh+rFC40gFW/MkHJNIBuas42+wBPHjR1hbYOBhRN3NxutITAYwHGItvS3Ma7/jKpJpH+RRweb0FNu1TEojXXj84dLw0d3bBIWJP3Qv22rIo5XdpyZG4/ixdhYs5Ffq+7C9Nc/UW+PxJADQdrrqn+piqrWcAj4vEAW6qjLg1zxcjrMj791MJf3+xNUxPRpRtGVyZUlEFv97C/OnSxHftTNmSJ3vPI+8Z1g5HKicoBHxtDyMYVYw==; 5:N9fWPbmfx19lTk/OU6XKxpPe5YyNEKpSn401Y36syV+ljyufgls8GrMCxazKON26cVUYIRYTvuajuXxtZyp4ehHB/VUNEHqJGdbg1SL6iXw6n6Bn3FuucmR3txVY1PElO5t2DUnuvfWV52cHQZHqfEfWMiYsJmz9fv/0Vv4lZOI=; 24:hHHR1B8doxi92VC/2xUmnWkSlRKposFKFzYMSYvN5zAo/CT9Zh7MmgqSBm8OENJ/gK1gT4Z06pL3aeeb5ycR1+2l0yGT4418+UP7GH+aQQ8= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 7:/TYoeqdB4HZxODTVd4/grdK2WIZZx4JG2fF0RKhHdhncfs7bqsX/lSn1fD9Ca2rzMeIVsQWAV8JfqmPlBecg9K4IDexQslx9ok45RkuW788qs/p+UoLXT91c1dq4mq8nIQO2rlQQLBM3sMbsLWIIFuGyp0E+rMIJZTLeRHhQEPx0zLEvftMta46gZ4U6QdwKOPQPhKccAm9kuK7KNVqBSUpIuELSbNTMbhOspbluYtzjT6qTb3Dvc0WPAR+lKX7f X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jul 2018 09:10:43.7253 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2a589ec7-30db-4f1d-9c9e-08d5e8a0840c X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR0402MB3313 Cc: priyanka.jain@nxp.com, joe.hershberger@ni.com, V.Sethi@nxp.com Subject: [U-Boot] [PATCH 3/6] driver: net: fsl-mc: fix error handing in init_phy 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" if an error occurs during init_phy, we should free the phydev structure which has been allocated by phy_connect. Signed-off-by: Pankaj Bansal --- drivers/net/ldpaa_eth/ldpaa_eth.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/drivers/net/ldpaa_eth/ldpaa_eth.c b/drivers/net/ldpaa_eth/ldpaa_eth.c index fbc724fc33..8fcb948ee8 100644 --- a/drivers/net/ldpaa_eth/ldpaa_eth.c +++ b/drivers/net/ldpaa_eth/ldpaa_eth.c @@ -23,6 +23,7 @@ static int init_phy(struct eth_device *dev) struct ldpaa_eth_priv *priv = (struct ldpaa_eth_priv *)dev->priv; struct phy_device *phydev = NULL; struct mii_dev *bus; + int ret; bus = wriop_get_mdio(priv->dpmac_id); if (bus == NULL) @@ -37,7 +38,15 @@ static int init_phy(struct eth_device *dev) wriop_set_phy_dev(priv->dpmac_id, phydev); - return phy_config(phydev); + ret = phy_config(phydev); + + if (ret) { + free(phydev); + phydev = NULL; + wriop_set_phy_dev(priv->dpmac_id, phydev); + } + + return ret; } #endif From patchwork Fri Jul 13 14:40:34 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pankaj Bansal X-Patchwork-Id: 943368 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="QrYdnGAm"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 41RnDy70xkz9s2x for ; Fri, 13 Jul 2018 19:14:26 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id A739AC21FD6; Fri, 13 Jul 2018 09:11:58 +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=2.4 required=5.0 tests=BAD_ENC_HEADER, DATE_IN_FUTURE_03_06,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 B08A3C21E7D; Fri, 13 Jul 2018 09:11:16 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 22A4EC21FBA; Fri, 13 Jul 2018 09:10:51 +0000 (UTC) Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-eopbgr50058.outbound.protection.outlook.com [40.107.5.58]) by lists.denx.de (Postfix) with ESMTPS id 2AB76C21FE5 for ; Fri, 13 Jul 2018 09:10:48 +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=FGvIBhFkE4JbOnmiY6hw5PJXXyZxRvfHpOzwRRMRopc=; b=QrYdnGAmzr0lX1U+sl0mj6/Cdu4SClyNeWxKhVcqjBzoUCXpV6eTLbscQmLQburpjr8SFWUlBsLOnmpxbrunWr8ghzWJsxTI+aqc4HKkUgDAx79Xbg7177zzmNbqTK0QY5HhBXConEpNRgpsGl9LWB0jU3tLZcPpr2ZAQ8XgJy8= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=pankaj.bansal@nxp.com; Received: from uefi-workstation-2.ap.freescale.net (14.142.187.166) by AM0PR0402MB3313.eurprd04.prod.outlook.com (2603:10a6:208:19::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.952.17; Fri, 13 Jul 2018 09:10:45 +0000 From: Pankaj Bansal To: u-boot@lists.denx.de Date: Fri, 13 Jul 2018 20:10:34 +0530 Message-Id: <20180713144036.17606-5-pankaj.bansal@nxp.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180713144036.17606-1-pankaj.bansal@nxp.com> References: <20180713144036.17606-1-pankaj.bansal@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BMXPR01CA0016.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:d::26) To AM0PR0402MB3313.eurprd04.prod.outlook.com (2603:10a6:208:19::18) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 253852de-f744-4d4b-675e-08d5e8a08532 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(5600053)(711020)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(8990107)(48565401081)(2017052603328)(7153060)(7193020); SRVR:AM0PR0402MB3313; X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 3:6eZRvu1lXlD2AxyPxuHtify1lQbRy6XVgrf5dQSjQ7Jtz4aWBLSYrP7p+gj6gMrE9bTkBt3U2EfcONNcrCJjH8JFwiAF8gkg59osnuH2G9WCepMuMvYLUc284AaWeKDka8xh8G/x4rQ3huhfyO8/Q70ixhEsbwP/zbeC4cpoGPdKiSTbhO3BRFgZZplzR4F/aEN055N50n747kViy/MfmYIHbUmCfBmEutLYTz/uhH5xjTRxCLFZ8hKEuQ9GPicT; 25:gMjjzeSddp+jVsdknRFc/OTOBmpr8k281rTUzQP+YqLq2pR9nY1KuM9UVuwHo694rQcKd6POmkPS9YFmRvwjM1VNeEA2WFipfvdIz6CBHw9dlG+B9bNyBJkwn6byXyv0Od/MSvJNhhGzqnlI9JDAAVrWG1Lin/TSgu2e6T3AgafDyikr8CKpNmzewyCGgmrPkfdo+BFoELSiPYFL58QV81Gf+NgKcdx18nH2IKVXHlgIK/DPEkYdhvBvrj8FWNhFiSrr3Q3Eoy+3z0WruThBCITRkcSRx8ETHucanPIpDqc/6YLLPXW5uJGHNdLe4fTGt/4jI4aBSVEKmlru/oCD3w==; 31:dDxnumuk9hicFpyqGXBqyBjIyuTiH/CbdqSZ3YCdJEsxH1O/HXND/cVjaHQYoEBEP/Au+b+hsp3pdkfkT15s2Im3rqmtH3YwN243a4uEsLrb8iO31wjKiJOLWXqarj2584s2KHimOp/uaaO3hJWC2ijIwrm16vbnOR/sdV7wX4g7LzYOvH3/tOj9qWEpeV8AYecsYWGKv09HuX7QTYSt8PEKgvP9n36oDYRSfwjAw4A= X-MS-TrafficTypeDiagnostic: AM0PR0402MB3313: X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 20:1yTxUdvrDlL2scoRrkUTnfc77fR71C+gszj/FCXSnDJMD93uc2MsM5/l+blwpPLVpVzdW+KWpyI8S2hlVLk+Fx83xTCPZgkllD+8+as8CF8KeCj8xpvJs+YhGuLGePFnVujiQGK+oKz2Oe/63mdsNa/6aOxwstpzztJOQYd+dFcEF/pLUGobDVaJ46iA5UG+iV87Zpa7SR3i7vyhVfZpE5JW49l7kmEpWweHZIDibuDMNWE803IynK2s2tzSbywJ66kbCyMefRTFXLN+MVMgd5vV5I+8z2higFfhUpYOVQ3s7P2FhC70zx1UPpkWUZcmkYLyfu8qL7fV6QWi3MSiTM2zvJ5NG8pcf+Xwe0VC+oq9F+07KKT5SOtgKeADnCDjJIzDN+gfZjnCIg1hfolIbHDoTNJjeMjAQ6/GA0azQQb8gZUbX2gKNuN2/Ic72cBl8/ehpWvvCLf89k/MmsIBb2UpdbJHpwAvLFqrgfpbC5We9BXetOMo2S7RQnALewAX; 4:0dBwyXT25qZB6o2LNmml3uj5Y8gelMplGqhNEcaMftUfDZPhZoc2SWSlF4TGnnRai5ZM8k7BO7Wr15vrOylgY9a2R+Ip0WSeTuCGTyOsCj9+4UWw78IfQKWHDWUGgNJL3iVRJtrwi3GugBiepVp+4sWLrRm7riQiC3z/qn/bXzJjy/ylTcgvUR1iczJzG8+MCFj69vCLU0OqXXz8TCTNhj7a5YEqF4ed++f0UTV7P8jm+xFolBn1Cfo/9KkxI/OWwxVDbTs0nsiMEDW4eUUJ9H3GakmomLbM97f+Tq4kIyfayPn5KemBA8fYLK0bRU/u X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231311)(944501410)(52105095)(10201501046)(3002001)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(20161123562045)(20161123558120)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:AM0PR0402MB3313; BCL:0; PCL:0; RULEID:; SRVR:AM0PR0402MB3313; X-Forefront-PRVS: 07326CFBC4 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(346002)(39860400002)(396003)(366004)(136003)(189003)(199004)(51234002)(478600001)(3846002)(6666003)(53936002)(6116002)(26005)(6486002)(50226002)(2361001)(6916009)(66066001)(55236004)(47776003)(5009440100003)(2906002)(186003)(86362001)(16526019)(1076002)(6512007)(11346002)(446003)(25786009)(81166006)(105586002)(81156014)(8936002)(51416003)(386003)(305945005)(956004)(2616005)(4326008)(8676002)(5660300001)(52116002)(6506007)(76176011)(476003)(106356001)(97736004)(44832011)(486006)(7736002)(2351001)(50466002)(16586007)(48376002)(36756003)(316002)(68736007)(110426005); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR0402MB3313; H:uefi-workstation-2.ap.freescale.net; 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-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM0PR0402MB3313; 23:opy3rhrdMb0C9olRzFIl/sKN/+bJvlJ2SXuc+pn?= a6WfRIkLF3S+OAauLQEoRPlq9vzB+3dTj9O8qeAjFBhRE1rpmdSeYwME3YpnuZTtj6FGKbSrsCvcR0b81CZH5PZ+Zca+S0SRt916t3plK3jwSRc7yvvmeznUipTF1BiV3faqxasFI0nPKgzwciiSAXDzdfTlWgLV0Z2sjZei1vm0nvlW9tvhDqNlTkatc/rHlGjiT3yXBG1EMoTn8rKQv5DoVs1uxgm88KPlNSRnKye1rS2nSIknWJ9GPWeYYXqCl3GTHWcocfmbNDZFycqN3qs0FVDO7SA0UZHUth42uvZGLhbP7GFmz8rumbgvMK4qpcMW/xCZ9rAGS/q7/VybrDwZhfaHl/PKBMYU6ymn5H2TvXJLShsXy2WmPp7bDyvs1uw0QinZY9AP94wBEUqbfGqTu2Cj+nwkV984CT1udYI1rJdZXz8y5Czi6rMNngDKkT2MD8/a3zI1sXNwKgw7XJ7TjRsbht81yAzGKx3Vquk758dVn9MiXFmallweKMtiTvvHAs0rqL6XoCaWcy3t/XPudJAV1f3wK7txqWDBWRWkkeaFVIM/pcvDfNCKQHq8si+xMdRSu8rSdaqoSbkfqrPikSvTAy2MV/+Nvka3ichlfmo56khWQfk9zIXCgpM5z6SJ8UAAufT7Pfca4dNYzMbPS9eQa2zPLbX58EiWQ7j2mhM5K398YhzjJiNvdOVjDRqj4Dep6rHCOZaQgqtDFRL2so9QQRwuH9RZMchj1Vdu4itOftcecqR90Y44hYvfDuC/AlOgGP+WbK6HBbJq1ExHQuxxjK6kCKdb8qSTl1rsCcj39Ugcf6z7oY+BiJCwbLshXScY7I7QePbWG94QRwWVP80dU0l4pwjp+IEjdiPYy6d7QuL64q7u6TkysipsGMIMl+kTdLTIbq+V++zhxyQ8bZ4yd2+Gp55mH47/cZRVpLmZqN4oA8/A6GZixWLyjn5fW4mb8qzYa5GGQMcs4xgv6/CtEmc0hTExL6nXD1eu8armdYIC/xMQlemPN7arXe8ssRLKlwXR3uGhhgPeU6sSsODFAUT6dsC9uqBYSxwaUILCgMSl7dyYFbrrkvZ1wDkeErepRZkpi/iCECbSGFH8YXIbllfiSIO0kBq/OWPXn8w3nV46N7NjFOHjwcFiQs7Ww/yV/LUmRnT5SVvVLBgkCbVxbWes1QYV8Vp3OVJC5nsB0YGL+O9EtQSuO8c+LDeelSfaXZnd79keNR8RQsN7sB3hoLDHsLPgW5tAUMbHX22WYbx3VkorNZTdPSm4/UXx85GxaGd4rOo6WWm6G15yQ X-Microsoft-Antispam-Message-Info: FWUXB5VLBgQTndURuNsTOerPqhJ7vGcGrcNuQPXqx1RDS2N+ex2nJHYZO52boP+PJ0y0fPaGIJX8e50UYPAIZSz+teG0uyfKi2x8kgb9KoPTDyvd+CtQ74rhCmR+ikYZhpQSLPv3a0wIA6eFqACC/jlXLODG0smnXUb2BGOA4xcpGizro5vIZ6HvagKyMJBUQWf4q14X+FwKMV/4sV54d+w5QONh0Jj61OLCidwuEE4mRffP1LWU1yvZjEE8gyvWeuc017aE7M2IYnYR3J+t8udVhUrsXiesepViFULmeptmGdse+CKoZrYSOo2ii7GEKugz3s4zYw5V+SVC9k0aCiNQTRyTK1EsQIG9fbIzK50= X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 6:Q1r+hTlzTMMDy1Jj20MQfIRccTqwskDL/Rp1HnZbQ8T/jYqAwTd9Xsa4ZZYf97uDqQsl2X/ostFz9Z3F+ViXTPngQeDraIqvSKvmI49FN03ZptQSNax1/IE8d4vzHu1kzyVNokas0UkV22K7qZP02/dPJAdB+MzkOyykiiApX5Lb/SXz+vNw0Y4H55WaAx41EznHFsJcvAV5A1jDKITJSQ18r1HJAAXtKAfgoJsIXoJM8xdzp7hbPRc0khTwuBTLJrTfjjppgAZtVYF4eCL+MHUvWoqXEFFbS2I+s8wbBXhSxGjgMItqv4mUHjmpUzlPcGFyzWZzWLIWYtNxUk7UaF3TM9EjaTy/lekqJbzF4Gm1g1gw+NpV2txL54tiOTAmKJ88afubVGRtnE9mM6LXP0vEKirmBSfntrHeWVR3fgV2M8GkLqj04VZ12ERKoMyljI4MiHl/tyigN0lKYPqOrQ==; 5:CX8/TxK3MMA3+qxIqF6WHhw9UuJ5IEnSV2VpjHTIDrtV4Q++df6VcK2PuJOVhuwmcFwKNPT9pUpFmbZdNGP2DOvUKtE7u4oZPMmNilwyF+JRbRtoSylB7cbC3BjxJhKpI/J+KJWDWLVZ/yGDKdza68LdXfJBqqwfDHqztep/Icw=; 24:pRNCaOVtKoH5oO8kDmW6Fr+BgV/VpZVPP4Z5E+3mwMKEbXqJ4YSKhCgMW28aKC8l41b0wWjx0oT2k6dxCftExQ5E2jH+AViSNb2iV/foWnw= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 7:E4e/jckkNVLYv+0i7sQE1a3MBeLv7EAtPMtE3K63QlIfjZxjVOIkgJumi82Gu4+iF8wmFXf3Fq1bSh4V5EcFqVmWYo1LLQ9LIMzQH0EVjQuae+XB37VB3n7QofYVYHn1+szqDtFZh3IAQP/YrhY6/5+L/aDRpoBcQHTAS0IFg+IxgiqwdDfPHJMehF9TxLoPMfk5o6eF7EY5MnwzQQ26YIJaLEnJjmCaCqIEMtCt/2Ha+kB4g4zvy5moAp0oMH8q X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jul 2018 09:10:45.6497 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 253852de-f744-4d4b-675e-08d5e8a08532 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR0402MB3313 Cc: priyanka.jain@nxp.com, joe.hershberger@ni.com, V.Sethi@nxp.com Subject: [U-Boot] [PATCH 4/6] driver: net: fsl-mc: Modify the dpmac link detection method 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" when there is no phy present for a dpmac, a dummy phy device is created. when we move to multiple phy method, we need to create as many dummy phy devices. Change this method so that we don't need to create dummy phy devices. We always report linkup if no phy is present. Signed-off-by: Pankaj Bansal --- drivers/net/ldpaa_eth/ldpaa_eth.c | 121 +++++++++++++--------------- 1 file changed, 58 insertions(+), 63 deletions(-) diff --git a/drivers/net/ldpaa_eth/ldpaa_eth.c b/drivers/net/ldpaa_eth/ldpaa_eth.c index 8fcb948ee8..d2a6d90f18 100644 --- a/drivers/net/ldpaa_eth/ldpaa_eth.c +++ b/drivers/net/ldpaa_eth/ldpaa_eth.c @@ -386,6 +386,60 @@ error: return err; } +static int ldpaa_get_dpmac_state(struct ldpaa_eth_priv *priv, + struct dpmac_link_state *state) +{ + struct phy_device *phydev = NULL; + phy_interface_t enet_if; + int err; + + /* let's start off with maximum capabilities + */ + enet_if = wriop_get_enet_if(priv->dpmac_id); + switch (enet_if) { + case PHY_INTERFACE_MODE_XGMII: + state->rate = SPEED_10000; + break; + default: + state->rate = SPEED_1000; + break; + } + state->up = 1; + +#ifdef CONFIG_PHYLIB + state->options |= DPMAC_LINK_OPT_AUTONEG; + + phydev = wriop_get_phy_dev(priv->dpmac_id); + if (phydev) { + err = phy_startup(phydev); + if (err) { + printf("%s: Could not initialize\n", phydev->dev->name); + state->up = 0; + } + if (phydev->link == 1) { + state->rate = state->rate < phydev->speed ? + state->rate : phydev->speed; + if (!phydev->duplex) + state->options |= DPMAC_LINK_OPT_HALF_DUPLEX; + if (!phydev->autoneg) + state->options &= ~DPMAC_LINK_OPT_AUTONEG; + } else { + state->up = 0; + } + } +#endif + if (!phydev) + state->options &= ~DPMAC_LINK_OPT_AUTONEG; + + if (state->up == 0) { + state->rate = 0; + state->options = 0; + return -1; + } + + return 0; +} + static int ldpaa_eth_open(struct eth_device *net_dev, bd_t *bd) { struct ldpaa_eth_priv *priv = (struct ldpaa_eth_priv *)net_dev->priv; @@ -394,10 +448,7 @@ static int ldpaa_eth_open(struct eth_device *net_dev, bd_t *bd) struct dpni_link_state link_state; #endif int err = 0; - struct mii_dev *bus; - phy_interface_t enet_if; struct dpni_queue d_queue; - struct phy_device *phydev = NULL; if (net_dev->state == ETH_STATE_ACTIVE) return 0; @@ -417,45 +468,9 @@ static int ldpaa_eth_open(struct eth_device *net_dev, bd_t *bd) if (err < 0) goto err_dpmac_setup; -#ifdef CONFIG_PHYLIB - phydev = wriop_get_phy_dev(priv->dpmac_id); - if (phydev) { - err = phy_startup(phydev); - if (err) { - printf("%s: Could not initialize\n", - phydev->dev->name); - goto err_dpmac_bind; - } - } -#else - phydev = (struct phy_device *)malloc(sizeof(struct phy_device)); - memset(phydev, 0, sizeof(struct phy_device)); - wriop_set_phy_dev(priv->dpmac_id, phydev); - - phydev->speed = SPEED_1000; - phydev->link = 1; - phydev->duplex = DUPLEX_FULL; -#endif - - bus = wriop_get_mdio(priv->dpmac_id); - enet_if = wriop_get_enet_if(priv->dpmac_id); - if ((bus == NULL) && - (enet_if == PHY_INTERFACE_MODE_XGMII)) { - phydev = (struct phy_device *) - malloc(sizeof(struct phy_device)); - memset(phydev, 0, sizeof(struct phy_device)); - wriop_set_phy_dev(priv->dpmac_id, phydev); - - phydev->speed = SPEED_10000; - phydev->link = 1; - phydev->duplex = DUPLEX_FULL; - } - - if (!phydev->link) { - printf("%s: No link.\n", phydev->dev->name); - err = -1; + err = ldpaa_get_dpmac_state(priv, &dpmac_link_state); + if (err < 0) goto err_dpmac_bind; - } /* DPMAC binding DPNI */ err = ldpaa_dpmac_bind(priv); @@ -489,18 +504,6 @@ static int ldpaa_eth_open(struct eth_device *net_dev, bd_t *bd) return err; } - dpmac_link_state.rate = phydev->speed; - - if (phydev->autoneg == AUTONEG_DISABLE) - dpmac_link_state.options &= ~DPMAC_LINK_OPT_AUTONEG; - else - dpmac_link_state.options |= DPMAC_LINK_OPT_AUTONEG; - - if (phydev->duplex == DUPLEX_HALF) - dpmac_link_state.options |= DPMAC_LINK_OPT_HALF_DUPLEX; - - dpmac_link_state.up = phydev->link; - err = dpmac_set_link_state(dflt_mc_io, MC_CMD_NO_FLAGS, priv->dpmac_handle, &dpmac_link_state); if (err < 0) { @@ -543,7 +546,7 @@ static int ldpaa_eth_open(struct eth_device *net_dev, bd_t *bd) goto err_qdid; } - return phydev->link; + return dpmac_link_state.up; err_qdid: err_get_queue: @@ -566,9 +569,6 @@ static void ldpaa_eth_stop(struct eth_device *net_dev) { struct ldpaa_eth_priv *priv = (struct ldpaa_eth_priv *)net_dev->priv; int err = 0; -#ifdef CONFIG_PHYLIB - struct mii_dev *bus = wriop_get_mdio(priv->dpmac_id); -#endif struct phy_device *phydev = NULL; if ((net_dev->state == ETH_STATE_PASSIVE) || @@ -603,13 +603,8 @@ static void ldpaa_eth_stop(struct eth_device *net_dev) #ifdef CONFIG_PHYLIB phydev = wriop_get_phy_dev(priv->dpmac_id); - if (phydev && bus != NULL) + if (phydev) phy_shutdown(phydev); - else { - free(phydev); - phydev = NULL; - wriop_set_phy_dev(priv->dpmac_id, phydev); - } #endif /* Free DPBP handle and reset. */ From patchwork Fri Jul 13 14:40:35 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pankaj Bansal X-Patchwork-Id: 943367 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="eaV7qApW"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 41RnD10dwTz9s2M for ; Fri, 13 Jul 2018 19:13:37 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id AF410C21FDC; Fri, 13 Jul 2018 09:12:21 +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=2.4 required=5.0 tests=BAD_ENC_HEADER, DATE_IN_FUTURE_03_06,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 DB41AC21FEF; Fri, 13 Jul 2018 09:11:17 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 7D777C21FE7; Fri, 13 Jul 2018 09:10:53 +0000 (UTC) Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-eopbgr50061.outbound.protection.outlook.com [40.107.5.61]) by lists.denx.de (Postfix) with ESMTPS id CAC92C21FD6 for ; Fri, 13 Jul 2018 09:10:49 +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=sUom8u5KKEGI/RgnHl0NKRhNWYQfddUv6MW6g+50Czk=; b=eaV7qApWjcoALenOBN3tIN+zC136WGem+r6L+gKGoKluXcCNW98bHbmV21Dr5zsJRmcenP4qNAwWzRRWmPA3mcHEHH56vK5RCRdtrQN/03GKxBhizlI3FzEacVlXJ+bWJUPKAY+jHddbdiFCeO1ma6iTUuysn0rWFfBE2MRzelw= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=pankaj.bansal@nxp.com; Received: from uefi-workstation-2.ap.freescale.net (14.142.187.166) by AM0PR0402MB3313.eurprd04.prod.outlook.com (2603:10a6:208:19::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.952.17; Fri, 13 Jul 2018 09:10:47 +0000 From: Pankaj Bansal To: u-boot@lists.denx.de Date: Fri, 13 Jul 2018 20:10:35 +0530 Message-Id: <20180713144036.17606-6-pankaj.bansal@nxp.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180713144036.17606-1-pankaj.bansal@nxp.com> References: <20180713144036.17606-1-pankaj.bansal@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BMXPR01CA0016.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:d::26) To AM0PR0402MB3313.eurprd04.prod.outlook.com (2603:10a6:208:19::18) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: f77e95fe-f38e-4919-bbeb-08d5e8a08643 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(5600053)(711020)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(8990107)(48565401081)(2017052603328)(7153060)(7193020); SRVR:AM0PR0402MB3313; X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 3:Pq9QZ/czfLS9PLZDzTxBV5drgH6Ha49Z/SJGhPD9+8+QMf2YmqmjPlk+YW+Sk4+M16G9wNS+OQnFCPalkZF4fcwRQhvM3ZbmszXg+HUzIAF5neF1KgM5nD9BmJLc9rfAiwBW5XNKmaPqTka6QxvDswTssNWXKDCYS0IOOddkU/fGocDaBuhL+HAWI+y9MYVVbQSQdkis7Ykhp4BPYQCI1iLta+K/kqbAlcX4oC10uqANi7r/nhsc/VUqAMcsvIv2; 25:KfYSD4EvitNzbOweE74nR//4PG1o8aNNpfMJPN3jADpvNGnR2KmnYPZGg9fm+Fvr3QlQ9Jn7bwJ11TOrqeEEQdT353IPSv9LpcgUfxeFI/ZF2LOS7X4N3RNBrJ3wgtmsd88FUmURnpDV7rNJTJjo4aHzYHT3MBo8tT/Jz+XogCwQhWxACo/C8+GVp57srmvMrXhhsZOSI8FAU6OWJ50GIhTc/Wz5CySHMMH3IL2CAeyt1fR14SgHrQzx2fTnMRomyBwYZAsgdCUuqPotn8nupQLeEeqhlM7D6UpTfizZbEoKxE3lGjiq/tlnbJBKUCrpcCK1qifzFW7LN+wV0ckKqw==; 31:PXkVzuDmWKgcP8eH+U63AmfiAHY+6g8szLQoWt/6YuakDohrqHA9Mhg6Y1DPYgsYrB5+JiPZ64PWwqOqinlOrOoXklGJssc4Qf/yhmgkokQQ/+gqsjcGuKHK+qHPvEmPFRC7OO7sI2KUJXGF0lZiTghMn6RzFrY9dqQjha/HwwupdJ6GbE+SAXo918J6cjAzN65cdCuskFw3GrJfiTtzOh5EDxGrIS4kWT27bIal2O0= X-MS-TrafficTypeDiagnostic: AM0PR0402MB3313: X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 20:STD9fImXpro2Qcmo+sYrFYNMu413jwHmUPGXjwi8Eu8Ub564Si99yM9tdJos2LMThriOSOhVLUAv0pk1eNK7EHCGweI7TcEmY3+jkzvoqxv3Im+7qRtQm0IVKoKzKxiEluZq4l1QTda/Ufz1mWZYfHEfMl6pUQMOrPhmCsipFl8SOaGtY7YdYD4TM0pA1iIAk4bIWzobOqH+lvTSVaHuiHHK03nw37pShOUEkIc75Nk7zy4Fv07neYX+nFUOgNaC59BUE4HncnjvbQAcwlOYaCtaFNQ5OzDwgf04ch+j+hEpa468p4cy1/ttjIGaqLMSu7u4itBeowEVWtv92vR4lvgsawoKaig465Zs0I4M2TZ2dEIABPXq7M9ZskUwWHSk6rtLA2TC9oV8fOWND82yN3CJ6nixY+n2pbqwSU+xFon0lMsARrlIp5jpyv01N/ubO/zFbmiPCFbZIG1GajgPnfTz+XfHTAiSQjzmeH4jA6bdvMqJhNiXl6gYjbQaj5yG; 4:hrzzTvotX/Isz/Pq9eG5m/vhuh8d57Y5hb4w7fKdspzfWjO0rp9Kd4hDDiMhJud3/gTYUMehes8e/zQufIoV4N8Ff+NvkpYzvN6ERhB7c4rFbci95JOZ/NL8Xdr6lBV8CRDoKJywqXdH9ryey8ISWQgIIu/QT4JY4q9YUvj+r267KEA1wcAJrJPaw/SBlS/nIShIXoh7MnZpqlpcPjfJ8acz4HtzxGMzF6WEiwg4MPCRAo6SudLDRQXlTDUkQZgv2JPleul0eIiZkjYgAvccqGvjkhQzoH2B/E/rB7cbWOZAHGidufSbBzP2Gd+wOrqq X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231311)(944501410)(52105095)(10201501046)(3002001)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(20161123562045)(20161123558120)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:AM0PR0402MB3313; BCL:0; PCL:0; RULEID:; SRVR:AM0PR0402MB3313; X-Forefront-PRVS: 07326CFBC4 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(346002)(39860400002)(396003)(366004)(136003)(189003)(199004)(478600001)(3846002)(6666003)(53936002)(6116002)(26005)(6486002)(50226002)(2361001)(6916009)(66066001)(55236004)(47776003)(5009440100003)(2906002)(186003)(86362001)(16526019)(1076002)(6512007)(11346002)(446003)(25786009)(81166006)(105586002)(81156014)(8936002)(51416003)(386003)(305945005)(956004)(2616005)(4326008)(8676002)(5660300001)(52116002)(6506007)(76176011)(476003)(106356001)(97736004)(44832011)(486006)(7736002)(2351001)(50466002)(16586007)(48376002)(36756003)(316002)(68736007)(110426005); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR0402MB3313; H:uefi-workstation-2.ap.freescale.net; 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-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM0PR0402MB3313; 23:X3dSggMxeGXddYDngpmyav7ebb/jYv00/f8yxLY?= 4bloKqp7dSux11lOZsyivkK68GQMo3rGnitzsxr7BuJb9zOmv1rZyT279Gl0Qs/JHguVbzdSq8kdQMEX1tWOpqbd2JHD7PpaTj/85hAGNa5uHnz2QPsadnTDGrM73JCwRbRiGAkyrtFG1kkc+5dBuhQG0RYBxsX838cM1ERhuuSyPDUw0RVfkOdA2BDWnETYkCefcC+wbvfDMe6HTcc7mNnOcCP8Rn6aoqKEDP3pOl69YFz1QKALkLxQh4pJEM1or+oZkhjInNnnioENiIsMS8HvZg7dCznBP1xodltpChhXlmGbZiOQJI1SJvjt80M7SOgFSe+ihe+evgQD//+25zsELifSbiRDugW0OunOKVPQo7mJ/l9TmsBDduruZm8q4Q5bXM119/+kvXRk1wM3fQSG9klFIJb44iLu5nTe+UVQn7EfOFiMuEvW8Ft+U2MfZXPDfsbtyFJgzPzegp9bpVNrHu2ZCchEE2/1ilBAnl1aagUZ2MSqD5ImsS/t/9nF3Brkg4c4bbsetCNB2IEoQBAW0sGy4Y2e+q6PNxLbB8MKd5CO2YkEOFHK2sjf8E69nGOqZ/XRWmw0dnDH0ItKbl0lx60ZmNoPc2XVtOOwuIOM3ATZpWtNWlGHRquDEJlBlJjnugmbddsKp4vjoRS/8Ua/SocbF1PF+1uJxeLkH/mfQ3PKi6vPfMk6mbWRStOz5/rgUKIHf3Pzf9IOFFWckRDTLrN8Knq1kqOvRqtvngz019yKW1XkZJdTD+CB3uiOovBjjIVNP3Z1fs9Dubhn2QY4cNjp+qjk30TiLvINr547joLka9az4me0BOGhV19mtwMw+Xk/3BIdYYcF6jT3KSfpqlSlnf8PsIrWy0RVpUYV9uEdya62pESYvbOJkdVbdPgwC/KGsyXYp/6RC5fBrgmFDvTLN/Ou0VF2EGZvA9/sDvIS9RaYQWUSGy4u5H6/53fMVqdJK8t1xZ0t7UxPgPILcsRWSd9FFxhc7TV40xMLL/60SO2g7M28ypOs2DpXy1F0xjrFdwyY6wto/BOfqmlyepi9MelRBbcigTxXuWQXd9aqG5vynllTt1fIs8X2/knK+jYpRmTl2dbh1f0b2M+Qhesd37uIPJIkTwEBTfhmoTBQA4cZKogA86pzaPy+LKBNTtS4kDojDMzYormbCbOVKIwJJRQ/N23FG9YocXyUmzpWaMDC1rETa0lK54pvgAu4nqWgSJu78iYpjyCKxslrpYCzro04zfsLiaUBp+J9y+PbNMlSocw+IS5i87FBAMiU= X-Microsoft-Antispam-Message-Info: 6swLD7nrKHnmgO6ENLTkABIrNvMf+dfx2pAaZHxXe65CeEToPgjBGIRuvV6Ernwkec7Z3zYvcsQ5aoQmNwcIQ9mwge1HyqE8TMrOwAsQJpWeMFcZsnxKrQ3ood2LU4J3aup5xokDmeEYxbiR6xewNhMwSjY1S4iZ20lmfkudt7nKQoVEYqR7lsdLehNsCctIAEPvflpKHKXaAxJOE6KP4NuJg78M1xxrOD4HEKzK4jy49EEBZ+ZGP6XNMhEvpFeKJr08sCpqsVmCC3sySpyUjZV96cuoUSaPcnzgT49j6LjfMokcS9qjh+LgVl7GOEDPmKwmC2cKlj6sQ3rz3lmt9WJ2jMuMTVOklEXa+xmY0Bc= X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 6:Rh/wfE2NYnq8pxgJIzJaYT7rjLuKx5dOH/3/02d6rpAQ0D+sF7brZXcwUjGIA772hdicnEHl/oUKK+HIPdB76URcgvfYfMQyhlMnCyKt0ovku1t0dXV7MbzQydRhA6obxrrLQGbxcrNhDY5llqUInT7JkG2pYOV6aqVt9v6QUJPuwnyRVXfCPKHGT4XGUVXP+AgmurezdKP3Xkb99Vm1+m3ePbag/5iK4Q5uzly1BbaQFrKqBj98coJBRvOg/qvuVsDuus59VUPRfT0L3jfCmGECrm1/dpokQQxrDQdOLv4VU/Z2o8YlJ7OCp2ZcNm9ZJDK52DEE2g/7liQkQ1xsWIzrPtGhGXEUaH7fzJR/ePYHq77RmF1NDB5s9HrTPGgJ/Sg86GrfLp0WkCqnimz3bOcdbZ5nT4NnH5Dt6ytvL//lpiEqKCJZeidnseMNlUoi/JYa8d+fEzmyL8EcO9WIIQ==; 5:TK1JRtZVp0xS6ZKhMPtv1dQOxMBxO1j6fZzllK8q6kRFr1UgSRJTmXXcU0S19uPzGx9TtZDEx6zxk5CX/Z6crtNuCoyuTAzf/GZ7rxv7wiYbwogMF06zqrXssdY2oybv5kdfdl5hUiZc21rK9t73clyyS/hciGZnlOQdjoIouIY=; 24:UoB4vgDRgeRKh3MZTpCOaYm/azMxU9b7xrI7tskrcKMTjM0IB21+AqHls6IcHRkoFwrFmGlIwD7c+9NQkX0uPjmmugxQZ4KVM5IfCHHU8wQ= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 7:SDKBNegpSM9Bz8k+d2XV+U9cI1JYz5EE02mDVOkFXKHUH8ZWgtY167e7dhZY03I+eZTYDRAYAri8zXBOg6k/NoZpZD8tTer7MoeopC9RivkCTZ5dLKlH4u8JIdTQK2++4M4QauNY3zvlIjr6pkwtIEZ42K7EogAe5vuIj0JboYWEHOUgsPrlO333r01BOS9IjiRL784ZyfT0RHYL+7/bCgP0FaBnKE8UwGDEFVnlRbL+BhZLpPJl4O5nCeYcGTxV X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jul 2018 09:10:47.3940 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f77e95fe-f38e-4919-bbeb-08d5e8a08643 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR0402MB3313 Cc: priyanka.jain@nxp.com, joe.hershberger@ni.com, V.Sethi@nxp.com Subject: [U-Boot] [PATCH 5/6] driver: net: fsl-mc: initialize dpmac irrespective of phy 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" The dpmac initalization should not depend on phy. As the phy is not necessary to be present for dpmac to function. Therefore, remove dpmac initialization dependency from phy. Signed-off-by: Pankaj Bansal Acked-by: Joe Hershberger --- drivers/net/fsl-mc/mc.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/net/fsl-mc/mc.c b/drivers/net/fsl-mc/mc.c index 982024e31e..e2341a2e3c 100644 --- a/drivers/net/fsl-mc/mc.c +++ b/drivers/net/fsl-mc/mc.c @@ -327,8 +327,7 @@ static int mc_fixup_mac_addrs(void *blob, enum mc_fixup_type type) for (i = WRIOP1_DPMAC1; i < NUM_WRIOP_PORTS; i++) { /* port not enabled */ - if ((wriop_is_enabled_dpmac(i) != 1) || - (wriop_get_phy_address(i) == -1)) + if (wriop_is_enabled_dpmac(i) != 1) continue; sprintf(ethname, "DPMAC%d@%s", i, @@ -845,8 +844,7 @@ int fsl_mc_ldpaa_init(bd_t *bis) int i; for (i = WRIOP1_DPMAC1; i < NUM_WRIOP_PORTS; i++) - if ((wriop_is_enabled_dpmac(i) == 1) && - (wriop_get_phy_address(i) != -1)) + if (wriop_is_enabled_dpmac(i) == 1) ldpaa_eth_init(i, wriop_get_enet_if(i)); return 0; } From patchwork Fri Jul 13 14:40:36 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pankaj Bansal X-Patchwork-Id: 943369 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="o0V3gWFm"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 41RnF44MG4z9s2M for ; Fri, 13 Jul 2018 19:14:32 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 43FC8C21D9A; Fri, 13 Jul 2018 09:12:39 +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=2.4 required=5.0 tests=BAD_ENC_HEADER, DATE_IN_FUTURE_03_06,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 1AD15C22004; Fri, 13 Jul 2018 09:11:33 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 7D3AEC21FBA; Fri, 13 Jul 2018 09:10:55 +0000 (UTC) Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-eopbgr50050.outbound.protection.outlook.com [40.107.5.50]) by lists.denx.de (Postfix) with ESMTPS id CD283C21FD5 for ; Fri, 13 Jul 2018 09:10:51 +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=uHOCkx7YrOiuZJqSb5R9Ej89qRm3xRi/dXIZCrRVXQw=; b=o0V3gWFmYytn87rTEzpTndH938c7TRbB7BfXwbPwckqRwcEisLUR+ZM9n7kxgdfGaFjCdkGosuK5MDOsxVzS62A1bNEzOak5dybA5tGKIpSASxoSzxOzAogExWCvz7jakc9iXQ7sBGzrnbbaOs+Cykhvj/9Cgfs40FP2lGRZ9FM= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=pankaj.bansal@nxp.com; Received: from uefi-workstation-2.ap.freescale.net (14.142.187.166) by AM0PR0402MB3313.eurprd04.prod.outlook.com (2603:10a6:208:19::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.952.17; Fri, 13 Jul 2018 09:10:49 +0000 From: Pankaj Bansal To: u-boot@lists.denx.de Date: Fri, 13 Jul 2018 20:10:36 +0530 Message-Id: <20180713144036.17606-7-pankaj.bansal@nxp.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180713144036.17606-1-pankaj.bansal@nxp.com> References: <20180713144036.17606-1-pankaj.bansal@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BMXPR01CA0016.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:d::26) To AM0PR0402MB3313.eurprd04.prod.outlook.com (2603:10a6:208:19::18) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: e373c5e7-5ca4-43c1-689e-08d5e8a0875a X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(5600053)(711020)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(8990107)(48565401081)(2017052603328)(7153060)(7193020); SRVR:AM0PR0402MB3313; X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 3:NsViH+PfS5qTR2Qm5L+JmMM4lEh84Lp70faZFj8z6E4f3A9yH8l96f9JVylop3xx+okP94D3IkFo6EVulBDduRQsjknwXhqVufSpoMc2UnxKuH6xZPxKlatROQVBoWIejFqwhwf7nuSY9Wq5bmbpoEo4kQkox2jDZGYtgjz1U3OqEZ8buKmXVx7fCw3/R738MJrAWqsr/q5lk7zU7j8r6oUT7iw40bL8IIFTvNga8lPpG9mNbWyuylNofjRcs2pX; 25:+9FB3f8/YsFPYbu8TQIC/zou9oGLXaqLLDP8vuHfNl2cC/pabVQxA11yh532iTMv0cB8lD8/ZHxXEENKkLXEdBYfklRC/SScXfCbzwFoXYuM+UuqDH+nR/OKfs1sTAV6iHq825jXhw7mz+H4RxLec96W66x4Glz//AmbDOmBpydCoDqVkSG3YwcSitw+zhPL0rCDElkNHeBMfU1oUXe/VW7wHJVpVQSMrhAOCpP7GMgVGAJAs1/Fi4IiI8URd7FXaeGhblaIT81MCD2NCd4OSYLiSCAuvVCKqyXiAirC/7EVaCQpyURrl65MgrMMn5ThsTIUJNNvgWGco6D95MKVYQ==; 31:beDgnIfkeRdwmkfWv4WGkj4SqjSJ5+vaQDM/YWSrlMCJQ/wOMav8+cQl9ZMR8vJpIEMBUg3xpZSH6xQFFhFp5+mtZGRnq13xJfHQF+wKfkFW1kgxSfmmv2AR7p1hGK7bbY4tOQsy31wa6LURA+zsygcLPO17TH5dsGkMnIHlTtQF1AKZCzAZ3w+UynHSvlPx6jSqHzi8fzqVyKX+j7Jd1CZmR7nd/nIG7hN3qmZXJVc= X-MS-TrafficTypeDiagnostic: AM0PR0402MB3313: X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 20:ylPfd/G3sy0oCdi0ky79PrcUwH34DltnvXcwBrGDHOYdQYIMXSBk9u2s6qHWYLv936ojqL1eceajgZpPIB3ZsuNz0fNhcMYK7lU0oj9AMtqQktLK5U3MGxI87hNJe1oyDOhyIITbFIa7IimlAbBiEQ9RiHMnef2GFSpvqC8z1HF1YPEw32gDIVP8YYiY1I783e93X/6TmKcvkYM+O5cWqEYpRrGNb89XvfZ2XzVNd4PbxJYef3Fd6KoNMSxmtCyjM/GBAnK68BpgogxfnKSR5HLgYE/dHZkUunShXsieW77Y5a66e0p7JHF6D/fsiiyET14ZW34PcwikgBWsj2D6/4HqXe1YOYes6vxmEYLrSn9dkqhymlzVJ5/Y3iZ4xAU8jnsNB9pFczLs7VjuD+R9/yAE9kvzEhL/1qsmUuYHiZ5qLR8uobvXF4Si1eNkSLtTKmXDAiPbslQkT1VM29G+HZst1nbmujU+KhmO0zusw1yrfS8I2cYhOYb4njlZNOik; 4:/RWbBfh7aPpypCXXFc5i/d7nJ012jDwMGiH/43q/Xjftxb6MlnUTUcBccdDN2ZjBYCzH1hrp4Yo9oZw/QklWikTfO5CNzqyjvzK+emRCyhVju9GLiNW2x0Y4u9XSsRuf36DhwDTUNttKRBrJ0nlwqb1pHJkk67pJYekHEIVGKj3jkK5Tx+Bj5IXKU/Ajk9jna8SNHcfMeDLMEKoArs3ZnJYse2rqvabg6FeDYX3DDxMVUyzJrYooPSbvdaHULDqLFBlIjBeLAFq58QEkkhJs+Xa/Xighh+9uCOpR+mbVTIBuxJqFGkweoF+V+5HnPD9Go8uDR+P3htFOm5MQy73lDGmYogjBouW7EF+XOUY+EdE= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197)(21532816269658); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231311)(944501410)(52105095)(10201501046)(3002001)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(20161123562045)(20161123558120)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:AM0PR0402MB3313; BCL:0; PCL:0; RULEID:; SRVR:AM0PR0402MB3313; X-Forefront-PRVS: 07326CFBC4 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(346002)(39860400002)(396003)(366004)(136003)(189003)(199004)(478600001)(3846002)(6666003)(53936002)(6116002)(26005)(14444005)(6486002)(50226002)(2361001)(6916009)(66066001)(55236004)(47776003)(5009440100003)(2906002)(186003)(86362001)(16526019)(575784001)(1076002)(6512007)(11346002)(446003)(25786009)(81166006)(105586002)(81156014)(8936002)(51416003)(386003)(305945005)(956004)(2616005)(4326008)(8676002)(5660300001)(52116002)(6506007)(76176011)(476003)(106356001)(97736004)(44832011)(486006)(7736002)(2351001)(50466002)(16586007)(48376002)(36756003)(316002)(68736007)(110426005); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR0402MB3313; H:uefi-workstation-2.ap.freescale.net; 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-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM0PR0402MB3313; 23:9MphsRuVdUmFf9eUHumpOMdvtkZ0WX6JipfvDzQ?= c7U8yr+dQQ2dVj24qO6Kd9PFCgQrszCdPAdxHrIa8tNP0wzOutIWSaUQQ8Dmymairr1ksh+pbuttumkWdKpdL034UnXf+QZVB/EztCjzAFxdEcwwXuuCe2SCfeYIQKmpzhqc4HXo3USd/lbSVUXVdJGRuZZLROy/9+Z4glDcCJabfuWRcpBGrPSQ1NyP2mMwC+7vGrdLd1pqshYFgV/oee2nYBI7uyEV2aYqFtz1FMN60acJSVATDRc6ojvDK5bonrCUoKDgHsx932XSNpd/+jxFJtq2URD4vIXL9oY1esgChzlqHkRZTw+vk5O0y6VhBxkZ5VWOn/70DqiQB3NtnlqWqul/Fkc2ojxDK1mhrEAerqe5imaGQIQqgPMKdA3prV+DC0yQ7hacQ47DxpolSeNeIpcY8SvxiQHTblqS7J/L5D5jCVb34+0hoVLj+Qr4fMYoFlmdn5yNGYtBwwkfwUuBAT204hU6e6B/7H1CiN786/k8zhbB17DEnwU87B1fFUX17+XlcD+oYqhFqojMT9GiJK4EQcAOci/fMwCnB6PC9DO0wAO4GgihorGlHJbdL4vT9IPXoqVSpvhwk2HZt98x61786dBfj/3UIWed8kXj4XX20+WZcbYFIF5CEzQxjf49QPo+peo8yb1rJAArRBsSCsp4fcnwBhJCOj4+fd5ujU6uQyEhdsRS/dBHt2zY1lNZCGiNr8KM2uSVZO40Usnap9OeBGoBaTBpJAHfAYJGX4fg2HvOu3fNN/r1IeOPli4IUYrviBixrcZx6G5gRHWQKI6RH71i0Wa7GpkpZk2IeYn8y1heLuH04lddN74vrRiol3kVFmxyISH5u0aMy6EGCckvhq4wuzV76BGzVL3BjDR3yQJkiCx4FhuzXaFl7uqktQRCn2TMDiPqUtWuNZd7Uk1H0I0bw+BlB2/ZrOMTAkEQiDP3KXjsCPvrxwBRLzDG6WtfpV00Pn/IVF0i/KpQ9LVU5zRtdJOuEWLgk3CZDw3TOyGvmqxIGFsXIc73qtZMgugy59IN8oLfJVQaglp4GjMoYxGhBmIe2glCsecnIIgLq6Dn3UmNCp+S45cX1b/MDm4XOzHozzhYSfq3Gzw3rAkgCXFHDPt21+Ae3AzjtBpav4O6pZboWoH0Q6rq06wH5Z6H0yiVHFdhEyt1CJqnpB7Ir3OCWWV+odqKaO41L40BOaWfihLRurjnAAAqT5+EEdY0RK0yDTwxDy6O6CdxePN/xwXANHyhc01SpVRXxUOgScKAZicdj0gUijhAVGC6+wukl0SsoEXOJ3wK0ZY9aIJ6sKVqWCRF/gr/xXX2kkQ== X-Microsoft-Antispam-Message-Info: 64f0zmahXDYBmMiEVpriFAMPhIWf36uRF7rn2gibSfppYla2rsMDIKQ2CrqwXjJ+AZwwPrrYq9fkBSdssO3ZupIHDykT9iKsj/GThju3v7SUzsNb2cq0mwTtYbEn7ZTROtlt9yMIjGrJcWnZZyUyCNOvvKA31rvbCXshgMJIoH0Zw3+R0lq4vLAlDbhsjlf7wJhB1l8AT6QWl3Nlq6YSvkny0r29pjHSbUkHC97jJeVJeWG5PREyIbMZthLFVUjSCB0/WyywE678q4k29G/x5CT9t2ZNRsKiTEYRnLTatHzulMujR/V6rm0rZjkpG+ursXdDGEPtGNleNs1ogDuHjehBjZUiBTYlSmKpAeUT4RE= X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 6:NoOlCYKtegc+iNWaFsVqD45DPmhFOIZLc4EDyca5jsJH+S9q62BHjhQ5puJNHEaSspQZfD0g37v+JpflhOIJhC5H11cjF52aITvQ/e1lwC0rVrKv3sjCtSZugbvZeutV8bs1Bfi/YBjIvlF7wS9pLnXwl8zi0CBFnhTa2YbkOt/krrfsxxdOtQE4MNxWEEUfHIlw/XkPxzwxZDG4M4zufAkybIutGXMHw3J4vsJAR6+pBOLW20OnMcpsXy2pW/hU0JV2wPaRyHWk6mOUMMEpWt51tUN/cJN5CBv1+B05pbDVwzoRjf7dZ3gZUMLXwrtpHjoJo8T2m2VEl1niLyUJSYkGJcxIcvlLV//DdHGvgUBEvlOAcr+kFKCzcoxnC/D+lKUzZD0mGZeycwLNd2x/9pMSCpHHgovnceH085rU2X0fhLVJVfhr96/TH9XCgqsOH16eKQwX4OR7h5kO02eSsg==; 5:8SomojNJYE1vZu4Rp2OFCl/XuaWYG+KtojtwP1Qu7/IYitbBKvDTvIMnBM5H+m3DPfqjrWd8bALCQmj5oBEjjCceaL2nztKuqfQ3OEnsVo/HSED4/DE1DgXLYTF3NZMCa51lES4bbaxWRpjDBfuc3ndkHwtJsBXaYOiFmkrCDko=; 24:PvlXiWhwjEMIT9bm+r368t3VGzXzN6FpIBpU+7U9MfL/PrAuHCeeyFr0jTIWyFb2zHxXCun7cP7idekJmTBmGaQEtOQ0qBhiErXxyfQBxuE= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AM0PR0402MB3313; 7:R4ilkERACetkD1D8LblesEucJs02sGR6JdkJwKA5+kXl+y/SAhZafGqDBlhPuqfaNcu8xLFFHzSQGdGSoMRvkKrR7KYuH6BU10oYWZTwOJQ2v0Utnq1cHUm1uRIUdRLMK+dH9xJEUncNvfqFUROMQAYhVRnfHQPcPlNR9ehYsI4RUm5zKti1M4vtNTbMZ9iy5XCi59TM5hZid8EmcToi65PNz3+q0152Y1WG11V40CIEt9ap2bXGXth3E0ks5frK X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jul 2018 09:10:49.2664 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e373c5e7-5ca4-43c1-689e-08d5e8a0875a X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR0402MB3313 Cc: priyanka.jain@nxp.com, joe.hershberger@ni.com, V.Sethi@nxp.com Subject: [U-Boot] [PATCH 6/6] driver: net: fsl-mc: Add support of multiple phys for dpmac 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" Till now we have had cases where we had one phy device per dpmac. Now, with the upcoming products (LX2160AQDS), we have cases, where there are sometimes two phy devices for one dpmac. One phy for TX lanes and one phy for RX lanes. to handle such cases, add the support for multiple phys in ethernet driver. The ethernet link is up if all the phy devices connected to one dpmac report link up. also the link capabilities are limited by the weakest phy device. i.e. say if there are two phys for one dpmac. one operates at 10G without autoneg and other operate at 1G with autoneg. Then the ethernet interface will operate at 1G without autoneg. Signed-off-by: Pankaj Bansal --- board/freescale/ls1088a/eth_ls1088aqds.c | 18 ++--- board/freescale/ls1088a/eth_ls1088ardb.c | 21 +++--- board/freescale/ls2080aqds/eth.c | 26 +++---- board/freescale/ls2080ardb/eth_ls2080rdb.c | 24 +++---- drivers/net/ldpaa_eth/ldpaa_eth.c | 71 ++++++++++++++------ drivers/net/ldpaa_eth/ldpaa_wriop.c | 51 ++++++++++---- include/fsl-mc/ldpaa_wriop.h | 21 +++--- 7 files changed, 147 insertions(+), 85 deletions(-) diff --git a/board/freescale/ls1088a/eth_ls1088aqds.c b/board/freescale/ls1088a/eth_ls1088aqds.c index 40b1a0e631..f16b78cf03 100644 --- a/board/freescale/ls1088a/eth_ls1088aqds.c +++ b/board/freescale/ls1088a/eth_ls1088aqds.c @@ -487,16 +487,16 @@ void ls1088a_handle_phy_interface_sgmii(int dpmac_id) case 0x3A: switch (dpmac_id) { case 1: - wriop_set_phy_address(dpmac_id, riser_phy_addr[1]); + wriop_set_phy_address(dpmac_id, 0, riser_phy_addr[1]); break; case 2: - wriop_set_phy_address(dpmac_id, riser_phy_addr[0]); + wriop_set_phy_address(dpmac_id, 0, riser_phy_addr[0]); break; case 3: - wriop_set_phy_address(dpmac_id, riser_phy_addr[3]); + wriop_set_phy_address(dpmac_id, 0, riser_phy_addr[3]); break; case 7: - wriop_set_phy_address(dpmac_id, riser_phy_addr[2]); + wriop_set_phy_address(dpmac_id, 0, riser_phy_addr[2]); break; default: printf("WRIOP: Wrong DPMAC%d set to SGMII", dpmac_id); @@ -532,13 +532,13 @@ void ls1088a_handle_phy_interface_qsgmii(int dpmac_id) case 4: case 5: case 6: - wriop_set_phy_address(dpmac_id, dpmac_id + 9); + wriop_set_phy_address(dpmac_id, 0, dpmac_id + 9); break; case 7: case 8: case 9: case 10: - wriop_set_phy_address(dpmac_id, dpmac_id + 1); + wriop_set_phy_address(dpmac_id, 0, dpmac_id + 1); break; } @@ -567,7 +567,7 @@ void ls1088a_handle_phy_interface_xsgmii(int i) case 0x15: case 0x1D: case 0x1E: - wriop_set_phy_address(i, i + 26); + wriop_set_phy_address(i, 0, i + 26); ls1088a_qds_enable_SFP_TX(SFP_TX); break; default: @@ -590,13 +590,13 @@ static void ls1088a_handle_phy_interface_rgmii(int dpmac_id) switch (dpmac_id) { case 4: - wriop_set_phy_address(dpmac_id, RGMII_PHY1_ADDR); + wriop_set_phy_address(dpmac_id, 0, RGMII_PHY1_ADDR); dpmac_info[dpmac_id].board_mux = EMI1_RGMII1; bus = mii_dev_for_muxval(EMI1_RGMII1); wriop_set_mdio(dpmac_id, bus); break; case 5: - wriop_set_phy_address(dpmac_id, RGMII_PHY2_ADDR); + wriop_set_phy_address(dpmac_id, 0, RGMII_PHY2_ADDR); dpmac_info[dpmac_id].board_mux = EMI1_RGMII2; bus = mii_dev_for_muxval(EMI1_RGMII2); wriop_set_mdio(dpmac_id, bus); diff --git a/board/freescale/ls1088a/eth_ls1088ardb.c b/board/freescale/ls1088a/eth_ls1088ardb.c index 418f362e9a..a2b52a879b 100644 --- a/board/freescale/ls1088a/eth_ls1088ardb.c +++ b/board/freescale/ls1088a/eth_ls1088ardb.c @@ -55,16 +55,17 @@ int board_eth_init(bd_t *bis) * a MAC has no PHY address, we give a PHY address to XFI * MAC error. */ - wriop_set_phy_address(WRIOP1_DPMAC1, 0x0a); - wriop_set_phy_address(WRIOP1_DPMAC2, AQ_PHY_ADDR1); - wriop_set_phy_address(WRIOP1_DPMAC3, QSGMII1_PORT1_PHY_ADDR); - wriop_set_phy_address(WRIOP1_DPMAC4, QSGMII1_PORT2_PHY_ADDR); - wriop_set_phy_address(WRIOP1_DPMAC5, QSGMII1_PORT3_PHY_ADDR); - wriop_set_phy_address(WRIOP1_DPMAC6, QSGMII1_PORT4_PHY_ADDR); - wriop_set_phy_address(WRIOP1_DPMAC7, QSGMII2_PORT1_PHY_ADDR); - wriop_set_phy_address(WRIOP1_DPMAC8, QSGMII2_PORT2_PHY_ADDR); - wriop_set_phy_address(WRIOP1_DPMAC9, QSGMII2_PORT3_PHY_ADDR); - wriop_set_phy_address(WRIOP1_DPMAC10, QSGMII2_PORT4_PHY_ADDR); + wriop_set_phy_address(WRIOP1_DPMAC1, 0, 0x0a); + wriop_set_phy_address(WRIOP1_DPMAC2, 0, AQ_PHY_ADDR1); + wriop_set_phy_address(WRIOP1_DPMAC3, 0, QSGMII1_PORT1_PHY_ADDR); + wriop_set_phy_address(WRIOP1_DPMAC4, 0, QSGMII1_PORT2_PHY_ADDR); + wriop_set_phy_address(WRIOP1_DPMAC5, 0, QSGMII1_PORT3_PHY_ADDR); + wriop_set_phy_address(WRIOP1_DPMAC6, 0, QSGMII1_PORT4_PHY_ADDR); + wriop_set_phy_address(WRIOP1_DPMAC7, 0, QSGMII2_PORT1_PHY_ADDR); + wriop_set_phy_address(WRIOP1_DPMAC8, 0, QSGMII2_PORT2_PHY_ADDR); + wriop_set_phy_address(WRIOP1_DPMAC9, 0, QSGMII2_PORT3_PHY_ADDR); + wriop_set_phy_address(WRIOP1_DPMAC10, 0, + QSGMII2_PORT4_PHY_ADDR); break; default: diff --git a/board/freescale/ls2080aqds/eth.c b/board/freescale/ls2080aqds/eth.c index 989d57e09b..f706fd4cb6 100644 --- a/board/freescale/ls2080aqds/eth.c +++ b/board/freescale/ls2080aqds/eth.c @@ -623,7 +623,7 @@ void ls2080a_handle_phy_interface_sgmii(int dpmac_id) switch (++slot) { case 1: /* Slot housing a SGMII riser card? */ - wriop_set_phy_address(dpmac_id, + wriop_set_phy_address(dpmac_id, 0, riser_phy_addr[dpmac_id - 1]); dpmac_info[dpmac_id].board_mux = EMI1_SLOT1; bus = mii_dev_for_muxval(EMI1_SLOT1); @@ -631,7 +631,7 @@ void ls2080a_handle_phy_interface_sgmii(int dpmac_id) break; case 2: /* Slot housing a SGMII riser card? */ - wriop_set_phy_address(dpmac_id, + wriop_set_phy_address(dpmac_id, 0, riser_phy_addr[dpmac_id - 1]); dpmac_info[dpmac_id].board_mux = EMI1_SLOT2; bus = mii_dev_for_muxval(EMI1_SLOT2); @@ -641,18 +641,18 @@ void ls2080a_handle_phy_interface_sgmii(int dpmac_id) if (slot == EMI_NONE) return; if (serdes1_prtcl == 0x39) { - wriop_set_phy_address(dpmac_id, + wriop_set_phy_address(dpmac_id, 0, riser_phy_addr[dpmac_id - 2]); if (dpmac_id >= 6 && hwconfig_f("xqsgmii", env_hwconfig)) - wriop_set_phy_address(dpmac_id, + wriop_set_phy_address(dpmac_id, 0, riser_phy_addr[dpmac_id - 3]); } else { - wriop_set_phy_address(dpmac_id, + wriop_set_phy_address(dpmac_id, 0, riser_phy_addr[dpmac_id - 2]); if (dpmac_id >= 7 && hwconfig_f("xqsgmii", env_hwconfig)) - wriop_set_phy_address(dpmac_id, + wriop_set_phy_address(dpmac_id, 0, riser_phy_addr[dpmac_id - 3]); } dpmac_info[dpmac_id].board_mux = EMI1_SLOT3; @@ -691,7 +691,7 @@ serdes2: break; case 4: /* Slot housing a SGMII riser card? */ - wriop_set_phy_address(dpmac_id, + wriop_set_phy_address(dpmac_id, 0, riser_phy_addr[dpmac_id - 9]); dpmac_info[dpmac_id].board_mux = EMI1_SLOT4; bus = mii_dev_for_muxval(EMI1_SLOT4); @@ -701,14 +701,14 @@ serdes2: if (slot == EMI_NONE) return; if (serdes2_prtcl == 0x47) { - wriop_set_phy_address(dpmac_id, + wriop_set_phy_address(dpmac_id, 0, riser_phy_addr[dpmac_id - 10]); if (dpmac_id >= 14 && hwconfig_f("xqsgmii", env_hwconfig)) - wriop_set_phy_address(dpmac_id, + wriop_set_phy_address(dpmac_id, 0, riser_phy_addr[dpmac_id - 11]); } else { - wriop_set_phy_address(dpmac_id, + wriop_set_phy_address(dpmac_id, 0, riser_phy_addr[dpmac_id - 11]); } dpmac_info[dpmac_id].board_mux = EMI1_SLOT5; @@ -717,7 +717,7 @@ serdes2: break; case 6: /* Slot housing a SGMII riser card? */ - wriop_set_phy_address(dpmac_id, + wriop_set_phy_address(dpmac_id, 0, riser_phy_addr[dpmac_id - 13]); dpmac_info[dpmac_id].board_mux = EMI1_SLOT6; bus = mii_dev_for_muxval(EMI1_SLOT6); @@ -775,7 +775,7 @@ void ls2080a_handle_phy_interface_qsgmii(int dpmac_id) switch (++slot) { case 1: /* Slot housing a QSGMII riser card? */ - wriop_set_phy_address(dpmac_id, dpmac_id - 1); + wriop_set_phy_address(dpmac_id, 0, dpmac_id - 1); dpmac_info[dpmac_id].board_mux = EMI1_SLOT1; bus = mii_dev_for_muxval(EMI1_SLOT1); wriop_set_mdio(dpmac_id, bus); @@ -819,7 +819,7 @@ void ls2080a_handle_phy_interface_xsgmii(int i) * the XAUI card is used for the XFI MAC, which will cause * error. */ - wriop_set_phy_address(i, i + 4); + wriop_set_phy_address(i, 0, i + 4); ls2080a_qds_enable_SFP_TX(SFP_TX); break; diff --git a/board/freescale/ls2080ardb/eth_ls2080rdb.c b/board/freescale/ls2080ardb/eth_ls2080rdb.c index 45f1d60322..62c7a7a315 100644 --- a/board/freescale/ls2080ardb/eth_ls2080rdb.c +++ b/board/freescale/ls2080ardb/eth_ls2080rdb.c @@ -50,21 +50,21 @@ int board_eth_init(bd_t *bis) switch (srds_s1) { case 0x2A: - wriop_set_phy_address(WRIOP1_DPMAC1, CORTINA_PHY_ADDR1); - wriop_set_phy_address(WRIOP1_DPMAC2, CORTINA_PHY_ADDR2); - wriop_set_phy_address(WRIOP1_DPMAC3, CORTINA_PHY_ADDR3); - wriop_set_phy_address(WRIOP1_DPMAC4, CORTINA_PHY_ADDR4); - wriop_set_phy_address(WRIOP1_DPMAC5, AQ_PHY_ADDR1); - wriop_set_phy_address(WRIOP1_DPMAC6, AQ_PHY_ADDR2); - wriop_set_phy_address(WRIOP1_DPMAC7, AQ_PHY_ADDR3); - wriop_set_phy_address(WRIOP1_DPMAC8, AQ_PHY_ADDR4); + wriop_set_phy_address(WRIOP1_DPMAC1, 0, CORTINA_PHY_ADDR1); + wriop_set_phy_address(WRIOP1_DPMAC2, 0, CORTINA_PHY_ADDR2); + wriop_set_phy_address(WRIOP1_DPMAC3, 0, CORTINA_PHY_ADDR3); + wriop_set_phy_address(WRIOP1_DPMAC4, 0, CORTINA_PHY_ADDR4); + wriop_set_phy_address(WRIOP1_DPMAC5, 0, AQ_PHY_ADDR1); + wriop_set_phy_address(WRIOP1_DPMAC6, 0, AQ_PHY_ADDR2); + wriop_set_phy_address(WRIOP1_DPMAC7, 0, AQ_PHY_ADDR3); + wriop_set_phy_address(WRIOP1_DPMAC8, 0, AQ_PHY_ADDR4); break; case 0x4B: - wriop_set_phy_address(WRIOP1_DPMAC1, CORTINA_PHY_ADDR1); - wriop_set_phy_address(WRIOP1_DPMAC2, CORTINA_PHY_ADDR2); - wriop_set_phy_address(WRIOP1_DPMAC3, CORTINA_PHY_ADDR3); - wriop_set_phy_address(WRIOP1_DPMAC4, CORTINA_PHY_ADDR4); + wriop_set_phy_address(WRIOP1_DPMAC1, 0, CORTINA_PHY_ADDR1); + wriop_set_phy_address(WRIOP1_DPMAC2, 0, CORTINA_PHY_ADDR2); + wriop_set_phy_address(WRIOP1_DPMAC3, 0, CORTINA_PHY_ADDR3); + wriop_set_phy_address(WRIOP1_DPMAC4, 0, CORTINA_PHY_ADDR4); break; default: diff --git a/drivers/net/ldpaa_eth/ldpaa_eth.c b/drivers/net/ldpaa_eth/ldpaa_eth.c index d2a6d90f18..2bea249fa0 100644 --- a/drivers/net/ldpaa_eth/ldpaa_eth.c +++ b/drivers/net/ldpaa_eth/ldpaa_eth.c @@ -23,27 +23,43 @@ static int init_phy(struct eth_device *dev) struct ldpaa_eth_priv *priv = (struct ldpaa_eth_priv *)dev->priv; struct phy_device *phydev = NULL; struct mii_dev *bus; - int ret; + struct wriop_dpmac_info *dpmac_info = NULL; + int phy_addr, phy_num; + int ret = 0; bus = wriop_get_mdio(priv->dpmac_id); if (bus == NULL) return 0; - phydev = phy_connect(bus, wriop_get_phy_address(priv->dpmac_id), - dev, wriop_get_enet_if(priv->dpmac_id)); - if (!phydev) { - printf("Failed to connect\n"); - return -1; + for (phy_num = 0; phy_num < ARRAY_SIZE(dpmac_info->phydev); phy_num++) { + phy_addr = wriop_get_phy_address(priv->dpmac_id, phy_num); + if (phy_addr != -1) { + phydev = phy_connect(bus, phy_addr, dev, + wriop_get_enet_if(priv->dpmac_id)); + if (!phydev) { + printf("Failed to connect\n"); + ret = -1; + break; + } + wriop_set_phy_dev(priv->dpmac_id, phy_num, phydev); + ret = phy_config(phydev); + if (ret) + break; + } } - wriop_set_phy_dev(priv->dpmac_id, phydev); - - ret = phy_config(phydev); - if (ret) { - free(phydev); - phydev = NULL; - wriop_set_phy_dev(priv->dpmac_id, phydev); + for (phy_num = 0; + phy_num < ARRAY_SIZE(dpmac_info->phydev); + phy_num++) { + phydev = wriop_get_phy_dev(priv->dpmac_id, phy_num); + if (phydev) { + free(phydev); + phydev = NULL; + wriop_set_phy_dev(priv->dpmac_id, phy_num, + phydev); + } + } } return ret; @@ -390,7 +406,9 @@ static int ldpaa_get_dpmac_state(struct ldpaa_eth_priv *priv, struct dpmac_link_state *state) { struct phy_device *phydev = NULL; + struct wriop_dpmac_info *dpmac_info = NULL; phy_interface_t enet_if; + int phy_num, phys_detected; int err; /* let's start off with maximum capabilities @@ -406,15 +424,23 @@ static int ldpaa_get_dpmac_state(struct ldpaa_eth_priv *priv, } state->up = 1; + phys_detected = 0; #ifdef CONFIG_PHYLIB state->options |= DPMAC_LINK_OPT_AUTONEG; - phydev = wriop_get_phy_dev(priv->dpmac_id); - if (phydev) { + /* start the phy devices one by one and update the dpmac state + */ + for (phy_num = 0; phy_num < ARRAY_SIZE(dpmac_info->phydev); phy_num++) { + phydev = wriop_get_phy_dev(priv->dpmac_id, phy_num); + if (!phydev) + continue; + + phys_detected++; err = phy_startup(phydev); if (err) { printf("%s: Could not initialize\n", phydev->dev->name); state->up = 0; + break; } if (phydev->link == 1) { state->rate = state->rate < phydev->speed ? @@ -424,11 +450,14 @@ static int ldpaa_get_dpmac_state(struct ldpaa_eth_priv *priv, if (!phydev->autoneg) state->options &= ~DPMAC_LINK_OPT_AUTONEG; } else { + /* break out of loop even if one phy is down + */ state->up = 0; + break; } } #endif - if (!phydev) + if (phys_detected == 0) state->options &= ~DPMAC_LINK_OPT_AUTONEG; if (state->up == 0) { @@ -570,6 +599,8 @@ static void ldpaa_eth_stop(struct eth_device *net_dev) struct ldpaa_eth_priv *priv = (struct ldpaa_eth_priv *)net_dev->priv; int err = 0; struct phy_device *phydev = NULL; + struct wriop_dpmac_info *dpmac_info = NULL; + int phy_num; if ((net_dev->state == ETH_STATE_PASSIVE) || (net_dev->state == ETH_STATE_INIT)) @@ -602,9 +633,11 @@ static void ldpaa_eth_stop(struct eth_device *net_dev) printf("dpni_disable() failed\n"); #ifdef CONFIG_PHYLIB - phydev = wriop_get_phy_dev(priv->dpmac_id); - if (phydev) - phy_shutdown(phydev); + for (phy_num = 0; phy_num < ARRAY_SIZE(dpmac_info->phydev); phy_num++) { + phydev = wriop_get_phy_dev(priv->dpmac_id, phy_num); + if (phydev) + phy_shutdown(phydev); + } #endif /* Free DPBP handle and reset. */ diff --git a/drivers/net/ldpaa_eth/ldpaa_wriop.c b/drivers/net/ldpaa_eth/ldpaa_wriop.c index afbb1ca91e..c065804c49 100644 --- a/drivers/net/ldpaa_eth/ldpaa_wriop.c +++ b/drivers/net/ldpaa_eth/ldpaa_wriop.c @@ -22,11 +22,10 @@ __weak phy_interface_t wriop_dpmac_enet_if(int dpmac_id, int lane_prtc) void wriop_init_dpmac(int sd, int dpmac_id, int lane_prtcl) { phy_interface_t enet_if; + int phy_num; dpmac_info[dpmac_id].enabled = 0; dpmac_info[dpmac_id].id = 0; - dpmac_info[dpmac_id].phy_addr = -1; - dpmac_info[dpmac_id].phydev = NULL; dpmac_info[dpmac_id].enet_if = PHY_INTERFACE_MODE_NONE; enet_if = wriop_dpmac_enet_if(dpmac_id, lane_prtcl); @@ -35,15 +34,35 @@ void wriop_init_dpmac(int sd, int dpmac_id, int lane_prtcl) dpmac_info[dpmac_id].id = dpmac_id; dpmac_info[dpmac_id].enet_if = enet_if; } + for (phy_num = 0; + phy_num < ARRAY_SIZE(dpmac_info[dpmac_id].phydev); + phy_num++) { + dpmac_info[dpmac_id].phydev[phy_num] = NULL; + } + for (phy_num = 0; + phy_num < ARRAY_SIZE(dpmac_info[dpmac_id].phy_addr); + phy_num++) { + dpmac_info[dpmac_id].phy_addr[phy_num] = -1; + } } void wriop_init_dpmac_enet_if(int dpmac_id, phy_interface_t enet_if) { + int phy_num; + dpmac_info[dpmac_id].enabled = 1; dpmac_info[dpmac_id].id = dpmac_id; - dpmac_info[dpmac_id].phy_addr = -1; dpmac_info[dpmac_id].enet_if = enet_if; - dpmac_info[dpmac_id].phydev = NULL; + for (phy_num = 0; + phy_num < ARRAY_SIZE(dpmac_info[dpmac_id].phydev); + phy_num++) { + dpmac_info[dpmac_id].phydev[phy_num] = NULL; + } + for (phy_num = 0; + phy_num < ARRAY_SIZE(dpmac_info[dpmac_id].phy_addr); + phy_num++) { + dpmac_info[dpmac_id].phy_addr[phy_num] = -1; + } } @@ -113,44 +132,52 @@ struct mii_dev *wriop_get_mdio(int dpmac_id) return dpmac_info[i].bus; } -void wriop_set_phy_address(int dpmac_id, int address) +void wriop_set_phy_address(int dpmac_id, int phy_num, int address) { int i = wriop_dpmac_to_index(dpmac_id); if (i == -1) return; + if (phy_num < 0 || phy_num >= ARRAY_SIZE(dpmac_info[dpmac_id].phy_addr)) + return; - dpmac_info[i].phy_addr = address; + dpmac_info[i].phy_addr[phy_num] = address; } -int wriop_get_phy_address(int dpmac_id) +int wriop_get_phy_address(int dpmac_id, int phy_num) { int i = wriop_dpmac_to_index(dpmac_id); if (i == -1) return -1; + if (phy_num < 0 || phy_num >= ARRAY_SIZE(dpmac_info[dpmac_id].phy_addr)) + return -1; - return dpmac_info[i].phy_addr; + return dpmac_info[i].phy_addr[phy_num]; } -void wriop_set_phy_dev(int dpmac_id, struct phy_device *phydev) +void wriop_set_phy_dev(int dpmac_id, int phy_num, struct phy_device *phydev) { int i = wriop_dpmac_to_index(dpmac_id); if (i == -1) return; + if (phy_num < 0 || phy_num >= ARRAY_SIZE(dpmac_info[dpmac_id].phydev)) + return; - dpmac_info[i].phydev = phydev; + dpmac_info[i].phydev[phy_num] = phydev; } -struct phy_device *wriop_get_phy_dev(int dpmac_id) +struct phy_device *wriop_get_phy_dev(int dpmac_id, int phy_num) { int i = wriop_dpmac_to_index(dpmac_id); if (i == -1) return NULL; + if (phy_num < 0 || phy_num >= ARRAY_SIZE(dpmac_info[dpmac_id].phydev)) + return NULL; - return dpmac_info[i].phydev; + return dpmac_info[i].phydev[phy_num]; } phy_interface_t wriop_get_enet_if(int dpmac_id) diff --git a/include/fsl-mc/ldpaa_wriop.h b/include/fsl-mc/ldpaa_wriop.h index 8971c6c55b..a708e527cf 100644 --- a/include/fsl-mc/ldpaa_wriop.h +++ b/include/fsl-mc/ldpaa_wriop.h @@ -6,7 +6,11 @@ #ifndef __LDPAA_WRIOP_H #define __LDPAA_WRIOP_H - #include +#include + +#define DEFAULT_WRIOP_MDIO1_NAME "FSL_MDIO0" +#define DEFAULT_WRIOP_MDIO2_NAME "FSL_MDIO1" +#define WRIOP_MAX_PHY_NUM 2 enum wriop_port { WRIOP1_DPMAC1 = 1, @@ -40,27 +44,24 @@ struct wriop_dpmac_info { u8 enabled; u8 id; u8 board_mux; - int phy_addr; + int phy_addr[WRIOP_MAX_PHY_NUM]; phy_interface_t enet_if; - struct phy_device *phydev; + struct phy_device *phydev[WRIOP_MAX_PHY_NUM]; struct mii_dev *bus; }; extern struct wriop_dpmac_info dpmac_info[NUM_WRIOP_PORTS]; -#define DEFAULT_WRIOP_MDIO1_NAME "FSL_MDIO0" -#define DEFAULT_WRIOP_MDIO2_NAME "FSL_MDIO1" - void wriop_init_dpmac(int, int, int); void wriop_disable_dpmac(int); void wriop_enable_dpmac(int); u8 wriop_is_enabled_dpmac(int dpmac_id); void wriop_set_mdio(int, struct mii_dev *); struct mii_dev *wriop_get_mdio(int); -void wriop_set_phy_address(int, int); -int wriop_get_phy_address(int); -void wriop_set_phy_dev(int, struct phy_device *); -struct phy_device *wriop_get_phy_dev(int); +void wriop_set_phy_address(int, int, int); +int wriop_get_phy_address(int, int); +void wriop_set_phy_dev(int, int, struct phy_device *); +struct phy_device *wriop_get_phy_dev(int, int); phy_interface_t wriop_get_enet_if(int); void wriop_dpmac_disable(int);