summaryrefslogtreecommitdiff
path: root/driver/battery/smart.c
diff options
context:
space:
mode:
Diffstat (limited to 'driver/battery/smart.c')
-rw-r--r--driver/battery/smart.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/driver/battery/smart.c b/driver/battery/smart.c
index 96a1a3f824..91b9bcfd10 100644
--- a/driver/battery/smart.c
+++ b/driver/battery/smart.c
@@ -287,16 +287,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;
}