aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDmitry Torokhov <dmitry.torokhov@gmail.com>2015-03-12 17:00:07 -0400
committerHerbert Xu <herbert@gondor.apana.org.au>2015-03-16 06:45:56 -0400
commit73b3862127e71d8cc7677b07ccc5adff0c0179bd (patch)
treeec8ea359b1954d60ccc51bd0aa5039f9a8dc3e9a
parentef0a1b26499f61b2453dd0c454aedee687edf31c (diff)
hwrng: iproc-rng200 - make use of devm_hwrng_register
This allows us to get rid of driver's remove() method. Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
-rw-r--r--drivers/char/hw_random/iproc-rng200.c15
1 files changed, 1 insertions, 14 deletions
diff --git a/drivers/char/hw_random/iproc-rng200.c b/drivers/char/hw_random/iproc-rng200.c
index 2dbaf5c52f35..3eaf7cb96d36 100644
--- a/drivers/char/hw_random/iproc-rng200.c
+++ b/drivers/char/hw_random/iproc-rng200.c
@@ -208,29 +208,17 @@ static int iproc_rng200_probe(struct platform_device *pdev)
208 priv->rng.cleanup = iproc_rng200_cleanup, 208 priv->rng.cleanup = iproc_rng200_cleanup,
209 209
210 /* Register driver */ 210 /* Register driver */
211 ret = hwrng_register(&priv->rng); 211 ret = devm_hwrng_register(dev, &priv->rng);
212 if (ret) { 212 if (ret) {
213 dev_err(dev, "hwrng registration failed\n"); 213 dev_err(dev, "hwrng registration failed\n");
214 return ret; 214 return ret;
215 } 215 }
216 216
217 platform_set_drvdata(pdev, priv);
218
219 dev_info(dev, "hwrng registered\n"); 217 dev_info(dev, "hwrng registered\n");
220 218
221 return 0; 219 return 0;
222} 220}
223 221
224static int iproc_rng200_remove(struct platform_device *pdev)
225{
226 struct iproc_rng200_dev *priv = platform_get_drvdata(pdev);
227
228 /* Unregister driver */
229 hwrng_unregister(&priv->rng);
230
231 return 0;
232}
233
234static const struct of_device_id iproc_rng200_of_match[] = { 222static const struct of_device_id iproc_rng200_of_match[] = {
235 { .compatible = "brcm,iproc-rng200", }, 223 { .compatible = "brcm,iproc-rng200", },
236 {}, 224 {},
@@ -243,7 +231,6 @@ static struct platform_driver iproc_rng200_driver = {
243 .of_match_table = iproc_rng200_of_match, 231 .of_match_table = iproc_rng200_of_match,
244 }, 232 },
245 .probe = iproc_rng200_probe, 233 .probe = iproc_rng200_probe,
246 .remove = iproc_rng200_remove,
247}; 234};
248module_platform_driver(iproc_rng200_driver); 235module_platform_driver(iproc_rng200_driver);
249 236