From patchwork Mon Apr 10 15:33:41 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Olliver Schinagl X-Patchwork-Id: 749093 X-Patchwork-Delegate: joe.hershberger@gmail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 3w1vZH2V7Wz9sNg for ; Tue, 11 Apr 2017 01:42:15 +1000 (AEST) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=schinagl.nl header.i=@schinagl.nl header.b="khxC4Qxt"; dkim-atps=neutral Received: by lists.denx.de (Postfix, from userid 105) id D6204C21C9A; Mon, 10 Apr 2017 15:36:45 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=KHOP_BIG_TO_CC, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id B4AC7C21C7E; Mon, 10 Apr 2017 15:34:49 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 2374CC21C26; Mon, 10 Apr 2017 15:34:13 +0000 (UTC) Received: from 7of9.schinagl.nl (7of9.schinagl.nl [62.251.20.244]) by lists.denx.de (Postfix) with ESMTPS id D6D70C21C33 for ; Mon, 10 Apr 2017 15:34:12 +0000 (UTC) Received: from um-mbp-306.cloud.ultimaker.com (static-98-101-100-159.thenetworkfactory.nl [159.100.101.98]) by 7of9.schinagl.nl (Postfix) with ESMTPA id 20E08AC88C; Mon, 10 Apr 2017 17:34:09 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=schinagl.nl; s=7of9; t=1491838449; bh=L5wwkRj5d/ogu+fducXI2BcU0rL4EtaCsxixzNhByfc=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=khxC4QxtIK4QvUPucoodrEIdPr7oMCUWKC73mU5gVxavUOWF2XYHnZkbe1SYlFR0w HT337Ij3bhoUxOgTA7yjwxXYIcNQkrQnH7C4V2REZ7o5neGzlNYub+kt5ASFVCySRK 9hQ9Z+U8vR8hRhNEJHrd+4DygxC9+GbMGHAYtHL4= From: Olliver Schinagl To: Jagan Teki , Maxime Ripard , Simon Glass , Joe Hershberger Date: Mon, 10 Apr 2017 17:33:41 +0200 Message-Id: <20170410153356.2664-7-oliver@schinagl.nl> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20170410153356.2664-1-oliver@schinagl.nl> References: <20170410153356.2664-1-oliver@schinagl.nl> X-Mailman-Approved-At: Mon, 10 Apr 2017 15:34:41 +0000 Cc: Mugunthan V N , Marcus Cooper , Philipp Tomsich , Stefan Roese , u-boot@lists.denx.de, Aleksei Mamlin , Ian Campbell , Bernhard Nortmann , dev@linux-sunxi.org, Andre Przywara , Phil Han , Hans de Goede , Zoltan Herpai , Olliver Schinagl , Jelle de Jong Subject: [U-Boot] [PATCHv2 06/21] net: core: print the source of the MAC address X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" With many potential places where a MAC address can be read from, the user may not know where the MAC address originated from. Print the MAC source after initializing the Ethernet device. Signed-off-by: Olliver Schinagl --- include/net.h | 14 ++++++++++++++ net/eth-uclass.c | 18 +++++++++++++++--- 2 files changed, 29 insertions(+), 3 deletions(-) diff --git a/include/net.h b/include/net.h index 7c66f3f06d..3eb5f81ea5 100644 --- a/include/net.h +++ b/include/net.h @@ -87,18 +87,32 @@ enum eth_state_t { ETH_STATE_ACTIVE }; +enum enetaddr_source { + ENETADDR_SRC_UNKNOWN = 0, + ENETADDR_SRC_ROM, + ENETADDR_SRC_EEPROM, + ENETADDR_SRC_DRIVER, + ENETADDR_SRC_BOARD, + ENETADDR_SRC_ENV, + ENETADDR_SRC_FDT, + ENETADDR_SRC_RANDOM, + ENETADDR_SRC_NONE, +}; + #ifdef CONFIG_DM_ETH /** * struct eth_pdata - Platform data for Ethernet MAC controllers * * @iobase: The base address of the hardware registers * @enetaddr: The Ethernet MAC address that is loaded from EEPROM or env + * @enetaddr_source: Indicator where the Ethernet MAC adress came from * @phy_interface: PHY interface to use - see PHY_INTERFACE_MODE_... * @max_speed: Maximum speed of Ethernet connection supported by MAC */ struct eth_pdata { phys_addr_t iobase; unsigned char enetaddr[ARP_HLEN]; + enum enetaddr_source enetaddr_src; int phy_interface; int max_speed; }; diff --git a/net/eth-uclass.c b/net/eth-uclass.c index 02ee926f74..c88b032868 100644 --- a/net/eth-uclass.c +++ b/net/eth-uclass.c @@ -416,9 +416,21 @@ int eth_initialize(void) putc('\n'); do { struct eth_pdata *pdata = dev->platdata; - - printf("eth%d: %s [%pM]\n", dev->seq, dev->name, - pdata->enetaddr); + const char *enetaddr_src[] = { + "unknown", + "ROM", + "EEPROM", + "driver", + "board", + "environment", + "flattened device tree", + "randomly generated", + "not set", + }; + + printf("eth%d: %s [%pM] (%s)\n", dev->seq, dev->name, + pdata->enetaddr, + enetaddr_src[pdata->enetaddr_src]); if (ethprime && dev == prime_dev) printf(" [PRIME]");