Message ID | b2ad55edbb1185c52dc73622ddccbdb7c1b52efd.1569552692.git.baolin.wang@linaro.org |
---|---|
State | Accepted |
Commit | 1e6d8e5f44414de1bb6d11b7ff69e8385b5007d0 |
Headers | show |
Series | nvmem: sc27xx: Change to use devm_hwspin_lock_request_specific() to request one hwlock | expand |
On 27/09/2019 04:12, Baolin Wang wrote: > Change to use devm_hwspin_lock_request_specific() to help to simplify the > cleanup code for drivers requesting one hwlock. Thus we can remove the > redundant sc27xx_efuse_remove() and platform_set_drvdata(). > > Signed-off-by: Baolin Wang <baolin.wang@linaro.org> > --- > drivers/nvmem/sc27xx-efuse.c | 13 +------------ > 1 file changed, 1 insertion(+), 12 deletions(-) Applied thanks, srini > > diff --git a/drivers/nvmem/sc27xx-efuse.c b/drivers/nvmem/sc27xx-efuse.c > index c6ee210..ab5e7e0 100644 > --- a/drivers/nvmem/sc27xx-efuse.c > +++ b/drivers/nvmem/sc27xx-efuse.c > @@ -211,7 +211,7 @@ static int sc27xx_efuse_probe(struct platform_device *pdev) > return ret; > } > > - efuse->hwlock = hwspin_lock_request_specific(ret); > + efuse->hwlock = devm_hwspin_lock_request_specific(&pdev->dev, ret); > if (!efuse->hwlock) { > dev_err(&pdev->dev, "failed to request hwspinlock\n"); > return -ENXIO; > @@ -219,7 +219,6 @@ static int sc27xx_efuse_probe(struct platform_device *pdev) > > mutex_init(&efuse->mutex); > efuse->dev = &pdev->dev; > - platform_set_drvdata(pdev, efuse); > > econfig.stride = 1; > econfig.word_size = 1; > @@ -232,21 +231,12 @@ static int sc27xx_efuse_probe(struct platform_device *pdev) > nvmem = devm_nvmem_register(&pdev->dev, &econfig); > if (IS_ERR(nvmem)) { > dev_err(&pdev->dev, "failed to register nvmem config\n"); > - hwspin_lock_free(efuse->hwlock); > return PTR_ERR(nvmem); > } > > return 0; > } > > -static int sc27xx_efuse_remove(struct platform_device *pdev) > -{ > - struct sc27xx_efuse *efuse = platform_get_drvdata(pdev); > - > - hwspin_lock_free(efuse->hwlock); > - return 0; > -} > - > static const struct of_device_id sc27xx_efuse_of_match[] = { > { .compatible = "sprd,sc2731-efuse" }, > { } > @@ -254,7 +244,6 @@ static int sc27xx_efuse_remove(struct platform_device *pdev) > > static struct platform_driver sc27xx_efuse_driver = { > .probe = sc27xx_efuse_probe, > - .remove = sc27xx_efuse_remove, > .driver = { > .name = "sc27xx-efuse", > .of_match_table = sc27xx_efuse_of_match, >
diff --git a/drivers/nvmem/sc27xx-efuse.c b/drivers/nvmem/sc27xx-efuse.c index c6ee210..ab5e7e0 100644 --- a/drivers/nvmem/sc27xx-efuse.c +++ b/drivers/nvmem/sc27xx-efuse.c @@ -211,7 +211,7 @@ static int sc27xx_efuse_probe(struct platform_device *pdev) return ret; } - efuse->hwlock = hwspin_lock_request_specific(ret); + efuse->hwlock = devm_hwspin_lock_request_specific(&pdev->dev, ret); if (!efuse->hwlock) { dev_err(&pdev->dev, "failed to request hwspinlock\n"); return -ENXIO; @@ -219,7 +219,6 @@ static int sc27xx_efuse_probe(struct platform_device *pdev) mutex_init(&efuse->mutex); efuse->dev = &pdev->dev; - platform_set_drvdata(pdev, efuse); econfig.stride = 1; econfig.word_size = 1; @@ -232,21 +231,12 @@ static int sc27xx_efuse_probe(struct platform_device *pdev) nvmem = devm_nvmem_register(&pdev->dev, &econfig); if (IS_ERR(nvmem)) { dev_err(&pdev->dev, "failed to register nvmem config\n"); - hwspin_lock_free(efuse->hwlock); return PTR_ERR(nvmem); } return 0; } -static int sc27xx_efuse_remove(struct platform_device *pdev) -{ - struct sc27xx_efuse *efuse = platform_get_drvdata(pdev); - - hwspin_lock_free(efuse->hwlock); - return 0; -} - static const struct of_device_id sc27xx_efuse_of_match[] = { { .compatible = "sprd,sc2731-efuse" }, { } @@ -254,7 +244,6 @@ static int sc27xx_efuse_remove(struct platform_device *pdev) static struct platform_driver sc27xx_efuse_driver = { .probe = sc27xx_efuse_probe, - .remove = sc27xx_efuse_remove, .driver = { .name = "sc27xx-efuse", .of_match_table = sc27xx_efuse_of_match,
Change to use devm_hwspin_lock_request_specific() to help to simplify the cleanup code for drivers requesting one hwlock. Thus we can remove the redundant sc27xx_efuse_remove() and platform_set_drvdata(). Signed-off-by: Baolin Wang <baolin.wang@linaro.org> --- drivers/nvmem/sc27xx-efuse.c | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) -- 1.7.9.5