浏览代码

staging: ks7010: replace custom rotation operations in favour of the kernel ones

This patch replaces custom ROR32 and ROL32 macros for the ones included in
bitops header of the linux kernel.

Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Sergio Paracuellos 7 年之前
父节点
当前提交
8b6f053790
共有 1 个文件被更改,包括 4 次插入6 次删除
  1. 4 6
      drivers/staging/ks7010/michael_mic.c

+ 4 - 6
drivers/staging/ks7010/michael_mic.c

@@ -11,11 +11,9 @@
 
 #include <linux/types.h>
 #include <linux/string.h>
+#include <linux/bitops.h>
 #include "michael_mic.h"
 
-// Rotation functions on 32 bit values
-#define ROL32(A, n)	(((A) << (n)) | (((A) >> (32 - (n))) & ((1UL << (n)) - 1)))
-#define ROR32(A, n)	ROL32((A), 32 - (n))
 // 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))
@@ -50,13 +48,13 @@ void MichaelInitializeFunction(struct michael_mic_t *Mic, uint8_t *key)
 
 #define MichaelBlockFunction(L, R)				\
 do {								\
-	R ^= ROL32(L, 17);					\
+	R ^= rol32(L, 17);					\
 	L += R;							\
 	R ^= ((L & 0xff00ff00) >> 8) | ((L & 0x00ff00ff) << 8);	\
 	L += R;							\
-	R ^= ROL32(L, 3);					\
+	R ^= rol32(L, 3);					\
 	L += R;							\
-	R ^= ROR32(L, 2);					\
+	R ^= ror32(L, 2);					\
 	L += R;							\
 } while (0)