power: reset: qcom-pon: reg write mask depends on pon generation
authorKejia Hu <kejia.hu@codethink.co.uk>
Tue, 28 Apr 2020 07:04:37 +0000 (08:04 +0100)
committerSebastian Reichel <sre@kernel.org>
Tue, 28 Apr 2020 19:16:45 +0000 (21:16 +0200)
Instead of hardcode the mask, it should be depends
on which generation of pon it was.

Signed-off-by: Kejia Hu <kejia.hu@codethink.co.uk>
Fixes: fce5430f6a86 ("reset: qcom-pon: Add support for gen2 pon")
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
drivers/power/reset/qcom-pon.c

index 22a743a..4a68874 100644 (file)
@@ -34,7 +34,8 @@ static int pm8916_reboot_mode_write(struct reboot_mode_driver *reboot,
 
        ret = regmap_update_bits(pon->regmap,
                                 pon->baseaddr + PON_SOFT_RB_SPARE,
-                                0xfc, magic << pon->reason_shift);
+                                GENMASK(7, pon->reason_shift),
+                                magic << pon->reason_shift);
        if (ret < 0)
                dev_err(pon->dev, "update reboot mode bits failed\n");