u-boot/include/linux/bitrev.h
Mike Dunn 0dd9c7a924 lib: import bitrev library from the linux kernel
This patch adds the bitrev library from the linux kernel.  This is a simple
algorithm that uses an 8 bit look-up table to reverse the bits in data types of
8, 16, or 32 bit widths.  The docg4 nand flash driver uses it.

[port from linux kernel v3.9 commit 7ee32a6d30d1c8a3b7a07a6269da8f0a08662927]
[originally added: v2.6.20 by commit a5cfc1ec58a07074dacb6aa8c79eff864c966d12]

Signed-off-by: Mike Dunn <mikedunn@newsguy.com>
2013-05-05 23:47:04 +02:00

24 lines
477 B
C

/*
* This file is released under the terms of GPL v2 and any later version.
* See the file COPYING in the root directory of the source tree for details.
*
* Based on bitrev from the Linux kernel, by Akinobu Mita
*/
#ifndef _LINUX_BITREV_H
#define _LINUX_BITREV_H
#include <linux/types.h>
extern u8 const byte_rev_table[256];
static inline u8 bitrev8(u8 byte)
{
return byte_rev_table[byte];
}
u16 bitrev16(u16 in);
u32 bitrev32(u32 in);
#endif /* _LINUX_BITREV_H */