aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStewart Smith <stewart@linux.ibm.com>2019-06-18 17:29:22 +1000
committerStewart Smith <stewart@linux.ibm.com>2019-06-24 15:59:07 +1000
commit5f64c9e48a120ccf49a27354c5a56b46d8441fc5 (patch)
tree60fc9e81e7860a1421d56ea1a6ee9f2b6556af98
parent77b17098b41cd2b61b70db6d503243f3bac4786b (diff)
downloadskiboot-5f64c9e48a120ccf49a27354c5a56b46d8441fc5.zip
skiboot-5f64c9e48a120ccf49a27354c5a56b46d8441fc5.tar.gz
skiboot-5f64c9e48a120ccf49a27354c5a56b46d8441fc5.tar.bz2
core/timer: Use platform heartmeat_time call for FSP platforms
Signed-off-by: Stewart Smith <stewart@linux.ibm.com>
-rw-r--r--core/timer.c2
-rw-r--r--platforms/ibm-fsp/common.c6
-rw-r--r--platforms/ibm-fsp/firenze.c1
-rw-r--r--platforms/ibm-fsp/ibm-fsp.h3
-rw-r--r--platforms/ibm-fsp/zz.c1
5 files changed, 12 insertions, 1 deletions
diff --git a/core/timer.c b/core/timer.c
index 1c53951..8f754cd 100644
--- a/core/timer.c
+++ b/core/timer.c
@@ -278,7 +278,7 @@ void late_init_timers(void)
heartbeat = platform.heartbeat_time();
} else if (p9_sbe_timer_ok()) {
heartbeat = HEARTBEAT_DEFAULT_MS * 10;
- } else if (p8_sbe_timer_ok() || fsp_present()) {
+ } else if (p8_sbe_timer_ok()) {
heartbeat = HEARTBEAT_DEFAULT_MS * 10;
}
diff --git a/platforms/ibm-fsp/common.c b/platforms/ibm-fsp/common.c
index 3bcb458..055a75c 100644
--- a/platforms/ibm-fsp/common.c
+++ b/platforms/ibm-fsp/common.c
@@ -255,3 +255,9 @@ int64_t ibm_fsp_sensor_read(uint32_t sensor_hndl, int token,
{
return fsp_opal_read_sensor(sensor_hndl, token, sensor_data);
}
+
+int __attrconst fsp_heartbeat_time(void)
+{
+ /* Same as core/timer.c HEARTBEAT_DEFAULT_MS * 10 */
+ return 200 * 10;
+}
diff --git a/platforms/ibm-fsp/firenze.c b/platforms/ibm-fsp/firenze.c
index 43f1af9..1aedc05 100644
--- a/platforms/ibm-fsp/firenze.c
+++ b/platforms/ibm-fsp/firenze.c
@@ -229,4 +229,5 @@ DECLARE_PLATFORM(firenze) = {
.terminate = ibm_fsp_terminate,
.op_display = fsp_op_display,
.vpd_iohub_load = vpd_iohub_load,
+ .heartbeat_time = fsp_heartbeat_time,
};
diff --git a/platforms/ibm-fsp/ibm-fsp.h b/platforms/ibm-fsp/ibm-fsp.h
index 5466775..c672026 100644
--- a/platforms/ibm-fsp/ibm-fsp.h
+++ b/platforms/ibm-fsp/ibm-fsp.h
@@ -47,5 +47,8 @@ extern void firenze_pci_get_slot_info(struct phb *phb,
void vpd_iohub_load(struct dt_node *hub_node);
void vpd_preload(struct dt_node *hub_node);
+/* Platform heartbeat time */
+int fsp_heartbeat_time(void);
+
#endif /* __IBM_FSP_COMMON_H */
diff --git a/platforms/ibm-fsp/zz.c b/platforms/ibm-fsp/zz.c
index ac3e1c9..87d0641 100644
--- a/platforms/ibm-fsp/zz.c
+++ b/platforms/ibm-fsp/zz.c
@@ -93,4 +93,5 @@ DECLARE_PLATFORM(zz) = {
.npu2_device_detect = npu2_i2c_presence_detect,
.op_display = fsp_op_display,
.vpd_iohub_load = vpd_iohub_load,
+ .heartbeat_time = fsp_heartbeat_time,
};