diff options
-rw-r--r-- | driver/battery/smart.c | 10 | ||||
-rw-r--r-- | include/battery_smart.h | 2 |
2 files changed, 6 insertions, 6 deletions
diff --git a/driver/battery/smart.c b/driver/battery/smart.c index 743ebc1ee1..2c67de9030 100644 --- a/driver/battery/smart.c +++ b/driver/battery/smart.c @@ -251,16 +251,16 @@ test_mockable int battery_manufacture_date(int *year, int *month, int *day) int rv; int ymd; - rv = sb_read(SB_SPECIFICATION_INFO, &ymd); + rv = sb_read(SB_MANUFACTURE_DATE, &ymd); if (rv) return rv; /* battery date format: - * ymd = day + month * 32 + (year - 1980) * 256 + * ymd = day + month * 32 + (year - 1980) * 512 */ - *year = (ymd >> 8) + 1980; - *month = (ymd & 0xff) / 32; - *day = (ymd & 0xff) % 32; + *year = (ymd >> 9) + 1980; + *month = (ymd >> 5) & 0xf; + *day = ymd & 0x1f; return EC_SUCCESS; } diff --git a/include/battery_smart.h b/include/battery_smart.h index 1cbcf295f1..713a1059a1 100644 --- a/include/battery_smart.h +++ b/include/battery_smart.h @@ -50,7 +50,7 @@ #define SB_DESIGN_CAPACITY 0x18 #define SB_DESIGN_VOLTAGE 0x19 #define SB_SPECIFICATION_INFO 0x1a -#define SB_MANUFACTURER_DATE 0x1b +#define SB_MANUFACTURE_DATE 0x1b #define SB_SERIAL_NUMBER 0x1c #define SB_MANUFACTURER_NAME 0x20 #define SB_DEVICE_NAME 0x21 |