summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-10-08 05:14:57 +0400
committerLinus Torvalds <torvalds@linux-foundation.org>2014-10-08 05:14:57 +0400
commitb6420ebd4a541455a75f9802f58cfa3ba0ea5390 (patch)
tree0abbd397c009a696bc8f33d36666aa95752caae8 /tools
parentd29010694c7e78dadc0e3862b29481e0c4b48f04 (diff)
parent0415447aa3b4decc2c05dfc45a0aa34a5eb4fc54 (diff)
downloadlinux-b6420ebd4a541455a75f9802f58cfa3ba0ea5390.tar.xz
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/doc
Pull documentation updates from Jiri Kosina: "Updates to kernel documentation. I took this over (hopefully temporarily) from Randy who was not willing to maintain it any longer. This pile mostly is a relay of queue that Randy already had in his tree" * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/doc: Documentation: fix broken v4l-utils URL Documentation: update include path for mpssd Documentation: correct parameter error for dma_mapping_error MAINTAINERS: update location of linux-doc tree Documentation: remove networking/.gitignore tools: add more endian.h macros Make Documenation depend on headers_install Docs: this_cpu_ops: remove redundant add forms Documentation: disable vdso_test to avoid breakage with old glibc Documentation: update vDSO makefile to build portable examples Documentation: update .gitignore files Documentation: support glibc versions without htole macros v4l2-pci-skeleton: Only build if PCI is available Documentation: fix misc. warnings Documentation: make functions static to avoid prototype warnings Documentation: add makefiles for more targets Documentation: use subdir-y to avoid unnecessary built-in.o files
Diffstat (limited to 'tools')
-rw-r--r--tools/include/tools/endian.h56
1 files changed, 56 insertions, 0 deletions
diff --git a/tools/include/tools/endian.h b/tools/include/tools/endian.h
new file mode 100644
index 000000000000..8001194008da
--- /dev/null
+++ b/tools/include/tools/endian.h
@@ -0,0 +1,56 @@
+#ifndef _TOOLS_ENDIAN_H
+#define _TOOLS_ENDIAN_H
+
+#include <byteswap.h>
+
+#if __BYTE_ORDER == __LITTLE_ENDIAN
+
+#ifndef htole16
+#define htole16(x) (x)
+#endif
+#ifndef htole32
+#define htole32(x) (x)
+#endif
+#ifndef htole64
+#define htole64(x) (x)
+#endif
+
+#ifndef le16toh
+#define le16toh(x) (x)
+#endif
+
+#ifndef le32toh
+#define le32toh(x) (x)
+#endif
+
+#ifndef le64toh
+#define le64toh(x) (x)
+#endif
+
+#else /* __BYTE_ORDER */
+
+#ifndef htole16
+#define htole16(x) __bswap_16(x)
+#endif
+#ifndef htole32
+#define htole32(x) __bswap_32(x)
+#endif
+#ifndef htole64
+#define htole64(x) __bswap_64(x)
+#endif
+
+#ifndef le16toh
+#define le16toh(x) __bswap_16(x)
+#endif
+
+#ifndef le32toh
+#define le32toh(x) __bswap_32(x)
+#endif
+
+#ifndef le64toh
+#define le64toh(x) __bswap_64(x)
+#endif
+
+#endif
+
+#endif /* _TOOLS_ENDIAN_H */