From: Adrian Chiris Date: Thu, 26 Feb 2015 15:35:05 +0000 (+0200) Subject: added support for ISFU in mstflint X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=00eb0057a1930fa3d8a6474e8f0bb48ce98e5eff;p=~adrianc%2Fmstflint.git added support for ISFU in mstflint --- diff --git a/mlxfwops/lib/fs3_ops.cpp b/mlxfwops/lib/fs3_ops.cpp index 3c1c41e..f0ecc11 100644 --- a/mlxfwops/lib/fs3_ops.cpp +++ b/mlxfwops/lib/fs3_ops.cpp @@ -1922,7 +1922,6 @@ const char* Fs3Operations::FwGetResetRecommandationStr() bool Fs3Operations::Fs3IsfuActivateImage(u_int32_t newImageStart) { -#ifndef MST_UL // ISFU not supported for mstflint int rc; mfile *mf = NULL; struct cibfw_register_mfai mfai; @@ -1951,8 +1950,5 @@ bool Fs3Operations::Fs3IsfuActivateImage(u_int32_t newImageStart) if (rc) { return false; } -#else - return ((Flash*)(this->_ioAccess))->update_boot_addr(newImageStart); -#endif return true; } diff --git a/reg_access/reg_access.c b/reg_access/reg_access.c index 3477e80..13982bf 100644 --- a/reg_access/reg_access.c +++ b/reg_access/reg_access.c @@ -178,6 +178,25 @@ reg_access_status_t reg_access_mgir(mfile* mf, reg_access_method_t method, struc //} } +/************************************ + * Function: reg_access_mfrl + ************************************/ +reg_access_status_t reg_access_mfrl (mfile* mf, reg_access_method_t method, struct cibfw_register_mfrl* mfrl) +{ + REG_ACCCESS(mf, method, REG_ID_MFRL, mfrl, mfrl, cibfw_register); +} + +/************************************ + * Function: reg_access_mfai + ************************************/ +reg_access_status_t reg_access_mfai (mfile* mf, reg_access_method_t method, struct cibfw_register_mfai* mfai) +{ + if (method != REG_ACCESS_METHOD_SET) { // this register supports only set method + return ME_REG_ACCESS_BAD_METHOD; + } + REG_ACCCESS(mf, method, REG_ID_MFAI, mfai, mfai, cibfw_register); +} + /************************************ * Function: reg_access_err2str ************************************/ diff --git a/reg_access/reg_access.h b/reg_access/reg_access.h index 0e24093..51b6296 100644 --- a/reg_access/reg_access.h +++ b/reg_access/reg_access.h @@ -39,6 +39,7 @@ extern "C" { #include #include #include +#include // Hack, we include this for the MNV registers as they are not officialy a part of register_access so we defined them in tools.adb #include @@ -64,6 +65,8 @@ reg_access_status_t reg_access_mnva (mfile* mf, reg_access_method_t method, stru reg_access_status_t reg_access_mnvi (mfile* mf, reg_access_method_t method, struct tools_open_mnvi* mnvi); reg_access_status_t reg_access_mnvia (mfile* mf, reg_access_method_t method, struct tools_open_mnvia* mnvia); reg_access_status_t reg_access_mgir (mfile* mf, reg_access_method_t method, struct register_access_sib_mgir* mgir); +reg_access_status_t reg_access_mfrl (mfile* mf, reg_access_method_t method, struct cibfw_register_mfrl* mfrl); +reg_access_status_t reg_access_mfai (mfile* mf, reg_access_method_t method, struct cibfw_register_mfai* mfai); #ifdef __cplusplus }