2008-06-16 15:40:48 +03:00
|
|
|
--- a/drivers/misc/eeprom_93cx6.c
|
|
|
|
+++ b/drivers/misc/eeprom_93cx6.c
|
|
|
|
@@ -39,14 +39,26 @@
|
2007-10-01 11:45:39 +03:00
|
|
|
{
|
|
|
|
eeprom->reg_data_clock = 1;
|
|
|
|
eeprom->register_write(eeprom);
|
2008-04-10 11:45:31 +03:00
|
|
|
- udelay(1);
|
2007-10-01 11:45:39 +03:00
|
|
|
+
|
|
|
|
+ /*
|
|
|
|
+ * Add a short delay for the pulse to work.
|
2008-04-10 11:45:31 +03:00
|
|
|
+ * According to the specifications the "maximum minimum"
|
|
|
|
+ * time should be 450ns.
|
2007-10-01 11:45:39 +03:00
|
|
|
+ */
|
2008-04-10 11:45:31 +03:00
|
|
|
+ ndelay(450);
|
2007-10-01 11:45:39 +03:00
|
|
|
}
|
|
|
|
|
2008-04-10 11:45:31 +03:00
|
|
|
static inline void eeprom_93cx6_pulse_low(struct eeprom_93cx6 *eeprom)
|
2007-10-01 11:45:39 +03:00
|
|
|
{
|
|
|
|
eeprom->reg_data_clock = 0;
|
|
|
|
eeprom->register_write(eeprom);
|
2008-04-10 11:45:31 +03:00
|
|
|
- udelay(1);
|
2007-10-01 11:45:39 +03:00
|
|
|
+
|
|
|
|
+ /*
|
|
|
|
+ * Add a short delay for the pulse to work.
|
|
|
|
+ * According to the specifications the "maximum minimum"
|
|
|
|
+ * time should be 450ns.
|
2008-04-10 11:45:31 +03:00
|
|
|
+ */
|
2007-10-01 11:45:39 +03:00
|
|
|
+ ndelay(450);
|
|
|
|
}
|
|
|
|
|
|
|
|
static void eeprom_93cx6_startup(struct eeprom_93cx6 *eeprom)
|