master
 1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
 2/*
 3 * <linux/patchkey.h> -- definition of _PATCHKEY macro
 4 *
 5 * Copyright (C) 2005 Stuart Brady
 6 *
 7 * This exists because awe_voice.h defined its own _PATCHKEY and it wasn't
 8 * clear whether removing this would break anything in userspace.
 9 *
10 * Do not include this file directly.  Please use <sys/soundcard.h> instead.
11 * For kernel code, use <linux/soundcard.h>
12 */
13
14#ifndef _LINUX_PATCHKEY_H_INDIRECT
15#error "patchkey.h included directly"
16#endif
17
18#ifndef _LINUX_PATCHKEY_H
19#define _LINUX_PATCHKEY_H
20
21/* Endian macros. */
22#  include <endian.h>
23
24#if defined(__BYTE_ORDER)
25#  if __BYTE_ORDER == __BIG_ENDIAN
26#    define _PATCHKEY(id) (0xfd00|id)
27#  elif __BYTE_ORDER == __LITTLE_ENDIAN
28#    define _PATCHKEY(id) ((id<<8)|0x00fd)
29#  else
30#    error "could not determine byte order"
31#  endif
32#endif
33
34#endif /* _LINUX_PATCHKEY_H */