SMC_WRITE_EEPROM_CMD macro is wrong

Signed-off-by: Bora Sahin <[EMAIL PROTECTED]>

Index: linux-2.6.18-rc4/drivers/net/smc911x.h
===================================================================
--- linux-2.6.18-rc4.orig/drivers/net/smc911x.h 2006-08-06 21:20:11.000000000 
+0300
+++ linux-2.6.18-rc4/drivers/net/smc911x.h      2006-08-24 12:23:10.000000000 
+0300
@@ -827,9 +828,13 @@
 
 #define SMC_WRITE_EEPROM_CMD(cmd, addr)                                        
\
        do {                                                            \
-               while (SMC_GET_E2P_CMD() & MAC_CSR_CMD_CSR_BUSY_);      \
-               SMC_SET_MAC_CMD(MAC_CSR_CMD_R_NOT_W_ | a );             \
-               while (SMC_GET_MAC_CMD() & MAC_CSR_CMD_CSR_BUSY_);      \
+               while (SMC_GET_E2P_CMD() & E2P_CMD_EPC_BUSY_)           \
+                       cpu_relax();                                    \
+               SMC_SET_E2P_DATA((v) & 0xFF);                           \
+               SMC_SET_E2P_CMD(E2P_CMD_EPC_BUSY_ |                     \
+                               (cmd) << 28 | ((addr) & 0xFF));         \
+               while (SMC_GET_E2P_CMD() & E2P_CMD_EPC_BUSY_)           \
+                       cpu_relax();                                    \
        } while (0)
 
 #endif  /* _SMC911X_H_ */
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to