Changeset 1402d56a in rtems
- Timestamp:
- 05/21/04 15:18:14 (19 years ago)
- Branches:
- 4.10, 4.11, 4.8, 4.9, 5, master
- Children:
- 4dbbcb7
- Parents:
- e649222
- Location:
- c/src
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
c/src/ChangeLog
re649222 r1402d56a 1 2004-05-21 Till Strauman <strauman@slac.stanford.edu> 2 3 * PR/625/networking 4 * libchip/network/dec21140.c, ... : Prevent name clashes by making 5 'ld_le32()' etc. static inlines. Let dec21140 attach routine return 6 an error rather than panic if no chip is detected (thus allowing 7 for probing). 8 * libchip/network/elnk.c: Let elnk bail out if autoneg never completes 9 instead of looping forever. Avoid divide by zero (crashed my PC). 10 * libchip/network/if_fxp.c: Enable more fxp chip variants but warn that 11 they are UNTESTED. 12 1 13 2004-05-10 Ralf Corsepius <ralf_corsepius@rtems.org> 2 14 -
c/src/libchip/network/dec21140.c
re649222 r1402d56a 245 245 #define CPU_CACHE_ALIGNMENT_FOR_BUFFER PG_SIZE 246 246 247 inline void st_le32(volatile uint32_t *addr, uint32_t value)247 static inline void st_le32(volatile uint32_t *addr, uint32_t value) 248 248 { 249 249 *(addr)=value ; 250 250 } 251 251 252 inline uint32_t ld_le32(volatile uint32_t *addr)252 static inline uint32_t ld_le32(volatile uint32_t *addr) 253 253 { 254 254 return(*addr); … … 1063 1063 printk( "DEC/Intel 21143 PCI network card found\n" ); 1064 1064 else 1065 rtems_panic("DEC PCI network card not found !!\n"); 1065 { 1066 printk("No DEC/Intel 21140/3 PCI network card found !!\n"); 1067 return 0; 1068 } 1066 1069 } 1067 1070 #endif -
c/src/libchip/network/elnk.c
re649222 r1402d56a 206 206 #define CPU_CACHE_ALIGNMENT_FOR_BUFFER PG_SIZE 207 207 208 inline void st_le32(volatile uint32_t *addr, uint32_t value)208 static inline void st_le32(volatile uint32_t *addr, uint32_t value) 209 209 { 210 210 *(addr)=value ; 211 211 } 212 212 213 inline uint32_t ld_le32(volatile uint32_t *addr)213 static inline uint32_t ld_le32(volatile uint32_t *addr) 214 214 { 215 215 return(*addr); … … 2671 2671 xl_miibus_writereg(sc, 0x18, MII_BMCR, BMCR_STARTNEG | BMCR_AUTOEN ); 2672 2672 2673 while( ((sr = xl_miibus_readreg(sc, 0x18, MII_BMSR)) & BMSR_ACOMP) == 0 ); 2673 for (i=0; ((sr = xl_miibus_readreg(sc, 0x18, MII_BMSR)) & BMSR_ACOMP) == 0 && i < 20; i++) 2674 DELAY(10000); 2674 2675 } 2675 2676 … … 2999 3000 sc->xl_stats.device_interrupts, 3000 3001 sc->xl_stats.txcomplete_ints, 3001 (totalLengths / numLengths));3002 numLengths ? (totalLengths / numLengths) : -1 ); 3002 3003 } 3003 3004 … … 3121 3122 int pbus,pdev,pfun, vid, did, tindex; 3122 3123 }; 3123 3124 3125 3124 3126 3125 /* -
c/src/libchip/network/if_fxp.c
re649222 r1402d56a 183 183 u_int16_t devid; 184 184 char *name; 185 int warn; 185 186 }; 187 188 #define UNTESTED 1 186 189 187 190 /* … … 192 195 */ 193 196 static struct fxp_ident fxp_ident_table[] = { 194 #ifdef NOTUSED 195 /* currently untested */ 196 { 0x1229, "Intel Pro 10/100B/100+ Ethernet" }, 197 { 0x2449, "Intel Pro/100 Ethernet" }, 198 #endif 199 { 0x1209, "Intel Embedded 10/100 Ethernet" }, 200 #ifdef NOTUSED 201 /* currently untested */ 202 { 0x1029, "Intel Pro/100 Ethernet" }, 203 #endif 204 { 0x1030, "Intel Pro/100 Ethernet" }, 205 #ifdef NOTUSED 206 /* currently untested */ 207 { 0x1031, "Intel Pro/100 Ethernet" }, 208 { 0x1032, "Intel Pro/100 Ethernet" }, 209 { 0x1033, "Intel Pro/100 Ethernet" }, 210 { 0x1034, "Intel Pro/100 Ethernet" }, 211 { 0x1035, "Intel Pro/100 Ethernet" }, 212 { 0x1036, "Intel Pro/100 Ethernet" }, 213 { 0x1037, "Intel Pro/100 Ethernet" }, 214 { 0x1038, "Intel Pro/100 Ethernet" }, 215 #endif 197 { 0x1229, "Intel Pro 10/100B/100+ Ethernet", UNTESTED }, 198 { 0x2449, "Intel Pro/100 Ethernet", UNTESTED }, 199 { 0x1209, "Intel Embedded 10/100 Ethernet", 0 }, 200 { 0x1029, "Intel Pro/100 Ethernet", UNTESTED }, 201 { 0x1030, "Intel Pro/100 Ethernet", 0 }, 202 { 0x1031, "Intel Pro/100 Ethernet", UNTESTED }, 203 { 0x1032, "Intel Pro/100 Ethernet", UNTESTED }, 204 { 0x1033, "Intel Pro/100 Ethernet", UNTESTED }, 205 { 0x1034, "Intel Pro/100 Ethernet", UNTESTED }, 206 { 0x1035, "Intel Pro/100 Ethernet", UNTESTED }, 207 { 0x1036, "Intel Pro/100 Ethernet", UNTESTED }, 208 { 0x1037, "Intel Pro/100 Ethernet", UNTESTED }, 209 { 0x1038, "Intel Pro/100 Ethernet", UNTESTED }, 216 210 { 0, NULL }, 217 211 }; … … 468 462 for (j=0; fxp_ident_table[j].devid; j++ ) { 469 463 i = pcib_find_by_devid( 0x8086, 470 471 472 464 fxp_ident_table[j].devid, 465 unitNumber-1, 466 &(sc->pci_signature)); 473 467 DBGLVL_PRINTK(2,"fxp_attach: find_devid returned %d " 474 468 "and pci signature 0x%x\n", 475 469 i,sc->pci_signature); 476 if (PCIB_ERR_SUCCESS == i) 477 break; 470 if (PCIB_ERR_SUCCESS == i) { 471 if ( UNTESTED == fxp_ident_table[j].warn ) { 472 device_printf(dev 473 "WARNING: this chip version has NOT been reported to work under RTEMS yet.\n"); 474 device_printf(dev, 475 " If it works OK, report it as tested in 'c/src/libchip/network/if_fxp.c'\n"); 476 } 477 break; 478 } 478 479 } 479 480 }
Note: See TracChangeset
for help on using the changeset viewer.