From patchwork Mon Mar 21 16:37:36 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Lothar_Wa=C3=9Fmann?= X-Patchwork-Id: 87800 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 BD96EB6F0B for ; Tue, 22 Mar 2011 03:40:34 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753879Ab1CUQka (ORCPT ); Mon, 21 Mar 2011 12:40:30 -0400 Received: from mail.karo-electronics.de ([81.173.242.67]:58257 "EHLO mail.karo-electronics.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753737Ab1CUQk3 (ORCPT ); Mon, 21 Mar 2011 12:40:29 -0400 From: =?utf-8?q?Lothar=20Wa=C3=9Fmann?= To: netdev@vger.kernel.org Cc: , Shawn Guo , =?utf-8?q?Lothar=20Wa=C3=9Fmann?= Subject: [PATCH 4/4] drivers/net/fec: Don't mess with configured MAC addresses. Date: Mon, 21 Mar 2011 17:37:36 +0100 Message-Id: X-Mailer: git-send-email 1.5.6.5 In-Reply-To: References: <4034db082a05693893d24f4b0db4063b84d8c268.1300724245.git.LW@KARO-electronics.de> <264d7eca14554038e57399850ddd7fa4491a7484.1300724245.git.LW@KARO-electronics.de> In-Reply-To: <4034db082a05693893d24f4b0db4063b84d8c268.1300724245.git.LW@KARO-electronics.de> References: <4034db082a05693893d24f4b0db4063b84d8c268.1300724245.git.LW@KARO-electronics.de> MIME-Version: 1.0 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org The FEC driver currently uses the MAC address assigned to the first interface incremented by one for the second interface. Change this to be able to configure distinct MAC addresses via platform_data. Signed-off-by: Lothar Waßmann --- drivers/net/fec.c | 9 ++------- 1 files changed, 2 insertions(+), 7 deletions(-) diff --git a/drivers/net/fec.c b/drivers/net/fec.c index 3666524..9d89e99 100644 --- a/drivers/net/fec.c +++ b/drivers/net/fec.c @@ -750,13 +750,12 @@ static void __inline__ fec_get_mac(struct net_device *ndev) /* * 2) from flash or fuse (via platform data) */ + if (pdata) + memcpy(iap, pdata->mac, ETH_ALEN); if (!is_valid_ether_addr(iap)) { #ifdef CONFIG_M5272 if (FEC_FLASHMAC) iap = (unsigned char *)FEC_FLASHMAC; -#else - if (pdata) - memcpy(iap, pdata->mac, ETH_ALEN); #endif } @@ -772,10 +771,6 @@ static void __inline__ fec_get_mac(struct net_device *ndev) } memcpy(ndev->dev_addr, iap, ETH_ALEN); - - /* Adjust MAC if using macaddr */ - if (iap == macaddr) - ndev->dev_addr[ETH_ALEN-1] = macaddr[ETH_ALEN-1] + fep->pdev->id; } /* ------------------------------------------------------------------------- */