This commit replaces PutUInt32 custom macro with put_unaligned_le32
 function included in the linux kernel.

Signed-off-by: Sergio Paracuellos <sergio.paracuel...@gmail.com>
---
 drivers/staging/ks7010/michael_mic.c | 14 +++-----------
 1 file changed, 3 insertions(+), 11 deletions(-)

diff --git a/drivers/staging/ks7010/michael_mic.c 
b/drivers/staging/ks7010/michael_mic.c
index 82ac122..79efaf3 100644
--- a/drivers/staging/ks7010/michael_mic.c
+++ b/drivers/staging/ks7010/michael_mic.c
@@ -12,21 +12,13 @@
 #include <linux/types.h>
 #include <linux/string.h>
 #include <linux/bitops.h>
+#include <asm/unaligned.h>
 #include "michael_mic.h"
 
 // Convert from Byte[] to UInt32 in a portable way
 #define getUInt32(A, B)        ((uint32_t)(A[B + 0] << 0) \
                + (A[B + 1] << 8) + (A[B + 2] << 16) + (A[B + 3] << 24))
 
-// Convert from UInt32 to Byte[] in a portable way
-#define putUInt32(A, B, C)                                     \
-do {                                                           \
-       A[B + 0] = (uint8_t)(C & 0xff);                         \
-       A[B + 1] = (uint8_t)((C >> 8) & 0xff);                  \
-       A[B + 2] = (uint8_t)((C >> 16) & 0xff);                 \
-       A[B + 3] = (uint8_t)((C >> 24) & 0xff);                 \
-} while (0)
-
 // Reset the state to the empty message.
 static inline void michael_clear(struct michael_mic_t *mic)
 {
@@ -113,8 +105,8 @@ static void michael_get_mic(struct michael_mic_t *mic, 
uint8_t *dst)
        MichaelBlockFunction(mic->l, mic->r);
        MichaelBlockFunction(mic->l, mic->r);
        // The appendByte function has already computed the result.
-       putUInt32(dst, 0, mic->l);
-       putUInt32(dst, 4, mic->r);
+       put_unaligned_le32(mic->l, dst);
+       put_unaligned_le32(mic->r, dst + 4);
 
        // Reset to the empty message.
        michael_clear(mic);
-- 
2.7.4

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to