diff options
-rw-r--r-- | drivers/net/Kconfig | 2 | ||||
-rw-r--r-- | drivers/net/smc91x.h | 28 |
2 files changed, 29 insertions, 1 deletions
diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig index 7029cd50c458..0ba5b8e50a7c 100644 --- a/drivers/net/Kconfig +++ b/drivers/net/Kconfig | |||
@@ -907,7 +907,7 @@ config SMC91X | |||
907 | select CRC32 | 907 | select CRC32 |
908 | select MII | 908 | select MII |
909 | depends on ARM || REDWOOD_5 || REDWOOD_6 || M32R || SUPERH || \ | 909 | depends on ARM || REDWOOD_5 || REDWOOD_6 || M32R || SUPERH || \ |
910 | MIPS || BLACKFIN || MN10300 | 910 | MIPS || BLACKFIN || MN10300 || COLDFIRE |
911 | help | 911 | help |
912 | This is a driver for SMC's 91x series of Ethernet chipsets, | 912 | This is a driver for SMC's 91x series of Ethernet chipsets, |
913 | including the SMC91C94 and the SMC91C111. Say Y if you want it | 913 | including the SMC91C94 and the SMC91C111. Say Y if you want it |
diff --git a/drivers/net/smc91x.h b/drivers/net/smc91x.h index a6ee883d1b0e..8d2772cc42f2 100644 --- a/drivers/net/smc91x.h +++ b/drivers/net/smc91x.h | |||
@@ -344,6 +344,34 @@ static inline void LPD7_SMC_outsw (unsigned char* a, int r, | |||
344 | 344 | ||
345 | #define SMC_IRQ_FLAGS IRQF_TRIGGER_HIGH | 345 | #define SMC_IRQ_FLAGS IRQF_TRIGGER_HIGH |
346 | 346 | ||
347 | #elif defined(CONFIG_COLDFIRE) | ||
348 | |||
349 | #define SMC_CAN_USE_8BIT 0 | ||
350 | #define SMC_CAN_USE_16BIT 1 | ||
351 | #define SMC_CAN_USE_32BIT 0 | ||
352 | #define SMC_NOWAIT 1 | ||
353 | |||
354 | static inline void mcf_insw(void *a, unsigned char *p, int l) | ||
355 | { | ||
356 | u16 *wp = (u16 *) p; | ||
357 | while (l-- > 0) | ||
358 | *wp++ = readw(a); | ||
359 | } | ||
360 | |||
361 | static inline void mcf_outsw(void *a, unsigned char *p, int l) | ||
362 | { | ||
363 | u16 *wp = (u16 *) p; | ||
364 | while (l-- > 0) | ||
365 | writew(*wp++, a); | ||
366 | } | ||
367 | |||
368 | #define SMC_inw(a, r) _swapw(readw((a) + (r))) | ||
369 | #define SMC_outw(v, a, r) writew(_swapw(v), (a) + (r)) | ||
370 | #define SMC_insw(a, r, p, l) mcf_insw(a + r, p, l) | ||
371 | #define SMC_outsw(a, r, p, l) mcf_outsw(a + r, p, l) | ||
372 | |||
373 | #define SMC_IRQ_FLAGS (IRQF_DISABLED) | ||
374 | |||
347 | #else | 375 | #else |
348 | 376 | ||
349 | /* | 377 | /* |