changeset 995:bd56b4799886

Better handling of system initialization (force serial I/O)
author gthomas
date Sun, 04 May 2003 17:37:10 +0000
parents 7e0dca248469
children fb41b6cf2513
files packages/devs/eth/powerpc/fec/current/ChangeLog packages/devs/eth/powerpc/fec/current/cdl/fec_eth_drivers.cdl packages/devs/eth/powerpc/fec/current/src/if_fec.c
diffstat 3 files changed, 27 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/packages/devs/eth/powerpc/fec/current/ChangeLog
+++ b/packages/devs/eth/powerpc/fec/current/ChangeLog
@@ -1,3 +1,10 @@
+2003-05-04  Gary Thomas  <gary@mlbassoc.com>
+
+	* src/if_fec.c: 
+	* cdl/fec_eth_drivers.cdl: Add control over use of LED display, since
+	it may interfere with some user programs.  Also, debug I/O during
+	network intialization seems frail, so force it to be disabled.
+
 2003-03-28  Gary Thomas  <gary@mlbassoc.com>
 
 	* src/if_fec.c: Use new CPM/DPRAM buffer allocation scheme.  Also,
--- a/packages/devs/eth/powerpc/fec/current/cdl/fec_eth_drivers.cdl
+++ b/packages/devs/eth/powerpc/fec/current/cdl/fec_eth_drivers.cdl
@@ -64,6 +64,9 @@ cdl_package CYGPKG_DEVS_ETH_POWERPC_FEC 
     include_dir   .
     include_files ; # none _exported_ whatsoever
 
+    # Debug I/O during network stack initialization is not reliable
+    requires { CYGPKG_NET_FORCE_SERIAL_CONSOLE == 1 }
+
     description   "Fast ethernet driver for PowerPC MPC8xxT boards."
     compile       -library=libextras.a if_fec.c
 
@@ -123,6 +126,18 @@ cdl_package CYGPKG_DEVS_ETH_POWERPC_FEC 
         }
     }
 
+    cdl_component CYGSEM_DEVS_ETH_POWERPC_FEC_STATUS_LEDS {
+        display "Display I/O status via LEDs"
+        flavor  bool
+        default_value 1
+        description "
+            If this option is set, and the platform defines LED access
+            functions, then I/O status will be displayed using the LEDs.
+            In particular, varying LEDs will be illuminated while the
+            device is busy transmitting a buffer, or handing an input
+            packet."
+    }
+
     cdl_component CYGPKG_DEVS_ETH_POWERPC_FEC_OPTIONS {
         display "MPC8xx FEC ethernet driver build options"
         flavor  none
--- a/packages/devs/eth/powerpc/fec/current/src/if_fec.c
+++ b/packages/devs/eth/powerpc/fec/current/src/if_fec.c
@@ -157,6 +157,7 @@ static void          fec_eth_int(struct 
 #define FEC_EPPC_BD_OFFSET CYGNUM_DEVS_ETH_POWERPC_FEC_BD_OFFSET
 #endif
 
+#ifdef CYGSEM_DEVS_ETH_POWERPC_FEC_STATUS_LEDS
 // LED activity [exclusive of hardware bits]
 #ifndef _get_led
 #define _get_led()  
@@ -179,6 +180,10 @@ clear_led(int bit)
 {
   _set_led(_get_led() & ~(1<<bit));
 }
+#else
+#define set_led(b)
+#define clear_led(b)
+#endif
 
 #ifdef _FEC_USE_INTS
 // This ISR is called when the ethernet interrupt occurs