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 _UAPI_LINUX_PATCHKEY_H 19 #define _UAPI_LINUX_PATCHKEY_H 20 21 /* Endian macros. */ 22 #ifndef __KERNEL__ 23 # include <sys/endian.h> 24 #endif 25 26 #if !defined(__KERNEL__) 27 #if defined(__BYTE_ORDER) 28 # if __BYTE_ORDER == __BIG_ENDIAN 29 # define _PATCHKEY(id) (0xfd00|id) 30 # elif __BYTE_ORDER == __LITTLE_ENDIAN 31 # define _PATCHKEY(id) ((id<<8)|0x00fd) 32 # else 33 # error "could not determine byte order" 34 # endif 35 #endif 36 #endif 37 38 #endif /* _UAPI_LINUX_PATCHKEY_H */ 39