Blame view

include/linux/patchkey.h 1.1 KB
60d300c02   Stuart Brady   [PATCH] include/l...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
  /*
   * <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. */
  #ifdef __KERNEL__
  #  include <asm/byteorder.h>
  #else
  #  include <endian.h>
  #endif
  
  #if defined(__KERNEL__)
  #  if defined(__BIG_ENDIAN)
  #    define _PATCHKEY(id) (0xfd00|id)
  #  elif defined(__LITTLE_ENDIAN)
  #    define _PATCHKEY(id) ((id<<8)|0x00fd)
  #  else
  #    error "could not determine byte order"
  #  endif
a648bd0c9   David Howells   UAPI: Make linux/...
35
36
  #else
  #if defined(__BYTE_ORDER)
60d300c02   Stuart Brady   [PATCH] include/l...
37
38
39
40
41
42
43
44
  #  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
a648bd0c9   David Howells   UAPI: Make linux/...
45
  #endif
60d300c02   Stuart Brady   [PATCH] include/l...
46
47
  
  #endif /* _LINUX_PATCHKEY_H */