Commit 2e23b7a9 authored by Dmitry Torokhov's avatar Dmitry Torokhov

Input: edt-ft5x06 - use generic properties API

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: default avatarFranklin S Cooper Jr <fcooper@ti.com>
Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent 22ddbacc
......@@ -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
......@@ -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,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment