Skip to content

Commit

Permalink
gpio: mc9s08dz60: Use devm_kzalloc API
Browse files Browse the repository at this point in the history
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
  • Loading branch information
Axel Lin authored and Linus Walleij committed Aug 31, 2012
1 parent 6e20a0a commit 3c7051d
Showing 1 changed file with 3 additions and 18 deletions.
21 changes: 3 additions & 18 deletions drivers/gpio/gpio-mc9s08dz60.c
Original file line number Diff line number Diff line change
Expand Up @@ -91,10 +91,9 @@ static int mc9s08dz60_direction_output(struct gpio_chip *gc,
static int mc9s08dz60_probe(struct i2c_client *client,
const struct i2c_device_id *id)
{
int ret = 0;
struct mc9s08dz60 *mc9s;

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

Expand All @@ -110,30 +109,16 @@ static int mc9s08dz60_probe(struct i2c_client *client,
mc9s->client = client;
i2c_set_clientdata(client, mc9s);

ret = gpiochip_add(&mc9s->chip);
if (ret)
goto error;

return 0;

error:
kfree(mc9s);
return ret;
return gpiochip_add(&mc9s->chip);
}

static int mc9s08dz60_remove(struct i2c_client *client)
{
struct mc9s08dz60 *mc9s;
int ret;

mc9s = i2c_get_clientdata(client);

ret = gpiochip_remove(&mc9s->chip);
if (!ret)
kfree(mc9s);

return ret;

return gpiochip_remove(&mc9s->chip);
}

static const struct i2c_device_id mc9s08dz60_id[] = {
Expand Down

0 comments on commit 3c7051d

Please sign in to comment.