platform.h 508 B

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