summaryrefslogtreecommitdiffstats
path: root/src/include/usr
diff options
context:
space:
mode:
authorRoland Veloz <rveloz@us.ibm.com>2019-05-28 17:47:56 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2019-05-31 09:39:30 -0500
commitf38ca7d5412ba8fb077403d043889a64ff97cff9 (patch)
tree6bbdffd19f0d5e5dc61aef58fd8ee3ab7ac411b8 /src/include/usr
parent36c966c7dd11a9ce7c93cfe18e12aa51f949b978 (diff)
downloadblackbird-hostboot-f38ca7d5412ba8fb077403d043889a64ff97cff9.tar.gz
blackbird-hostboot-f38ca7d5412ba8fb077403d043889a64ff97cff9.zip
Added new GenericFspMboxMessage_t interface to save NVDIMM keys
* Added struct AttributeSetter_t to be sent as a GenericFspMboxMessage_t message via a firmware request. * Created 'sendAttributes(const vector<Attribute>&)' to pack the attribute data into the message to be sent. * Moved AttributeTank::Attribute from the private area to the public area so it can be used outside of class AttributeTank. * Added more documentation on how the process of adding and creating messages is done. Change-Id: Id592b6460a6f1f12a75c01b5a131bcf492480d8b RTC:208343 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77951 Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Matthew Raybuck <matthew.raybuck@ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/include/usr')
-rw-r--r--src/include/usr/mbox/mbox_queues.H2
-rw-r--r--src/include/usr/runtime/runtime_reasoncodes.H4
-rw-r--r--src/include/usr/targeting/common/attributeTank.H46
3 files changed, 28 insertions, 24 deletions
diff --git a/src/include/usr/mbox/mbox_queues.H b/src/include/usr/mbox/mbox_queues.H
index aa2b9a4a8..19c5eeabc 100644
--- a/src/include/usr/mbox/mbox_queues.H
+++ b/src/include/usr/mbox/mbox_queues.H
@@ -82,6 +82,8 @@ namespace MBOX
FSP_TARG_DECONFIG_MSGQ = 0x80000010,
FSP_SCOM_OPS_MSGQ = 0x80000011,
FSP_OCC_MSGQ_ID = 0x80000012,
+ FSP_NVDIMM_KEYS_MSGQ_ID = 0x80000013, // Attribute write request, equivalent
+ // to HWSV's ATTR_WRITE_OP_QUEUE_ID
FSP_LID_MSGQ = FSP_ATTR_SYNC_MSGQ,
diff --git a/src/include/usr/runtime/runtime_reasoncodes.H b/src/include/usr/runtime/runtime_reasoncodes.H
index 6b77d621a..735a4ec6c 100644
--- a/src/include/usr/runtime/runtime_reasoncodes.H
+++ b/src/include/usr/runtime/runtime_reasoncodes.H
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2012,2018 */
+/* Contributors Listed Below - COPYRIGHT 2012,2019 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -66,6 +66,7 @@ namespace RUNTIME
MOD_CHECK_HB_RES_MEM_LIMIT = 0x26, /**< populate_hbruntime.C */
MOD_INIT_RT_RES_MEM_TRACE_BUF = 0x27, /**< rt_rsvdtracebuffer.C */
MOD_OPEN_UNTRUSTED_SP_AREAS = 0x28, /**< populate_hbruntime.C */
+ MOD_SEND_ATTRIBUTES_TO_FSP = 0x29, /**< hbrt_utilities.H */
};
enum RuntimeReasonCode
@@ -139,6 +140,7 @@ namespace RUNTIME
RC_SP_ATTN_AREA_OVERFLOW = RUNTIME_COMP_ID | 0x42,
RC_SP_ATTN_AREA1_SIZE_OVERFLOW = RUNTIME_COMP_ID | 0x43,
RC_UNKNOWN_LABEL = RUNTIME_COMP_ID | 0x44,
+ RC_NULL_FIRMWARE_MSG_PTR = RUNTIME_COMP_ID | 0x45,
};
enum UserDetailsTypes
diff --git a/src/include/usr/targeting/common/attributeTank.H b/src/include/usr/targeting/common/attributeTank.H
index a3f9afeab..ccb568889 100644
--- a/src/include/usr/targeting/common/attributeTank.H
+++ b/src/include/usr/targeting/common/attributeTank.H
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2013,2017 */
+/* Contributors Listed Below - COPYRIGHT 2013,2019 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -146,6 +146,28 @@ namespace AttributeTank
#ifndef STANDALONE_COMPILE
/**
+ * @struct Attribute
+ *
+ * This structure defines a single attribute.
+ */
+ struct Attribute
+ {
+ /**
+ * @brief Constructor
+ */
+ Attribute();
+
+ /**
+ * @brief Destructor. Frees memory
+ */
+ ~Attribute();
+
+ // Public data
+ AttributeHeader iv_hdr;
+ uint8_t * iv_pVal; // Pointer to attribute value
+ };
+
+ /**
* @struct AttributeSerializedChunk
*
* This structure defines a chunk of memory for containing serialized
@@ -397,28 +419,6 @@ private:
AttributeTank(const AttributeTank & i_right);
AttributeTank & operator=(const AttributeTank & i_right);
- /**
- * @struct Attribute
- *
- * This structure defines a single attribute.
- */
- struct Attribute
- {
- /**
- * @brief Constructor
- */
- Attribute();
-
- /**
- * @brief Destructor. Frees memory
- */
- ~Attribute();
-
- // Public data
- AttributeHeader iv_hdr;
- uint8_t * iv_pVal; // Pointer to attribute value
- };
-
// The attributes
// Note: A possible performance boost could be to store the elements in a
// map, the key could be a sub-structure.
OpenPOWER on IntegriCloud