summaryrefslogtreecommitdiffstats
path: root/src/occ_405/sensor
diff options
context:
space:
mode:
authorChris Cain <cjcain@us.ibm.com>2017-01-10 14:32:13 -0600
committerChristopher J. Cain <cjcain@us.ibm.com>2017-01-18 18:40:21 -0500
commit6089fe0e7580b1c5030d1f380b1bc91c293e8bb9 (patch)
tree274c7e5e0c6a3214fd4c792266fbe8a396fa23d8 /src/occ_405/sensor
parent4141b5f5fef2ba4b444aabbda1677e7f583cd4e8 (diff)
downloadtalos-occ-6089fe0e7580b1c5030d1f380b1bc91c293e8bb9.tar.gz
talos-occ-6089fe0e7580b1c5030d1f380b1bc91c293e8bb9.zip
AVS Bus divider, loadline and misc changes
- validate CRC in cmd response - read current / voltage on alternating ticks (commands on both bus for each tick) - calculate chip power (with loadline) and power for each tick - update divider value for bus speed - add error history counters and add them to logs Change-Id: I33bce916dc2dffef6a6d616633a5f1266d7baa7e RTC: 163992 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/34947 Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Martha Broyles <mbroyles@us.ibm.com> Reviewed-by: Christopher J. Cain <cjcain@us.ibm.com>
Diffstat (limited to 'src/occ_405/sensor')
-rwxr-xr-xsrc/occ_405/sensor/sensor_enum.h3
-rwxr-xr-xsrc/occ_405/sensor/sensor_info.c2
-rwxr-xr-xsrc/occ_405/sensor/sensor_table.c5
3 files changed, 9 insertions, 1 deletions
diff --git a/src/occ_405/sensor/sensor_enum.h b/src/occ_405/sensor/sensor_enum.h
index 0c793d0..37c411c 100755
--- a/src/occ_405/sensor/sensor_enum.h
+++ b/src/occ_405/sensor/sensor_enum.h
@@ -69,6 +69,9 @@ enum e_gsid
PROBE250US6, // Internal Sensor for debug via AMESTER
PROBE250US7, // Internal Sensor for debug via AMESTER
+ VOLTVDDSENSE, // chip voltage (remote sense adjusted for loadline)
+ VOLTVDNSENSE, // chip voltage (remote sense adjusted for loadline)
+
GPEtickdur0, // Duration on the GPE0 Engine
GPEtickdur1, // Duration on the GPE1 Engine
RTLtickdur, // Duration on the RTL tick interrupt
diff --git a/src/occ_405/sensor/sensor_info.c b/src/occ_405/sensor/sensor_info.c
index cc9e253..dc7e77f 100755
--- a/src/occ_405/sensor/sensor_info.c
+++ b/src/occ_405/sensor/sensor_info.c
@@ -223,6 +223,8 @@ const sensor_info_t G_sensor_info[] =
SENSOR_INFO_T_ENTRY( PROBE250US5, "n/a\0", AMEC_SENSOR_TYPE_GENERIC, AMEC_SENSOR_LOC_OCC, AMEC_SENSOR_NONUM, AMEEFP_250US_IN_HZ, AMEFP( 1, 0) ),
SENSOR_INFO_T_ENTRY( PROBE250US6, "n/a\0", AMEC_SENSOR_TYPE_GENERIC, AMEC_SENSOR_LOC_OCC, AMEC_SENSOR_NONUM, AMEEFP_250US_IN_HZ, AMEFP( 1, 0) ),
SENSOR_INFO_T_ENTRY( PROBE250US7, "n/a\0", AMEC_SENSOR_TYPE_GENERIC, AMEC_SENSOR_LOC_OCC, AMEC_SENSOR_NONUM, AMEEFP_250US_IN_HZ, AMEFP( 1, 0) ),
+ SENSOR_INFO_T_ENTRY( VOLTVDDSENSE, "mV\0", AMEC_SENSOR_TYPE_VOLTAGE, AMEC_SENSOR_LOC_OCC, AMEC_SENSOR_NONUM, AMEEFP_250US_IN_HZ, AMEFP( 1, -1) ),
+ SENSOR_INFO_T_ENTRY( VOLTVDNSENSE, "mV\0", AMEC_SENSOR_TYPE_VOLTAGE, AMEC_SENSOR_LOC_OCC, AMEC_SENSOR_NONUM, AMEEFP_250US_IN_HZ, AMEFP( 1, -1) ),
SENSOR_INFO_T_ENTRY( GPEtickdur0, "us\0", AMEC_SENSOR_TYPE_TIME, AMEC_SENSOR_LOC_OCC, AMEC_SENSOR_NONUM, AMEEFP_250US_IN_HZ, AMEFP( 1, 0) ),
SENSOR_INFO_T_ENTRY( GPEtickdur1, "us\0", AMEC_SENSOR_TYPE_TIME, AMEC_SENSOR_LOC_OCC, AMEC_SENSOR_NONUM, AMEEFP_250US_IN_HZ, AMEFP( 1, 0) ),
SENSOR_INFO_T_ENTRY( RTLtickdur, "us\0", AMEC_SENSOR_TYPE_TIME, AMEC_SENSOR_LOC_OCC, AMEC_SENSOR_NONUM, AMEEFP_250US_IN_HZ, AMEFP( 1, 0) ),
diff --git a/src/occ_405/sensor/sensor_table.c b/src/occ_405/sensor/sensor_table.c
index 33c34d7..faa7d68 100755
--- a/src/occ_405/sensor/sensor_table.c
+++ b/src/occ_405/sensor/sensor_table.c
@@ -287,7 +287,8 @@ const sensor_ptr_t G_amec_sensor_list[] =
SENSOR_PTR( PROBE250US5, &g_amec_sys.fw.probe250us[5]),
SENSOR_PTR( PROBE250US6, &g_amec_sys.fw.probe250us[6]),
SENSOR_PTR( PROBE250US7, &g_amec_sys.fw.probe250us[7]),
-
+ SENSOR_PTR( VOLTVDDSENSE, &g_amec_sys.fw.voltvddsense),
+ SENSOR_PTR( VOLTVDNSENSE, &g_amec_sys.fw.voltvdnsense),
SENSOR_PTR( GPEtickdur0, &g_amec_sys.fw.gpetickdur[0]),
SENSOR_PTR( GPEtickdur1, &g_amec_sys.fw.gpetickdur[1]),
SENSOR_PTR( RTLtickdur, &g_amec_sys.fw.prcdupdatedur),
@@ -467,6 +468,8 @@ const minisensor_ptr_t G_amec_mini_sensor_list[] INIT_SECTION =
MINI_SENSOR_PTR( PROBE250US5, NULL),
MINI_SENSOR_PTR( PROBE250US6, NULL),
MINI_SENSOR_PTR( PROBE250US7, NULL),
+ MINI_SENSOR_PTR( VOLTVDDSENSE, NULL),
+ MINI_SENSOR_PTR( VOLTVDNSENSE, NULL),
MINI_SENSOR_PTR( GPEtickdur0, NULL),
MINI_SENSOR_PTR( GPEtickdur1, NULL),
MINI_SENSOR_PTR( RTLtickdur, NULL),
OpenPOWER on IntegriCloud