]> git.openfabrics.org - ~adrianc/mstflint.git/commitdiff
Added buffer read/write with no endianedd swap to mtcr.h
authorMohammad Sawalha <mohammad@mellanox.com>
Wed, 19 Jun 2013 12:13:26 +0000 (15:13 +0300)
committerOren Kladnitsky <orenk@dev.mellanox.co.il>
Sun, 4 Aug 2013 13:47:03 +0000 (16:47 +0300)
include/mtcr_ul/mtcr.h

index 9364e8ae646c74e8d8039ad4699df5807e948fb1..db8359d527aff53a5c1266eb5029a69ad7ff97eb 100644 (file)
@@ -1102,6 +1102,38 @@ int mos_reg_access(mfile *mf, int reg_access, void *reg_data, u_int32_t cmd_type
 }
 #endif
 
+static void mtcr_fix_endianness(u_int32_t *buf, int len) {
+    int i;
+
+    for (i = 0; i < (len/4); ++i) {
+        buf[i] = __be32_to_cpu(buf[i]);
+    }
+}
+
+
+int mread_buffer(mfile *mf, unsigned int offset, u_int8_t* data, int byte_len)
+#ifdef MTCR_EXPORT
+;
+#else
+{
+    int rc;
+    rc = mread4_block(mf, offset, (u_int32_t*)data, byte_len);
+    mtcr_fix_endianness((u_int32_t*)data, byte_len);
+    return rc;
+
+}
+#endif
+
+int mwrite_buffer(mfile *mf, unsigned int offset, u_int8_t* data, int byte_len)
+#ifdef MTCR_EXPORT
+;
+#else
+{
+    mtcr_fix_endianness((u_int32_t*)data, byte_len);
+    return mwrite4_block(mf, offset, (u_int32_t*)data, byte_len);
+}
+#endif
+
 #ifdef __cplusplus
 }
 #endif