2009-08-08 06:50:12 +05:30
|
|
|
/* vi: set sw=4 ts=4: */
|
|
|
|
/*
|
|
|
|
* This header makes it easier to include kernel headers
|
|
|
|
* which use u32 and such.
|
|
|
|
*
|
2010-08-16 23:44:46 +05:30
|
|
|
* Licensed under GPLv2, see file LICENSE in this source tree.
|
2009-08-08 06:50:12 +05:30
|
|
|
*/
|
|
|
|
#ifndef FIX_U32_H
|
|
|
|
#define FIX_U32_H 1
|
|
|
|
|
2010-03-16 05:52:35 +05:30
|
|
|
/* Try hard to pull in u32 types and such.
|
|
|
|
* Otherwise, #include "fix_u32.h" + #include <linux/foo.h>
|
|
|
|
* may end up typedef'ing bb_hack_u32 inside foo.h,
|
|
|
|
* and repeated typedefs aren't allowed in C/C++.
|
|
|
|
*/
|
|
|
|
#include <asm/types.h>
|
|
|
|
#include <linux/types.h>
|
|
|
|
|
|
|
|
/* In case above includes still failed to provide the types,
|
|
|
|
* provide them ourself
|
|
|
|
*/
|
2010-03-07 01:20:29 +05:30
|
|
|
#undef __u64
|
2009-08-08 06:50:12 +05:30
|
|
|
#undef u64
|
|
|
|
#undef u32
|
|
|
|
#undef u16
|
|
|
|
#undef u8
|
2010-03-07 01:20:29 +05:30
|
|
|
#undef __s64
|
2009-08-08 06:50:12 +05:30
|
|
|
#undef s64
|
|
|
|
#undef s32
|
|
|
|
#undef s16
|
|
|
|
#undef s8
|
|
|
|
|
2010-03-09 02:23:45 +05:30
|
|
|
#define __u64 bb_hack___u64
|
2010-03-16 05:52:35 +05:30
|
|
|
#define u64 bb_hack_u64
|
|
|
|
#define u32 bb_hack_u32
|
|
|
|
#define u16 bb_hack_u16
|
|
|
|
#define u8 bb_hack_u8
|
2010-03-09 02:23:45 +05:30
|
|
|
#define __s64 bb_hack___s64
|
2010-03-16 05:52:35 +05:30
|
|
|
#define s64 bb_hack_s64
|
|
|
|
#define s32 bb_hack_s32
|
|
|
|
#define s16 bb_hack_s16
|
|
|
|
#define s8 bb_hack_s8
|
2009-08-08 06:50:12 +05:30
|
|
|
|
2010-03-07 01:20:29 +05:30
|
|
|
typedef uint64_t __u64;
|
2009-08-08 06:50:12 +05:30
|
|
|
typedef uint64_t u64;
|
|
|
|
typedef uint32_t u32;
|
|
|
|
typedef uint16_t u16;
|
|
|
|
typedef uint8_t u8;
|
2010-03-07 01:20:29 +05:30
|
|
|
typedef int64_t __s64;
|
2009-08-08 06:50:12 +05:30
|
|
|
typedef int64_t s64;
|
|
|
|
typedef int32_t s32;
|
|
|
|
typedef int16_t s16;
|
|
|
|
typedef int8_t s8;
|
|
|
|
|
|
|
|
#endif
|