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

Commit 20447664 authored by Nick Dyer's avatar Nick Dyer Committed by Dmitry Torokhov
Browse files

Input: atmel_mxt_ts - improve device tree parsing



Use function rather than loop, define np to reduce wrapping.

Signed-off-by: default avatarNick Dyer <nick.dyer@itdev.co.uk>
Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent 50fabb02
Loading
Loading
Loading
Loading
+9 −13
Original line number Diff line number Diff line
@@ -2409,19 +2409,18 @@ static void mxt_input_close(struct input_dev *dev)
static const struct mxt_platform_data *mxt_parse_dt(struct i2c_client *client)
{
	struct mxt_platform_data *pdata;
	struct device_node *np = client->dev.of_node;
	u32 *keymap;
	u32 keycode;
	int proplen, i, ret;
	int proplen, ret;

	if (!client->dev.of_node)
	if (!np)
		return ERR_PTR(-ENOENT);

	pdata = devm_kzalloc(&client->dev, sizeof(*pdata), GFP_KERNEL);
	if (!pdata)
		return ERR_PTR(-ENOMEM);

	if (of_find_property(client->dev.of_node, "linux,gpio-keymap",
			     &proplen)) {
	if (of_find_property(np, "linux,gpio-keymap", &proplen)) {
		pdata->t19_num_keys = proplen / sizeof(u32);

		keymap = devm_kzalloc(&client->dev,
@@ -2430,14 +2429,11 @@ static const struct mxt_platform_data *mxt_parse_dt(struct i2c_client *client)
		if (!keymap)
			return ERR_PTR(-ENOMEM);

		for (i = 0; i < pdata->t19_num_keys; i++) {
			ret = of_property_read_u32_index(client->dev.of_node,
					"linux,gpio-keymap", i, &keycode);
		ret = of_property_read_u32_array(np, "linux,gpio-keymap",
						 keymap, pdata->t19_num_keys);
		if (ret)
				keycode = KEY_RESERVED;

			keymap[i] = keycode;
		}
			dev_warn(&client->dev,
				 "Couldn't read linux,gpio-keymap: %d\n", ret);

		pdata->t19_keymap = keymap;
	}