int ist30xx_cmd_reg(struct i2c_client *client, int cmd) { int ret = ist30xx_write_cmd(client, cmd, 0); if (cmd == CMD_ENTER_REG_ACCESS) { ist30xx_tracking(TRACK_CMD_ENTER_REG); msleep(100); } else if (cmd == CMD_EXIT_REG_ACCESS) { ist30xx_tracking(TRACK_CMD_EXIT_REG); msleep(10); } return ret; }
int ist30xx_cmd_update(struct i2c_client *client, int cmd) { u32 val = (cmd == CMD_ENTER_FW_UPDATE ? CMD_FW_UPDATE_MAGIC : 0); int ret = ist30xx_write_cmd(client, cmd, val); ist30xx_tracking(TRACK_CMD_FWUPDATE); msleep(10); return ret; }
int ist30xx_cmd_check_calib(struct i2c_client *client) { int ret = ist30xx_write_cmd(client, CMD_CHECK_CALIB, 0); ist30xx_tracking(TRACK_CMD_CHECK_CALIB); tsp_info("*** Check Calibration cmd ***\n"); msleep(20); return ret; }
int ist30xx_cmd_calibrate(struct i2c_client *client) { int ret = ist30xx_write_cmd(client, CMD_CALIBRATE, 0); ist30xx_tracking(TRACK_CMD_CALIB); tsp_info("%s\n", __func__); msleep(100); return ret; }
int ist30xx_cmd_run_device(struct i2c_client *client, bool is_reset) { int ret = -EIO; if (is_reset == true) ist30xx_reset(); ret = ist30xx_write_cmd(client, CMD_RUN_DEVICE, 0); ist30xx_tracking(TRACK_CMD_RUN_DEVICE); msleep(10); return ret; }
int ist30xx_cmd_start_scan(struct i2c_client *client) { int ret; ret = ist30xx_write_cmd(client, CMD_START_SCAN, 0); ist30xx_tracking(TRACK_CMD_SCAN); msleep(100); ts_data->status.noise_mode = true; return ret; }