summaryrefslogtreecommitdiffstats
path: root/src/import
diff options
context:
space:
mode:
authorStephen Glancy <sglancy@us.ibm.com>2018-08-20 14:32:40 -0500
committerSachin Gupta <sgupta2m@in.ibm.com>2019-01-10 21:41:37 -0600
commitb1e13ff2022b42a6d9f7db122a4dd2b103c35422 (patch)
tree2eb4cc42ebd0b15a25664fd2af2d4dc6648fd1b0 /src/import
parent09fc729a0e4981d78c31287f4d493284c25343ee (diff)
downloadtalos-sbe-b1e13ff2022b42a6d9f7db122a4dd2b103c35422.tar.gz
talos-sbe-b1e13ff2022b42a6d9f7db122a4dd2b103c35422.zip
Adds explorer OMI training code
Change-Id: Ic4fcd226eea7478ffff6cacb830f8e1e83e6f247 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/64919 Reviewed-by: Louis Stermole <stermole@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: RYAN P. KING <rpking@us.ibm.com> Reviewed-by: ANDRE A. MARIN <aamarin@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/69958 Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com>
Diffstat (limited to 'src/import')
-rw-r--r--src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/i2c/exp_i2c.H14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/i2c/exp_i2c.H b/src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/i2c/exp_i2c.H
index 21b7f30e..0c989cd4 100644
--- a/src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/i2c/exp_i2c.H
+++ b/src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/i2c/exp_i2c.H
@@ -62,7 +62,7 @@ inline fapi2::ReturnCode status_code( const fapi2::Target<fapi2::TARGET_TYPE_OCM
const std::vector<uint8_t>& i_data )
{
// Set to a high number to make sure check for SUCCESS (== 0) isn't a fluke
- size_t l_status = ~(0);
+ uint8_t l_status = ~(0);
FAPI_TRY( status::get_status_code(i_target, i_data, l_status) );
// Technically many cmds have their own status code decoding..but SUCCESS is always 0.
@@ -92,7 +92,8 @@ inline void fw_status_setup(size_t& o_size,
std::vector<uint8_t>& o_cmd_id)
{
o_size = FW_STATUS_BYTE_LEN;
- o_cmd_id.assign({FW_STATUS});
+ o_cmd_id.clear();
+ o_cmd_id.push_back(FW_STATUS);
}
///
@@ -125,7 +126,16 @@ fapi_try_exit:
inline void boot_config_setup(std::vector<uint8_t>& io_data)
{
+ // Need data length as well - boot config can only ever be written
+ io_data.insert(io_data.begin(), FW_BOOT_CONFIG_BYTE_LEN);
+
+ // Then add the command
io_data.insert(io_data.begin(), FW_BOOT_CONFIG);
+
+ // Written commands need to be in the form of
+ // CMD
+ // DATA LEN
+ // DATA
}
///
OpenPOWER on IntegriCloud