sb_mixer.h
上传用户:lgb322
上传日期:2013-02-24
资源大小:30529k
文件大小:2k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

  1. /*
  2.  * sound/sb_mixer.h
  3.  * 
  4.  * Definitions for the SB Pro and SB16 mixers
  5.  */
  6. /*
  7.  * Copyright (C) by Hannu Savolainen 1993-1997
  8.  *
  9.  * OSS/Free for Linux is distributed under the GNU GENERAL PUBLIC LICENSE (GPL)
  10.  * Version 2 (June 1991). See the "COPYING" file distributed with this software
  11.  * for more info.
  12.  */
  13. /*
  14.  * Modified:
  15.  * Hunyue Yau Jan 6 1994
  16.  * Added defines for the Sound Galaxy NX Pro mixer.
  17.  *
  18.  * Rolf Fokkens Dec 20 1998
  19.  * Added defines for some ES188x chips.
  20.  *
  21.  * Rolf Fokkens Dec 27 1998
  22.  * Moved static stuff to sb_mixer.c
  23.  *
  24.  */
  25. /*
  26.  * Mixer registers
  27.  * 
  28.  * NOTE! RECORD_SRC == IN_FILTER
  29.  */
  30. /* 
  31.  * Mixer registers of SB Pro
  32.  */
  33. #define VOC_VOL 0x04
  34. #define MIC_VOL 0x0A
  35. #define MIC_MIX 0x0A
  36. #define RECORD_SRC 0x0C
  37. #define IN_FILTER 0x0C
  38. #define OUT_FILTER 0x0E
  39. #define MASTER_VOL 0x22
  40. #define FM_VOL 0x26
  41. #define CD_VOL 0x28
  42. #define LINE_VOL 0x2E
  43. #define IRQ_NR 0x80
  44. #define DMA_NR 0x81
  45. #define IRQ_STAT 0x82
  46. #define OPSW 0x3c
  47. /*
  48.  * Additional registers on the SG NX Pro 
  49.  */
  50. #define COVOX_VOL 0x42
  51. #define TREBLE_LVL 0x44
  52. #define BASS_LVL 0x46
  53. #define FREQ_HI         (1 << 3)/* Use High-frequency ANFI filters */
  54. #define FREQ_LOW        0 /* Use Low-frequency ANFI filters */
  55. #define FILT_ON         0 /* Yes, 0 to turn it on, 1 for off */
  56. #define FILT_OFF        (1 << 5)
  57. #define MONO_DAC 0x00
  58. #define STEREO_DAC 0x02
  59. /*
  60.  * Mixer registers of SB16
  61.  */
  62. #define SB16_OMASK 0x3c
  63. #define SB16_IMASK_L 0x3d
  64. #define SB16_IMASK_R 0x3e
  65. #define LEFT_CHN 0
  66. #define RIGHT_CHN 1
  67. /*
  68.  * 3DSE register of AWE32/64
  69.  */
  70. #define AWE_3DSE 0x90
  71. /*
  72.  * Mixer registers of ALS007
  73.  */
  74. #define ALS007_RECORD_SRC 0x6c
  75. #define ALS007_OUTPUT_CTRL1 0x3c
  76. #define ALS007_OUTPUT_CTRL2 0x4c
  77. #define MIX_ENT(name, reg_l, bit_l, len_l, reg_r, bit_r, len_r)
  78. {{reg_l, bit_l, len_l}, {reg_r, bit_r, len_r}}
  79. /*
  80.  * Recording sources (SB Pro)
  81.  */
  82. #define SRC__MIC         1 /* Select Microphone recording source */
  83. #define SRC__CD          3 /* Select CD recording source */
  84. #define SRC__LINE        7 /* Use Line-in for recording source */
  85. /*
  86.  * Recording sources for ALS-007
  87.  */
  88. #define ALS007_MIC 4
  89. #define ALS007_LINE 6
  90. #define ALS007_CD 2
  91. #define ALS007_SYNTH 7