diff --git a/linux-ramdump-parser-v2/cachedumplib.py b/linux-ramdump-parser-v2/cachedumplib.py
index 18b43e8c483134c27fa9e8c6fcd46c66555d2705..ce5014be815fbfa28d846ae77cd403c4e57fafa5 100644
--- a/linux-ramdump-parser-v2/cachedumplib.py
+++ b/linux-ramdump-parser-v2/cachedumplib.py
@@ -231,16 +231,16 @@ class L1_ICache_A53(CacheDumpType_v1):
         self.unsupported_header_offset = 0
         self.TagSize = 2
         self.LineSize = 16
-        self.NumSets = 0x80
+        self.NumSets = 0x100
         self.NumWays = 2
 
     def parse_tag_fn(self, output, data, nset, nway):
         if self.TagSize != 2:
             raise Exception('cache tag size mismatch')
 
-        valid = (data[0] >> 1) & 0x1
-        n = (data[0] >> 0) & 0x1
-        addr = (data[0] >> 0) & 0xffffffff
+        valid = (data[0] >> 29) & 0x3
+        n = (data[0] >> 28) & 0x1
+        addr = (data[0] >> 0) & 0xfffffff
 
         addr = (addr << 12) | (nset << 6)
         output.append(valid)