summaryrefslogtreecommitdiffstats
path: root/src/include/runtime/interface.h
diff options
context:
space:
mode:
authorRoland Veloz <rveloz@us.ibm.com>2017-11-21 15:02:53 -0600
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-12-20 17:47:12 -0500
commit8e6bd68539af8394a3f96dab15464edc151794bb (patch)
tree03e3f07d0599bc0e60b54e4e3aa4d4c38b333f37 /src/include/runtime/interface.h
parent5cd50322982059a6b71d5957e22f6f85da17404e (diff)
downloadtalos-hostboot-8e6bd68539af8394a3f96dab15464edc151794bb.tar.gz
talos-hostboot-8e6bd68539af8394a3f96dab15464edc151794bb.zip
Updated the GenericFspMboxMessage_t struct
The GenericFspMboxMessage_t struct has been expanded to provide a lot more data than before. The highlights are that it now carries the data size, an error only flag, a sequence number and a magic number to identify the message. An initialize method has been provided to set some of these to default values. In addition the message types are consolidated into one enum. All enums have a prefix of GFMM to avoid name collisions. The sequence number is an auto incrementing number so we can keep track if the messages are received out of order. Change-Id: Ic0f1c2546ff1ce14f163d1da55646ed089216d19 RTC: 182267 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/49960 Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Diffstat (limited to 'src/include/runtime/interface.h')
-rw-r--r--src/include/runtime/interface.h18
1 files changed, 7 insertions, 11 deletions
diff --git a/src/include/runtime/interface.h b/src/include/runtime/interface.h
index 7258826ca..8aad5d5fb 100644
--- a/src/include/runtime/interface.h
+++ b/src/include/runtime/interface.h
@@ -503,7 +503,7 @@ typedef struct hostInterfaces
HBRT_FW_MSG_TYPE_RESP_NOP = 1,
HBRT_FW_MSG_TYPE_RESP_GENERIC = 2,
HBRT_FW_MSG_TYPE_REQ_HCODE_UPDATE = 3,
- HBRT_FW_MSG_HBRT_FSP = 4,
+ HBRT_FW_MSG_HBRT_FSP_REQ = 4,
HBRT_FW_MSG_TYPE_ERROR_LOG = 5,
HBRT_FW_MSG_HBRT_FSP_RESP = 6,
};
@@ -550,21 +550,17 @@ typedef struct hostInterfaces
} __attribute__ ((packed)) error_log;
// This struct is sent from HBRT with
- // io_type set to HBRT_FW_MSG_HBRT_FSP
- // This struct sends an MBox message to the FSP
- struct GenericFspMboxMessage_t generic_message;
-
- // This struct is sent from FSP with
- // io_type set to HBRT_FW_MSG_HBRT_FSP_RESP
- // This struct receives a message from the FSP
- struct GenericFspRspMessage_t generic_message_resp;
-
+ // io_type set to HBRT_FW_MSG_HBRT_FSP_REQ or
+ // HBRT_FW_MSG_HBRT_FSP_RESP
+ // This struct sends/receives an MBox message to the FSP
+ struct GenericFspMboxMessage_t generic_msg;
}; // end union
}; // end struct hbrt_fw_msg
// Created a static constexpr to return the base size of hbrt_fw_msg
// Can't do #define - sizeof not allowed to be used in #defines
- static constexpr size_t HBRT_FW_MSG_BASE_SIZE = sizeof(uint64_t);
+ static constexpr size_t HBRT_FW_MSG_BASE_SIZE =
+ sizeof(hbrt_fw_msg::io_type);
/**
* @brief Send a request to firmware, and receive a response
OpenPOWER on IntegriCloud