From patchwork Thu Nov 17 16:40:04 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Johan Hovold X-Patchwork-Id: 696198 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3tKS7G6xw7z9t0X for ; Fri, 18 Nov 2016 04:00:42 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="yPMM6aMR"; dkim-atps=neutral Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752941AbcKQQ6U (ORCPT ); Thu, 17 Nov 2016 11:58:20 -0500 Received: from mail-wm0-f67.google.com ([74.125.82.67]:33584 "EHLO mail-wm0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753205AbcKQQ5e (ORCPT ); Thu, 17 Nov 2016 11:57:34 -0500 Received: by mail-wm0-f67.google.com with SMTP id u144so23002709wmu.0; Thu, 17 Nov 2016 08:57:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=XL7uSRaqQfVuup5vHpamKpfV0RuXMfDlPhQ3/jcryTw=; b=yPMM6aMRrimJLg8Cl3AVv4UgHTsW39n0zwA2M918+nBFM4JpzZjiW+rhTi6dYpFsz1 S0EHNeJ1Q8uI2m7IMBc0RV7Oc1TJkHTXAquYEU3J/YiIRKJvGfIaJSbclFvB0md0ufNw disH9c87775LmzzWiRC8MobUjfv6joXkN+4xslupYQjqrg7ThH7q3g+WhgYJymYQ5DPE QXXIMMinvVgQS3ErC4MqvcyW1idCUIPICHo/xIIyRjMjpYB5AW3y2nk9GGiPEAhWTMOb 6GX5bsL0Xf8L9WI2QfxH8HwTDF+PVpkaPJYA9T6d/hH7j5dqmoOZ39QvvAF9pJAJEHrA bhVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=XL7uSRaqQfVuup5vHpamKpfV0RuXMfDlPhQ3/jcryTw=; b=XJBI8T5unPe6+m3HJR8BIaOS1E25YshmRdHUaS6JLoIaSKqIuum6XR+STdYPZgQmXQ uEPFpRtzSWXzJEGY+NqKURoi/yZHP3oU9VIs0IfPg4jRUrzAeOxkplkUrUFR1kwOWLcS 27M4hrYdp+s5rhVu+omlcUva2zkuLXWMTbiHqvAY6m2ZtIpYvs5Q+m6QpGAefnJAEsgq GcTcLqFfg6nWQQ3gU+15iyWwfnAmYLG1UiRw4VROJfVd2fUc18hr7NmdZ6dHHNSZc3sV 2Je0rBvMZaZRys3xjzcqon/4B8FLq+pnGrQp+GQK95QRFDZPm+/w7MpIxHbIpk0pnU+T HRqg== X-Gm-Message-State: AKaTC00X4CjpIDnwaeMZkAuJrQWnB9Q7RdsT51p/bSp8BneBuC1KLTAi88UOFQuGW66Ibg== X-Received: by 10.46.32.223 with SMTP id g92mr1754869lji.31.1479400818723; Thu, 17 Nov 2016 08:40:18 -0800 (PST) Received: from xi.terra (c-04aadb54.07-184-6d6c6d4.cust.bredbandsbolaget.se. [84.219.170.4]) by smtp.gmail.com with ESMTPSA id h71sm982050ljh.21.2016.11.17.08.40.15 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Nov 2016 08:40:17 -0800 (PST) Received: from johan by xi.terra with local (Exim 4.87) (envelope-from ) id 1c7PjU-0002a9-Pg; Thu, 17 Nov 2016 17:40:16 +0100 From: Johan Hovold To: Mugunthan V N Cc: Grygorii Strashko , linux-omap@vger.kernel.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold Subject: [PATCH net v2 7/7] net: ethernet: ti: cpsw: fix fixed-link phy probe deferral Date: Thu, 17 Nov 2016 17:40:04 +0100 Message-Id: <1479400804-9847-8-git-send-email-johan@kernel.org> X-Mailer: git-send-email 2.7.3 In-Reply-To: <1479400804-9847-1-git-send-email-johan@kernel.org> References: <1479400804-9847-1-git-send-email-johan@kernel.org> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Make sure to propagate errors from of_phy_register_fixed_link() which can fail with -EPROBE_DEFER. Fixes: 1f71e8c96fc6 ("drivers: net: cpsw: Add support for fixed-link PHY") Signed-off-by: Johan Hovold --- drivers/net/ethernet/ti/cpsw.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/drivers/net/ethernet/ti/cpsw.c b/drivers/net/ethernet/ti/cpsw.c index 1387299030e4..58947aae31c7 100644 --- a/drivers/net/ethernet/ti/cpsw.c +++ b/drivers/net/ethernet/ti/cpsw.c @@ -2375,8 +2375,11 @@ static int cpsw_probe_dt(struct cpsw_platform_data *data, * to the PHY is the Ethernet MAC DT node. */ ret = of_phy_register_fixed_link(slave_node); - if (ret) + if (ret) { + if (ret != -EPROBE_DEFER) + dev_err(&pdev->dev, "failed to register fixed-link phy: %d\n", ret); return ret; + } slave_data->phy_node = of_node_get(slave_node); } else if (parp) { u32 phyid; @@ -2637,11 +2640,10 @@ static int cpsw_probe(struct platform_device *pdev) goto clean_runtime_disable_ret; } - if (cpsw_probe_dt(&cpsw->data, pdev)) { - dev_err(&pdev->dev, "cpsw: platform data missing\n"); - ret = -ENODEV; + ret = cpsw_probe_dt(&cpsw->data, pdev); + if (ret) goto clean_dt_ret; - } + data = &cpsw->data; cpsw->rx_ch_num = 1; cpsw->tx_ch_num = 1;