Input: wdt87xx_i2c - fix the flash erase issue

The spec says that flash erase time is 30ms typical/200ms max, so let's
replace current 50ms wait with 200ms to avoid potential failures.

Signed-off-by: HungNien Chen <hn.chen@weidahitech.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
This commit is contained in:
HungNien Chen 2016-09-05 10:25:36 -07:00 коммит произвёл Dmitry Torokhov
Родитель de56bea05b
Коммит 4e74823322
1 изменённых файлов: 3 добавлений и 2 удалений

Просмотреть файл

@ -23,7 +23,7 @@
#include <asm/unaligned.h> #include <asm/unaligned.h>
#define WDT87XX_NAME "wdt87xx_i2c" #define WDT87XX_NAME "wdt87xx_i2c"
#define WDT87XX_DRV_VER "0.9.7" #define WDT87XX_DRV_VER "0.9.8"
#define WDT87XX_FW_NAME "wdt87xx_fw.bin" #define WDT87XX_FW_NAME "wdt87xx_fw.bin"
#define WDT87XX_CFG_NAME "wdt87xx_cfg.bin" #define WDT87XX_CFG_NAME "wdt87xx_cfg.bin"
@ -157,6 +157,7 @@
/* Controller requires minimum 300us between commands */ /* Controller requires minimum 300us between commands */
#define WDT_COMMAND_DELAY_MS 2 #define WDT_COMMAND_DELAY_MS 2
#define WDT_FLASH_WRITE_DELAY_MS 4 #define WDT_FLASH_WRITE_DELAY_MS 4
#define WDT_FLASH_ERASE_DELAY_MS 200
#define WDT_FW_RESET_TIME 2500 #define WDT_FW_RESET_TIME 2500
struct wdt87xx_sys_param { struct wdt87xx_sys_param {
@ -726,7 +727,7 @@ static int wdt87xx_write_firmware(struct i2c_client *client, const void *chunk)
break; break;
} }
msleep(50); msleep(WDT_FLASH_ERASE_DELAY_MS);
error = wdt87xx_write_data(client, data, start_addr, error = wdt87xx_write_data(client, data, start_addr,
page_size); page_size);