Skip to content

Commit

Permalink
Input: edt-ft5x06 - use generic properties API
Browse files Browse the repository at this point in the history
Instead of only parsing device tree properties let's switch to using
generic properties API so that the driver can also work on other platforms.

Tested-by: Franklin S Cooper Jr <fcooper@ti.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
  • Loading branch information
Dmitry Torokhov committed Sep 28, 2015
1 parent 22ddbac commit 2e23b7a
Showing 1 changed file with 15 additions and 11 deletions.
26 changes: 15 additions & 11 deletions drivers/input/touchscreen/edt-ft5x06.c
Original file line number Diff line number Diff line change
Expand Up @@ -808,20 +808,24 @@ static int edt_ft5x06_ts_identify(struct i2c_client *client,
return 0;
}

#define EDT_GET_PROP(name, reg) { \
u32 val; \
if (of_property_read_u32(np, #name, &val) == 0) \
edt_ft5x06_register_write(tsdata, reg, val); \
}

static void edt_ft5x06_ts_get_defaults(struct device_node *np,
static void edt_ft5x06_ts_get_defaults(struct device *dev,
struct edt_ft5x06_ts_data *tsdata)
{
struct edt_reg_addr *reg_addr = &tsdata->reg_addr;
u32 val;
int error;

error = device_property_read_u32(dev, "threshold", &val);
if (!error)
reg_addr->reg_threshold = val;

error = device_property_read_u32(dev, "gain", &val);
if (!error)
reg_addr->reg_gain = val;

EDT_GET_PROP(threshold, reg_addr->reg_threshold);
EDT_GET_PROP(gain, reg_addr->reg_gain);
EDT_GET_PROP(offset, reg_addr->reg_offset);
error = device_property_read_u32(dev, "offset", &val);
if (!error)
reg_addr->reg_offset = val;
}

static void
Expand Down Expand Up @@ -928,7 +932,7 @@ static int edt_ft5x06_ts_probe(struct i2c_client *client,
}

edt_ft5x06_ts_set_regs(tsdata);
edt_ft5x06_ts_get_defaults(client->dev.of_node, tsdata);
edt_ft5x06_ts_get_defaults(&client->dev, tsdata);
edt_ft5x06_ts_get_parameters(tsdata);

dev_dbg(&client->dev,
Expand Down

0 comments on commit 2e23b7a

Please sign in to comment.