Moves KiB and friends from common.h (XCC)
[akaros.git] / kern / include / sys / types.h
1 /* This exists so we can conveniently call for sys/types.h in headers shared by
2  * both the kernel and userspace.  This is the kernel's version. */
3
4 #ifndef _ROS_SYS_TYPES_H
5 #define _ROS_SYS_TYPES_H
6
7 #include <ros/common.h>
8 #include <arch/types.h>
9
10 #define PAGE_ALIGN(addr) ALIGN(addr, PAGE_SIZE)
11
12 typedef uint64_t __dev_t;
13 typedef uint64_t __ino64_t;
14 typedef uint32_t __mode_t;
15 typedef uint64_t __nlink_t;
16 typedef uint32_t __uid_t;
17 typedef uint32_t __gid_t;
18 typedef int64_t __off64_t;
19 typedef __off64_t off64_t;
20 typedef int32_t __blksize_t;
21 typedef int64_t __blkcnt64_t;
22
23 typedef uint64_t __le64;
24 typedef uint64_t __be64;
25 typedef uint32_t __le32;
26 typedef uint32_t __be32;
27 typedef uint16_t __le16;
28 typedef uint16_t __be16;
29
30 #define KiB     1024u
31 #define MiB     1048576u
32 #define GiB     1073741824u
33 #define TiB     1099511627776ull
34 #define PiB     1125899906842624ull
35 #define EiB     1152921504606846976ull
36
37 #endif /* _ROS_SYS_TYPES_H */