summaryrefslogtreecommitdiffstats
path: root/drivers/power
diff options
context:
space:
mode:
authorAndrew Davis <afd@ti.com>2024-06-10 09:28:34 -0500
committerSebastian Reichel <sebastian.reichel@collabora.com>2024-08-27 19:35:04 +0200
commita4ceaab660cabdc9ac2d2514a809174443209b3b (patch)
treec4a86451e26c1c70100ddb9dfabf73672c1741e3 /drivers/power
parentcf37f16a60f332fad21fe0a45893ac4c6a825d9d (diff)
downloadlinux-stable-a4ceaab660cabdc9ac2d2514a809174443209b3b.tar.gz
linux-stable-a4ceaab660cabdc9ac2d2514a809174443209b3b.tar.bz2
linux-stable-a4ceaab660cabdc9ac2d2514a809174443209b3b.zip
power: reset: brcmstb: Use syscon_regmap_lookup_by_phandle_args() helper
Simplify probe by fetching the regmap and its arguments in one call. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Dhruva Gole <d-gole@ti.com> Acked-by: Florian Fainelli <florian.fainelli@broadcom.com> Link: https://lore.kernel.org/r/20240610142836.168603-3-afd@ti.com Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Diffstat (limited to 'drivers/power')
-rw-r--r--drivers/power/reset/brcmstb-reboot.c22
1 files changed, 4 insertions, 18 deletions
diff --git a/drivers/power/reset/brcmstb-reboot.c b/drivers/power/reset/brcmstb-reboot.c
index db5b7120eadd..fd583bd30956 100644
--- a/drivers/power/reset/brcmstb-reboot.c
+++ b/drivers/power/reset/brcmstb-reboot.c
@@ -18,9 +18,6 @@
#include <linux/smp.h>
#include <linux/mfd/syscon.h>
-#define RESET_SOURCE_ENABLE_REG 1
-#define SW_MASTER_RESET_REG 2
-
static struct regmap *regmap;
static u32 rst_src_en;
static u32 sw_mstr_rst;
@@ -87,6 +84,7 @@ static int brcmstb_reboot_probe(struct platform_device *pdev)
{
int rc;
struct device_node *np = pdev->dev.of_node;
+ unsigned int args[2];
reset_masks = device_get_match_data(&pdev->dev);
if (!reset_masks) {
@@ -94,25 +92,13 @@ static int brcmstb_reboot_probe(struct platform_device *pdev)
return -EINVAL;
}
- regmap = syscon_regmap_lookup_by_phandle(np, "syscon");
+ regmap = syscon_regmap_lookup_by_phandle_args(np, "syscon", ARRAY_SIZE(args), args);
if (IS_ERR(regmap)) {
pr_err("failed to get syscon phandle\n");
return -EINVAL;
}
-
- rc = of_property_read_u32_index(np, "syscon", RESET_SOURCE_ENABLE_REG,
- &rst_src_en);
- if (rc) {
- pr_err("can't get rst_src_en offset (%d)\n", rc);
- return -EINVAL;
- }
-
- rc = of_property_read_u32_index(np, "syscon", SW_MASTER_RESET_REG,
- &sw_mstr_rst);
- if (rc) {
- pr_err("can't get sw_mstr_rst offset (%d)\n", rc);
- return -EINVAL;
- }
+ rst_src_en = args[0];
+ sw_mstr_rst = args[1];
rc = register_restart_handler(&brcmstb_restart_nb);
if (rc)