LibXenon
Bare-metal Xbox 360 homebrew library
Loading...
Searching...
No Matches
libfdt_env.h
Go to the documentation of this file.
1#ifndef _LIBFDT_ENV_H
2#define _LIBFDT_ENV_H
3
4#include <stddef.h>
5#include <xetypes.h>
6#include <nocfe/lib_types.h>
7#include "string.h"
8
9typedef u8 uint8_t;
10typedef u16 uint16_t;
11typedef u32 uint32_t;
12typedef u64 uint64_t;
13
14typedef s8 int8_t;
15typedef s16 int16_t;
16typedef s32 int32_t;
17typedef s64 int64_t;
18
19#define _B(n) ((unsigned long long)((uint8_t *)&x)[n])
20static inline uint32_t fdt32_to_cpu(uint32_t x)
21{
22 return (_B(0) << 24) | (_B(1) << 16) | (_B(2) << 8) | _B(3);
23}
24#define cpu_to_fdt32(x) fdt32_to_cpu(x)
25
26static inline uint64_t fdt64_to_cpu(uint64_t x)
27{
28 return (_B(0) << 56) | (_B(1) << 48) | (_B(2) << 40) | (_B(3) << 32)
29 | (_B(4) << 24) | (_B(5) << 16) | (_B(6) << 8) | _B(7);
30}
31#define cpu_to_fdt64(x) fdt64_to_cpu(x)
32#undef _B
33
34#endif /* _LIBFDT_ENV_H */
s32 int32_t
Definition: libfdt_env.h:16
u32 uint32_t
Definition: libfdt_env.h:11
s8 int8_t
Definition: libfdt_env.h:14
s16 int16_t
Definition: libfdt_env.h:15
u16 uint16_t
Definition: libfdt_env.h:10
#define _B(n)
Definition: libfdt_env.h:19
u64 uint64_t
Definition: libfdt_env.h:12
u8 uint8_t
Definition: libfdt_env.h:9
s64 int64_t
Definition: libfdt_env.h:17
int64_t s64
64bit signed integer
Definition: xetypes.h:20
uint64_t u64
64bit unsigned integer
Definition: xetypes.h:15
uint8_t u8
8bit unsigned integer
Definition: xetypes.h:12
int8_t s8
8bit signed integer
Definition: xetypes.h:17
int16_t s16
16bit signed integer
Definition: xetypes.h:18
uint16_t u16
16bit unsigned integer
Definition: xetypes.h:13
int32_t s32
32bit signed integer
Definition: xetypes.h:19
uint32_t u32
32bit unsigned integer
Definition: xetypes.h:14