From patchwork Wed Jan 28 06:24:21 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: wengbj X-Patchwork-Id: 433802 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from arrakis.dune.hu (arrakis.dune.hu [78.24.191.176]) (using TLSv1.1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3F296140271 for ; Wed, 28 Jan 2015 17:25:27 +1100 (AEDT) Received: from arrakis.dune.hu (localhost [127.0.0.1]) by arrakis.dune.hu (Postfix) with ESMTP id 631AB2848AD; Wed, 28 Jan 2015 07:22:50 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on arrakis.dune.hu X-Spam-Level: X-Spam-Status: No, score=-1.5 required=5.0 tests=BAYES_00 autolearn=unavailable version=3.3.2 Received: from arrakis.dune.hu (localhost [127.0.0.1]) by arrakis.dune.hu (Postfix) with ESMTP id 04E65281580 for ; Wed, 28 Jan 2015 07:22:46 +0100 (CET) X-policyd-weight: using cached result; rate: -5.5 Received: from regular1.263xmail.com (regular1.263xmail.com [211.150.99.139]) by arrakis.dune.hu (Postfix) with ESMTPS for ; Wed, 28 Jan 2015 07:22:45 +0100 (CET) Received: from fl.service?t-firefly.com (unknown [192.168.167.110]) by regular1.263xmail.com (Postfix) with SMTP id 9EF0947AB; Wed, 28 Jan 2015 14:23:47 +0800 (CST) X-263anti-spam: KSV:0; X-MAIL-GRAY: 0 X-MAIL-DELIVERY: 1 X-KSVirus-check: 0 X-ABS-CHECKED: 4 X-ADDR-CHECKED: 0 Received: from mae.263xmail.com (unknown [112.124.101.189]) by smtp.263.net (Postfix) with ESMTP id 9F9AB2D428; Wed, 28 Jan 2015 14:23:43 +0800 (CST) Received: from fl.service?t-firefly.com (localhost [127.0.0.1]) by mae.263xmail.com (Postfix) with SMTP id A84E127EC02; Wed, 28 Jan 2015 14:23:47 +0800 (CST) X-MAE-MAIL_UID: 0054c88073095851@maes@ea3ddeabf1c69d34 X-MAE-ID: 223.6.254.61 X-RL-NAME: fl.service@t-firefly.com X-LOGIN-NAME: fl.service@t-firefly.com X-SENDER-IP: 183.32.185.92 X-SENDER: fl.service@t-firefly.com From: wengbj To: blogic@openwrt.org Date: Wed, 28 Jan 2015 14:24:21 +0800 Message-Id: <1422426261-3261-1-git-send-email-fl.service@t-firefly.com> X-Mailer: git-send-email 1.7.9.5 Cc: fl.service@t-firefly.com, openwrt-devel@lists.openwrt.org, linux.c@foxmail.com Subject: [OpenWrt-Devel] [PATCH] ralink: check ethernet MAC address whether it is valid X-BeenThere: openwrt-devel@lists.openwrt.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: OpenWrt Development List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: openwrt-devel-bounces@lists.openwrt.org Sender: "openwrt-devel" From: wengbj The mac address usually write in factory block. but sometime user erase this block , the mac address will change to ff:ff:ff:ff:ff:ff. This patch is purpose to fix this issue. --- .../drivers/net/ethernet/ralink/ralink_soc_eth.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/target/linux/ramips/files/drivers/net/ethernet/ralink/ralink_soc_eth.c b/target/linux/ramips/files/drivers/net/ethernet/ralink/ralink_soc_eth.c index d7d1e8e..9900a5e 100644 --- a/target/linux/ramips/files/drivers/net/ethernet/ralink/ralink_soc_eth.c +++ b/target/linux/ramips/files/drivers/net/ethernet/ralink/ralink_soc_eth.c @@ -1220,8 +1220,10 @@ static int __init fe_init(struct net_device *dev) if (priv->soc->switch_init) priv->soc->switch_init(priv); - memcpy(dev->dev_addr, priv->soc->mac, ETH_ALEN); of_get_mac_address_mtd(priv->device->of_node, dev->dev_addr); + /*If the mac address is invalid, use default mac address */ + if (!is_valid_ether_addr(dev->dev_addr)) + memcpy(dev->dev_addr, priv->soc->mac, ETH_ALEN); err = fe_mdio_init(priv); if (err)