Loading...
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#ifndef _LINUX_PATCHKEY_H
13#define _LINUX_PATCHKEY_H
14
15# include <asm/byteorder.h>
16#include <uapi/linux/patchkey.h>
17
18# if defined(__BIG_ENDIAN)
19# define _PATCHKEY(id) (0xfd00|id)
20# elif defined(__LITTLE_ENDIAN)
21# define _PATCHKEY(id) ((id<<8)|0x00fd)
22# else
23# error "could not determine byte order"
24# endif
25#endif /* _LINUX_PATCHKEY_H */
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 _LINUX_PATCHKEY_H
18#define _LINUX_PATCHKEY_H
19
20/* Endian macros. */
21#ifdef __KERNEL__
22# include <asm/byteorder.h>
23#else
24# include <endian.h>
25#endif
26
27#if defined(__KERNEL__)
28# if defined(__BIG_ENDIAN)
29# define _PATCHKEY(id) (0xfd00|id)
30# elif defined(__LITTLE_ENDIAN)
31# define _PATCHKEY(id) ((id<<8)|0x00fd)
32# else
33# error "could not determine byte order"
34# endif
35#else
36#if defined(__BYTE_ORDER)
37# if __BYTE_ORDER == __BIG_ENDIAN
38# define _PATCHKEY(id) (0xfd00|id)
39# elif __BYTE_ORDER == __LITTLE_ENDIAN
40# define _PATCHKEY(id) ((id<<8)|0x00fd)
41# else
42# error "could not determine byte order"
43# endif
44#endif
45#endif
46
47#endif /* _LINUX_PATCHKEY_H */