diff options
Diffstat (limited to 'drivers/leds')
-rw-r--r-- | drivers/leds/leds-dac124s085.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/leds/leds-dac124s085.c b/drivers/leds/leds-dac124s085.c index d56c14269ff0..1f9d8e62d37e 100644 --- a/drivers/leds/leds-dac124s085.c +++ b/drivers/leds/leds-dac124s085.c | |||
@@ -69,7 +69,7 @@ static int dac124s085_probe(struct spi_device *spi) | |||
69 | struct dac124s085_led *led; | 69 | struct dac124s085_led *led; |
70 | int i, ret; | 70 | int i, ret; |
71 | 71 | ||
72 | dac = kzalloc(sizeof(*dac), GFP_KERNEL); | 72 | dac = devm_kzalloc(&spi->dev, sizeof(*dac), GFP_KERNEL); |
73 | if (!dac) | 73 | if (!dac) |
74 | return -ENOMEM; | 74 | return -ENOMEM; |
75 | 75 | ||
@@ -102,7 +102,6 @@ eledcr: | |||
102 | led_classdev_unregister(&dac->leds[i].ldev); | 102 | led_classdev_unregister(&dac->leds[i].ldev); |
103 | 103 | ||
104 | spi_set_drvdata(spi, NULL); | 104 | spi_set_drvdata(spi, NULL); |
105 | kfree(dac); | ||
106 | return ret; | 105 | return ret; |
107 | } | 106 | } |
108 | 107 | ||
@@ -117,7 +116,6 @@ static int dac124s085_remove(struct spi_device *spi) | |||
117 | } | 116 | } |
118 | 117 | ||
119 | spi_set_drvdata(spi, NULL); | 118 | spi_set_drvdata(spi, NULL); |
120 | kfree(dac); | ||
121 | 119 | ||
122 | return 0; | 120 | return 0; |
123 | } | 121 | } |