This is the mail archive of the
ecos-patches@sources.redhat.com
mailing list for the eCos project.
FCC - handle FCC3
- From: Gary Thomas <gary at mlbassoc dot com>
- To: eCos patches <ecos-patches at ecos dot sourceware dot org>
- Date: Mon, 09 Feb 2004 13:33:47 -0700
- Subject: FCC - handle FCC3
- Organization: MLB Associates
Submitted by Tiphaine Billoir
--
Gary Thomas <gary@mlbassoc.com>
MLB Associates
Index: devs/eth/powerpc/fcc/current/ChangeLog
===================================================================
RCS file: /misc/cvsfiles/ecos/packages/devs/eth/powerpc/fcc/current/ChangeLog,v
retrieving revision 1.8
diff -u -5 -p -r1.8 ChangeLog
--- devs/eth/powerpc/fcc/current/ChangeLog 4 Feb 2004 15:03:31 -0000 1.8
+++ devs/eth/powerpc/fcc/current/ChangeLog 9 Feb 2004 20:31:40 -0000
@@ -7,10 +7,16 @@
2004-02-03 Christoph Csebits <christoph.csebits@frequentis.com>
* src/if_fcc.c (fcc_eth_can_send): Fix: check also if
buffer was freed by the upper layer (txdone was called).
+2004-01-15 Tiphaine Billoir <tbilloir@elios-informatique.fr>
+
+ * src/if_fcc.c:
+ * src/fcc.h: Add support for FFC3. Only treat "link not found"
+ as an error when building for RedBoot.
+
2003-11-07 Gary Thomas <gary@mlbassoc.com>
* src/if_fcc.c (fcc_eth_init): Improve messages, add device name.
2003-10-02 Gary Thomas <gary@mlbassoc.com>
Index: devs/eth/powerpc/fcc/current/src/fcc.h
===================================================================
RCS file: /misc/cvsfiles/ecos/packages/devs/eth/powerpc/fcc/current/src/fcc.h,v
retrieving revision 1.2
diff -u -5 -p -r1.2 fcc.h
--- devs/eth/powerpc/fcc/current/src/fcc.h 4 Feb 2004 15:03:31 -0000 1.2
+++ devs/eth/powerpc/fcc/current/src/fcc.h 9 Feb 2004 20:30:08 -0000
@@ -54,10 +54,11 @@
#include <pkgconf/devs_eth_powerpc_fcc.h>
// The port connected to the ethernet
#define FCC1 0
#define FCC2 1
+#define FCC3 2
/* ------------------------ */
/* FCC REGISTER CONSTANTS */
/* ------------------------ */
@@ -104,10 +105,11 @@
#define FCC_MIN_FLR 64 // Min frame length
#define FCC_PRAM_PAD_CH 0x8888
#define FCC_PRAM_MAXD 1520
#define FCC1_PRAM_OFFSET 0x8400 // Offset of t_Fcc_Pram in 82xx
#define FCC2_PRAM_OFFSET 0x8500 // Offset of t_Fcc_Pram in 82xx
+#define FCC3_PRAM_OFFSET 0x8600 // Offset of t_Fcc_Pram in 82xx
/* ------------------------------ */
/* BUFFER DESCRIPTOR CONSTANTS */
/* ------------------------------ */
#define FCC_BD_Rx_Empty 0x8000 // Buffer is empty, FCC can fill
Index: devs/eth/powerpc/fcc/current/src/if_fcc.c
===================================================================
RCS file: /misc/cvsfiles/ecos/packages/devs/eth/powerpc/fcc/current/src/if_fcc.c,v
retrieving revision 1.6
diff -u -5 -p -r1.6 if_fcc.c
--- devs/eth/powerpc/fcc/current/src/if_fcc.c 4 Feb 2004 15:03:31 -0000 1.6
+++ devs/eth/powerpc/fcc/current/src/if_fcc.c 9 Feb 2004 20:30:08 -0000
@@ -172,10 +172,15 @@ fcc_eth_init(struct cyg_netdevtab_entry
case CYGNUM_HAL_INTERRUPT_FCC2:
qi->fcc_reg = &(IMM->fcc_regs[FCC2]);
fcc = (volatile t_Fcc_Pram *)((unsigned long)IMM + FCC2_PRAM_OFFSET);
fcc_chan = FCC2_PAGE_SUBBLOCK;
break;
+ case CYGNUM_HAL_INTERRUPT_FCC3:
+ qi->fcc_reg = &(IMM->fcc_regs[FCC3]);
+ fcc = (volatile t_Fcc_Pram *)((unsigned long)IMM + FCC3_PRAM_OFFSET);
+ fcc_chan = FCC3_PAGE_SUBBLOCK;
+ break;
default:
os_printf("Can't initialize '%s' - unknown FCC!\n", dtp->name);
return false;
}
@@ -329,11 +334,13 @@ fcc_eth_init(struct cyg_netdevtab_entry
// Assume 10Mb, half duplex
os_printf("10Mb");
}
} else {
os_printf("/***NO LINK***\n");
+#ifdef CYGPKG_REDBOOT
return false;
+#endif
}
os_printf("\n");
// Initialize upper level driver for ecos