diff options
author | Linux Build Service Account <lnxbuild@localhost> | 2016-08-18 23:20:37 -0700 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2016-08-18 23:20:36 -0700 |
commit | 55b1c1cae23c1ed9378716565a5df658d2bddaa4 (patch) | |
tree | 5d0ba080b3d3e6b1965032a3eb0605658fef0e1b | |
parent | 0668f977d065e7cf63bb59ca3fd73daeda591c4f (diff) | |
parent | 8ac5a9e361461e95b49001d9923e82cc0ae1a8bd (diff) |
Merge "input: touchscreen: add option to ignore Focaltech family-id check"
-rw-r--r-- | Documentation/devicetree/bindings/input/touchscreen/ft5x06-ts.txt | 1 | ||||
-rw-r--r-- | drivers/input/touchscreen/ft5x06_ts.c | 5 | ||||
-rw-r--r-- | include/linux/input/ft5x06_ts.h | 1 |
3 files changed, 6 insertions, 1 deletions
diff --git a/Documentation/devicetree/bindings/input/touchscreen/ft5x06-ts.txt b/Documentation/devicetree/bindings/input/touchscreen/ft5x06-ts.txt index 735deb7b3cb5..1d04a7e365e1 100644 --- a/Documentation/devicetree/bindings/input/touchscreen/ft5x06-ts.txt +++ b/Documentation/devicetree/bindings/input/touchscreen/ft5x06-ts.txt @@ -46,6 +46,7 @@ Optional properties: - focaltech,fw-delay-era-flsh-ms : specify the erase flash delay in ms for firmware upgrade - focaltech,fw-auto-cal : specify whether calibration is needed after firmware upgrade - focaltech,fw-vkey-support : specify if virtual keys are supported through firmware + - focaltech,ignore-id-check : specify ignore family-id check Example: i2c@f9923000{ diff --git a/drivers/input/touchscreen/ft5x06_ts.c b/drivers/input/touchscreen/ft5x06_ts.c index eac9067822a3..4f5b5b4ecd7f 100644 --- a/drivers/input/touchscreen/ft5x06_ts.c +++ b/drivers/input/touchscreen/ft5x06_ts.c @@ -1248,6 +1248,9 @@ static int ft5x06_parse_dt(struct device *dev, pdata->fw_vkey_support = of_property_read_bool(np, "focaltech,fw-vkey-support"); + pdata->ignore_id_check = of_property_read_bool(np, + "focaltech,ignore-id-check"); + rc = of_property_read_u32(np, "focaltech,family-id", &temp_val); if (!rc) pdata->family_id = temp_val; @@ -1442,7 +1445,7 @@ static int ft5x06_ts_probe(struct i2c_client *client, dev_info(&client->dev, "Device ID = 0x%x\n", reg_value); - if (pdata->family_id != reg_value) { + if ((pdata->family_id != reg_value) && (!pdata->ignore_id_check)) { dev_err(&client->dev, "%s:Unsupported controller\n", __func__); goto free_reset_gpio; } diff --git a/include/linux/input/ft5x06_ts.h b/include/linux/input/ft5x06_ts.h index 202ddeec09d6..1340737070f7 100644 --- a/include/linux/input/ft5x06_ts.h +++ b/include/linux/input/ft5x06_ts.h @@ -58,6 +58,7 @@ struct ft5x06_ts_platform_data { bool fw_vkey_support; bool no_force_update; bool i2c_pull_up; + bool ignore_id_check; int (*power_init)(bool); int (*power_on)(bool); }; |