]> git.openfabrics.org - ~adrianc/mstflint.git/commitdiff
added support for ISFU in mstflint
authorAdrian Chiris <adrianc@mellanox.com>
Thu, 26 Feb 2015 15:35:05 +0000 (17:35 +0200)
committerAdrian Chiris <adrianc@mellanox.com>
Thu, 26 Feb 2015 15:35:05 +0000 (17:35 +0200)
mlxfwops/lib/fs3_ops.cpp
reg_access/reg_access.c
reg_access/reg_access.h

index 3c1c41e2668e4790e5453af5ddf5d7d107a226be..f0ecc1191efb0804cfd63ad86dd9ce0a08ee82b5 100644 (file)
@@ -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;
 }
index 3477e80eeb4f2acb925f00fb29585787fc9ee983..13982bfa36206ff185fcc7f380088e6799258064 100644 (file)
@@ -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
  ************************************/
index 0e24093f24a20713f33fcdf26d2e6f9c0057339d..51b6296d19f5da97e0d8b3d702da4934d4770fc9 100644 (file)
@@ -39,6 +39,7 @@ extern "C" {
 #include <mtcr.h>
 #include <tools_layouts/register_access_open_layouts.h>
 #include <tools_layouts/register_access_sib_layouts.h>
+#include <tools_layouts/cibfw_layouts.h>
 
 // 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 <tools_layouts/tools_open_layouts.h>
@@ -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
 }