|
@@ -344,7 +344,7 @@ static int wm8400_i2c_probe(struct i2c_client *i2c,
|
|
struct wm8400 *wm8400;
|
|
struct wm8400 *wm8400;
|
|
int ret;
|
|
int ret;
|
|
|
|
|
|
- wm8400 = kzalloc(sizeof(struct wm8400), GFP_KERNEL);
|
|
|
|
|
|
+ wm8400 = devm_kzalloc(&i2c->dev, sizeof(struct wm8400), GFP_KERNEL);
|
|
if (wm8400 == NULL) {
|
|
if (wm8400 == NULL) {
|
|
ret = -ENOMEM;
|
|
ret = -ENOMEM;
|
|
goto err;
|
|
goto err;
|
|
@@ -353,7 +353,7 @@ static int wm8400_i2c_probe(struct i2c_client *i2c,
|
|
wm8400->regmap = regmap_init_i2c(i2c, &wm8400_regmap_config);
|
|
wm8400->regmap = regmap_init_i2c(i2c, &wm8400_regmap_config);
|
|
if (IS_ERR(wm8400->regmap)) {
|
|
if (IS_ERR(wm8400->regmap)) {
|
|
ret = PTR_ERR(wm8400->regmap);
|
|
ret = PTR_ERR(wm8400->regmap);
|
|
- goto struct_err;
|
|
|
|
|
|
+ goto err;
|
|
}
|
|
}
|
|
|
|
|
|
wm8400->dev = &i2c->dev;
|
|
wm8400->dev = &i2c->dev;
|
|
@@ -367,8 +367,6 @@ static int wm8400_i2c_probe(struct i2c_client *i2c,
|
|
|
|
|
|
map_err:
|
|
map_err:
|
|
regmap_exit(wm8400->regmap);
|
|
regmap_exit(wm8400->regmap);
|
|
-struct_err:
|
|
|
|
- kfree(wm8400);
|
|
|
|
err:
|
|
err:
|
|
return ret;
|
|
return ret;
|
|
}
|
|
}
|
|
@@ -379,7 +377,6 @@ static int wm8400_i2c_remove(struct i2c_client *i2c)
|
|
|
|
|
|
wm8400_release(wm8400);
|
|
wm8400_release(wm8400);
|
|
regmap_exit(wm8400->regmap);
|
|
regmap_exit(wm8400->regmap);
|
|
- kfree(wm8400);
|
|
|
|
|
|
|
|
return 0;
|
|
return 0;
|
|
}
|
|
}
|