aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/power
diff options
context:
space:
mode:
authorBjorn Andersson <bjorn.andersson@linaro.org>2016-08-04 01:04:06 -0400
committerSebastian Reichel <sre@kernel.org>2016-08-15 18:29:34 -0400
commit8dfdd2a8426b71bf85b400d5226c4c6e0fa21781 (patch)
tree0713d078628460850fd9b4231b2ffd912165de2e /drivers/power
parentc1a9634f1aaf5e10c23f8890ea2e64c61d48cb44 (diff)
power: reset: syscon-reboot-mode: Use managed resource API
Use the managed resource version of reboot_mode_register(). Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Tested-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Sebastian Reichel <sre@kernel.org>
Diffstat (limited to 'drivers/power')
-rw-r--r--drivers/power/reset/syscon-reboot-mode.c12
1 files changed, 1 insertions, 11 deletions
diff --git a/drivers/power/reset/syscon-reboot-mode.c b/drivers/power/reset/syscon-reboot-mode.c
index 9e1cba5dd58e..1ecb51d67149 100644
--- a/drivers/power/reset/syscon-reboot-mode.c
+++ b/drivers/power/reset/syscon-reboot-mode.c
@@ -53,8 +53,6 @@ static int syscon_reboot_mode_probe(struct platform_device *pdev)
53 syscon_rbm->reboot.write = syscon_reboot_mode_write; 53 syscon_rbm->reboot.write = syscon_reboot_mode_write;
54 syscon_rbm->mask = 0xffffffff; 54 syscon_rbm->mask = 0xffffffff;
55 55
56 dev_set_drvdata(&pdev->dev, syscon_rbm);
57
58 syscon_rbm->map = syscon_node_to_regmap(pdev->dev.parent->of_node); 56 syscon_rbm->map = syscon_node_to_regmap(pdev->dev.parent->of_node);
59 if (IS_ERR(syscon_rbm->map)) 57 if (IS_ERR(syscon_rbm->map))
60 return PTR_ERR(syscon_rbm->map); 58 return PTR_ERR(syscon_rbm->map);
@@ -65,20 +63,13 @@ static int syscon_reboot_mode_probe(struct platform_device *pdev)
65 63
66 of_property_read_u32(pdev->dev.of_node, "mask", &syscon_rbm->mask); 64 of_property_read_u32(pdev->dev.of_node, "mask", &syscon_rbm->mask);
67 65
68 ret = reboot_mode_register(&syscon_rbm->reboot); 66 ret = devm_reboot_mode_register(&pdev->dev, &syscon_rbm->reboot);
69 if (ret) 67 if (ret)
70 dev_err(&pdev->dev, "can't register reboot mode\n"); 68 dev_err(&pdev->dev, "can't register reboot mode\n");
71 69
72 return ret; 70 return ret;
73} 71}
74 72
75static int syscon_reboot_mode_remove(struct platform_device *pdev)
76{
77 struct syscon_reboot_mode *syscon_rbm = dev_get_drvdata(&pdev->dev);
78
79 return reboot_mode_unregister(&syscon_rbm->reboot);
80}
81
82static const struct of_device_id syscon_reboot_mode_of_match[] = { 73static const struct of_device_id syscon_reboot_mode_of_match[] = {
83 { .compatible = "syscon-reboot-mode" }, 74 { .compatible = "syscon-reboot-mode" },
84 {} 75 {}
@@ -86,7 +77,6 @@ static const struct of_device_id syscon_reboot_mode_of_match[] = {
86 77
87static struct platform_driver syscon_reboot_mode_driver = { 78static struct platform_driver syscon_reboot_mode_driver = {
88 .probe = syscon_reboot_mode_probe, 79 .probe = syscon_reboot_mode_probe,
89 .remove = syscon_reboot_mode_remove,
90 .driver = { 80 .driver = {
91 .name = "syscon-reboot-mode", 81 .name = "syscon-reboot-mode",
92 .of_match_table = syscon_reboot_mode_of_match, 82 .of_match_table = syscon_reboot_mode_of_match,