0001
0002
0003
0004 #include <linux/kernel.h>
0005 #include "gdm_endian.h"
0006
0007 __dev16 gdm_cpu_to_dev16(u8 dev_ed, u16 x)
0008 {
0009 if (dev_ed == ENDIANNESS_LITTLE)
0010 return (__force __dev16)cpu_to_le16(x);
0011 else
0012 return (__force __dev16)cpu_to_be16(x);
0013 }
0014
0015 u16 gdm_dev16_to_cpu(u8 dev_ed, __dev16 x)
0016 {
0017 if (dev_ed == ENDIANNESS_LITTLE)
0018 return le16_to_cpu((__force __le16)x);
0019 else
0020 return be16_to_cpu((__force __be16)x);
0021 }
0022
0023 __dev32 gdm_cpu_to_dev32(u8 dev_ed, u32 x)
0024 {
0025 if (dev_ed == ENDIANNESS_LITTLE)
0026 return (__force __dev32)cpu_to_le32(x);
0027 else
0028 return (__force __dev32)cpu_to_be32(x);
0029 }
0030
0031 u32 gdm_dev32_to_cpu(u8 dev_ed, __dev32 x)
0032 {
0033 if (dev_ed == ENDIANNESS_LITTLE)
0034 return le32_to_cpu((__force __le32)x);
0035 else
0036 return be32_to_cpu((__force __be32)x);
0037 }