Messages in this thread | | | Subject | Re: [PATCH] rk808: fix RK818_IRQ_DISCHG_ILIM initializer | From | Andy Yan <> | Date | Wed, 14 Sep 2016 08:49:04 +0800 |
| |
Hi:
On 2016年09月13日 18:48, Lee Jones wrote: > On Tue, 06 Sep 2016, Arnd Bergmann wrote: > >> When building with -Woverride-init, we get a warning about an incorrect >> initializer: >> >> drivers/mfd/rk808.c:244:8: error: initialized field overwritten [-Werror=override-init] >> [RK818_IRQ_DISCHG_ILIM] = { >> >> This is clearly a mistake, as both RK818_IRQ_DISCHG_ILIM and RK818_IRQ_USB_OV >> are defined as '7', but they refer to different register bits. Changing >> RK818_IRQ_DISCHG_ILIM to 15 is consistent with how all other 14 interrupts are >> handled here, so I'm assuming this is what it should have been. >> >> Signed-off-by: Arnd Bergmann <arnd@arndb.de> >> Fixes: 2eedcbfc0612 ("mfd: rk808: Add RK818 support") >> --- >> include/linux/mfd/rk808.h | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) > I would like someone who is in possession of a datasheet to confirm > this.
According to the datasheet, the RK818_IRQ_USB_OV is in bit 7 of INT_STS_REG1(0x4c) and RK818_IRQ_DISCHG_ILIM is in bit 7 of INT_STS_REG2(0x4e), so Arnd's change is right.
Thanks. >> diff --git a/include/linux/mfd/rk808.h b/include/linux/mfd/rk808.h >> index fc5db6fcb57d..6d435a3c06bc 100644 >> --- a/include/linux/mfd/rk808.h >> +++ b/include/linux/mfd/rk808.h >> @@ -244,7 +244,7 @@ enum rk818_reg { >> #define RK818_IRQ_CHG_TS1 12 >> #define RK818_IRQ_TS2 13 >> #define RK818_IRQ_CHG_CVTLIM 14 >> -#define RK818_IRQ_DISCHG_ILIM 7 >> +#define RK818_IRQ_DISCHG_ILIM 15 >> >> #define RK818_IRQ_VOUT_LO_MSK BIT(0) >> #define RK818_IRQ_VB_LO_MSK BIT(1)
| |