aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpio/gpio-max732x.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpio/gpio-max732x.c')
-rw-r--r--drivers/gpio/gpio-max732x.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/gpio/gpio-max732x.c b/drivers/gpio/gpio-max732x.c
index 1e0467ce4c37..d4b51b163b03 100644
--- a/drivers/gpio/gpio-max732x.c
+++ b/drivers/gpio/gpio-max732x.c
@@ -589,7 +589,8 @@ static int max732x_probe(struct i2c_client *client,
589 return -EINVAL; 589 return -EINVAL;
590 } 590 }
591 591
592 chip = kzalloc(sizeof(struct max732x_chip), GFP_KERNEL); 592 chip = devm_kzalloc(&client->dev, sizeof(struct max732x_chip),
593 GFP_KERNEL);
593 if (chip == NULL) 594 if (chip == NULL)
594 return -ENOMEM; 595 return -ENOMEM;
595 chip->client = client; 596 chip->client = client;
@@ -647,7 +648,6 @@ static int max732x_probe(struct i2c_client *client,
647 648
648out_failed: 649out_failed:
649 max732x_irq_teardown(chip); 650 max732x_irq_teardown(chip);
650 kfree(chip);
651 return ret; 651 return ret;
652} 652}
653 653
@@ -680,7 +680,6 @@ static int max732x_remove(struct i2c_client *client)
680 if (chip->client_dummy) 680 if (chip->client_dummy)
681 i2c_unregister_device(chip->client_dummy); 681 i2c_unregister_device(chip->client_dummy);
682 682
683 kfree(chip);
684 return 0; 683 return 0;
685} 684}
686 685