This is the mail archive of the ecos-patches@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

init one device only


This adds option for RedBoot to only init one net device.
And enables that option for the ixp4xx boards.

--Mark

Index: packages/redboot/current/ChangeLog
===================================================================
RCS file: /cvs/ecos/ecos/packages/redboot/current/ChangeLog,v
retrieving revision 1.207
diff -u -p -5 -r1.207 ChangeLog
--- packages/redboot/current/ChangeLog	19 Sep 2004 13:01:54 -0000	1.207
+++ packages/redboot/current/ChangeLog	19 Sep 2004 17:29:49 -0000
@@ -1,5 +1,11 @@
+2004-09-19  Mark Salter  <msalter@redhat.com>
+
+	* cdl/redboot.cdl: Add CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE
+	* src/net/net_io.c (net_init): Initialize only one network
+	device if CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE defined.
+
 2004-09-19  Andrew Lunn  <andrew.lunn@ascom.ch>
 
 	* src/load.c (do_load): Removed compiler warning when building
 	reboot without networking.
 
Index: packages/redboot/current/cdl/redboot.cdl
===================================================================
RCS file: /cvs/ecos/ecos/packages/redboot/current/cdl/redboot.cdl,v
retrieving revision 1.66
diff -u -p -5 -r1.66 redboot.cdl
--- packages/redboot/current/cdl/redboot.cdl	1 Sep 2004 21:21:30 -0000	1.66
+++ packages/redboot/current/cdl/redboot.cdl	19 Sep 2004 17:29:49 -0000
@@ -481,10 +481,22 @@ cdl_package CYGPKG_REDBOOT {
                 default_value   0
                 description     "
                     This is the index of the first network device driver that
                     RedBoot will try to initialize."
             }
+
+	    cdl_option CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE {
+                display         "Initialize only one net device"
+                flavor          bool
+                active_if       { CYGHWR_NET_DRIVERS > 1 }
+                default_value   0
+                description     "
+                    This option tells RedBoot to stop initializing network
+		    devices when it finds the first device which is
+                    successfully initialized. The default behavior causes
+                    all network devices to be initialized."
+            }
         }
     
         cdl_option CYGPKG_REDBOOT_ANY_CONSOLE {
             display       "Allow RedBoot to use any I/O channel for its console."
             flavor        bool
Index: packages/redboot/current/src/net/net_io.c
===================================================================
RCS file: /cvs/ecos/ecos/packages/redboot/current/src/net/net_io.c,v
retrieving revision 1.40
diff -u -p -5 -r1.40 net_io.c
--- packages/redboot/current/src/net/net_io.c	21 Aug 2004 12:43:32 -0000	1.40
+++ packages/redboot/current/src/net/net_io.c	19 Sep 2004 17:29:49 -0000
@@ -6,11 +6,11 @@
 //
 //==========================================================================
 //####ECOSGPLCOPYRIGHTBEGIN####
 // -------------------------------------------
 // This file is part of eCos, the Embedded Configurable Operating System.
-// Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 Red Hat, Inc.
+// Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004 Red Hat, Inc.
 // Copyright (C) 2002, 2003, 2004 Gary Thomas
 //
 // eCos is free software; you can redistribute it and/or modify it under
 // the terms of the GNU General Public License as published by the Free
 // Software Foundation; either version 2 or (at your option) any later version.
@@ -722,12 +722,22 @@ net_init(void)
     // Initialize network device(s).
 #if defined(CYGHWR_NET_DRIVERS) && (CYGHWR_NET_DRIVERS > 1)
     default_index = net_devindex(default_devname);
     if (default_index < 0)
 	default_index = 0;
+#ifdef CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE
+    if ((t = net_devtab_entry(default_index)) != NULL && t->init(t)) {
+	t->status = CYG_NETDEVTAB_STATUS_AVAIL;
+	primary_net = __local_enet_sc;
+    } else
+#endif
 #endif
     for (index = 0; (t = net_devtab_entry(index)) != NULL; index++) {
+#ifdef CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE
+	if (index == default_index)
+	    continue;
+#endif
 	if (t->init(t)) {
             t->status = CYG_NETDEVTAB_STATUS_AVAIL;
             if (primary_net == (struct eth_drv_sc *)0) {
                 primary_net = __local_enet_sc;
             }
Index: packages/hal/arm/xscale/grg/current/ChangeLog
===================================================================
RCS file: /cvs/ecos/ecos/packages/hal/arm/xscale/grg/current/ChangeLog,v
retrieving revision 1.5
diff -u -p -5 -r1.5 ChangeLog
--- packages/hal/arm/xscale/grg/current/ChangeLog	2 Sep 2004 20:17:43 -0000	1.5
+++ packages/hal/arm/xscale/grg/current/ChangeLog	19 Sep 2004 17:29:44 -0000
@@ -1,5 +1,12 @@
+2004-09-19  Mark Salter  <msalter@redhat.com>
+
+	* misc/redboot_ROM.ecm: Add CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE.
+	* misc/redboot_RAM.ecm: Ditto.
+	* misc/redboot_ROMLE.ecm: Ditto.
+	* misc/redboot_RAMLE.ecm: Ditto.
+
 2004-09-02  Mark Salter  <msalter@redhat.com>
 
 	* include/hal_platform_extras.h: Removed.
 	* misc/redboot_ROMLE.ecm: New file.
 	* misc/redboot_RAMLE.ecm: New file.
Index: packages/hal/arm/xscale/grg/current/misc/redboot_RAM.ecm
===================================================================
RCS file: /cvs/ecos/ecos/packages/hal/arm/xscale/grg/current/misc/redboot_RAM.ecm,v
retrieving revision 1.3
diff -u -p -5 -r1.3 redboot_RAM.ecm
--- packages/hal/arm/xscale/grg/current/misc/redboot_RAM.ecm	2 Sep 2004 20:17:44 -0000	1.3
+++ packages/hal/arm/xscale/grg/current/misc/redboot_RAM.ecm	19 Sep 2004 17:29:44 -0000
@@ -117,9 +117,13 @@ cdl_option CYGPKG_HAL_GDB_FILEIO {
 
 cdl_option CYGHWR_REDBOOT_LINUX_EXEC_X_SWITCH {
     user_value 1
 }
  
+cdl_option CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE {
+    user_value 1
+};
+
 cdl_option CYGHWR_HAL_ARM_BIGENDIAN {
     user_value 1
 };
 
Index: packages/hal/arm/xscale/grg/current/misc/redboot_RAMLE.ecm
===================================================================
RCS file: /cvs/ecos/ecos/packages/hal/arm/xscale/grg/current/misc/redboot_RAMLE.ecm,v
retrieving revision 1.1
diff -u -p -5 -r1.1 redboot_RAMLE.ecm
--- packages/hal/arm/xscale/grg/current/misc/redboot_RAMLE.ecm	2 Sep 2004 20:17:44 -0000	1.1
+++ packages/hal/arm/xscale/grg/current/misc/redboot_RAMLE.ecm	19 Sep 2004 17:29:44 -0000
@@ -117,10 +117,14 @@ cdl_option CYGPKG_HAL_GDB_FILEIO {
 
 cdl_option CYGHWR_REDBOOT_LINUX_EXEC_X_SWITCH {
     user_value 1
 }
  
+cdl_option CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE {
+    user_value 1
+};
+
 cdl_option CYGHWR_HAL_ARM_BIGENDIAN {
     user_value 0
 };
 
 cdl_option CYGOPT_REDBOOT_FLASH_BYTEORDER {
Index: packages/hal/arm/xscale/grg/current/misc/redboot_ROM.ecm
===================================================================
RCS file: /cvs/ecos/ecos/packages/hal/arm/xscale/grg/current/misc/redboot_ROM.ecm,v
retrieving revision 1.3
diff -u -p -5 -r1.3 redboot_ROM.ecm
--- packages/hal/arm/xscale/grg/current/misc/redboot_ROM.ecm	2 Sep 2004 20:17:44 -0000	1.3
+++ packages/hal/arm/xscale/grg/current/misc/redboot_ROM.ecm	19 Sep 2004 17:29:44 -0000
@@ -125,9 +125,13 @@ cdl_option CYGPKG_HAL_GDB_FILEIO {
 
 cdl_option CYGHWR_REDBOOT_LINUX_EXEC_X_SWITCH {
     user_value 1
 }
  
+cdl_option CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE {
+    user_value 1
+};
+
 cdl_option CYGHWR_HAL_ARM_BIGENDIAN {
     user_value 1
 };
 
Index: packages/hal/arm/xscale/grg/current/misc/redboot_ROMLE.ecm
===================================================================
RCS file: /cvs/ecos/ecos/packages/hal/arm/xscale/grg/current/misc/redboot_ROMLE.ecm,v
retrieving revision 1.1
diff -u -p -5 -r1.1 redboot_ROMLE.ecm
--- packages/hal/arm/xscale/grg/current/misc/redboot_ROMLE.ecm	2 Sep 2004 20:17:44 -0000	1.1
+++ packages/hal/arm/xscale/grg/current/misc/redboot_ROMLE.ecm	19 Sep 2004 17:29:44 -0000
@@ -129,8 +129,12 @@ cdl_option CYGHWR_REDBOOT_LINUX_EXEC_X_S
  
 cdl_option CYGHWR_HAL_ARM_BIGENDIAN {
     user_value 0
 };
 
+cdl_option CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE {
+    user_value 1
+};
+
 cdl_option CYGOPT_REDBOOT_FLASH_BYTEORDER {
     user_value MSBFIRST
 }
Index: packages/hal/arm/xscale/ixdp425/current/ChangeLog
===================================================================
RCS file: /cvs/ecos/ecos/packages/hal/arm/xscale/ixdp425/current/ChangeLog,v
retrieving revision 1.8
diff -u -p -5 -r1.8 ChangeLog
--- packages/hal/arm/xscale/ixdp425/current/ChangeLog	7 Sep 2004 14:59:15 -0000	1.8
+++ packages/hal/arm/xscale/ixdp425/current/ChangeLog	19 Sep 2004 17:29:44 -0000
@@ -1,5 +1,14 @@
+2004-09-19  Mark Salter  <msalter@redhat.com>
+
+	* misc/redboot_ROM.ecm: Add CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE.
+	* misc/redboot_RAM.ecm: Ditto.
+	* misc/redboot_ROMRAM.ecm: Ditto.
+	* misc/redboot_ROMLE.ecm: Ditto.
+	* misc/redboot_RAMLE.ecm: Ditto.
+	* misc/redboot_ROMRAMLE.ecm: Ditto.
+
 2004-09-07  Mark Salter  <msalter@redhat.com>
 
 	* misc/redboot_ROM.ecm (CYGBLD_REDBOOT_MIN_IMAGE_SIZE): Set to 0x80000.
 	* misc/redboot_RAM.ecm: Ditto.
 	* misc/redboot_ROMLE.ecm: Ditto.
Index: packages/hal/arm/xscale/ixdp425/current/misc/redboot_RAM.ecm
===================================================================
RCS file: /cvs/ecos/ecos/packages/hal/arm/xscale/ixdp425/current/misc/redboot_RAM.ecm,v
retrieving revision 1.4
diff -u -p -5 -r1.4 redboot_RAM.ecm
--- packages/hal/arm/xscale/ixdp425/current/misc/redboot_RAM.ecm	7 Sep 2004 14:59:16 -0000	1.4
+++ packages/hal/arm/xscale/ixdp425/current/misc/redboot_RAM.ecm	19 Sep 2004 17:29:44 -0000
@@ -117,9 +117,13 @@ cdl_option CYGPKG_HAL_GDB_FILEIO {
 
 cdl_option CYGHWR_REDBOOT_LINUX_EXEC_X_SWITCH {
     user_value 1
 }
  
+cdl_option CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE {
+    user_value 1
+};
+
 cdl_option CYGHWR_HAL_ARM_BIGENDIAN {
     user_value 1
 };
 
Index: packages/hal/arm/xscale/ixdp425/current/misc/redboot_RAMLE.ecm
===================================================================
RCS file: /cvs/ecos/ecos/packages/hal/arm/xscale/ixdp425/current/misc/redboot_RAMLE.ecm,v
retrieving revision 1.2
diff -u -p -5 -r1.2 redboot_RAMLE.ecm
--- packages/hal/arm/xscale/ixdp425/current/misc/redboot_RAMLE.ecm	7 Sep 2004 14:59:16 -0000	1.2
+++ packages/hal/arm/xscale/ixdp425/current/misc/redboot_RAMLE.ecm	19 Sep 2004 17:29:44 -0000
@@ -117,10 +117,14 @@ cdl_option CYGPKG_HAL_GDB_FILEIO {
 
 cdl_option CYGHWR_REDBOOT_LINUX_EXEC_X_SWITCH {
     user_value 1
 }
  
+cdl_option CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE {
+    user_value 1
+};
+
 cdl_option CYGHWR_HAL_ARM_BIGENDIAN {
     user_value 0
 };
 
 cdl_option CYGOPT_REDBOOT_FLASH_BYTEORDER {
Index: packages/hal/arm/xscale/ixdp425/current/misc/redboot_ROM.ecm
===================================================================
RCS file: /cvs/ecos/ecos/packages/hal/arm/xscale/ixdp425/current/misc/redboot_ROM.ecm,v
retrieving revision 1.4
diff -u -p -5 -r1.4 redboot_ROM.ecm
--- packages/hal/arm/xscale/ixdp425/current/misc/redboot_ROM.ecm	7 Sep 2004 14:59:16 -0000	1.4
+++ packages/hal/arm/xscale/ixdp425/current/misc/redboot_ROM.ecm	19 Sep 2004 17:29:44 -0000
@@ -125,10 +125,14 @@ cdl_option CYGPKG_HAL_GDB_FILEIO {
 
 cdl_option CYGHWR_REDBOOT_LINUX_EXEC_X_SWITCH {
     user_value 1
 }
  
+cdl_option CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE {
+    user_value 1
+};
+
 cdl_option CYGHWR_HAL_ARM_BIGENDIAN {
     user_value 1
 };
 
 
Index: packages/hal/arm/xscale/ixdp425/current/misc/redboot_ROMLE.ecm
===================================================================
RCS file: /cvs/ecos/ecos/packages/hal/arm/xscale/ixdp425/current/misc/redboot_ROMLE.ecm,v
retrieving revision 1.2
diff -u -p -5 -r1.2 redboot_ROMLE.ecm
--- packages/hal/arm/xscale/ixdp425/current/misc/redboot_ROMLE.ecm	7 Sep 2004 14:59:17 -0000	1.2
+++ packages/hal/arm/xscale/ixdp425/current/misc/redboot_ROMLE.ecm	19 Sep 2004 17:29:44 -0000
@@ -125,10 +125,14 @@ cdl_option CYGPKG_HAL_GDB_FILEIO {
 
 cdl_option CYGHWR_REDBOOT_LINUX_EXEC_X_SWITCH {
     user_value 1
 }
  
+cdl_option CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE {
+    user_value 1
+};
+
 cdl_option CYGHWR_HAL_ARM_BIGENDIAN {
     user_value 0
 };
 
 cdl_option CYGOPT_REDBOOT_FLASH_BYTEORDER {
Index: packages/hal/arm/xscale/ixdp425/current/misc/redboot_ROMRAM.ecm
===================================================================
RCS file: /cvs/ecos/ecos/packages/hal/arm/xscale/ixdp425/current/misc/redboot_ROMRAM.ecm,v
retrieving revision 1.1
diff -u -p -5 -r1.1 redboot_ROMRAM.ecm
--- packages/hal/arm/xscale/ixdp425/current/misc/redboot_ROMRAM.ecm	7 Sep 2004 14:59:17 -0000	1.1
+++ packages/hal/arm/xscale/ixdp425/current/misc/redboot_ROMRAM.ecm	19 Sep 2004 17:29:44 -0000
@@ -125,9 +125,13 @@ cdl_option CYGPKG_HAL_GDB_FILEIO {
 
 cdl_option CYGHWR_REDBOOT_LINUX_EXEC_X_SWITCH {
     user_value 1
 }
  
+cdl_option CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE {
+    user_value 1
+};
+
 cdl_option CYGHWR_HAL_ARM_BIGENDIAN {
     user_value 1
 };
 
Index: packages/hal/arm/xscale/ixdp425/current/misc/redboot_ROMRAMLE.ecm
===================================================================
RCS file: /cvs/ecos/ecos/packages/hal/arm/xscale/ixdp425/current/misc/redboot_ROMRAMLE.ecm,v
retrieving revision 1.1
diff -u -p -5 -r1.1 redboot_ROMRAMLE.ecm
--- packages/hal/arm/xscale/ixdp425/current/misc/redboot_ROMRAMLE.ecm	7 Sep 2004 14:59:17 -0000	1.1
+++ packages/hal/arm/xscale/ixdp425/current/misc/redboot_ROMRAMLE.ecm	19 Sep 2004 17:29:44 -0000
@@ -125,10 +125,14 @@ cdl_option CYGPKG_HAL_GDB_FILEIO {
 
 cdl_option CYGHWR_REDBOOT_LINUX_EXEC_X_SWITCH {
     user_value 1
 }
  
+cdl_option CYGSEM_REDBOOT_NETWORK_INIT_ONE_DEVICE {
+    user_value 1
+};
+
 cdl_option CYGHWR_HAL_ARM_BIGENDIAN {
     user_value 0
 };
 
 cdl_option CYGOPT_REDBOOT_FLASH_BYTEORDER {


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]