RE: [RESEND 09/10] regulator: da9063-regulator: Fix .suspend 'initialized field overwritten' warnings

From: Adam Thomson
Date: Fri Jun 26 2020 - 04:49:19 EST


On 25 June 2020 20:17, Lee Jones wrote:

> Looks as though 99f75ce666199 ("regulator: da9063: fix suspend") failed
> to clean-up all of the existing .suspend variable initialisations.
> This has led to some 'initilized field overwritten' issues now present
> in W=1 builds.

You probably were not on the CC but I believe the following patch has already
resolved this issue, and has been pulled by Mark:

[PATCH] regulator: da9063: fix LDO9 suspend and warning.

Repo: https://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator.git/
Branch: for-next
Commit: d7442ba13d62de9afc4e57344a676f9f4623dcaa

>
> This patch squashes the following build warnings:
>
> In file included from drivers/regulator/da9063-regulator.c:17:
> include/linux/regmap.h:1124:37: warning: initialized field overwritten [-
> Woverride-init]
> 1124 | #define REG_FIELD(_reg, _lsb, _msb) { | ^
> drivers/regulator/da9063-regulator.c:27:2: note: in expansion of macro
> âREG_FIELDâ
> 27 | REG_FIELD(_reg, __builtin_ffs((int)_mask) - 1, | ^~~~~~~~~
> drivers/regulator/da9063-regulator.c:515:14: note: in expansion of macro
> âBFIELDâ
> 515 | .suspend = BFIELD(DA9063_REG_LDO9_CONT, DA9063_VLDO9_SEL),
> | ^~~~~~
> include/linux/regmap.h:1124:37: note: (near initialization for
> âda9063_regulator_info[11].suspendâ)
> 1124 | #define REG_FIELD(_reg, _lsb, _msb) { | ^
> drivers/regulator/da9063-regulator.c:27:2: note: in expansion of macro
> âREG_FIELDâ
> 27 | REG_FIELD(_reg, __builtin_ffs((int)_mask) - 1, | ^~~~~~~~~
> drivers/regulator/da9063-regulator.c:515:14: note: in expansion of macro
> âBFIELDâ
> 515 | .suspend = BFIELD(DA9063_REG_LDO9_CONT, DA9063_VLDO9_SEL),
> | ^~~~~~
>
> Cc: Krystian Garbaciak <krystian.garbaciak@xxxxxxxxxxx>
> Cc: Support Opensource <support.opensource@xxxxxxxxxxx>
> Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx>
> ---
> drivers/regulator/da9063-regulator.c | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/drivers/regulator/da9063-regulator.c b/drivers/regulator/da9063-
> regulator.c
> index e1d6c8f6d40bb..fe65b5acaf280 100644
> --- a/drivers/regulator/da9063-regulator.c
> +++ b/drivers/regulator/da9063-regulator.c
> @@ -512,7 +512,6 @@ static const struct da9063_regulator_info
> da9063_regulator_info[] = {
> },
> {
> DA9063_LDO(DA9063, LDO9, 950, 50, 3600),
> - .suspend = BFIELD(DA9063_REG_LDO9_CONT,
> DA9063_VLDO9_SEL),
> },
> {
> DA9063_LDO(DA9063, LDO11, 900, 50, 3600),
> --
> 2.25.1