Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

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
Loading
Loading
Loading
Loading
+15 −11
Original line number Diff line number Diff line
@@ -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,