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

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
......@@ -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);
if (ret)
keycode = KEY_RESERVED;
keymap[i] = keycode;
}
ret = of_property_read_u32_array(np, "linux,gpio-keymap",
keymap, pdata->t19_num_keys);
if (ret)
dev_warn(&client->dev,
"Couldn't read linux,gpio-keymap: %d\n", ret);
pdata->t19_keymap = keymap;
}
......
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