Skip to content

Commit

Permalink
Merge pull request #33 from atmel-maxtouch/update_cfg_HA_mod
Browse files Browse the repository at this point in the history
Modify update_fw sequence
  • Loading branch information
mgong98 authored May 5, 2023
2 parents e230abc + c580ede commit 3b226c3
Showing 1 changed file with 9 additions and 24 deletions.
33 changes: 9 additions & 24 deletions drivers/input/touchscreen/atmel_mxt_ts.c
Original file line number Diff line number Diff line change
Expand Up @@ -396,13 +396,13 @@ enum t100_type {
#define MXT_BACKUP_TIME 50 /* msec */
#define MXT_RESET_GPIO_TIME 20 /* msec */
#define MXT_RESET_INVALID_CHG 1000 /* msec */
#define MXT_RESET_TIME 200 /* msec */
#define MXT_RESET_TIME 300 /* msec */
#define MXT_RESET_TIMEOUT 3000 /* msec */
#define MXT_CRC_TIMEOUT 1000 /* msec */
#define MXT_FW_FLASH_TIME 1000 /* msec */
#define MXT_FW_RESET_TIME 3000 /* msec */
#define MXT_FW_CHG_TIMEOUT 300 /* msec */
#define MXT_BOOTLOADER_WAIT 3000 /* msec */
#define MXT_BOOTLOADER_WAIT 1000 /* msec */

/* Command to unlock bootloader */
#define MXT_UNLOCK_CMD_MSB 0xaa
Expand Down Expand Up @@ -3811,7 +3811,7 @@ static int mxt_update_cfg(struct mxt_data *data, const struct firmware *fw)
}
} else {
dev_warn(dev,
"Warning: Info CRC does not match: Error - device crc=0x%06X file=0x%06X\nFailed Config Programming\n",
"Error: Device info crc=0x%06X does not match file info crc=0x%06X\nFailed Config Programming\n",
data->info_crc, info_crc);
goto release_raw;
}
Expand Down Expand Up @@ -6336,7 +6336,7 @@ static int mxt_load_fw(struct device *dev, const char *fn)
return ret;
}

static int mxt_update_file_name (struct device *dev, char **file_name,
static int mxt_update_file_name(struct device *dev, char **file_name,
const char *buf, size_t count)
{
char *file_name_tmp;
Expand Down Expand Up @@ -6368,7 +6368,6 @@ static ssize_t mxt_update_fw_store(struct device *dev,
const char *buf, size_t count)
{
struct mxt_data *data = dev_get_drvdata(dev);
struct mxt_object *object;
char *file_name = NULL;
int error;

Expand Down Expand Up @@ -6397,10 +6396,15 @@ static ssize_t mxt_update_fw_store(struct device *dev,
dev_info(dev, "The firmware update succeeded\n");
}

/* add wait after fw load before IRQ turn on */
msleep(MXT_FW_FLASH_TIME);

mxt_update_seq_num_lock(data, true, 0x00);

error = mxt_acquire_irq(data);
if (error)
return error;

kfree(file_name);

mxt_soft_reset(data, true);
Expand All @@ -6410,18 +6414,6 @@ static ssize_t mxt_update_fw_store(struct device *dev,
if (error)
return error;

//Check for T144 object
object = mxt_get_object(data, MXT_SPT_MESSAGECOUNT_T144);

if (!object)
data->crc_enabled = false;
else
data->crc_enabled = true;

error = mxt_acquire_irq(data);
if (error)
return error;

error = request_firmware_nowait(THIS_MODULE, true, MXT_CFG_NAME,
dev, GFP_KERNEL, data,
mxt_config_cb);
Expand All @@ -6431,13 +6423,6 @@ static ssize_t mxt_update_fw_store(struct device *dev,
error);
return error;
}

if(!(CHECK_BIT(data->encryption_state, DEV_ENC_FLAG))) {

error = mxt_check_retrigen(data);
if (error)
dev_err(dev, "RETRIGEN Not Enabled or unavailable\n");
}

return count;
}
Expand Down

0 comments on commit 3b226c3

Please sign in to comment.