Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
awilliam
GitHub Repository: awilliam/linux-vfio
Path: blob/master/sound/oss/sb_mixer.h
10814 views
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
107