changeset 1490:d606c80a8421

Add support for FCC3. Also, no link is only an error when building RedBoot.
author gthomas
date Mon, 09 Feb 2004 20:32:49 +0000
parents 0418d60dd8fb
children ab4a708d689e
files packages/devs/eth/powerpc/fcc/current/ChangeLog packages/devs/eth/powerpc/fcc/current/src/fcc.h packages/devs/eth/powerpc/fcc/current/src/if_fcc.c
diffstat 3 files changed, 15 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/packages/devs/eth/powerpc/fcc/current/ChangeLog
+++ b/packages/devs/eth/powerpc/fcc/current/ChangeLog
@@ -9,6 +9,12 @@ 2004-02-03  Christoph Csebits <christoph
         * 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.
--- a/packages/devs/eth/powerpc/fcc/current/src/fcc.h
+++ b/packages/devs/eth/powerpc/fcc/current/src/fcc.h
@@ -56,6 +56,7 @@
 // The port connected to the ethernet
 #define FCC1  0
 #define FCC2  1
+#define FCC3  2
 
 /* ------------------------ */
 /* FCC REGISTER CONSTANTS   */
@@ -106,6 +107,7 @@
 #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    */
--- a/packages/devs/eth/powerpc/fcc/current/src/if_fcc.c
+++ b/packages/devs/eth/powerpc/fcc/current/src/if_fcc.c
@@ -174,6 +174,11 @@ fcc_eth_init(struct cyg_netdevtab_entry 
         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;
@@ -331,7 +336,9 @@ fcc_eth_init(struct cyg_netdevtab_entry 
         }
     } else {
         os_printf("/***NO LINK***\n");
+#ifdef CYGPKG_REDBOOT
         return false;
+#endif
     }
     os_printf("\n");