On 11/11/2021 23:58:47+0100, Luca Ceresoli wrote: > The MAX77714 RTC chip is explicitly set to 24-hour mode in > max77686_rtc_probe() -> max77686_rtc_init_reg() and never changed back to > 12-hour mode. Accordingly info->rtc_24hr_mode is set to 1 in the same place > and never modified later, so it is de facto a constant. Yet there is code > to read 12-hour time, which is unreachable. > > Remove the unused variable, the unreachable code to manage 12-hour mode and > the defines that become unused due to the above changes. > > Signed-off-by: Luca Ceresoli <luca@xxxxxxxxxxxxxxxx> > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxxxxx> Acked-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxx> > > --- > > Changes in v3: none > > Changes in v2: > - remove the now-unused defines too (Alexandre Belloni) > - improve the commit message > --- > drivers/rtc/rtc-max77686.c | 14 +------------- > 1 file changed, 1 insertion(+), 13 deletions(-) > > diff --git a/drivers/rtc/rtc-max77686.c b/drivers/rtc/rtc-max77686.c > index 7e765207f28e..5c64d08c0732 100644 > --- a/drivers/rtc/rtc-max77686.c > +++ b/drivers/rtc/rtc-max77686.c > @@ -34,9 +34,6 @@ > #define RTC_UDR_MASK BIT(RTC_UDR_SHIFT) > #define RTC_RBUDR_SHIFT 4 > #define RTC_RBUDR_MASK BIT(RTC_RBUDR_SHIFT) > -/* RTC Hour register */ > -#define HOUR_PM_SHIFT 6 > -#define HOUR_PM_MASK BIT(HOUR_PM_SHIFT) > /* RTC Alarm Enable */ > #define ALARM_ENABLE_SHIFT 7 > #define ALARM_ENABLE_MASK BIT(ALARM_ENABLE_SHIFT) > @@ -99,7 +96,6 @@ struct max77686_rtc_info { > > int rtc_irq; > int virq; > - int rtc_24hr_mode; > }; > > enum MAX77686_RTC_OP { > @@ -278,13 +274,7 @@ static void max77686_rtc_data_to_tm(u8 *data, struct rtc_time *tm, > > tm->tm_sec = data[RTC_SEC] & mask; > tm->tm_min = data[RTC_MIN] & mask; > - if (info->rtc_24hr_mode) { > - tm->tm_hour = data[RTC_HOUR] & 0x1f; > - } else { > - tm->tm_hour = data[RTC_HOUR] & 0x0f; > - if (data[RTC_HOUR] & HOUR_PM_MASK) > - tm->tm_hour += 12; > - } > + tm->tm_hour = data[RTC_HOUR] & 0x1f; > > /* Only a single bit is set in data[], so fls() would be equivalent */ > tm->tm_wday = ffs(data[RTC_WEEKDAY] & mask) - 1; > @@ -662,8 +652,6 @@ static int max77686_rtc_init_reg(struct max77686_rtc_info *info) > data[0] = (1 << BCD_EN_SHIFT) | (1 << MODEL24_SHIFT); > data[1] = (0 << BCD_EN_SHIFT) | (1 << MODEL24_SHIFT); > > - info->rtc_24hr_mode = 1; > - > ret = regmap_bulk_write(info->rtc_regmap, > info->drv_data->map[REG_RTC_CONTROLM], > data, ARRAY_SIZE(data)); > -- > 2.25.1 > -- Alexandre Belloni, co-owner and COO, Bootlin Embedded Linux and Kernel engineering https://bootlin.com