Explorar el Código

netloop: updates for NetLoop

Fix some issues introduced from commit:
2f70c49e5b9813635ad73666aa30f304c7fdeda9
suggested by Mike Frysinger.

- added some comment for the env_id variable in common_cmd_nvedit.c
- moved some variables in fn scope instead of file scope
- NetInitLoop now static void

Signed-off-by: Heiko Schocher <hs@denx.de>
Acked-by: Ben Warren <biggerbadderben@gmail.com>
Heiko Schocher hace 16 años
padre
commit
da95427ce4
Se han modificado 3 ficheros con 12 adiciones y 7 borrados
  1. 7 0
      common/cmd_nvedit.c
  2. 2 3
      net/eth.c
  3. 3 4
      net/net.c

+ 7 - 0
common/cmd_nvedit.c

@@ -77,6 +77,13 @@ SPI_FLASH|MG_DISK|NVRAM|NOWHERE}
 static const unsigned long baudrate_table[] = CONFIG_SYS_BAUDRATE_TABLE;
 #define	N_BAUDRATES (sizeof(baudrate_table) / sizeof(baudrate_table[0]))
 
+/*
+ * This variable is incremented on each do_setenv (), so it can
+ * be used via get_env_id() as an indication, if the environment
+ * has changed or not. So it is possible to reread an environment
+ * variable only if the environment was changed ... done so for
+ * example in NetInitLoop()
+ */
 static int env_id = 1;
 
 int get_env_id (void)

+ 2 - 3
net/eth.c

@@ -57,9 +57,6 @@ int eth_setenv_enetaddr(char *name, const uchar *enetaddr)
 
 #if defined(CONFIG_CMD_NET) && defined(CONFIG_NET_MULTI)
 
-static char *act = NULL;
-static int  env_changed_id = 0;
-
 /*
  * CPU and board-specific Ethernet initializations.  Aliased function
  * signals caller to move on
@@ -471,6 +468,8 @@ void eth_try_another(int first_restart)
 #ifdef CONFIG_NET_MULTI
 void eth_set_current(void)
 {
+	static char *act = NULL;
+	static int  env_changed_id = 0;
 	struct eth_device* old_current;
 	int	env_id;
 

+ 3 - 4
net/net.c

@@ -209,8 +209,6 @@ uchar		NetArpWaitPacketBuf[PKTSIZE_ALIGN + PKTALIGN];
 ulong		NetArpWaitTimerStart;
 int		NetArpWaitTry;
 
-int		env_changed_id = 0;
-
 void ArpRequest (void)
 {
 	int i;
@@ -278,9 +276,10 @@ void ArpTimeoutCheck(void)
 	}
 }
 
-int
+static void
 NetInitLoop(proto_t protocol)
 {
+	static int env_changed_id = 0;
 	bd_t *bd = gd->bd;
 	int env_id = get_env_id ();
 
@@ -295,7 +294,7 @@ NetInitLoop(proto_t protocol)
 		env_changed_id = env_id;
 	}
 
-	return 0;
+	return;
 }
 
 /**********************************************************************/