From c4484886ede3e9b3eed5f4d1e153629150925883 Mon Sep 17 00:00:00 2001
From: David Collins <collinsd@codeaurora.org>
Date: Wed, 18 Nov 2015 16:39:56 -0800
Subject: [PATCH] lrdp-v2: cpr3_info: parse APM state

Parse out the APM state that has been configured so that it can
be compared against the VDD supply voltage to ensure correct
functionality.

Change-Id: Iabf78a6799015861379a39d93e59289a489e1510
---
 linux-ramdump-parser-v2/parsers/cpr3_info.py | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/linux-ramdump-parser-v2/parsers/cpr3_info.py b/linux-ramdump-parser-v2/parsers/cpr3_info.py
index fbcb5df..3c5e279 100644
--- a/linux-ramdump-parser-v2/parsers/cpr3_info.py
+++ b/linux-ramdump-parser-v2/parsers/cpr3_info.py
@@ -218,6 +218,15 @@ class CPR3Info(RamParser):
         if apm_thresh_volt == 0:
             return
         tmp = '%-30s = %d uV\n' % ("APM threshold", apm_thresh_volt)
+        apm_supply = self.ramdump.read_int(
+            apm_addr + self.ramdump.field_offset('struct msm_apm_ctrl_dev',
+                                                 'supply'))
+        if apm_supply is None:
+            print_out_str("could not read APM supply")
+        elif apm_supply == 0:
+            tmp += '%-30s = %s\n' % ("APM supply", "APCC")
+        elif apm_supply == 1:
+            tmp += '%-30s = %s\n' % ("APM supply", "MX")
         self.output.append(tmp)
 
     def get_aging_info(self, ctrl_addr):
-- 
GitLab