linux/sound/oss/sb_mixer.h
<<
>>
Prefs
   1/*
   2 * sound/oss/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/*
  15 * Modified:
  16 *      Hunyue Yau      Jan 6 1994
  17 *      Added defines for the Sound Galaxy NX Pro mixer.
  18 *
  19 *      Rolf Fokkens    Dec 20 1998
  20 *      Added defines for some ES188x chips.
  21 *
  22 *      Rolf Fokkens    Dec 27 1998
  23 *      Moved static stuff to sb_mixer.c
  24 *
  25 */
  26/*
  27 * Mixer registers
  28 * 
  29 * NOTE!        RECORD_SRC == IN_FILTER
  30 */
  31
  32/* 
  33 * Mixer registers of SB Pro
  34 */
  35#define VOC_VOL         0x04
  36#define MIC_VOL         0x0A
  37#define MIC_MIX         0x0A
  38#define RECORD_SRC      0x0C
  39#define IN_FILTER       0x0C
  40#define OUT_FILTER      0x0E
  41#define MASTER_VOL      0x22
  42#define FM_VOL          0x26
  43#define CD_VOL          0x28
  44#define LINE_VOL        0x2E
  45#define IRQ_NR          0x80
  46#define DMA_NR          0x81
  47#define IRQ_STAT        0x82
  48#define OPSW            0x3c
  49
  50/*
  51 * Additional registers on the SG NX Pro 
  52 */
  53#define COVOX_VOL       0x42
  54#define TREBLE_LVL      0x44
  55#define BASS_LVL        0x46
  56
  57#define FREQ_HI         (1 << 3)/* Use High-frequency ANFI filters */
  58#define FREQ_LOW        0       /* Use Low-frequency ANFI filters */
  59#define FILT_ON         0       /* Yes, 0 to turn it on, 1 for off */
  60#define FILT_OFF        (1 << 5)
  61
  62#define MONO_DAC        0x00
  63#define STEREO_DAC      0x02
  64
  65/*
  66 * Mixer registers of SB16
  67 */
  68#define SB16_OMASK      0x3c
  69#define SB16_IMASK_L    0x3d
  70#define SB16_IMASK_R    0x3e
  71
  72#define LEFT_CHN        0
  73#define RIGHT_CHN       1
  74
  75/*
  76 * 3DSE register of AWE32/64
  77 */
  78#define AWE_3DSE        0x90
  79
  80/*
  81 * Mixer registers of ALS007
  82 */
  83#define ALS007_RECORD_SRC       0x6c
  84#define ALS007_OUTPUT_CTRL1     0x3c
  85#define ALS007_OUTPUT_CTRL2     0x4c
  86
  87#define MIX_ENT(name, reg_l, bit_l, len_l, reg_r, bit_r, len_r) \
  88        {{reg_l, bit_l, len_l}, {reg_r, bit_r, len_r}}
  89
  90/*
  91 *      Recording sources (SB Pro)
  92 */
  93
  94#define SRC__MIC         1      /* Select Microphone recording source */
  95#define SRC__CD          3      /* Select CD recording source */
  96#define SRC__LINE        7      /* Use Line-in for recording source */
  97
  98/*
  99 *      Recording sources for ALS-007
 100 */
 101
 102#define ALS007_MIC      4
 103#define ALS007_LINE     6
 104#define ALS007_CD       2
 105#define ALS007_SYNTH    7
 106