Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

power: reset: syscon-reboot: Add parental syscon support

Since normally syscon-reboot block is supposed to be a part of a system
controller, lets look for the syscon regmap in a parental DT node if
regmap property isn't specified. DT binding from now considers the regmap
property as deprecated.

Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
Cc: Alexey Malahov <Alexey.Malahov@baikalelectronics.ru>
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>

authored by

Serge Semin and committed by
Sebastian Reichel
c3d80522 2140d68d

+5 -2
+5 -2
drivers/power/reset/syscon-reboot.c
··· 51 51 return -ENOMEM; 52 52 53 53 ctx->map = syscon_regmap_lookup_by_phandle(dev->of_node, "regmap"); 54 - if (IS_ERR(ctx->map)) 55 - return PTR_ERR(ctx->map); 54 + if (IS_ERR(ctx->map)) { 55 + ctx->map = syscon_node_to_regmap(dev->parent->of_node); 56 + if (IS_ERR(ctx->map)) 57 + return PTR_ERR(ctx->map); 58 + } 56 59 57 60 if (of_property_read_u32(pdev->dev.of_node, "offset", &ctx->offset)) 58 61 return -EINVAL;