Patch by Robert Schwebel, April 02, 2003:
fix for SMSC91111 driver
diff --git a/drivers/smc91111.h b/drivers/smc91111.h
index a372c27..3ac0a03 100644
--- a/drivers/smc91111.h
+++ b/drivers/smc91111.h
@@ -80,7 +80,7 @@
 #define	SMC_inw(r) 	(*((volatile word *)(SMC_BASE_ADDRESS+(r))))
 #define SMC_inb(p)	({ \
 	unsigned int __p = (unsigned int)(SMC_BASE_ADDRESS + (p)); \
-	unsigned int __v = *(volatile unsigned short *)((SMC_BASE_ADDRESS + __p) & ~1); \
+	unsigned int __v = *(volatile unsigned short *)((__p) & ~1); \
 	if (__p & 1) __v >>= 8; \
 	else __v &= 0xff; \
 	__v; })