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