diff options
author | Paul Mundt <lethal@linux-sh.org> | 2007-06-01 04:36:48 -0400 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2007-06-03 11:44:21 -0400 |
commit | 6026ee67eda769122be535e8f05be438dfdcb29a (patch) | |
tree | 2a6cad5a95a4d8d7dc8f780e6a5bdb725ea51eee /drivers/net | |
parent | 416b5d10afdc797c21c457ade3714e8f2f75edd9 (diff) |
smc91x: sh solution engine fixes.
The current smc91x I/O routines ifdef the solution engine subtypes
individually, which is rather bogus, as they can simply use
CONFIG_SOLUTION_ENGINE instead. This fixes it for some of the other
solution engines that weren't included in the ifdef list (SH7206
specifically).
There are also inb/outb definitions which are totally bogus (missing
brackets in _both_ cases, SMC_CAN_USE_8BIT == 0, and even better, they
try to use a 16-bit access to fake 8-bit access). Kill that nonsense off
completely.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
--
drivers/net/smc91x.h | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/smc91x.h | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/net/smc91x.h b/drivers/net/smc91x.h index 111f23d05764..506bffcbc6dc 100644 --- a/drivers/net/smc91x.h +++ b/drivers/net/smc91x.h | |||
@@ -281,17 +281,14 @@ SMC_outw(u16 val, void __iomem *ioaddr, int reg) | |||
281 | 281 | ||
282 | #elif defined(CONFIG_SUPERH) | 282 | #elif defined(CONFIG_SUPERH) |
283 | 283 | ||
284 | #if defined(CONFIG_SH_7780_SOLUTION_ENGINE) || defined(CONFIG_SH_7722_SOLUTION_ENGINE) | 284 | #ifdef CONFIG_SOLUTION_ENGINE |
285 | #define SMC_CAN_USE_8BIT 0 | 285 | #define SMC_CAN_USE_8BIT 0 |
286 | #define SMC_CAN_USE_16BIT 1 | 286 | #define SMC_CAN_USE_16BIT 1 |
287 | #define SMC_CAN_USE_32BIT 0 | 287 | #define SMC_CAN_USE_32BIT 0 |
288 | #define SMC_IO_SHIFT 0 | 288 | #define SMC_IO_SHIFT 0 |
289 | #define SMC_NOWAIT 1 | 289 | #define SMC_NOWAIT 1 |
290 | 290 | ||
291 | #define SMC_inb(a, r) (inw((a) + ((r)&~1)) >> (8*(r%2)))&0xff | ||
292 | #define SMC_inw(a, r) inw((a) + (r)) | 291 | #define SMC_inw(a, r) inw((a) + (r)) |
293 | #define SMC_outb(v, a, r) outw(((inw((a)+((r)&~1))*(0xff<<8*(r%2)))) | ((v)<<(8*(r&2)))), (a) + ((r)&~1)) | ||
294 | |||
295 | #define SMC_outw(v, a, r) outw(v, (a) + (r)) | 292 | #define SMC_outw(v, a, r) outw(v, (a) + (r)) |
296 | #define SMC_insw(a, r, p, l) insw((a) + (r), p, l) | 293 | #define SMC_insw(a, r, p, l) insw((a) + (r), p, l) |
297 | #define SMC_outsw(a, r, p, l) outsw((a) + (r), p, l) | 294 | #define SMC_outsw(a, r, p, l) outsw((a) + (r), p, l) |