summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorChristian Geddes <crgeddes@us.ibm.com>2019-03-21 12:57:30 -0500
committerChristian R. Geddes <crgeddes@us.ibm.com>2019-03-27 15:30:15 -0500
commit1564d45787cec40d0f80e2db04cd20c55ed1a2e9 (patch)
tree90da56ce638504749bb624af7ed924d08babb61f /src
parent994299cf3d456697f3da925712d63ca06ed6568d (diff)
downloadtalos-hostboot-1564d45787cec40d0f80e2db04cd20c55ed1a2e9.tar.gz
talos-hostboot-1564d45787cec40d0f80e2db04cd20c55ed1a2e9.zip
Wrap exp_draminit in a extern "C" to workaround name mangling
Without this hostboot was unable to find the symbols and compile. Change-Id: I2e93c995dc04691c9206b400a8c60b25bf502ec3 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/74851 Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: ANDRE A. MARIN <aamarin@us.ibm.com> Reviewed-by: STEPHEN GLANCY <sglancy@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/74858 Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com>
Diffstat (limited to 'src')
-rw-r--r--src/import/chips/ocmb/explorer/procedures/hwp/memory/exp_draminit.C67
1 files changed, 35 insertions, 32 deletions
diff --git a/src/import/chips/ocmb/explorer/procedures/hwp/memory/exp_draminit.C b/src/import/chips/ocmb/explorer/procedures/hwp/memory/exp_draminit.C
index 17643e5fc..e022ad49b 100644
--- a/src/import/chips/ocmb/explorer/procedures/hwp/memory/exp_draminit.C
+++ b/src/import/chips/ocmb/explorer/procedures/hwp/memory/exp_draminit.C
@@ -38,43 +38,46 @@
#include <lib/exp_draminit_utils.H>
#include <lib/shared/exp_consts.H>
-///
-/// @brief Initializes DRAM
-/// @param[in] i_target the controller
-/// @return FAPI2_RC_SUCCESS if ok
-///
-fapi2::ReturnCode exp_draminit(const fapi2::Target<fapi2::TARGET_TYPE_OCMB_CHIP>& i_target)
+extern "C"
{
- uint32_t l_crc = 0;
+ ///
+ /// @brief Initializes DRAM
+ /// @param[in] i_target the controller
+ /// @return FAPI2_RC_SUCCESS if ok
+ ///
+ fapi2::ReturnCode exp_draminit(const fapi2::Target<fapi2::TARGET_TYPE_OCMB_CHIP>& i_target)
+ {
+ uint32_t l_crc = 0;
- user_input_msdg l_phy_params;
- FAPI_TRY(mss::exp::setup_phy_params(i_target, l_phy_params),
- "Failed setup_phy_params() for %s", mss::c_str(i_target));
+ user_input_msdg l_phy_params;
+ FAPI_TRY(mss::exp::setup_phy_params(i_target, l_phy_params),
+ "Failed setup_phy_params() for %s", mss::c_str(i_target));
- // Copy the PHY initialization parameters into the internal buffer of Explorer
- FAPI_TRY( mss::exp::ib::putUserInputMsdg(i_target, l_phy_params, l_crc),
- "Failed putUserInputMsdg() for %s", mss::c_str(i_target) );
+ // Copy the PHY initialization parameters into the internal buffer of Explorer
+ FAPI_TRY( mss::exp::ib::putUserInputMsdg(i_target, l_phy_params, l_crc),
+ "Failed putUserInputMsdg() for %s", mss::c_str(i_target) );
- // Issue full boot mode cmd though EXP-FW REQ buffer
- {
- host_fw_command_struct l_cmd;
- mss::exp::setup_cmd_params(l_crc, l_cmd);
- FAPI_TRY( mss::exp::ib::putCMD(i_target, l_cmd),
- "Failed putCMD() for %s", mss::c_str(i_target) );
- }
+ // Issue full boot mode cmd though EXP-FW REQ buffer
+ {
+ host_fw_command_struct l_cmd;
+ mss::exp::setup_cmd_params(l_crc, l_cmd);
+ FAPI_TRY( mss::exp::ib::putCMD(i_target, l_cmd),
+ "Failed putCMD() for %s", mss::c_str(i_target) );
+ }
- // Read the response message from EXP-FW RESP buffer
- {
- host_fw_response_struct l_response;
- std::vector<uint8_t> l_rsp_data;
- FAPI_TRY( mss::exp::ib::getRSP(i_target, l_response, l_rsp_data),
- "Failed getRSP() for %s", mss::c_str(i_target) );
+ // Read the response message from EXP-FW RESP buffer
+ {
+ host_fw_response_struct l_response;
+ std::vector<uint8_t> l_rsp_data;
+ FAPI_TRY( mss::exp::ib::getRSP(i_target, l_response, l_rsp_data),
+ "Failed getRSP() for %s", mss::c_str(i_target) );
- // Check if cmd was successful
- FAPI_TRY(mss::exp::check::response(i_target, l_response),
- "Failed check::response() for %s", mss::c_str(i_target) );
- }
+ // Check if cmd was successful
+ FAPI_TRY(mss::exp::check::response(i_target, l_response),
+ "Failed check::response() for %s", mss::c_str(i_target) );
+ }
-fapi_try_exit:
- return fapi2::current_err;
+ fapi_try_exit:
+ return fapi2::current_err;
+ }
}
OpenPOWER on IntegriCloud