1*a1157835SDaniel Fojt #ifndef PLATFORM_H
2*a1157835SDaniel Fojt #define PLATFORM_H
3*a1157835SDaniel Fojt 
4*a1157835SDaniel Fojt #include "includes.h"
5*a1157835SDaniel Fojt #include "common.h"
6*a1157835SDaniel Fojt 
7*a1157835SDaniel Fojt #define le16_to_cpu		le_to_host16
8*a1157835SDaniel Fojt #define le32_to_cpu		le_to_host32
9*a1157835SDaniel Fojt 
10*a1157835SDaniel Fojt #define get_unaligned(p)					\
11*a1157835SDaniel Fojt ({								\
12*a1157835SDaniel Fojt 	struct packed_dummy_struct {				\
13*a1157835SDaniel Fojt 		typeof(*(p)) __val;				\
14*a1157835SDaniel Fojt 	} __attribute__((packed)) *__ptr = (void *) (p);	\
15*a1157835SDaniel Fojt 								\
16*a1157835SDaniel Fojt 	__ptr->__val;						\
17*a1157835SDaniel Fojt })
18*a1157835SDaniel Fojt #define get_unaligned_le16(p)	le16_to_cpu(get_unaligned((le16 *)(p)))
19*a1157835SDaniel Fojt #define get_unaligned_le32(p)	le32_to_cpu(get_unaligned((le32 *)(p)))
20*a1157835SDaniel Fojt 
21*a1157835SDaniel Fojt #endif /* PLATFORM_H */
22