Received: by 2002:a25:ab43:0:0:0:0:0 with SMTP id u61csp3909927ybi; Mon, 3 Jun 2019 02:21:11 -0700 (PDT) X-Google-Smtp-Source: APXvYqz+nWuST+p+BGUWJW22MW+d0Uunq3zqXjnv6dNQrpFTuxsHvmyObYFSg6Wj2/5ogTiRLpnT X-Received: by 2002:a63:6cc3:: with SMTP id h186mr17624597pgc.292.1559553671716; Mon, 03 Jun 2019 02:21:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1559553671; cv=none; d=google.com; s=arc-20160816; b=fWWw12uqFa52I5WGOo3z14MQXDrmbYTuRuCcAs0Jher0+PRJIRICWpmgPBKF3RRJeX jnp6cmnaSf1eo52Iue2NKZwtEXMoBhizJAerxEePtUMzDta3MOOBI1CkaekY19GW4+ux YlF86iMHGqG3mJud7M7wn5k1JmzmK0opNHnEINKyW8ZxQ+eif+itAjrWgCg8mBJkBm3Z Jwi8lyCliMBK01GXT2gDTiuHmZ3plQXv6TRKyn5E8J6TKj1CZPrj1lB/9o+De+cW5TOM SeewaqIXKZo+7iAihu1FxkXcKaqTA0Du0l16qxtn1lcopTtDkjXQtf4C9hJMC7yyVvxt Qd8Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=EPbiYnxsS/GiIoOR3Iek+I+6KzUDg3BJTsWLlRXmAOc=; b=AMu9Jihv4A+xCwxSCBiYpJA0XM2ejIUrEO7iGljsu+AHFQCtiGZAoEQLXX/NU/zavs ig1pSWoQk3GBE+r4PAchhAup0PRNmNe0pZLhONJIGVVpOk8zct7K2jQeJ/ZsfYQXI6RU j2Y/beYHRSpK+tNSLy7N5+FqitPzqMt86n4OiZkRZL3Q8JASkVvS2x+/cn3rx2QAzQ+h lCsJXHXhs5ccaZiGIdWVqq9iinP4TT639Ccy+w8sIIZlzreRKvHpUQ7Fta09EFJBMNJC zbBpFQXswbl+v4eEL9dNIWmR/7+zt8dyWKwBObo1QVXOITRK9GzXweinnOfSDqe/XR/H OWNw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b="jPKDF/NR"; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d4si19242956pfr.82.2019.06.03.02.20.56; Mon, 03 Jun 2019 02:21:11 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b="jPKDF/NR"; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728742AbfFCJRu (ORCPT + 99 others); Mon, 3 Jun 2019 05:17:50 -0400 Received: from mail.kernel.org ([198.145.29.99]:55568 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728237AbfFCJKy (ORCPT ); Mon, 3 Jun 2019 05:10:54 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 3740827E36; Mon, 3 Jun 2019 09:10:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1559553053; bh=I2XIBKBNTs1xoIzNd4LYD+7tpYa0YVk0MttJtKBQ+xI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=jPKDF/NRQJgPLl0ftwTyz9peEyRWguszWWbkqfI/+BF+VT2EEno0gZdIBYsufMe01 l1oSJcIncUqAcJfcq4Q6Q0mkL/REhLv6BSwfcWVZhyqXB8O8utpuAFVVlBwjgbubkq sKdC/Os72jJp/pfop99h5D1rJzdH7fgPsZAV4OX4= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Russell King , Maxime Chevallier , Andrew Lunn , "David S. Miller" Subject: [PATCH 4.19 14/32] net: phy: marvell10g: report if the PHY fails to boot firmware Date: Mon, 3 Jun 2019 11:08:08 +0200 Message-Id: <20190603090313.095296232@linuxfoundation.org> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190603090308.472021390@linuxfoundation.org> References: <20190603090308.472021390@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Russell King [ Upstream commit 3d3ced2ec5d71b99d72ae6910fbdf890bc2eccf0 ] Some boards do not have the PHY firmware programmed in the 3310's flash, which leads to the PHY not working as expected. Warn the user when the PHY fails to boot the firmware and refuse to initialise. Fixes: 20b2af32ff3f ("net: phy: add Marvell Alaska X 88X3310 10Gigabit PHY support") Signed-off-by: Russell King Tested-by: Maxime Chevallier Reviewed-by: Andrew Lunn Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- drivers/net/phy/marvell10g.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) --- a/drivers/net/phy/marvell10g.c +++ b/drivers/net/phy/marvell10g.c @@ -27,6 +27,9 @@ #include enum { + MV_PMA_BOOT = 0xc050, + MV_PMA_BOOT_FATAL = BIT(0), + MV_PCS_BASE_T = 0x0000, MV_PCS_BASE_R = 0x1000, MV_PCS_1000BASEX = 0x2000, @@ -226,6 +229,16 @@ static int mv3310_probe(struct phy_devic (phydev->c45_ids.devices_in_package & mmd_mask) != mmd_mask) return -ENODEV; + ret = phy_read_mmd(phydev, MDIO_MMD_PMAPMD, MV_PMA_BOOT); + if (ret < 0) + return ret; + + if (ret & MV_PMA_BOOT_FATAL) { + dev_warn(&phydev->mdio.dev, + "PHY failed to boot firmware, status=%04x\n", ret); + return -ENODEV; + } + priv = devm_kzalloc(&phydev->mdio.dev, sizeof(*priv), GFP_KERNEL); if (!priv) return -ENOMEM;