int synaptics_fw_configid(struct synaptics_rmi4_data *rmi4_data, u8 *buf)
{
	int rc = 0;
	unsigned char config_id[4];
	unsigned char f34_ctrl_base_addr = 0;

	TS_LOG_INFO("called\n");

	rc = synaptics_get_f34_addr(rmi4_data, &f34_ctrl_base_addr);
	if (rc < 0){
		TS_LOG_ERR("failed to scan pdt\n");
	}

	rc = rmi4_data->i2c_read(rmi4_data, f34_ctrl_base_addr, config_id, sizeof(config_id));
	if (rc < 0) {
		TS_LOG_ERR("Could not read configid\n");
		return rc;
	}

	TS_LOG_INFO("config ID 0x%02X, 0x%02X, 0x%02X, 0x%02X,addr = 0x%02x\n",
                                config_id[0], config_id[1], config_id[2], config_id[3], f34_ctrl_base_addr);

	snprintf(buf, PAGE_SIZE, "%02x %02x %02x %02x\n",
			config_id[0],
			config_id[1],
			config_id[2],
			config_id[3]);

	TS_LOG_INFO("buf = %s\n", buf);
	return 0;
}
/* Use to record configid */
int synaptics_fw_configid(struct synaptics_rmi4_data *rmi4_data)
{
    int rc = 0;
    unsigned char f34_ctrl_base_addr = 0;

    TS_LOG_INFO("synaptics_fw_configid called\n");

    rc = synaptics_get_f34_addr(rmi4_data, &f34_ctrl_base_addr);
    if (rc < 0) {
        TS_LOG_ERR("failed to scan pdt\n");
    }

    rc = rmi4_data->i2c_read(rmi4_data, f34_ctrl_base_addr, s3320_config_id, sizeof(s3320_config_id));
    if (rc < 0) {
        TS_LOG_ERR("Could not read configid\n");
        return rc;
    }

    TS_LOG_INFO("config ID 0x%02X, 0x%02X, 0x%02X, 0x%02X,addr = 0x%02x\n",
                s3320_config_id[0], s3320_config_id[1], s3320_config_id[2], s3320_config_id[3], f34_ctrl_base_addr);

    return 0;
}