google_eeprom: STRD and DINF layout update

Bug: 205000635
Signed-off-by: Jenny Ho <[email protected]>
Change-Id: Ia91728ddc089a856e762b0e047e3a5764e44a997
diff --git a/google_eeprom.c b/google_eeprom.c
index 20fec14..6fcc43d 100644
--- a/google_eeprom.c
+++ b/google_eeprom.c
@@ -22,8 +22,8 @@
 #define BATT_EEPROM_TAG_BGPN_LEN	GBMS_BGPN_LEN
 #define BATT_EEPROM_TAG_BRID_OFFSET	0x17
 #define BATT_EEPROM_TAG_BRID_LEN	1
-#define BATT_EEPROM_TAG_DINF_OFFSET	0x1E
-#define BATT_EEPROM_TAG_DINF_LEN	GBMS_DINF_LEN
+#define BATT_EEPROM_TAG_STRD_OFFSET	0x1E
+#define BATT_EEPROM_TAG_STRD_LEN	12
 #define BATT_EEPROM_TAG_BCNT_OFFSET	0x2E
 #define BATT_EEPROM_TAG_BCNT_LEN	(GBMS_CCBIN_BUCKET_COUNT * 2)
 #define BATT_EEPROM_TAG_GMSR_OFFSET	0x42
@@ -40,6 +40,9 @@
 #define BATT_EEPROM_TAG_HIST_OFFSET	0x5E
 #define BATT_EEPROM_TAG_HIST_LEN	BATT_ONE_HIST_LEN
 
+#define BATT_EEPROM_TAG_DINF_OFFSET	0x3FA
+#define BATT_EEPROM_TAG_DINF_LEN	4 // GBMS_DINF_LEN
+
 static struct gbms_storage_desc *gbee_desc;
 
 #define GBEE_GET_NVRAM(ptr) ((struct nvmem_device *)(ptr))
@@ -100,6 +103,10 @@
 		*addr = BATT_EEPROM_TAG_CELC_OFFSET;
 		*count = BATT_EEPROM_TAG_CELC_LEN;
 		break;
+	case GBMS_TAG_STRD:
+		*addr = BATT_EEPROM_TAG_STRD_OFFSET;
+		*count = BATT_EEPROM_TAG_STRD_LEN;
+		break;
 	default:
 		ret = -ENOENT;
 		break;
@@ -115,7 +122,8 @@
 					   GBMS_TAG_BRID, GBMS_TAG_SNUM,
 					   GBMS_TAG_GMSR, GBMS_TAG_BCNT,
 					   GBMS_TAG_CNHS, GBMS_TAG_SELC,
-					   GBMS_TAG_CELC, GBMS_TAG_LOTR };
+					   GBMS_TAG_CELC, GBMS_TAG_LOTR,
+					   GBMS_TAG_STRD };
 	const int count = ARRAY_SIZE(keys);
 
 	if (index < 0 || index >= count)
@@ -171,7 +179,7 @@
 	if ((tag != GBMS_TAG_DINF) && (tag != GBMS_TAG_GMSR) &&
 	    (tag != GBMS_TAG_BCNT) && (tag != GBMS_TAG_CNHS) &&
 	    (tag != GBMS_TAG_SELC) && (tag != GBMS_TAG_CELC) &&
-	    (tag != GBMS_TAG_BPST))
+	    (tag != GBMS_TAG_BPST) && (tag != GBMS_TAG_STRD))
 		return -ENOENT;
 
 	ret = GBEE_STORAGE_INFO(tag, &offset, &len, ptr);