ADB Command Introduction
Focaltech also provides ADB command tuning interface. This is for easier user tuning experience. Related code can be found in focaltech_ex_fun.c.
static struct attribute *fts_attributes[] = {
&dev_attr_ftstpfwver.attr,
&dev_attr_ftstpdriverver.attr,
&dev_attr_ftsfwupdate.attr,
&dev_attr_ftstprwreg.attr,
&dev_attr_ftsfwupgradeapp.attr,
&dev_attr_ftsgetprojectcode.attr,
NULL
};
static struct attribute_group fts_attribute_group = {
.attrs = fts_attributes
};
/*create sysfs for debug*/
int fts_create_sysfs(struct i2c_client *client)
{
int err;
err = sysfs_create_group(&client->dev.kobj, &fts_attribute_group);
if (0 != err) {
dev_err(&client->dev,"%s() - ERROR: sysfs_create_group() failed.\n",
__func__);
sysfs_remove_group(&client->dev.kobj, &fts_attribute_group);
return -EIO;
} else {
mutex_init(&g_device_mutex);
pr_info("fts:%s() - sysfs_create_group() succeeded.\n",
__func__);
}
return err;
}
void fts_release_sysfs(struct i2c_client *client)
{
sysfs_remove_group(&client->dev.kobj, &fts_attribute_group);
mutex_destroy(&g_device_mutex);
}
The produced file will be under /sys/bus/i2c/devices/1-0038/
. Under the run line enter cmd, enter adb shell and then enter cd /sys/bus/i2c/devices/1-0038/
.The following introduces how to use ADB commands to fine tune the interface provide by the driver.
- Enter
cat ftstpfwver
for current FW version - Enter
cat ftstpdriverver
for current driver version - Enter
echo 1 > ftsfwupdate
to upgrade FW via .i document - Enter
echo 88 > ftstprwreg
to read register value of 0X88 - Enter
echo *_app.bin > ftsfwupgradeapp
to upgarde FW via .bin document. *app.bin needs to be placed under /sdcard/_ prior to execution.