From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.1 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B8E19C282E1 for ; Mon, 22 Apr 2019 09:46:05 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 83DE3213A2 for ; Mon, 22 Apr 2019 09:46:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1555926365; bh=UP4UZovyhnKFNKRYTSvNJnTwD+GTdNCJ1Gta43eYSN4=; h=From:To:Cc:Subject:Date:List-ID:From; b=u8eubH+Gdxbzyab1sntqUdoT4jjyfAuI0n/wVQlYrNK8ncCMH0ILz+hrEraUenoBY ElZfiSZkk8pTqd00Qba8VuO6Gy0fnwwXEK8425CI73qULwiGCbV9QW/xFOu3ZQ/E+r vZCfa3qmEDvsGQc154rqCx7V3NSO4F1MMVyljw+o= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727014AbfDVJqE (ORCPT ); Mon, 22 Apr 2019 05:46:04 -0400 Received: from mail.kernel.org ([198.145.29.99]:51882 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725817AbfDVJqE (ORCPT ); Mon, 22 Apr 2019 05:46:04 -0400 Received: from localhost.localdomain (unknown [171.76.113.243]) (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 E1F672075A; Mon, 22 Apr 2019 09:45:58 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1555926363; bh=UP4UZovyhnKFNKRYTSvNJnTwD+GTdNCJ1Gta43eYSN4=; h=From:To:Cc:Subject:Date:From; b=cwitLFzZC+65rjC7zIA93q+zj083dB/N7c3sNjSg7vxQ+qHoGbAgKTiy1OY5QprAN HhyUurB2yCDHCg+kaCggiKoEkJC6UwtR2VjapKuRfECqHJtbFJCIpitIdUxKjI4mGr XhMVVJWv/itXywIGD2uci5JDrFwtibM3FxMmOPHA= From: Vinod Koul To: "David S. Miller" Cc: linux-arm-msm@vger.kernel.org, Bjorn Andersson , Vinod Koul , Giuseppe Cavallaro , Alexandre Torgue , Jose Abreu , Maxime Coquelin , Niklas Cassel , Andrew Lunn , Vivien Didelot , Florian Fainelli , netdev@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, Xiaofei Shen , Sneh Shah Subject: [PATCH v2] net: stmmac: move stmmac_check_ether_addr() to driver probe Date: Mon, 22 Apr 2019 15:15:32 +0530 Message-Id: <20190422094532.5519-1-vkoul@kernel.org> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org stmmac_check_ether_addr() checks the MAC address and assigns one in driver open(). In many cases when we create slave netdevice, the dev addr is inherited from master but the master dev addr maybe NULL at that time, so move this call to driver probe so that address is always valid. Signed-off-by: Xiaofei Shen Tested-by: Xiaofei Shen Signed-off-by: Sneh Shah Signed-off-by: Vinod Koul --- Changes in v2: As discussed in [1] we move the stmmac driver inherting the mac address from probe to open [1]: https://lore.kernel.org/netdev/20190222125654.12478-1-vkoul@kernel.org/ drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c index 7a895a2889e3..5ab2733e15e2 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c @@ -2616,8 +2616,6 @@ static int stmmac_open(struct net_device *dev) u32 chan; int ret; - stmmac_check_ether_addr(priv); - if (priv->hw->pcs != STMMAC_PCS_RGMII && priv->hw->pcs != STMMAC_PCS_TBI && priv->hw->pcs != STMMAC_PCS_RTBI) { @@ -4303,6 +4301,8 @@ int stmmac_dvr_probe(struct device *device, if (ret) goto error_hw_init; + stmmac_check_ether_addr(priv); + /* Configure real RX and TX queues */ netif_set_real_num_rx_queues(ndev, priv->plat->rx_queues_to_use); netif_set_real_num_tx_queues(ndev, priv->plat->tx_queues_to_use); -- 2.20.1