diff mbox

rtc: pcf85063: remove useless century handling

Message ID 1456268728-343-1-git-send-email-alexandre.belloni@free-electrons.com
State Accepted
Headers show

Commit Message

Alexandre Belloni Feb. 23, 2016, 11:05 p.m. UTC
pcf85063_get_datetime() tries to handle a century bit but that bit is not
documented and the final value is never used anywhere else in the kernel.

Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
---
 drivers/rtc/rtc-pcf85063.c | 6 ------
 1 file changed, 6 deletions(-)

Comments

Juergen Borleis Feb. 26, 2016, 11:07 a.m. UTC | #1
Hi Alexandre,

On Wednesday 24 February 2016 00:05:28 Alexandre Belloni wrote:
> pcf85063_get_datetime() tries to handle a century bit but that bit is not
> documented and the final value is never used anywhere else in the kernel.
> [...]
> However, I found two interesting things in that driver. I'll send a
> patch shortly, removing the useless century handling.
> Also, I'm quite unsure about the year range handling. I have a patch but
> I'm not sure about the RTC behaviour when the year goes from 99 to 00.
> Can you check that works properly?

Just returned from the embedded world exhibition... Will test it.

Regards,
Juergen
Juergen Borleis March 1, 2016, 8:29 a.m. UTC | #2
On Wednesday 24 February 2016 00:05:28 Alexandre Belloni wrote:
> pcf85063_get_datetime() tries to handle a century bit but that bit is not
> documented and the final value is never used anywhere else in the kernel.
>
> Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
> ---
>  drivers/rtc/rtc-pcf85063.c | 6 ------
>  1 file changed, 6 deletions(-)
>
> diff --git a/drivers/rtc/rtc-pcf85063.c b/drivers/rtc/rtc-pcf85063.c
> index c5db231f14de..2b3b99b094b5 100644
> --- a/drivers/rtc/rtc-pcf85063.c
> +++ b/drivers/rtc/rtc-pcf85063.c
> @@ -31,13 +31,10 @@
>  #define PCF85063_REG_MO			0x09
>  #define PCF85063_REG_YR			0x0A
>
> -#define PCF85063_MO_C			0x80 /* century */
> -
>  static struct i2c_driver pcf85063_driver;
>
>  struct pcf85063 {
>  	struct rtc_device *rtc;
> -	int c_polarity;	/* 0: MO_C=1 means 19xx, otherwise MO_C=1 means 20xx */
>  	int voltage_low; /* indicates if a low_voltage was detected */
>  };
>
> @@ -103,9 +100,6 @@ static int pcf85063_get_datetime(struct i2c_client
> *client, struct rtc_time *tm) tm->tm_year = bcd2bin(regs[6]);
>  	if (tm->tm_year < 70)
>  		tm->tm_year += 100;	/* assume we are in 1970...2069 */
> -	/* detect the polarity heuristically. see note above. */
> -	pcf85063->c_polarity = (regs[5] & PCF85063_MO_C) ?
> -		(tm->tm_year >= 100) : (tm->tm_year < 100);
>
>  	return rtc_valid_tm(tm);
>  }

Reviewed-by: Juergen Borleis <jbe@pengutronix.de>
Tested-by: Ulrich Ölmann <u.oelmann@pengutronix.de>

Regards,
Juergen
diff mbox

Patch

diff --git a/drivers/rtc/rtc-pcf85063.c b/drivers/rtc/rtc-pcf85063.c
index c5db231f14de..2b3b99b094b5 100644
--- a/drivers/rtc/rtc-pcf85063.c
+++ b/drivers/rtc/rtc-pcf85063.c
@@ -31,13 +31,10 @@ 
 #define PCF85063_REG_MO			0x09
 #define PCF85063_REG_YR			0x0A
 
-#define PCF85063_MO_C			0x80 /* century */
-
 static struct i2c_driver pcf85063_driver;
 
 struct pcf85063 {
 	struct rtc_device *rtc;
-	int c_polarity;	/* 0: MO_C=1 means 19xx, otherwise MO_C=1 means 20xx */
 	int voltage_low; /* indicates if a low_voltage was detected */
 };
 
@@ -103,9 +100,6 @@  static int pcf85063_get_datetime(struct i2c_client *client, struct rtc_time *tm)
 	tm->tm_year = bcd2bin(regs[6]);
 	if (tm->tm_year < 70)
 		tm->tm_year += 100;	/* assume we are in 1970...2069 */
-	/* detect the polarity heuristically. see note above. */
-	pcf85063->c_polarity = (regs[5] & PCF85063_MO_C) ?
-		(tm->tm_year >= 100) : (tm->tm_year < 100);
 
 	return rtc_valid_tm(tm);
 }