From patchwork Wed Mar 11 23:44:07 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joe Hershberger X-Patchwork-Id: 449258 X-Patchwork-Delegate: sjg@chromium.org Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from theia.denx.de (theia.denx.de [85.214.87.163]) by ozlabs.org (Postfix) with ESMTP id 190501400DD for ; Thu, 12 Mar 2015 10:50:20 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 54CF6A7475; Thu, 12 Mar 2015 00:49:54 +0100 (CET) Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id kQ0aifQKw6DF; Thu, 12 Mar 2015 00:49:54 +0100 (CET) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 343CC4A046; Thu, 12 Mar 2015 00:48:57 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 3A2BEA7430 for ; Thu, 12 Mar 2015 00:46:32 +0100 (CET) Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Uw59RhqueT-U for ; Thu, 12 Mar 2015 00:46:32 +0100 (CET) X-policyd-weight: NOT_IN_SBL_XBL_SPAMHAUS=-1.5 NOT_IN_SPAMCOP=-1.5 NOT_IN_BL_NJABL=-1.5 (only DNSBL check requested) Received: from ni.com (skprod2.natinst.com [130.164.80.23]) by theia.denx.de (Postfix) with ESMTPS id 27537A7433 for ; Thu, 12 Mar 2015 00:46:26 +0100 (CET) Received: from us-aus-mgwout1.amer.corp.natinst.com (nb-chan1-1338.natinst.com [130.164.19.134]) by us-aus-skprod2.natinst.com (8.15.0.59/8.15.0.59) with ESMTP id t2BNkOMq004980; Wed, 11 Mar 2015 18:46:24 -0500 Received: from linux-xvxi.natinst.com ([130.164.14.198]) by us-aus-mgwout1.amer.corp.natinst.com (Lotus Domino Release 8.5.3FP6) with ESMTP id 2015031118462472-293903 ; Wed, 11 Mar 2015 18:46:24 -0500 From: Joe Hershberger To: u-boot@lists.denx.de Date: Wed, 11 Mar 2015 18:44:07 -0500 Message-Id: <1426117465-16072-10-git-send-email-joe.hershberger@ni.com> X-Mailer: git-send-email 1.7.11.5 In-Reply-To: <1426117465-16072-1-git-send-email-joe.hershberger@ni.com> References: <1425436881-10323-1-git-send-email-joe.hershberger@ni.com> <1426117465-16072-1-git-send-email-joe.hershberger@ni.com> X-MIMETrack: Itemize by SMTP Server on US-AUS-MGWOut1/AUS/H/NIC(Release 8.5.3FP6|November 21, 2013) at 03/11/2015 06:46:24 PM, Serialize by Router on US-AUS-MGWOut1/AUS/H/NIC(Release 8.5.3FP6|November 21, 2013) at 03/11/2015 06:46:24 PM, Serialize complete at 03/11/2015 06:46:24 PM X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:, , definitions=2015-03-11_08:, , signatures=0 Cc: Joe Hershberger Subject: [U-Boot] [PATCH v6 09/27] net: Remove the bd* parameter from net stack functions X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.15 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" This value is not used by the network stack and is available in the global data, so stop passing it around. For the one legacy function that still expects it (init op on old Ethernet drivers) pass in the global pointer version directly to avoid changing that interface. Signed-off-by: Joe Hershberger Reported-by: Simon Glass Reviewed-by: Simon Glass --- Changes in v6: -Fix compile errors for other boards due to removed parameters Changes in v5: None Changes in v4: -New to v4 Changes in v3: None Changes in v2: None api/api_net.c | 2 +- arch/arm/lib/board.c | 2 +- arch/avr32/lib/board.c | 2 +- arch/m68k/lib/board.c | 4 ++-- arch/nds32/lib/board.c | 2 +- arch/openrisc/lib/board.c | 2 +- arch/powerpc/lib/board.c | 2 +- arch/sh/lib/board.c | 2 +- arch/sparc/lib/board.c | 2 +- board/BuS/eb_cpux9k2/cpux9k2.c | 2 +- board/BuS/vl_ma2sc/vl_ma2sc.c | 2 +- board/atmel/at91sam9261ek/at91sam9261ek.c | 2 +- board/egnite/ethernut5/ethernut5.c | 2 +- board/ronetix/pm9261/pm9261.c | 2 +- board/ronetix/pm9g45/pm9g45.c | 2 +- common/board_r.c | 2 +- common/spl/spl_net.c | 2 +- drivers/net/netconsole.c | 4 ++-- include/net.h | 6 +++--- net/eth.c | 12 +++++++----- net/net.c | 7 +++---- 21 files changed, 33 insertions(+), 32 deletions(-) diff --git a/api/api_net.c b/api/api_net.c index 7b3805e..04e4f4a 100644 --- a/api/api_net.c +++ b/api/api_net.c @@ -37,7 +37,7 @@ int dev_open_net(void *cookie) if (!dev_valid_net(cookie)) return API_ENODEV; - if (eth_init(gd->bd) < 0) + if (eth_init() < 0) return API_EIO; return 0; diff --git a/arch/arm/lib/board.c b/arch/arm/lib/board.c index f606255..37ea6e9 100644 --- a/arch/arm/lib/board.c +++ b/arch/arm/lib/board.c @@ -644,7 +644,7 @@ void board_init_r(gd_t *id, ulong dest_addr) #endif #if defined(CONFIG_CMD_NET) puts("Net: "); - eth_initialize(gd->bd); + eth_initialize(); #if defined(CONFIG_RESET_PHY_R) debug("Reset Ethernet PHY\n"); reset_phy(); diff --git a/arch/avr32/lib/board.c b/arch/avr32/lib/board.c index 99aa96e..aacfcbf 100644 --- a/arch/avr32/lib/board.c +++ b/arch/avr32/lib/board.c @@ -244,7 +244,7 @@ void board_init_r(gd_t *new_gd, ulong dest_addr) #endif #if defined(CONFIG_CMD_NET) puts("Net: "); - eth_initialize(gd->bd); + eth_initialize(); #endif #ifdef CONFIG_GENERIC_ATMEL_MCI diff --git a/arch/m68k/lib/board.c b/arch/m68k/lib/board.c index 9caff73..c54a3f7 100644 --- a/arch/m68k/lib/board.c +++ b/arch/m68k/lib/board.c @@ -566,10 +566,10 @@ void board_init_r (gd_t *id, ulong dest_addr) #if defined(CONFIG_CMD_NET) WATCHDOG_RESET(); #if defined(FEC_ENET) - eth_init(bd); + eth_init(); #endif puts ("Net: "); - eth_initialize (bd); + eth_initialize(); #endif #ifdef CONFIG_POST diff --git a/arch/nds32/lib/board.c b/arch/nds32/lib/board.c index 4c06a48..24a09bc 100644 --- a/arch/nds32/lib/board.c +++ b/arch/nds32/lib/board.c @@ -383,7 +383,7 @@ void board_init_r(gd_t *id, ulong dest_addr) #if defined(CONFIG_CMD_NET) puts("Net: "); - eth_initialize(gd->bd); + eth_initialize(); #if defined(CONFIG_RESET_PHY_R) debug("Reset Ethernet PHY\n"); reset_phy(); diff --git a/arch/openrisc/lib/board.c b/arch/openrisc/lib/board.c index 2346685..c26cc8f 100644 --- a/arch/openrisc/lib/board.c +++ b/arch/openrisc/lib/board.c @@ -128,7 +128,7 @@ void board_init(void) #if defined(CONFIG_CMD_NET) puts("NET: "); - eth_initialize(bd); + eth_initialize(); #endif /* main_loop */ diff --git a/arch/powerpc/lib/board.c b/arch/powerpc/lib/board.c index 91645d3..5ea29cc 100644 --- a/arch/powerpc/lib/board.c +++ b/arch/powerpc/lib/board.c @@ -890,7 +890,7 @@ void board_init_r(gd_t *id, ulong dest_addr) #if defined(CONFIG_CMD_NET) WATCHDOG_RESET(); puts("Net: "); - eth_initialize(bd); + eth_initialize(); #endif #if defined(CONFIG_CMD_NET) && defined(CONFIG_RESET_PHY_R) diff --git a/arch/sh/lib/board.c b/arch/sh/lib/board.c index 1eb7afb..6dad3c7 100644 --- a/arch/sh/lib/board.c +++ b/arch/sh/lib/board.c @@ -178,7 +178,7 @@ void sh_generic_init(void) #endif #if defined(CONFIG_CMD_NET) puts("Net: "); - eth_initialize(gd->bd); + eth_initialize(); #endif /* CONFIG_CMD_NET */ while (1) { diff --git a/arch/sparc/lib/board.c b/arch/sparc/lib/board.c index b311a94..d2ac6bc 100644 --- a/arch/sparc/lib/board.c +++ b/arch/sparc/lib/board.c @@ -351,7 +351,7 @@ void board_init_f(ulong bootflag) #if defined(CONFIG_CMD_NET) WATCHDOG_RESET(); puts("Net: "); - eth_initialize(bd); + eth_initialize(); #endif #if defined(CONFIG_CMD_NET) && defined(CONFIG_RESET_PHY_R) diff --git a/board/BuS/eb_cpux9k2/cpux9k2.c b/board/BuS/eb_cpux9k2/cpux9k2.c index 76ad7c4..3880a06 100644 --- a/board/BuS/eb_cpux9k2/cpux9k2.c +++ b/board/BuS/eb_cpux9k2/cpux9k2.c @@ -111,7 +111,7 @@ int misc_init_r(void) void reset_phy(void) { udelay(10000); - eth_init(gd->bd); + eth_init(); } #endif diff --git a/board/BuS/vl_ma2sc/vl_ma2sc.c b/board/BuS/vl_ma2sc/vl_ma2sc.c index da39c86..e4e1a85 100644 --- a/board/BuS/vl_ma2sc/vl_ma2sc.c +++ b/board/BuS/vl_ma2sc/vl_ma2sc.c @@ -280,7 +280,7 @@ void reset_phy(void) * Initialize ethernet HW addr prior to starting Linux, * needed for nfsroot */ - eth_init(gd->bd); + eth_init(); #endif } #endif diff --git a/board/atmel/at91sam9261ek/at91sam9261ek.c b/board/atmel/at91sam9261ek/at91sam9261ek.c index a301d72..5250474 100644 --- a/board/atmel/at91sam9261ek/at91sam9261ek.c +++ b/board/atmel/at91sam9261ek/at91sam9261ek.c @@ -275,7 +275,7 @@ void reset_phy(void) * Initialize ethernet HW addr prior to starting Linux, * needed for nfsroot */ - eth_init(gd->bd); + eth_init(); #endif } #endif diff --git a/board/egnite/ethernut5/ethernut5.c b/board/egnite/ethernut5/ethernut5.c index b45213c..67d3984 100644 --- a/board/egnite/ethernut5/ethernut5.c +++ b/board/egnite/ethernut5/ethernut5.c @@ -204,7 +204,7 @@ int board_eth_init(bd_t *bis) miiphy_write(devname, 0, MII_BMCR, BMCR_RESET); } /* Sync environment with network devices, needed for nfsroot. */ - return eth_init(gd->bd); + return eth_init(); } #endif diff --git a/board/ronetix/pm9261/pm9261.c b/board/ronetix/pm9261/pm9261.c index 1f7679a..b96f745 100644 --- a/board/ronetix/pm9261/pm9261.c +++ b/board/ronetix/pm9261/pm9261.c @@ -288,7 +288,7 @@ void reset_phy(void) * Initialize ethernet HW addr prior to starting Linux, * needed for nfsroot */ - eth_init(gd->bd); + eth_init(); #endif } #endif diff --git a/board/ronetix/pm9g45/pm9g45.c b/board/ronetix/pm9g45/pm9g45.c index 15aa4ac..efc4133 100644 --- a/board/ronetix/pm9g45/pm9g45.c +++ b/board/ronetix/pm9g45/pm9g45.c @@ -166,7 +166,7 @@ void reset_phy(void) * Initialize ethernet HW addr prior to starting Linux, * needed for nfsroot */ - eth_init(gd->bd); + eth_init(); #endif } #endif diff --git a/common/board_r.c b/common/board_r.c index af0f274..b882d9b 100644 --- a/common/board_r.c +++ b/common/board_r.c @@ -585,7 +585,7 @@ static int initr_bbmii(void) static int initr_net(void) { puts("Net: "); - eth_initialize(gd->bd); + eth_initialize(); #if defined(CONFIG_RESET_PHY_R) debug("Reset Ethernet PHY\n"); reset_phy(); diff --git a/common/spl/spl_net.c b/common/spl/spl_net.c index ff53705..af4952f 100644 --- a/common/spl/spl_net.c +++ b/common/spl/spl_net.c @@ -21,7 +21,7 @@ void spl_net_load_image(const char *device) env_relocate(); setenv("autoload", "yes"); load_addr = CONFIG_SYS_TEXT_BASE - sizeof(struct image_header); - rv = eth_initialize(gd->bd); + rv = eth_initialize(); if (rv == 0) { printf("No Ethernet devices found\n"); hang(); diff --git a/drivers/net/netconsole.c b/drivers/net/netconsole.c index 677c89f..87cea7a 100644 --- a/drivers/net/netconsole.c +++ b/drivers/net/netconsole.c @@ -193,11 +193,11 @@ static void nc_send_packet(const char *buf, int len) if (eth->state != ETH_STATE_ACTIVE) { if (eth_is_on_demand_init()) { - if (eth_init(gd->bd) < 0) + if (eth_init() < 0) return; eth_set_last_protocol(NETCONS); } else - eth_init_state_only(gd->bd); + eth_init_state_only(); inited = 1; } diff --git a/include/net.h b/include/net.h index cec5612..ae0f31a 100644 --- a/include/net.h +++ b/include/net.h @@ -119,7 +119,7 @@ static inline unsigned char *eth_get_ethaddr(void) } /* Set active state */ -static inline __attribute__((always_inline)) int eth_init_state_only(bd_t *bis) +static inline __attribute__((always_inline)) int eth_init_state_only(void) { eth_get_dev()->state = ETH_STATE_ACTIVE; @@ -145,7 +145,7 @@ int eth_write_hwaddr(struct eth_device *dev, const char *base_name, int usb_eth_initialize(bd_t *bi); -int eth_initialize(bd_t *bis); /* Initialize network subsystem */ +int eth_initialize(void); /* Initialize network subsystem */ void eth_try_another(int first_restart); /* Change the device */ void eth_set_current(void); /* set nterface to ethcur var */ @@ -166,7 +166,7 @@ int eth_setenv_enetaddr(char *name, const uchar *enetaddr); int eth_getenv_enetaddr_by_index(const char *base_name, int index, uchar *enetaddr); -int eth_init(bd_t *bis); /* Initialize the device */ +int eth_init(void); /* Initialize the device */ int eth_send(void *packet, int length); /* Send a packet */ #ifdef CONFIG_API diff --git a/net/eth.c b/net/eth.c index b86994e..66ecb79 100644 --- a/net/eth.c +++ b/net/eth.c @@ -12,6 +12,8 @@ #include #include +DECLARE_GLOBAL_DATA_PTR; + void eth_parse_enetaddr(const char *addr, uchar *enetaddr) { char *end; @@ -250,7 +252,7 @@ int eth_unregister(struct eth_device *dev) return 0; } -int eth_initialize(bd_t *bis) +int eth_initialize(void) { int num_devices = 0; eth_devices = NULL; @@ -272,10 +274,10 @@ int eth_initialize(bd_t *bis) * If not, call a CPU-specific one */ if (board_eth_init != __def_eth_init) { - if (board_eth_init(bis) < 0) + if (board_eth_init(gd->bd) < 0) printf("Board Net Initialization Failed\n"); } else if (cpu_eth_init != __def_eth_init) { - if (cpu_eth_init(bis) < 0) + if (cpu_eth_init(gd->bd) < 0) printf("CPU Net Initialization Failed\n"); } else printf("Net Initialization Skipped\n"); @@ -362,7 +364,7 @@ u32 ether_crc(size_t len, unsigned char const *p) #endif -int eth_init(bd_t *bis) +int eth_init(void) { struct eth_device *old_current, *dev; @@ -387,7 +389,7 @@ int eth_init(bd_t *bis) do { debug("Trying %s\n", eth_current->name); - if (eth_current->init(eth_current, bis) >= 0) { + if (eth_current->init(eth_current, gd->bd) >= 0) { eth_current->state = ETH_STATE_ACTIVE; return 0; diff --git a/net/net.c b/net/net.c index 4b3c90e..e5ab07c 100644 --- a/net/net.c +++ b/net/net.c @@ -324,7 +324,6 @@ void net_init(void) int NetLoop(enum proto_t protocol) { - bd_t *bd = gd->bd; int ret = -1; NetRestarted = 0; @@ -337,12 +336,12 @@ int NetLoop(enum proto_t protocol) if (eth_is_on_demand_init() || protocol != NETCONS) { eth_halt(); eth_set_current(); - if (eth_init(bd) < 0) { + if (eth_init() < 0) { eth_halt(); return -1; } } else - eth_init_state_only(bd); + eth_init_state_only(); restart: #ifdef CONFIG_USB_KEYBOARD @@ -618,7 +617,7 @@ void NetStartAgain(void) #if !defined(CONFIG_NET_DO_NOT_TRY_ANOTHER) eth_try_another(!NetRestarted); #endif - eth_init(gd->bd); + eth_init(); if (NetRestartWrap) { NetRestartWrap = 0; if (NetDevExists) {