Hi Colin, colin.i.king@xxxxxxxxx wrote on Thu, 19 May 2022 11:06:41 +0100: > Variable val is not being initialized and is later being read with > a potentially garbage value. Fix this by initializing val to zero. > > Detected by clang scan build: > warning: variable 'val' is uninitialized when used here [-Wuninitialized] > > Fixes: deeb4b5393e1 ("rtc: rzn1: Add new RTC driver") > Signed-off-by: Colin Ian King <colin.i.king@xxxxxxxxx> > --- > drivers/rtc/rtc-rzn1.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/rtc/rtc-rzn1.c b/drivers/rtc/rtc-rzn1.c > index 980ade8c9601..0b4bf6e43464 100644 > --- a/drivers/rtc/rtc-rzn1.c > +++ b/drivers/rtc/rtc-rzn1.c > @@ -272,7 +272,7 @@ static int rzn1_rtc_set_offset(struct device *dev, long offset) > struct rzn1_rtc *rtc = dev_get_drvdata(dev); > unsigned int steps; > int stepsh, stepsl; > - u32 val; > + u32 val = 0; There are actually two variables mixed together. "val" is used both for the readl_poll_timeout() call (where it should be a dedicated 'ctl2' variable) and for the subu register which is written at the end. This variable could be renamed 'subu' and initialized to 0 as you did. Thanks, Miquèl