From patchwork Tue Jan 9 12:43:34 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Madalin Bucur X-Patchwork-Id: 857467 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3zGBfF18v2z9s7M for ; Tue, 9 Jan 2018 23:44:05 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754394AbeAIMnw (ORCPT ); Tue, 9 Jan 2018 07:43:52 -0500 Received: from mail-sn1nam01on0077.outbound.protection.outlook.com ([104.47.32.77]:4512 "EHLO NAM01-SN1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751421AbeAIMnu (ORCPT ); Tue, 9 Jan 2018 07:43:50 -0500 Received: from MWHPR03CA0018.namprd03.prod.outlook.com (10.175.133.156) by CY1PR03MB2361.namprd03.prod.outlook.com (10.166.207.148) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.366.8; Tue, 9 Jan 2018 12:43:48 +0000 Received: from BY2FFO11OLC010.protection.gbl (2a01:111:f400:7c0c::104) by MWHPR03CA0018.outlook.office365.com (2603:10b6:300:117::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.386.5 via Frontend Transport; Tue, 9 Jan 2018 12:43:48 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none;nxp.com; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BY2FFO11OLC010.mail.protection.outlook.com (10.1.15.21) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.20.345.12 via Frontend Transport; Tue, 9 Jan 2018 12:43:17 +0000 Received: from fsr-fed2164-101.ea.freescale.net (fsr-fed2164-101.ea.freescale.net [10.171.82.91]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id w09ChfUX003355; Tue, 9 Jan 2018 05:43:44 -0700 From: Madalin Bucur To: , , CC: , , , , , , Madalin Bucur Subject: [PATCH net, v3] of_mdio: avoid MDIO bus removal when a PHY is missing Date: Tue, 9 Jan 2018 14:43:34 +0200 Message-ID: <1515501814-11517-1-git-send-email-madalin.bucur@nxp.com> X-Mailer: git-send-email 2.1.0 Reply-To: X-EOPAttributedMessage: 0 X-Matching-Connectors: 131599753975172898; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.168.50; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(39380400002)(39860400002)(396003)(376002)(346002)(2980300002)(1109001)(1110001)(339900001)(199004)(189003)(4326008)(39060400002)(53936002)(48376002)(77096006)(85426001)(68736007)(356003)(3450700001)(2906002)(110136005)(54906003)(6666003)(316002)(43066004)(86362001)(105606002)(106466001)(8656006)(2201001)(7416002)(16586007)(305945005)(104016004)(97736004)(498600001)(47776003)(36756003)(51416003)(50466002)(8936002)(5660300001)(50226002)(81166006)(8676002)(81156014); DIR:OUT; SFP:1101; SCL:1; SRVR:CY1PR03MB2361; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BY2FFO11OLC010; 1:k+XOd8hEjM7Lh8qDQMjbWcMC9anFUxjvTY3Sqv+wsieDw6KMoTFdKuupWOlL4aQ0khevSOBYvoNXU2YVsZHPW6iDzIIwb9Omo0Co/72CxYCpL82CTCFcXhfpsOfTHaiN MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: d49ae1d5-af25-414c-0f22-08d5575e8eaf X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(4534020)(4628075)(201703131517081)(5600026)(4604075)(2017052603307); SRVR:CY1PR03MB2361; X-Microsoft-Exchange-Diagnostics: 1; CY1PR03MB2361; 3:5BU+NmDtmkpMFHTL2YQOuD35WXU8ksOchqRLM73UveIfZNsCiBwNZ6WFlGTDnG5CBzML94VGn0lNZVPKV5obv74vh8mc3MLmFZ+CEf+nXo0rbbr70kVZI+p/56bzH77AEVZLkVXFSTDIdvG476T8ocjeap2NEGIbfGqG3AV8R/C38GvKxB8pQCkwlvwGqM4sjNiLn5JeoMwD7KFZlcgL2qXvy3T0YzRT6Ron4vd3amXLc07oRmSiJZPnMD4RrvIGSCNYJnenjClugvSiZ8FNFvnzuLuqZFHWnP9Eds17R7phTDvPrea9BOgI66amksUGWDs1KeGPhtHxg4OTMWaLbJ3S5K9qMDZM20r83nM8JtE=; 25:xAoKaUvb3tNJgE1mNStOIufZ2Rbw5QlVAF/H/u47Y88f3Hft+jaGQO1SkMsiERFe1kNib0AB2FaxhCtDkFXEra9cy6VKKI4tbG6xOfwUUhGlm+i372WIXkuKIz2Kj6BodV3YKcnX33do7nxUbI/6/ys5k+fmKEJ2Ptj6V4d4//tI0pW641ndhDuGaJP1lhIi/qcWlshkRk+bE3PrDGfPDrkPpJ1ODbvGqPA1YA7NTHb3tGAVfyYcu7S5fjvZ2wswf+Jbge2qZqo9pygiS7b6pxW1UJfD47AQUdzvm5LWQ9vk07LhKWktY5El7cKcXwFruX2xNSKikPVZC2V/CWf69A== X-MS-TrafficTypeDiagnostic: CY1PR03MB2361: X-Microsoft-Exchange-Diagnostics: 1; CY1PR03MB2361; 31:AsZQGaYlJGto1524vtBtUWRRINvYsXKhfeQJChmeIuI0bsKfkZ7a56sEor6Pmq0QQlLj0/IBFBNzwxh7jyBwk4B9E7ENMX4HxlAlCLalRrBRa7+CBSFdydTNHp4b4/IP+kzTZHIHyTN9rGfbWEbucW0yrjlfbGRPn2MLhCGFoyhmm3P6rWY5kaAgnjJUy+YYj/j8iMe/O82C1Om5rS3/xsRu2CYif/M/CwZdZYAKkSg=; 4:ti6HxmNJfC8GkzkFDxaj2cUVKqpn/AGjCD/ek6v+8Hl73f5d5k62Y/p4CRLayjpGP/+OJ+kHW4mwv/11LaYA+jFdfiE8Yb2eNOPKdGW1LfuLT7nEQFL5+zN9Cxi5n0FvmEyfBD04GiaQt3HIeoVB+RFKJ80kgAqq5BqGtxADfVxOq2S42Vbk7EN2xNQ05hokaqwFWB9bwnXt0HHsVNy2RSVRqaORP75GPoWAhPcAIOs2D+93BBH+PVnken2OMqOgiFe7WhT3nlQKcpBBuKTm8MA15yWblcymnYD8V8022mbxtU9X+62llJop/u3qMlMj X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095135)(2401047)(5005006)(8121501046)(3231023)(944501110)(10201501046)(3002001)(93006095)(93001095)(6055026)(6096035)(20161123565025)(20161123556025)(201703131430075)(201703131448075)(201703131433075)(201703161259150)(201703151042153)(20161123561025)(20161123559100)(20161123563025)(201708071742011); SRVR:CY1PR03MB2361; BCL:0; PCL:0; RULEID:(100000803101)(100110400095)(400006); SRVR:CY1PR03MB2361; X-Forefront-PRVS: 0547116B72 X-Microsoft-Exchange-Diagnostics: 1; CY1PR03MB2361; 23:EHuNaSVUO1jK1zLtwddxNN7rS8xk5mMT9viSSMUGlJ4OIh473hb2qikOlb19eVOjoMnSwwicCEFZMicuhVfArg2ZqKNBIMNLoTJQAv6+xtH0sMhIYTp6WbUxm4XArl+DScYpARyANTrznVMXgpeZOjIF4e3vNhIcazUXecl92mCGwcCYhlazsXLeJwp3QgLXlSdAJCrTlGotgZjgGlzZrmp4AkyH+7JBBygzwFcdZLTSNUMVgt8K2zLsg9rQ5IYaXwqA5uKK8yQyBRoOrI6L7d0zPor6Y1/Z9KgmeDNNlx2y+cvGrx+VhcUGsSUYbP3/IL/KOqJV502yJweankrxOCZycLDzwgdSnL6tAPM9ELlO++Tpw5fj4XMeKxpESbkhGpCtW74KKM7AaJDkNBA6OqVrGn4VR1ms1Jd1d5DFQ3Q3SKtCUCFKqXYRnr/Ml5vK0cFAvTne3H4Eyk2R2VRV1jsKwuc7+Z7+DdZoZEfpT44u372zVJwoMaZX9ipRBf09JkYbuvQAY0Wamtf+/jcI+vQxtVaYpl7qRwUHC3b7Rc8bY7S8yaAh21M6BKeNbNmKxW5/dMDrg9q/SYnNXZVV7hcGOdTD8L5crIMpJq3eNRMDFBOhxesjL6t4MfvhtYLiWhwv9RiGAjw8TsRrB3Oj7ZTqIj1O121mm/WuqidDvhTZLhDL4JMFyUYTIZ8/4L6j0PUuz6mU3bzrkbZcvwhOoVm+HxPoGK6Uos3+u5IRUuYS7cMOxj88l9kMAQz0Bf0JpHUFYfJ1MfDXVRtOx4zRGkgVI52vWehfZQb5IV012kd5BAcMWcEoJ5BStDd+NLxD6SMrbMMZ3pUltYlJLtqjSPS3GozaKuh5SLCmqgRGBHMCbYX8I/Qo2/oPlN5iKt1ds1TnDN7sSYbW59bcmYE1GsORuVrlQ7x3fnI7wdzAY/2US4JIswJibNfpigvl+e2GnYWTGnZi7KlPG3kkXYEmi/Dq4W3+2PqXOJfDO5G7KMLQC3tvnbekNCqCPlMx6RmQ1mdfytshXZZNq6cspjyyAc+PwBM0xp4SUvvPQiaw6nCSdoDAsy5iD7QF+4WGxQ82kOJep8LFhZ9KNCHnB8hlVPQKFr2S8HQGaNUi3goABWk= X-Microsoft-Exchange-Diagnostics: 1; CY1PR03MB2361; 6:YAV3NgpOOdGFXBCfOUMVgJchn1AgFZV8YC0Txo+6B/rgd8PgA7NF3yRe3IpOQDHOc6EikJMTrH9FCUGPIkYPBPSC5XSQ3Qw8NzKaMAg342cCfu9kNug2+lmciisEgYfQkVcocFYvFmS4wHjixbROSIGxQ4F3Jyb7LshivHxUs8yHyAPk4T7rAQABVsYtd88PzP5ucJB2NypbfS70TJe12vJcghY2uNRQabA9FKy9xNEAOQRqcm65yru9L03I7kY821I62Auz5y1S3L6OpCLOWZYxCjmKwiPu08inBJNc5UOMiqq4J9IBpJwDKCg6hLTbM1Pe+6CGaVf+G3JzCNsdCQvstEhwLG01hIzImuNdiPk=; 5:0LF0C6PDNATkLp09zx23Nk1lyV2Ud3Zm0NX4hQz9BMEf6bavoL8gNo5Ql7GXHspyRpjH+1HzI7XkW9A0ug0okeeajSFc5B8/+jjb9aob/j51fh5Pr9auQdFCnhN61CGcQQPs8wNqge58j+K+OQ+cltoCHkMYBzkxF7pKc9JlgSs=; 24:maj69+vJos54GAviVoW5tSveBpIcOyxwjbMlHx81hqbHabAokx1GXfd373WeJKarycHB1HPmAJ0wOrfe+uEZstkZ1FrrZQ363Al8P8leTk8=; 7:J/VqOz/QnwpILslnlwiMBHfv25NsJ+uNo2ziRrjnxMR+bsd+255MsbAAxvAQIGMn75JjPnl+BilwDhlDJ+2GY5d+QPIYb75PfjYdkRX7w3sk0IJAt7V6obqA/9HmuqRkBE1vSw4axNW+BI+yNGuvkYzgAwCdSpgusZcoLs3dxfJKXbRsLtohaJzLMnkYKix1a/KxadVx6rqsVVb6UEhztdmJkEBfQ+7BhJOucmrhg04vWWhvgaVM+b3d5uNPgRvD SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jan 2018 12:43:17.3300 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d49ae1d5-af25-414c-0f22-08d5575e8eaf X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR03MB2361 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org If one of the child devices is missing the of_mdiobus_register_phy() call will return -ENODEV. When a missing device is encountered the registration of the remaining PHYs is stopped and the MDIO bus will fail to register. Propagate all errors except ENODEV to avoid it. Signed-off-by: Madalin Bucur Reviewed-by: Andrew Lunn --- v3: move if after else v2: add an error print for the first change; the second place has some noise already generated by the existing code drivers/of/of_mdio.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/drivers/of/of_mdio.c b/drivers/of/of_mdio.c index 3481e69..a327be1 100644 --- a/drivers/of/of_mdio.c +++ b/drivers/of/of_mdio.c @@ -231,7 +231,12 @@ int of_mdiobus_register(struct mii_bus *mdio, struct device_node *np) rc = of_mdiobus_register_phy(mdio, child, addr); else rc = of_mdiobus_register_device(mdio, child, addr); - if (rc) + + if (rc == -ENODEV) + dev_err(&mdio->dev, + "MDIO device at address %d is missing.\n", + addr); + else if (rc) goto unregister; } @@ -255,7 +260,7 @@ int of_mdiobus_register(struct mii_bus *mdio, struct device_node *np) if (of_mdiobus_child_is_phy(child)) { rc = of_mdiobus_register_phy(mdio, child, addr); - if (rc) + if (rc && rc != -ENODEV) goto unregister; } }