diff --git a/drivers/net/cs89x0.c b/drivers/net/cs89x0.c
index 494c71e05c82ad29f7f47f9576948e6392ddf077..a7ef8a66ba0f7b8a5081b2b4d9898f84a4f993c4 100644
--- a/drivers/net/cs89x0.c
+++ b/drivers/net/cs89x0.c
@@ -353,8 +353,7 @@ writeword(unsigned long base_addr, int portno, int value)
 {
 	__raw_writel((u16)value, base_addr + (portno << 1));
 }
-#else
-#if defined(CONFIG_ARCH_PNX010X)
+#elif defined(CONFIG_ARCH_PNX010X)
 static int
 readword(unsigned long base_addr, int portno)
 {
@@ -379,7 +378,6 @@ writeword(unsigned long base_addr, int portno, int value)
 	outw(value, base_addr + portno);
 }
 #endif
-#endif
 
 static void
 readwords(unsigned long base_addr, int portno, void *buf, int length)