aboutsummaryrefslogtreecommitdiffstats
path: root/extras/mini-os/include/byteorder.h
blob: c0e29dfc3b8fc8da9158c014ac23e3cdf512f8cb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#ifndef MINIOS_BYTEORDER_H
#define MINIOS_BYTEORDER_H

#include <mini-os/byteswap.h>
#include <mini-os/endian.h>

#if __BYTE_ORDER == __LITTLE_ENDIAN
#define be16_to_cpu(v) bswap_16(v)
#define be32_to_cpu(v) bswap_32(v)
#define be64_to_cpu(v) bswap_64(v)

#define le16_to_cpu(v) (v)
#define le32_to_cpu(v) (v)
#define le64_to_cpu(v) (v)

#else /*__BIG_ENDIAN*/
#define be16_to_cpu(v) (v)
#define be32_to_cpu(v) (v)
#define be64_to_cpu(v) (v)

#define le16_to_cpu(v) bswap_16(v)
#define le32_to_cpu(v) bswap_32(v)
#define le64_to_cpu(v) bswap_64(v)

#endif

#define cpu_to_be16(v) be16_to_cpu(v)
#define cpu_to_be32(v) be32_to_cpu(v)
#define cpu_to_be64(v) be64_to_cpu(v)

#define cpu_to_le16(v) le16_to_cpu(v)
#define cpu_to_le32(v) le32_to_cpu(v)
#define cpu_to_le64(v) le64_to_cpu(v)


#endif