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]

cs8900a weirdness finally solved


patch attached. Problem appeared to be the fact that internal CMF flash
of ec555 is much _faster_ than external memory. Anyway changing the
memory controller setup does the trick. Works like a charm now.
The patch additionally removes 4 files that are no longer needed (and
according to the changelog should already have been removed).

Bob
Index: packages/hal/powerpc/ec555//current/ChangeLog
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/ChangeLog,v
retrieving revision 1.1.1.5
retrieving revision 1.10
diff -u -5 -r1.1.1.5 -r1.10
--- packages/hal/powerpc/ec555//current/ChangeLog	12 May 2004 19:28:46 -0000	1.1.1.5
+++ packages/hal/powerpc/ec555//current/ChangeLog	23 Sep 2004 19:19:43 -0000	1.10
@@ -1,5 +1,10 @@
+2004-09-23  Bob Koninckx <bob.koninckx@o-3s.com>
+	* src/ec555.S: Updated memory controller settings for ethernet card. Now
+	it also works for redboot running out of internal FLASH, and with longer
+	system bus.
+
 2004-04-19  Bob Koninckx <bob.koninckx@o-3s.com>
 	
 	* src/ec555.S: Corrected typo in initialisation of SYPCR to make sure
 	watchdog no longer ticks when FREEZE is asserted. Changed initialisation
 	of TBSCR to make sure timebase continues ticking when FREEZE is
Index: packages/hal/powerpc/ec555//current/cdl/hal_powerpc_ec555.cdl
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/cdl/hal_powerpc_ec555.cdl,v
retrieving revision 1.1.1.3
retrieving revision 1.2
diff -u -5 -r1.1.1.3 -r1.2
Index: packages/hal/powerpc/ec555//current/include/plf_intr.h
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/include/plf_intr.h,v
retrieving revision 1.1.1.2
retrieving revision 1.2
diff -u -5 -r1.1.1.2 -r1.2
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_f02_s01_ram.h
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/include/pkgconf/mlt_powerpc_ec555_f02_s01_ram.h,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -5 -r1.1.1.1 -r1.2
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_f02_s01_ram.ldi
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/include/pkgconf/mlt_powerpc_ec555_f02_s01_ram.ldi,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -5 -r1.1.1.1 -r1.2
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_f02_s01_rom.h
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/include/pkgconf/mlt_powerpc_ec555_f02_s01_rom.h,v
retrieving revision 1.1.1.1
retrieving revision 1.1
diff -u -5 -r1.1.1.1 -r1.1
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_f02_s01_rom.ldi
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/include/pkgconf/mlt_powerpc_ec555_f02_s01_rom.ldi,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -5 -r1.1.1.1 -r1.2
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_f04_s02_ram.h
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/include/pkgconf/mlt_powerpc_ec555_f04_s02_ram.h,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -5 -r1.1.1.1 -r1.2
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_f04_s02_ram.ldi
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/include/pkgconf/mlt_powerpc_ec555_f04_s02_ram.ldi,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -5 -r1.1.1.1 -r1.2
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_f04_s02_rom.h
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/include/pkgconf/mlt_powerpc_ec555_f04_s02_rom.h,v
retrieving revision 1.1.1.1
retrieving revision 1.1
diff -u -5 -r1.1.1.1 -r1.1
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_f04_s02_rom.ldi
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/include/pkgconf/mlt_powerpc_ec555_f04_s02_rom.ldi,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -5 -r1.1.1.1 -r1.2
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_f08_s04_ram.h
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/include/pkgconf/mlt_powerpc_ec555_f08_s04_ram.h,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -5 -r1.1.1.1 -r1.2
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_f08_s04_ram.ldi
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/include/pkgconf/mlt_powerpc_ec555_f08_s04_ram.ldi,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -5 -r1.1.1.1 -r1.2
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_f08_s04_rom.h
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/include/pkgconf/mlt_powerpc_ec555_f08_s04_rom.h,v
retrieving revision 1.1.1.1
retrieving revision 1.1
diff -u -5 -r1.1.1.1 -r1.1
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_f08_s04_rom.ldi
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/include/pkgconf/mlt_powerpc_ec555_f08_s04_rom.ldi,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -5 -r1.1.1.1 -r1.2
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_f08_s08_ram.h
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/include/pkgconf/mlt_powerpc_ec555_f08_s08_ram.h,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -5 -r1.1.1.1 -r1.2
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_f08_s08_ram.ldi
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/include/pkgconf/mlt_powerpc_ec555_f08_s08_ram.ldi,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -5 -r1.1.1.1 -r1.2
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_f08_s08_rom.h
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/include/pkgconf/mlt_powerpc_ec555_f08_s08_rom.h,v
retrieving revision 1.1.1.1
retrieving revision 1.1
diff -u -5 -r1.1.1.1 -r1.1
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_f08_s08_rom.ldi
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/include/pkgconf/mlt_powerpc_ec555_f08_s08_rom.ldi,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -5 -r1.1.1.1 -r1.2
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_ram.h
===================================================================
RCS file: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_ram.h
diff -N packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_ram.h
--- packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_ram.h	7 Jun 2003 09:01:35 -0000	1.1.1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,48 +0,0 @@
-// eCos memory layout - Fri Oct 20 10:25:48 2000
-
-// This is a generated file - do not edit
-
-#ifndef __ASSEMBLER__
-#include <cyg/infra/cyg_type.h>
-#include <stddef.h>
-#endif
-
-#define CYGMEM_REGION_rom         (0x000000)
-#define CYGMEM_REGION_rom_SIZE    (0x06ffff)
-#define CYGMEM_REGION_rom_ATTR    (CYGMEM_REGION_ATTR_RO)
-
-#define CYGMEM_REGION_ram         (0x400000)
-#define CYGMEM_REGION_ram_SIZE    (0x0fffff)
-#define CYGMEM_REGION_ram_ATTR    (CYGMEM_REGION_ATTR_R | CYGMEM_REGION_ATTR_W)
-
-#define CYGMEM_REGION_iram        (0x3f9800)
-#define CYGMEM_REGION_iram_SIZE   (0x006800)
-#define CYGMEM_REGION_iram_ATTR   (CYGMEM_REGION_ATTR_R | CYGMEM_REGION_ATTR_W)
-
-#define CYGMEM_REGION_eflash      (0x800000)
-#define CYGMEM_REGION_eflash_SIZE (0x1fffff)
-#define CYGMEM_REGION_eflash_ATTR (CYGMEM_REGION_ATTR_RO)
-
-#ifndef __ASSEMBLER__
-extern char CYG_LABEL_NAME (__reserved_vectors) [];
-#endif
-#define CYGMEM_SECTION_reserved_vectors (CYG_LABEL_NAME (__reserved_vectors))
-#define CYGMEM_SECTION_reserved_vectors_SIZE (0x2000)
-
-#ifndef __ASSEMBLER__
-extern char CYG_LABEL_NAME (__reserved_vsr_table) [];
-#endif
-#define CYGMEM_SECTION_reserved_vsr_table (CYG_LABEL_NAME (__reserved_vsr_table))
-#define CYGMEM_SECTION_reserved_vsr_table_SIZE (0x200)
-
-#ifndef __ASSEMBLER__
-extern char CYG_LABEL_NAME (__reserved_virtual_table) [];
-#endif
-#define CYGMEM_SECTION_reserved_virtual_table (CYG_LABEL_NAME (__reserved_virtual_table))
-#define CYGMEM_SECTION_reserved_virtual_table_SIZE (0x100)
-
-#ifndef __ASSEMBLER__
-extern char CYG_LABEL_NAME (__heap1) [];
-#endif
-#define CYGMEM_SECTION_heap1 (CYG_LABEL_NAME (__heap1))
-#define CYGMEM_SECTION_heap1_SIZE (0x00500000 - (size_t) CYG_LABEL_NAME (__heap1))
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_ram.ldi
===================================================================
RCS file: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_ram.ldi
diff -N packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_ram.ldi
--- packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_ram.ldi	7 Jun 2003 09:01:35 -0000	1.1.1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,35 +0,0 @@
-
-#include <cyg/infra/cyg_type.inc>
-
-MEMORY
-{
-  rom          : ORIGIN = 0x00000000, LENGTH = 0x0006ffff   /* internal flash */
-  ram(WA)      : ORIGIN = 0x00400000, LENGTH = 0x000fffff   /* external RAM   */
-  iram(WA)     : ORIGIN = 0x003f9800, LENGTH = 0x00006800   /* internal RAM   */
-  eflash(RXIW) : ORIGIN = 0x00800000, LENGTH = 0x001fffff   /* external FLASH */
-}
-
-SECTIONS
-{
-    SECTIONS_BEGIN
-    CYG_LABEL_DEFN(__reserved_vectors) = 0x00000000; 
-
-    . = 0x3f9800;
-    CYG_LABEL_DEFN(__reserved_vsr_table) = ALIGN (0x10); 
-    . = CYG_LABEL_DEFN(__reserved_vsr_table) + 0x200;
-    CYG_LABEL_DEFN(__reserved_virtual_table) = ALIGN (0x10); 
-    . = 0x00400000;
-
-    SECTION_vectors          (ram, 0x00400000,  LMA_EQ_VMA)
-    SECTION_text             (ram, ALIGN (0x4), LMA_EQ_VMA)
-    SECTION_fini             (ram, ALIGN (0x4), LMA_EQ_VMA)
-    SECTION_rodata1          (ram, ALIGN (0x8), LMA_EQ_VMA)
-    SECTION_rodata           (ram, ALIGN (0x8), LMA_EQ_VMA)
-    SECTION_fixup            (ram, ALIGN (0x4), LMA_EQ_VMA)
-    SECTION_gcc_except_table (ram, ALIGN (0x1), LMA_EQ_VMA)
-    SECTION_data             (ram, ALIGN (0x8), LMA_EQ_VMA)
-    SECTION_sbss             (ram, ALIGN (0x4), LMA_EQ_VMA)
-    SECTION_bss              (ram, ALIGN (0x10), LMA_EQ_VMA)
-    CYG_LABEL_DEFN(__heap1) = ALIGN (0x8);
-    SECTIONS_END
-}
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_rom.h
===================================================================
RCS file: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_rom.h
diff -N packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_rom.h
--- packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_rom.h	7 Jun 2003 09:01:35 -0000	1.1.1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,48 +0,0 @@
-// eCos memory layout - Fri Oct 20 10:25:48 2000
-
-// This is a generated file - do not edit
-
-#ifndef __ASSEMBLER__
-#include <cyg/infra/cyg_type.h>
-#include <stddef.h>
-#endif
-
-#define CYGMEM_REGION_rom         (0x000000)
-#define CYGMEM_REGION_rom_SIZE    (0x06ffff)
-#define CYGMEM_REGION_rom_ATTR    (CYGMEM_REGION_ATTR_RO)
-
-#define CYGMEM_REGION_ram         (0x400000)
-#define CYGMEM_REGION_ram_SIZE    (0x0fffff)
-#define CYGMEM_REGION_ram_ATTR    (CYGMEM_REGION_ATTR_R | CYGMEM_REGION_ATTR_W)
-
-#define CYGMEM_REGION_iram        (0x3f9800)
-#define CYGMEM_REGION_iram_SIZE   (0x006800)
-#define CYGMEM_REGION_iram_ATTR   (CYGMEM_REGION_ATTR_R | CYGMEM_REGION_ATTR_W)
-
-#define CYGMEM_REGION_eflash      (0x800000)
-#define CYGMEM_REGION_eflash_SIZE (0x1fffff)
-#define CYGMEM_REGION_eflash_ATTR (CYGMEM_REGION_ATTR_RO)
-
-#ifndef __ASSEMBLER__
-extern char CYG_LABEL_NAME (__reserved_vectors) [];
-#endif
-#define CYGMEM_SECTION_reserved_vectors (CYG_LABEL_NAME (__reserved_vectors))
-#define CYGMEM_SECTION_reserved_vectors_SIZE (0x2000)
-
-#ifndef __ASSEMBLER__
-extern char CYG_LABEL_NAME (__reserved_vsr_table) [];
-#endif
-#define CYGMEM_SECTION_reserved_vsr_table (CYG_LABEL_NAME (__reserved_vsr_table))
-#define CYGMEM_SECTION_reserved_vsr_table_SIZE (0x200)
-
-#ifndef __ASSEMBLER__
-extern char CYG_LABEL_NAME (__reserved_virtual_table) [];
-#endif
-#define CYGMEM_SECTION_reserved_virtual_table (CYG_LABEL_NAME (__reserved_virtual_table))
-#define CYGMEM_SECTION_reserved_virtual_table_SIZE (0x100)
-
-#ifndef __ASSEMBLER__
-extern char CYG_LABEL_NAME (__heap1) [];
-#endif
-#define CYGMEM_SECTION_heap1 (CYG_LABEL_NAME (__heap1))
-#define CYGMEM_SECTION_heap1_SIZE (0x00500000 - (size_t) CYG_LABEL_NAME (__heap1))
Index: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_rom.ldi
===================================================================
RCS file: packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_rom.ldi
diff -N packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_rom.ldi
--- packages/hal/powerpc/ec555//current/include/pkgconf/mlt_powerpc_ec555_rom.ldi	7 Jun 2003 09:01:35 -0000	1.1.1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,41 +0,0 @@
-
-#include <cyg/infra/cyg_type.inc>
-
-MEMORY
-{
-  rom          : ORIGIN = 0x00000000, LENGTH = 0x0006ffff   /* internal flash */
-  ram(WA)      : ORIGIN = 0x00400000, LENGTH = 0x000fffff   /* external RAM   */
-  iram(WA)     : ORIGIN = 0x003f9800, LENGTH = 0x00006800   /* internal RAM   */
-  eflash(RXIW) : ORIGIN = 0x00800000, LENGTH = 0x001fffff   /* external FLASH */
-}
-
-SECTIONS
-{
-    SECTIONS_BEGIN
-
-    CYG_LABEL_DEFN(__reserved_vectors) = 0x00000000;
-
-    SECTION_vectors          (rom, 0x00000000,   LMA_EQ_VMA)
-    SECTION_text             (rom, ALIGN (0x4),  LMA_EQ_VMA)
-    SECTION_fini             (rom, ALIGN (0x8),  LMA_EQ_VMA)
-    SECTION_rodata1          (rom, ALIGN (0x8),  LMA_EQ_VMA)
-    SECTION_rodata           (rom, ALIGN (0x4),  LMA_EQ_VMA)
-    SECTION_fixup            (rom, ALIGN (0x4),  LMA_EQ_VMA)
-    SECTION_gcc_except_table (rom, ALIGN (0x1),  LMA_EQ_VMA)
-
-    . = 0x3f9800;
-    CYG_LABEL_DEFN(__reserved_vsr_table) = ALIGN (0x10);
-    . = CYG_LABEL_DEFN(__reserved_vsr_table) + 0x200;
-    CYG_LABEL_DEFN(__reserved_virtual_table) = ALIGN (0x10);
-    . = CYG_LABEL_DEFN(__reserved_virtual_table) + 0x100;
-
-    SECTION_data             (iram, ALIGN (0x10), FOLLOWING (.gcc_except_table))
-    SECTION_sbss             (iram, ALIGN (0x4),  LMA_EQ_VMA)
-    SECTION_bss              (iram, ALIGN (0x10), LMA_EQ_VMA)
-
-    . = 0x400000;
-
-    CYG_LABEL_DEFN(__heap1) = ALIGN(0x8);
-
-    SECTIONS_END
-}
Index: packages/hal/powerpc/ec555//current/src/ec555.S
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/src/ec555.S,v
retrieving revision 1.1.1.3
retrieving revision 1.6
diff -u -5 -r1.1.1.3 -r1.6
--- packages/hal/powerpc/ec555//current/src/ec555.S	12 May 2004 19:28:47 -0000	1.1.1.3
+++ packages/hal/powerpc/ec555//current/src/ec555.S	23 Sep 2004 19:03:02 -0000	1.6
@@ -164,11 +164,11 @@
 
 #ifdef CYGPKG_DEVS_ETH_POWERPC_EC555
 #if   (CYGNUM_DEVS_ETH_POWERPC_EC555_ETH0_CS == 2)
         lwi     r4, (EC555_CS2_BASE_ADDRESS | 0x00000803)
         stw     r4, (CYGARC_REG_IMM_BR2-CYGARC_REG_IMM_BASE)(r3)
-        lwi     r4, 0xffff8e60
+        lwi     r4, 0xffff8ca0
         stw     r4, (CYGARC_REG_IMM_OR2-CYGARC_REG_IMM_BASE)(r3)
 
         lwi     r4, EC555_CS3_BASE_ADDRESS
         stw     r4, (CYGARC_REG_IMM_BR3-CYGARC_REG_IMM_BASE)(r3)
         lwi     r4, EC555_CS3_ADDRESS_MASK
@@ -179,11 +179,11 @@
         lwi     r4, EC555_CS2_ADDRESS_MASK
         stw     r4, (CYGARC_REG_IMM_OR2-CYGARC_REG_IMM_BASE)(r3)
 
         lwi     r4, (EC555_CS3_BASE_ADDRESS | 0x00000803)
         stw     r4, (CYGARC_REG_IMM_BR3-CYGARC_REG_IMM_BASE)(r3)
-        lwi     r4, 0xffff8e60
+        lwi     r4, 0xffff8ca0
         stw     r4, (CYGARC_REG_IMM_OR3-CYGARC_REG_IMM_BASE)(r3)
 #else
 #error "Invalid chip select for ethernet card specified"
 #endif
 #else
Index: packages/hal/powerpc/ec555//current/src/hal_diag.c
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/src/hal_diag.c,v
retrieving revision 1.1.1.2
retrieving revision 1.2
diff -u -5 -r1.1.1.2 -r1.2
Index: packages/hal/powerpc/ec555//current/src/plf_misc.c
===================================================================
RCS file: /cvs/o3s/software/ecos/packages/hal/powerpc/ec555/current/src/plf_misc.c,v
retrieving revision 1.1.1.1
retrieving revision 1.4
diff -u -5 -r1.1.1.1 -r1.4
--- packages/hal/powerpc/ec555//current/src/plf_misc.c	7 Jun 2003 09:01:35 -0000	1.1.1.1
+++ packages/hal/powerpc/ec555//current/src/plf_misc.c	23 Sep 2004 19:04:31 -0000	1.4
@@ -49,10 +49,11 @@
 //####DESCRIPTIONEND####
 //
 //=============================================================================
 
 #include <pkgconf/hal.h>
+#include <pkgconf/system.h>
 #include <cyg/hal/hal_mem.h>            // HAL memory definitions
 #include <cyg/hal/hal_if.h>             // hal_if_init
 
 #include <cyg/hal/hal_io.h>             // IO macros
 #include <cyg/hal/hal_intr.h>           // interrupt vectors
@@ -71,9 +72,15 @@
 {  
   hal_if_init();
 
 #if defined CYGSEM_HAL_VIRTUAL_VECTOR_DIAG  
   HAL_DIAG_INIT();
+#endif
+
+#ifdef CYGPKG_DEVS_ETH_POWERPC_EC555
+  // Give the CS8900a chip a chance to complete its self-test. Cirrus prescribes
+  // 10 milliseconds, so 20 should be safe
+  HAL_DELAY_US(20000);
 #endif
 }
 
 // EOF plf_misc.c

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