aboutsummaryrefslogtreecommitdiff
path: root/libc/include/any-linux-any/linux/patchkey.h
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2019-03-18 13:47:59 -0400
committerAndrew Kelley <andrew@ziglang.org>2019-03-18 13:47:59 -0400
commit7dfbeca13eca48a506bbeba6ce7a18b2a8d25ce1 (patch)
treebfe391827fec58195e61a682b5a1da4e7111a67f /libc/include/any-linux-any/linux/patchkey.h
parent6acabd6b577ac63274b31bd1b2ae22cc75ab2c7a (diff)
downloadzig-7dfbeca13eca48a506bbeba6ce7a18b2a8d25ce1.tar.gz
zig-7dfbeca13eca48a506bbeba6ce7a18b2a8d25ce1.zip
libc: separate linux headers from musl/glibc
Diffstat (limited to 'libc/include/any-linux-any/linux/patchkey.h')
-rw-r--r--libc/include/any-linux-any/linux/patchkey.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/libc/include/any-linux-any/linux/patchkey.h b/libc/include/any-linux-any/linux/patchkey.h
new file mode 100644
index 0000000000..ff599ca3c0
--- /dev/null
+++ b/libc/include/any-linux-any/linux/patchkey.h
@@ -0,0 +1,34 @@
+/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
+/*
+ * <linux/patchkey.h> -- definition of _PATCHKEY macro
+ *
+ * Copyright (C) 2005 Stuart Brady
+ *
+ * This exists because awe_voice.h defined its own _PATCHKEY and it wasn't
+ * clear whether removing this would break anything in userspace.
+ *
+ * Do not include this file directly. Please use <sys/soundcard.h> instead.
+ * For kernel code, use <linux/soundcard.h>
+ */
+
+#ifndef _LINUX_PATCHKEY_H_INDIRECT
+#error "patchkey.h included directly"
+#endif
+
+#ifndef _LINUX_PATCHKEY_H
+#define _LINUX_PATCHKEY_H
+
+/* Endian macros. */
+# include <endian.h>
+
+#if defined(__BYTE_ORDER)
+# if __BYTE_ORDER == __BIG_ENDIAN
+# define _PATCHKEY(id) (0xfd00|id)
+# elif __BYTE_ORDER == __LITTLE_ENDIAN
+# define _PATCHKEY(id) ((id<<8)|0x00fd)
+# else
+# error "could not determine byte order"
+# endif
+#endif
+
+#endif /* _LINUX_PATCHKEY_H */ \ No newline at end of file