mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-26 10:49:33 +00:00
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>
This commit is contained in:
parent
416b5d10af
commit
6026ee67ed
1 changed files with 1 additions and 4 deletions
|
@ -281,17 +281,14 @@ SMC_outw(u16 val, void __iomem *ioaddr, int reg)
|
|||
|
||||
#elif defined(CONFIG_SUPERH)
|
||||
|
||||
#if defined(CONFIG_SH_7780_SOLUTION_ENGINE) || defined(CONFIG_SH_7722_SOLUTION_ENGINE)
|
||||
#ifdef CONFIG_SOLUTION_ENGINE
|
||||
#define SMC_CAN_USE_8BIT 0
|
||||
#define SMC_CAN_USE_16BIT 1
|
||||
#define SMC_CAN_USE_32BIT 0
|
||||
#define SMC_IO_SHIFT 0
|
||||
#define SMC_NOWAIT 1
|
||||
|
||||
#define SMC_inb(a, r) (inw((a) + ((r)&~1)) >> (8*(r%2)))&0xff
|
||||
#define SMC_inw(a, r) inw((a) + (r))
|
||||
#define SMC_outb(v, a, r) outw(((inw((a)+((r)&~1))*(0xff<<8*(r%2)))) | ((v)<<(8*(r&2)))), (a) + ((r)&~1))
|
||||
|
||||
#define SMC_outw(v, a, r) outw(v, (a) + (r))
|
||||
#define SMC_insw(a, r, p, l) insw((a) + (r), p, l)
|
||||
#define SMC_outsw(a, r, p, l) outsw((a) + (r), p, l)
|
||||
|
|
Loading…
Reference in a new issue