author | Zhao Edgar Liu - Sun Microsystems <Edgar.Liu@Sun.COM> |
Wed, 21 Oct 2009 10:55:51 +0800 | |
changeset 10821 | 77dbb4cf3365 |
parent 10531 | 3dbb42515756 |
child 11047 | dc0bb5e7d98b |
permissions | -rw-r--r-- |
2307
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
1 |
/* |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
2 |
* CDDL HEADER START |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
3 |
* |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
4 |
* The contents of this file are subject to the terms of the |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
5 |
* Common Development and Distribution License (the "License"). |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
6 |
* You may not use this file except in compliance with the License. |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
7 |
* |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
8 |
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
9 |
* or http://www.opensolaris.org/os/licensing. |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
10 |
* See the License for the specific language governing permissions |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
11 |
* and limitations under the License. |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
12 |
* |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
13 |
* When distributing Covered Code, include this CDDL HEADER in each |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
14 |
* file and include the License file at usr/src/OPENSOLARIS.LICENSE. |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
15 |
* If applicable, add the following below this CDDL HEADER, with the |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
16 |
* fields enclosed by brackets "[]" replaced with your own identifying |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
17 |
* information: Portions Copyright [yyyy] [name of copyright owner] |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
18 |
* |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
19 |
* CDDL HEADER END |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
20 |
*/ |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
21 |
/* |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
22 |
* Copyright 2009 Sun Microsystems, Inc. All rights reserved. |
2307
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
23 |
* Use is subject to license terms. |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
24 |
*/ |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
25 |
#ifndef _SYS_AUDIOHD_IMPL_H_ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
26 |
#define _SYS_AUDIOHD_IMPL_H_ |
2307
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
27 |
|
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
28 |
#ifdef __cplusplus |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
29 |
extern "C" { |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
30 |
#endif |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
31 |
|
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
32 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
33 |
* vendor IDs of PCI audio controllers |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
34 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
35 |
#define AUDIOHD_VID_INTEL 0x8086 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
36 |
#define AUDIOHD_VID_ATI 0x1002 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
37 |
#define AUDIOHD_VID_NVIDIA 0x10de |
10821
77dbb4cf3365
6884252 Reliable hang with MCP51 audio effective build 123
Zhao Edgar Liu - Sun Microsystems <Edgar.Liu@Sun.COM>
parents:
10531
diff
changeset
|
38 |
#define AUDIOHD_VID_REALTEK 0x10ec |
9842
333f65f565a1
6828784 Beep doesn't work for Opensolaris on DELL LATITUDE D630
lipeng sang - Sun Microsystems - Beijing China <Lipeng.Sang@Sun.COM>
parents:
9841
diff
changeset
|
39 |
#define AUDIOHD_VID_SIGMATEL 0x8384 |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
40 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
41 |
/* |
10821
77dbb4cf3365
6884252 Reliable hang with MCP51 audio effective build 123
Zhao Edgar Liu - Sun Microsystems <Edgar.Liu@Sun.COM>
parents:
10531
diff
changeset
|
42 |
* specific audiohd controller device id |
77dbb4cf3365
6884252 Reliable hang with MCP51 audio effective build 123
Zhao Edgar Liu - Sun Microsystems <Edgar.Liu@Sun.COM>
parents:
10531
diff
changeset
|
43 |
*/ |
77dbb4cf3365
6884252 Reliable hang with MCP51 audio effective build 123
Zhao Edgar Liu - Sun Microsystems <Edgar.Liu@Sun.COM>
parents:
10531
diff
changeset
|
44 |
#define AUDIOHD_CONTROLLER_MCP51 0x10de026c |
77dbb4cf3365
6884252 Reliable hang with MCP51 audio effective build 123
Zhao Edgar Liu - Sun Microsystems <Edgar.Liu@Sun.COM>
parents:
10531
diff
changeset
|
45 |
|
77dbb4cf3365
6884252 Reliable hang with MCP51 audio effective build 123
Zhao Edgar Liu - Sun Microsystems <Edgar.Liu@Sun.COM>
parents:
10531
diff
changeset
|
46 |
/* |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
47 |
* specific codec id used by specific vendors |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
48 |
*/ |
10078
d845006661a3
6831395 Loud noise from speakers on Dell Lattitude E6400
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
9842
diff
changeset
|
49 |
#define AUDIOHD_CODEC_IDT7608 0x111d7608 |
d845006661a3
6831395 Loud noise from speakers on Dell Lattitude E6400
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
9842
diff
changeset
|
50 |
#define AUDIOHD_CODEC_IDT76B2 0x111d76b2 |
10347
ef3957bb6db1
6853359 internal microphone always enabled in Lenovo T60
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
10078
diff
changeset
|
51 |
#define AUDIOHD_CODEC_AD1981 0x11d41981 |
9727
25b58ea25e4f
6844700 "Scratchy" sound with Intel 82801JI(ICH10) and boomer RC1
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
9545
diff
changeset
|
52 |
#define AUDIOHD_CODECID_ALC888 0x10ec0888 |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
53 |
#define AUDIOHD_CODECID_SONY1 0x10ec0260 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
54 |
#define AUDIOHD_CODECID_SONY2 0x10ec0262 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
55 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
56 |
#define AUDIOHD_INTS 50 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
57 |
#define AUDIOHD_MAX_INTS 1500 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
58 |
#define AUDIOHD_MIN_INTS 32 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
59 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
60 |
#define AUDIOHD_DEV_CONFIG "onboard1" |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
61 |
#define AUDIOHD_DEV_VERSION "a" |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
62 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
63 |
#define AUDIOHD_FMT_PCM 0x001 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
64 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
65 |
* Only for Intel hardware: |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
66 |
* PCI Express traffic class select register in PCI configure space |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
67 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
68 |
#define AUDIOHD_INTEL_PCI_TCSEL 0x44 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
69 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
70 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
71 |
* Only for ATI SB450: |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
72 |
* MISC control register 2 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
73 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
74 |
#define AUDIOHD_ATI_PCI_MISC2 0x42 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
75 |
#define AUDIOHD_ATI_MISC2_SNOOP 0x02 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
76 |
#define AUDIOHDC_NID(x) x |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
77 |
#define AUDIOHDC_NULL_NODE -1 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
78 |
#define AUDIOHD_NULL_CONN ((uint_t)(-1)) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
79 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
80 |
* currently, only the format of 48K sample rate, 16-bit |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
81 |
* 2-channel is supported. |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
82 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
83 |
#define AUDIOHD_FMT_PCMOUT 0x0011 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
84 |
#define AUDIOHD_FMT_PCMIN 0x0011 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
85 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
86 |
#define AUDIOHD_EXT_AMP_MASK 0x00010000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
87 |
#define AUDIOHD_EXT_AMP_ENABLE 0x02 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
88 |
/* NVIDIA snoop */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
89 |
#define AUDIOHD_NVIDIA_SNOOP 0x0f |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
90 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
91 |
/* Power On/Off */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
92 |
#define AUDIOHD_PW_OFF 1 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
93 |
#define AUDIOHD_PW_ON 0 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
94 |
#define AUDIOHD_PW_D0 0 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
95 |
#define AUDIOHD_PW_D2 2 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
96 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
97 |
#define AUDIOHD_INTEL_TCS_MASK 0xf8 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
98 |
#define AUDIOHD_ATI_MISC2_MASK 0xf8 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
99 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
100 |
/* Pin speaker On/Off */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
101 |
#define AUDIOHD_SP_ON 1 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
102 |
#define AUDIOHD_SP_OFF 0 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
103 |
|
10821
77dbb4cf3365
6884252 Reliable hang with MCP51 audio effective build 123
Zhao Edgar Liu - Sun Microsystems <Edgar.Liu@Sun.COM>
parents:
10531
diff
changeset
|
104 |
#define AUDIOHD_PORT_MAX 15 |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
105 |
#define AUDIOHD_CODEC_MAX 16 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
106 |
#define AUDIOHD_MEMIO_LEN 0x4000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
107 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
108 |
#define AUDIOHD_RETRY_TIMES 60 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
109 |
#define AUDIOHD_TEST_TIMES 500 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
110 |
#define AUDIOHD_OUTSTR_NUM_OFF 12 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
111 |
#define AUDIOHD_INSTR_NUM_OFF 8 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
112 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
113 |
#define AUDIOHD_CORB_SIZE_OFF 0x4e |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
114 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
115 |
#define AUDIOHD_URCAP_MASK 0x80 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
116 |
#define AUDIOHD_DTCCAP_MASK 0x4 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
117 |
#define AUDIOHD_UR_ENABLE_OFF 8 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
118 |
#define AUDIOHD_UR_TAG_MASK 0x1f |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
119 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
120 |
#define AUDIOHD_CIS_MASK 0x40000000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
121 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
122 |
#define AUDIOHD_RIRB_UR_MASK 0x10 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
123 |
#define AUDIOHD_RIRB_CODEC_MASK 0xf |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
124 |
#define AUDIOHD_RIRB_WID_OFF 27 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
125 |
#define AUDIOHD_RIRB_INTRCNT 0x0 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
126 |
#define AUDIOHD_RIRB_WPMASK 0xff |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
127 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
128 |
#define AUDIOHD_FORM_MASK 0x0080 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
129 |
#define AUDIOHD_LEN_MASK 0x007f |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
130 |
#define AUDIOHD_PIN_CAP_MASK 0x00000010 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
131 |
#define AUDIOHD_PIN_CONF_MASK 0xc0000000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
132 |
#define AUDIOHD_PIN_CON_MASK 3 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
133 |
#define AUDIOHD_PIN_CON_STEP 30 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
134 |
#define AUDIOHD_PIN_IO_MASK 0X0018 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
135 |
#define AUDIOHD_PIN_SEQ_MASK 0x0000000f |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
136 |
#define AUDIOHD_PIN_ASO_MASK 0x000000f0 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
137 |
#define AUDIOHD_PIN_ASO_OFF 0x4 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
138 |
#define AUDIOHD_PIN_DEV_MASK 0x00f00000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
139 |
#define AUDIOHD_PIN_DEV_OFF 20 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
140 |
#define AUDIOHD_PIN_NUMS 6 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
141 |
#define AUDIOHD_PIN_NO_CONN 0x40000000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
142 |
#define AUDIOHD_PIN_IN_ENABLE 0x20 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
143 |
#define AUDIOHD_PIN_OUT_ENABLE 0x40 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
144 |
#define AUDIOHD_PIN_PRES_OFF 0x20 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
145 |
#define AUDIOHD_PIN_CONTP_OFF 0x1e |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
146 |
#define AUDIOHD_PIN_CON_JACK 0 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
147 |
#define AUDIOHD_PIN_CON_FIXED 0x2 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
148 |
#define AUDIOHD_PIN_CONTP_MASK 0x3 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
149 |
#define AUDIOHD_PIN_VREF_L1 0x20 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
150 |
#define AUDIOHD_PIN_VREF_L2 0x10 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
151 |
#define AUDIOHD_PIN_VREF_L3 0x04 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
152 |
#define AUDIOHD_PIN_VREF_L4 0x02 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
153 |
#define AUDIOHD_PIN_VREF_OFF 8 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
154 |
#define AUDIOHD_PIN_VREF_MASK 0xff |
10821
77dbb4cf3365
6884252 Reliable hang with MCP51 audio effective build 123
Zhao Edgar Liu - Sun Microsystems <Edgar.Liu@Sun.COM>
parents:
10531
diff
changeset
|
155 |
#define AUDIOHD_PIN_CLR_MASK 0xf |
77dbb4cf3365
6884252 Reliable hang with MCP51 audio effective build 123
Zhao Edgar Liu - Sun Microsystems <Edgar.Liu@Sun.COM>
parents:
10531
diff
changeset
|
156 |
#define AUDIOHD_PIN_CLR_OFF 12 |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
157 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
158 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
159 |
#define AUDIOHD_VERB_ADDR_OFF 28 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
160 |
#define AUDIOHD_VERB_NID_OFF 20 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
161 |
#define AUDIOHD_VERB_CMD_OFF 8 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
162 |
#define AUDIOHD_VERB_CMD16_OFF 16 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
163 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
164 |
#define AUDIOHD_RING_MAX_SIZE 0x00ff |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
165 |
#define AUDIOHD_POS_MASK ~0x00000003 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
166 |
#define AUDIOHD_REC_TAG_OFF 4 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
167 |
#define AUDIOHD_PLAY_TAG_OFF 4 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
168 |
#define AUDIOHD_PLAY_CTL_OFF 2 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
169 |
#define AUDIOHD_REC_CTL_OFF 2 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
170 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
171 |
#define AUDIOHD_SPDIF_ON 1 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
172 |
#define AUDIOHD_SPDIF_MASK 0x00ff |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
173 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
174 |
#define AUDIOHD_GAIN_OFF 8 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
175 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
176 |
#define AUDIOHD_CODEC_STR_OFF 16 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
177 |
#define AUDIOHD_CODEC_STR_MASK 0x000000ff |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
178 |
#define AUDIOHD_CODEC_NUM_MASK 0x000000ff |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
179 |
#define AUDIOHD_CODEC_TYPE_MASK 0x000000ff |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
180 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
181 |
#define AUDIOHD_FRAGFR_ALIGN 16 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
182 |
#define AUDIOHD_BDLE_BUF_ALIGN 128 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
183 |
#define AUDIOHD_CMDIO_ENT_MASK 0x00ff /* 256 entries for CORB/RIRB */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
184 |
#define AUDIOHD_CDBIO_CORB_LEN 1024 /* 256 entries for CORB, 1024B */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
185 |
#define AUDIOHD_CDBIO_RIRB_LEN 2048 /* 256 entries for RIRB, 2048B */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
186 |
#define AUDIOHD_BDLE_NUMS 4 /* 4 entires for record/play BD list */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
187 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
188 |
#define AUDIOHD_PORT_UNMUTE (0xffffffff) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
189 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
190 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
191 |
* Audio registers of high definition |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
192 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
193 |
#define AUDIOHD_REG_GCAP 0x00 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
194 |
#define AUDIOHDR_GCAP_OUTSTREAMS 0xf000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
195 |
#define AUDIOHDR_GCAP_INSTREAMS 0x0f00 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
196 |
#define AUDIOHDR_GCAP_BSTREAMS 0x00f8 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
197 |
#define AUDIOHDR_GCAP_NSDO 0x0006 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
198 |
#define AUDIOHDR_GCAP_64OK 0x0001 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
199 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
200 |
#define AUDIOHD_REG_VMIN 0x02 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
201 |
#define AUDIOHD_REG_VMAJ 0x03 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
202 |
#define AUDIOHD_REG_OUTPAY 0x04 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
203 |
#define AUDIOHD_REG_INPAY 0x06 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
204 |
#define AUDIOHD_REG_GCTL 0x08 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
205 |
#define AUDIOHD_REG_WAKEEN 0x0C |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
206 |
#define AUDIOHD_REG_STATESTS 0x0E |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
207 |
#define AUDIOHD_STATESTS_BIT_SDINS 0x7F |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
208 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
209 |
#define AUDIOHD_REG_GSTS 0x10 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
210 |
#define AUDIOHD_REG_INTCTL 0x20 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
211 |
#define AUDIOHD_INTCTL_BIT_GIE 0x80000000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
212 |
#define AUDIOHD_INTCTL_BIT_CIE 0x40000000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
213 |
#define AUDIOHD_INTCTL_BIT_SIE 0x3FFFFFFF |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
214 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
215 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
216 |
#define AUDIOHD_REG_INTSTS 0x24 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
217 |
#define AUDIOHD_INTSTS_BIT_GIS 0x80000000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
218 |
#define AUDIOHD_INTSTS_BIT_CIS 0x40000000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
219 |
#define AUDIOHD_INTSTS_BIT_SINTS (0x3fffffff) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
220 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
221 |
#define AUDIOHD_REG_WALCLK 0x30 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
222 |
#define AUDIOHD_REG_SYNC 0x38 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
223 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
224 |
#define AUDIOHD_REG_CORBLBASE 0x40 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
225 |
#define AUDIOHD_REG_CORBUBASE 0x44 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
226 |
#define AUDIOHD_REG_CORBWP 0x48 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
227 |
#define AUDIOHD_REG_CORBRP 0x4A |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
228 |
#define AUDIOHD_REG_CORBCTL 0x4C |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
229 |
#define AUDIOHD_REG_CORBST 0x4D |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
230 |
#define AUDIOHD_REG_CORBSIZE 0x4E |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
231 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
232 |
#define AUDIOHD_REG_RIRBLBASE 0x50 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
233 |
#define AUDIOHD_REG_RIRBUBASE 0x54 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
234 |
#define AUDIOHD_REG_RIRBWP 0x58 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
235 |
#define AUDIOHD_REG_RINTCNT 0x5A |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
236 |
#define AUDIOHD_REG_RIRBCTL 0x5C |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
237 |
#define AUDIOHD_REG_RIRBSTS 0x5D |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
238 |
#define AUDIOHD_REG_RIRBSIZE 0x5E |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
239 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
240 |
#define AUDIOHD_REG_IC 0x60 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
241 |
#define AUDIOHD_REG_IR 0x64 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
242 |
#define AUDIOHD_REG_IRS 0x68 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
243 |
#define AUDIOHD_REG_DPLBASE 0x70 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
244 |
#define AUDIOHD_REG_DPUBASE 0x74 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
245 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
246 |
#define AUDIOHD_REG_SD_BASE 0x80 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
247 |
#define AUDIOHD_REG_SD_LEN 0x20 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
248 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
249 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
250 |
* Offset of Stream Descriptor Registers |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
251 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
252 |
#define AUDIOHD_SDREG_OFFSET_CTL 0x00 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
253 |
#define AUDIOHD_SDREG_OFFSET_STS 0x03 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
254 |
#define AUDIOHD_SDREG_OFFSET_LPIB 0x04 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
255 |
#define AUDIOHD_SDREG_OFFSET_CBL 0x08 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
256 |
#define AUDIOHD_SDREG_OFFSET_LVI 0x0c |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
257 |
#define AUDIOHD_SDREG_OFFSET_FIFOW 0x0e |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
258 |
#define AUDIOHD_SDREG_OFFSET_FIFOSIZE 0x10 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
259 |
#define AUDIOHD_SDREG_OFFSET_FORMAT 0x12 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
260 |
#define AUDIOHD_SDREG_OFFSET_BDLPL 0x18 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
261 |
#define AUDIOHD_SDREG_OFFSET_BDLPU 0x1c |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
262 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
263 |
/* bits for stream descriptor control reg */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
264 |
#define AUDIOHDR_SD_CTL_DEIE 0x000010 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
265 |
#define AUDIOHDR_SD_CTL_FEIE 0x000008 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
266 |
#define AUDIOHDR_SD_CTL_IOCE 0x000004 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
267 |
#define AUDIOHDR_SD_CTL_SRUN 0x000002 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
268 |
#define AUDIOHDR_SD_CTL_SRST 0x000001 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
269 |
#define AUDIOHDR_SD_CTL_INTS \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
270 |
(AUDIOHDR_SD_CTL_DEIE | \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
271 |
AUDIOHDR_SD_CTL_FEIE | \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
272 |
AUDIOHDR_SD_CTL_IOCE) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
273 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
274 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
275 |
/* bits for stream descriptor status register */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
276 |
#define AUDIOHDR_SD_STS_BCIS 0x0004 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
277 |
#define AUDIOHDR_SD_STS_FIFOE 0x0008 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
278 |
#define AUDIOHDR_SD_STS_DESE 0x0010 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
279 |
#define AUDIOHDR_SD_STS_FIFORY 0x0020 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
280 |
#define AUDIOHDR_SD_STS_INTRS \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
281 |
(AUDIOHDR_SD_STS_BCIS | \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
282 |
AUDIOHDR_SD_STS_FIFOE | \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
283 |
AUDIOHDR_SD_STS_DESE) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
284 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
285 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
286 |
/* bits for GCTL register */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
287 |
#define AUDIOHDR_GCTL_CRST 0x00000001 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
288 |
#define AUDIOHDR_GCTL_URESPE 0x00000100 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
289 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
290 |
/* bits for CORBRP register */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
291 |
#define AUDIOHDR_CORBRP_RESET 0x8000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
292 |
#define AUDIOHDR_CORBRP_WPTR 0x00ff |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
293 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
294 |
/* bits for CORBCTL register */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
295 |
#define AUDIOHDR_CORBCTL_CMEIE 0x01 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
296 |
#define AUDIOHDR_CORBCTL_DMARUN 0x02 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
297 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
298 |
/* bits for CORB SIZE register */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
299 |
#define AUDIOHDR_CORBSZ_8 0 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
300 |
#define AUDIOHDR_CORBSZ_16 1 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
301 |
#define AUDIOHDR_CORBSZ_256 2 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
302 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
303 |
/* bits for RIRBCTL register */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
304 |
#define AUDIOHDR_RIRBCTL_RINTCTL 0x01 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
305 |
#define AUDIOHDR_RIRBCTL_DMARUN 0x02 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
306 |
#define AUDIOHDR_RIRBCTL_RIRBOIC 0x04 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
307 |
#define AUDIOHDR_RIRBCTL_RSTINT 0xfe |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
308 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
309 |
/* bits for RIRBWP register */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
310 |
#define AUDIOHDR_RIRBWP_RESET 0x8000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
311 |
#define AUDIOHDR_RIRBWP_WPTR 0x00ff |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
312 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
313 |
/* bits for RIRB SIZE register */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
314 |
#define AUDIOHDR_RIRBSZ_8 0 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
315 |
#define AUDIOHDR_RIRBSZ_16 1 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
316 |
#define AUDIOHDR_RIRBSZ_256 2 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
317 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
318 |
#define AUDIOHD_BDLE_RIRB_SDI 0x0000000f |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
319 |
#define AUDIOHD_BDLE_RIRB_UNSOLICIT 0x00000010 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
320 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
321 |
/* HD spec: ID of Root node is 0 */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
322 |
#define AUDIOHDC_NODE_ROOT 0x00 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
323 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
324 |
/* HD spec: ID of audio function group is "1" */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
325 |
#define AUDIOHDC_AUDIO_FUNC_GROUP 1 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
326 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
327 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
328 |
* HD audio verbs can be either 12-bit or 4-bit in length. |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
329 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
330 |
#define AUDIOHDC_12BIT_VERB_MASK 0xfffff000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
331 |
#define AUDIOHDC_4BIT_VERB_MASK 0xfffffff0 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
332 |
|
9842
333f65f565a1
6828784 Beep doesn't work for Opensolaris on DELL LATITUDE D630
lipeng sang - Sun Microsystems - Beijing China <Lipeng.Sang@Sun.COM>
parents:
9841
diff
changeset
|
333 |
#define AUDIOHDC_SAMPR48000 48000 |
333f65f565a1
6828784 Beep doesn't work for Opensolaris on DELL LATITUDE D630
lipeng sang - Sun Microsystems - Beijing China <Lipeng.Sang@Sun.COM>
parents:
9841
diff
changeset
|
334 |
#define AUDIOHDC_MAX_BEEP_GEN 12000 |
333f65f565a1
6828784 Beep doesn't work for Opensolaris on DELL LATITUDE D630
lipeng sang - Sun Microsystems - Beijing China <Lipeng.Sang@Sun.COM>
parents:
9841
diff
changeset
|
335 |
#define AUDIOHDC_MIX_BEEP_GEN 47 |
333f65f565a1
6828784 Beep doesn't work for Opensolaris on DELL LATITUDE D630
lipeng sang - Sun Microsystems - Beijing China <Lipeng.Sang@Sun.COM>
parents:
9841
diff
changeset
|
336 |
#define AUDIOHDC_MUTE_BEEP_GEN 0x0 |
333f65f565a1
6828784 Beep doesn't work for Opensolaris on DELL LATITUDE D630
lipeng sang - Sun Microsystems - Beijing China <Lipeng.Sang@Sun.COM>
parents:
9841
diff
changeset
|
337 |
|
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
338 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
339 |
* 12-bit verbs |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
340 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
341 |
#define AUDIOHDC_VERB_GET_PARAM 0xf00 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
342 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
343 |
#define AUDIOHDC_VERB_GET_CONN_SEL 0xf01 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
344 |
#define AUDIOHDC_VERB_SET_CONN_SEL 0x701 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
345 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
346 |
#define AUDIOHDC_VERB_GET_CONN_LIST_ENT 0xf02 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
347 |
#define AUDIOHDC_VERB_GET_PROCESS_STATE 0xf03 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
348 |
#define AUDIOHDC_VERB_GET_SDI_SEL 0xf04 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
349 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
350 |
#define AUDIOHDC_VERB_GET_POWER_STATE 0xf05 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
351 |
#define AUDIOHDC_VERB_SET_POWER_STATE 0x705 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
352 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
353 |
#define AUDIOHDC_VERB_GET_STREAM_CHANN 0xf06 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
354 |
#define AUDIOHDC_VERB_SET_STREAM_CHANN 0x706 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
355 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
356 |
#define AUDIOHDC_VERB_GET_PIN_CTRL 0xf07 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
357 |
#define AUDIOHDC_VERB_SET_PIN_CTRL 0x707 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
358 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
359 |
#define AUDIOHDC_VERB_GET_UNS_ENABLE 0xf08 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
360 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
361 |
#define AUDIOHDC_VERB_GET_PIN_SENSE 0xf09 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
362 |
#define AUDIOHDC_VERB_EXEC_PIN_SENSE 0x709 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
363 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
364 |
#define AUDIOHDC_VERB_GET_BEEP_GEN 0xf0a |
9842
333f65f565a1
6828784 Beep doesn't work for Opensolaris on DELL LATITUDE D630
lipeng sang - Sun Microsystems - Beijing China <Lipeng.Sang@Sun.COM>
parents:
9841
diff
changeset
|
365 |
#define AUDIOHDC_VERB_SET_BEEP_GEN 0x70a |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
366 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
367 |
#define AUDIOHDC_VERB_GET_EAPD 0xf0c |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
368 |
#define AUDIOHDC_VERB_SET_EAPD 0x70c |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
369 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
370 |
#define AUDIOHDC_VERB_GET_DEFAULT_CONF 0xf1c |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
371 |
#define AUDIOHDC_VERB_GET_SPDIF_CTL 0xf0d |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
372 |
#define AUDIOHDC_VERB_SET_SPDIF_LCL 0x70d |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
373 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
374 |
#define AUDIOHDC_VERB_SET_URCTRL 0x708 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
375 |
#define AUDIOHDC_VERB_GET_PIN_SENSE 0xf09 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
376 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
377 |
#define AUDIOHDC_VERB_GET_GPIO_MASK 0xf16 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
378 |
#define AUDIOHDC_VERB_SET_GPIO_MASK 0x716 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
379 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
380 |
#define AUDIOHDC_VERB_GET_GPIO_DIREC 0xf17 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
381 |
#define AUDIOHDC_VERB_SET_GPIO_DIREC 0x717 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
382 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
383 |
#define AUDIOHDC_VERB_GET_GPIO_DATA 0xf15 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
384 |
#define AUDIOHDC_VERB_SET_GPIO_DATA 0x715 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
385 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
386 |
#define AUDIOHDC_VERB_GET_GPIO_STCK 0xf1a |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
387 |
#define AUDIOHDC_VERB_SET_GPIO_STCK 0x71a |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
388 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
389 |
#define AUDIOHDC_GPIO_ENABLE 0xff |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
390 |
#define AUDIOHDC_GPIO_DIRECT 0xf1 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
391 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
392 |
#define AUDIOHDC_GPIO_DATA_CTRL 0xff |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
393 |
#define AUDIOHDC_GPIO_STCK_CTRL 0xff |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
394 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
395 |
* 4-bit verbs |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
396 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
397 |
#define AUDIOHDC_VERB_GET_CONV_FMT 0xa |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
398 |
#define AUDIOHDC_VERB_SET_CONV_FMT 0x2 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
399 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
400 |
#define AUDIOHDC_VERB_GET_AMP_MUTE 0xb |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
401 |
#define AUDIOHDC_VERB_SET_AMP_MUTE 0x3 |
9842
333f65f565a1
6828784 Beep doesn't work for Opensolaris on DELL LATITUDE D630
lipeng sang - Sun Microsystems - Beijing China <Lipeng.Sang@Sun.COM>
parents:
9841
diff
changeset
|
402 |
#define AUDIOHDC_VERB_SET_BEEP_VOL 0x3A0 |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
403 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
404 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
405 |
* parameters of nodes |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
406 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
407 |
#define AUDIOHDC_PAR_VENDOR_ID 0x00 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
408 |
#define AUDIOHDC_PAR_SUBSYS_ID 0x01 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
409 |
#define AUDIOHDC_PAR_REV_ID 0x02 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
410 |
#define AUDIOHDC_PAR_NODE_COUNT 0x04 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
411 |
#define AUDIOHDC_PAR_FUNCTION_TYPE 0x05 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
412 |
#define AUDIOHDC_PAR_AUDIO_FG_CAP 0x08 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
413 |
#define AUDIOHDC_PAR_AUDIO_WID_CAP 0x09 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
414 |
#define AUDIOHDC_PAR_PCM 0x0a |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
415 |
#define AUDIOHDC_PAR_STREAM 0x0b |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
416 |
#define AUDIOHDC_PAR_PIN_CAP 0x0c |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
417 |
#define AUDIOHDC_PAR_INAMP_CAP 0x0d |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
418 |
#define AUDIOHDC_PAR_CONNLIST_LEN 0x0e |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
419 |
#define AUDIOHDC_PAR_POWER_STATE 0x0f |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
420 |
#define AUDIOHDC_PAR_PROC_CAP 0x10 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
421 |
#define AUDIOHDC_PAR_GPIO_CAP 0x11 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
422 |
#define AUDIOHDC_PAR_OUTAMP_CAP 0x12 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
423 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
424 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
425 |
* bits for get/set amplifier gain/mute |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
426 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
427 |
#define AUDIOHDC_AMP_SET_OUTPUT 0x8000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
428 |
#define AUDIOHDC_AMP_SET_INPUT 0x4000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
429 |
#define AUDIOHDC_AMP_SET_LEFT 0x2000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
430 |
#define AUDIOHDC_AMP_SET_RIGHT 0x1000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
431 |
#define AUDIOHDC_AMP_SET_MUTE 0x0080 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
432 |
#define AUDIOHDC_AMP_SET_LNR 0x3000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
433 |
#define AUDIOHDC_AMP_SET_LR_INPUT 0x7000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
434 |
#define AUDIOHDC_AMP_SET_LR_OUTPUT 0xb000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
435 |
#define AUDIOHDC_AMP_SET_INDEX_OFFSET 8 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
436 |
#define AUDIOHDC_AMP_SET_GAIN_MASK 0x007f |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
437 |
#define AUDIOHDC_GAIN_MAX 0x7f |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
438 |
#define AUDIOHDC_GAIN_BITS 7 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
439 |
#define AUDIOHDC_GAIN_DEFAULT 0x0f |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
440 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
441 |
#define AUDIOHDC_AMP_GET_OUTPUT 0x8000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
442 |
#define AUDIOHDC_AMP_GET_INPUT 0x0000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
443 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
444 |
/* value used to set max volume for left output */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
445 |
#define AUDIOHDC_AMP_LOUT_MAX \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
446 |
(AUDIOHDC_AMP_SET_OUTPUT | \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
447 |
AUDIOHDC_AMP_SET_LEFT | \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
448 |
AUDIOHDC_GAIN_MAX) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
449 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
450 |
/* value used to set max volume for right output */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
451 |
#define AUDIOHDC_AMP_ROUT_MAX \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
452 |
(AUDIOHDC_AMP_SET_OUTPUT | \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
453 |
AUDIOHDC_AMP_SET_RIGHT | \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
454 |
AUDIOHDC_GAIN_MAX) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
455 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
456 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
457 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
458 |
* Bits for pin widget control verb |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
459 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
460 |
#define AUDIOHDC_PIN_CONTROL_HP_ENABLE 0x80 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
461 |
#define AUDIOHDC_PIN_CONTROL_OUT_ENABLE 0x40 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
462 |
#define AUDIOHDC_PIN_CONTROL_IN_ENABLE 0x20 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
463 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
464 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
465 |
* Bits for Amplifier capabilities |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
466 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
467 |
#define AUDIOHDC_AMP_CAP_MUTE_CAP 0x80000000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
468 |
#define AUDIOHDC_AMP_CAP_STEP_SIZE 0x007f0000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
469 |
#define AUDIOHDC_AMP_CAP_STEP_NUMS 0x00007f00 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
470 |
#define AUDIOHDC_AMP_CAP_0DB_OFFSET 0x0000007f |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
471 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
472 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
473 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
474 |
* Bits for Audio Widget Capabilities |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
475 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
476 |
#define AUDIOHD_WIDCAP_STEREO 0x00000001 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
477 |
#define AUDIOHD_WIDCAP_INAMP 0x00000002 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
478 |
#define AUDIOHD_WIDCAP_OUTAMP 0x00000004 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
479 |
#define AUDIOHD_WIDCAP_AMP_OVRIDE 0x00000008 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
480 |
#define AUDIOHD_WIDCAP_FMT_OVRIDE 0x00000010 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
481 |
#define AUDIOHD_WIDCAP_STRIP 0x00000020 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
482 |
#define AUDIOHD_WIDCAP_PROC_WID 0x00000040 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
483 |
#define AUDIOHD_WIDCAP_UNSOL 0x00000080 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
484 |
#define AUDIOHD_WIDCAP_CONNLIST 0x00000100 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
485 |
#define AUDIOHD_WIDCAP_DIGIT 0x00000200 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
486 |
#define AUDIOHD_WIDCAP_PWRCTRL 0x00000400 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
487 |
#define AUDIOHD_WIDCAP_LRSWAP 0x00000800 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
488 |
#define AUDIOHD_WIDCAP_TYPE 0x00f00000 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
489 |
#define AUDIOHD_WIDCAP_TO_WIDTYPE(wcap) \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
490 |
((wcap & AUDIOHD_WIDCAP_TYPE) >> 20) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
491 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
492 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
493 |
#define AUDIOHD_CODEC_FAILURE (uint32_t)(-1) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
494 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
495 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
496 |
* buffer descriptor list entry of stream descriptor |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
497 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
498 |
typedef struct { |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
499 |
uint64_t sbde_addr; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
500 |
uint32_t sbde_len; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
501 |
uint32_t |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
502 |
sbde_ioc: 1, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
503 |
reserved: 31; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
504 |
}sd_bdle_t; |
2307
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
505 |
|
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
506 |
|
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
507 |
#define AUDIOHD_PLAY_STARTED 0x00000001 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
508 |
#define AUDIOHD_PLAY_EMPTY 0x00000002 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
509 |
#define AUDIOHD_PLAY_PAUSED 0x00000004 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
510 |
#define AUDIOHD_RECORD_STARTED 0x00000008 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
511 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
512 |
enum audiohda_widget_type { |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
513 |
WTYPE_AUDIO_OUT = 0, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
514 |
WTYPE_AUDIO_IN, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
515 |
WTYPE_AUDIO_MIX, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
516 |
WTYPE_AUDIO_SEL, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
517 |
WTYPE_PIN, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
518 |
WTYPE_POWER, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
519 |
WTYPE_VOL_KNOB, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
520 |
WTYPE_BEEP, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
521 |
WTYPE_VENDOR = 0xf |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
522 |
}; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
523 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
524 |
enum audiohda_device_type { |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
525 |
DTYPE_LINEOUT = 0, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
526 |
DTYPE_SPEAKER, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
527 |
DTYPE_HP_OUT, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
528 |
DTYPE_CD, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
529 |
DTYPE_SPDIF_OUT, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
530 |
DTYPE_DIGIT_OUT, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
531 |
DTYPE_MODEM_SIDE, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
532 |
DTYPE_MODEM_HNAD_SIDE, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
533 |
DTYPE_LINE_IN, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
534 |
DTYPE_AUX, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
535 |
DTYPE_MIC_IN, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
536 |
DTYPE_TEL, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
537 |
DTYPE_SPDIF_IN, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
538 |
DTYPE_DIGIT_IN, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
539 |
DTYPE_OTHER = 0x0f, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
540 |
}; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
541 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
542 |
enum audiohd_pin_color { |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
543 |
AUDIOHD_PIN_UNKNOWN = 0, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
544 |
AUDIOHD_PIN_BLACK, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
545 |
AUDIOHD_PIN_GREY, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
546 |
AUDIOHD_PIN_BLUE, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
547 |
AUDIOHD_PIN_GREEN, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
548 |
AUDIOHD_PIN_RED, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
549 |
AUDIOHD_PIN_ORANGE, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
550 |
AUDIOHD_PIN_YELLOW, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
551 |
AUDIOHD_PIN_PURPLE, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
552 |
AUDIOHD_PIN_PINK, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
553 |
AUDIOHD_PIN_WHITE = 0xe, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
554 |
AUDIOHD_PIN_OTHER = 0xf, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
555 |
}; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
556 |
|
9842
333f65f565a1
6828784 Beep doesn't work for Opensolaris on DELL LATITUDE D630
lipeng sang - Sun Microsystems - Beijing China <Lipeng.Sang@Sun.COM>
parents:
9841
diff
changeset
|
557 |
#define CTRL_NUM 16 |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
558 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
559 |
/* values for audiohd_widget.path_flags */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
560 |
#define AUDIOHD_PATH_DAC (1 << 0) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
561 |
#define AUDIOHD_PATH_ADC (1 << 1) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
562 |
#define AUDIOHD_PATH_MON (1 << 2) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
563 |
#define AUDIOHD_PATH_NOMON (1 << 3) |
9842
333f65f565a1
6828784 Beep doesn't work for Opensolaris on DELL LATITUDE D630
lipeng sang - Sun Microsystems - Beijing China <Lipeng.Sang@Sun.COM>
parents:
9841
diff
changeset
|
564 |
#define AUDIOHD_PATH_BEEP (1 << 4) |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
565 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
566 |
typedef struct audiohd_path audiohd_path_t; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
567 |
typedef struct audiohd_widget audiohd_widget_t; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
568 |
typedef struct audiohd_state audiohd_state_t; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
569 |
typedef struct audiohd_pin audiohd_pin_t; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
570 |
typedef struct hda_codec hda_codec_t; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
571 |
typedef uint32_t wid_t; /* id of widget */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
572 |
typedef struct audiohd_entry_prop audiohd_entry_prop_t; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
573 |
typedef enum audiohda_device_type audiohda_device_type_t; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
574 |
typedef enum audiohd_pin_color audiohd_pin_color_t; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
575 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
576 |
#define AUDIOHD_MAX_WIDGET 128 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
577 |
#define AUDIOHD_MAX_CONN 16 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
578 |
#define AUDIOHD_MAX_PINS 16 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
579 |
#define AUDIOHD_MAX_DEPTH 8 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
580 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
581 |
struct audiohd_entry_prop { |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
582 |
uint32_t conn_len; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
583 |
uint32_t mask_range; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
584 |
uint32_t mask_wid; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
585 |
wid_t input_wid; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
586 |
int conns_per_entry; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
587 |
int bits_per_conn; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
588 |
}; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
589 |
struct audiohd_widget { |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
590 |
wid_t wid_wid; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
591 |
hda_codec_t *codec; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
592 |
enum audiohda_widget_type type; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
593 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
594 |
uint32_t widget_cap; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
595 |
uint32_t pcm_format; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
596 |
uint32_t inamp_cap; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
597 |
uint32_t outamp_cap; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
598 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
599 |
uint32_t path_flags; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
600 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
601 |
int out_weight; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
602 |
int in_weight; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
603 |
int finish; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
604 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
605 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
606 |
* wid of possible & selected input connections |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
607 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
608 |
wid_t avail_conn[AUDIOHD_MAX_CONN]; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
609 |
wid_t selconn; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
610 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
611 |
* for monitor path |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
612 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
613 |
wid_t selmon[AUDIOHD_MAX_CONN]; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
614 |
uint16_t used; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
615 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
616 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
617 |
* available (input) connections. 0 means this widget |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
618 |
* has fixed connection |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
619 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
620 |
int nconns; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
621 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
622 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
623 |
* pointer to struct depending on widget type: |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
624 |
* 1. DAC audiohd_ostream_t |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
625 |
* 2. ADC audiohd_istream_t |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
626 |
* 3. PIN audiohd_pin_t |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
627 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
628 |
void *priv; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
629 |
}; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
630 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
631 |
#define AUDIOHD_FLAG_LINEOUT (1 << 0) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
632 |
#define AUDIOHD_FLAG_SPEAKER (1 << 1) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
633 |
#define AUDIOHD_FLAG_HP (1 << 2) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
634 |
#define AUDIOHD_FLAG_MONO (1 << 3) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
635 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
636 |
#define AUDIOHD_MAX_MIXER 5 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
637 |
#define AUDIOHD_MAX_PIN 4 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
638 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
639 |
#define PORT_DAC 0 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
640 |
#define PORT_ADC 1 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
641 |
#define PORT_MAX 2 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
642 |
typedef enum { |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
643 |
PLAY = 0, |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
644 |
RECORD = 1, |
9842
333f65f565a1
6828784 Beep doesn't work for Opensolaris on DELL LATITUDE D630
lipeng sang - Sun Microsystems - Beijing China <Lipeng.Sang@Sun.COM>
parents:
9841
diff
changeset
|
645 |
BEEP = 2, |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
646 |
} path_type_t; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
647 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
648 |
struct audiohd_path { |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
649 |
wid_t adda_wid; |
9842
333f65f565a1
6828784 Beep doesn't work for Opensolaris on DELL LATITUDE D630
lipeng sang - Sun Microsystems - Beijing China <Lipeng.Sang@Sun.COM>
parents:
9841
diff
changeset
|
650 |
wid_t beep_wid; |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
651 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
652 |
wid_t pin_wid[AUDIOHD_MAX_PINS]; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
653 |
int sum_selconn[AUDIOHD_MAX_PINS]; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
654 |
int mon_wid[AUDIOHD_MAX_PIN][AUDIOHD_MAX_MIXER]; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
655 |
int pin_nums; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
656 |
int maxmixer[AUDIOHD_MAX_PINS]; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
657 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
658 |
path_type_t path_type; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
659 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
660 |
wid_t mute_wid; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
661 |
int mute_dir; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
662 |
wid_t gain_wid; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
663 |
int gain_dir; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
664 |
uint32_t gain_bits; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
665 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
666 |
uint32_t pin_outputs; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
667 |
uint8_t tag; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
668 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
669 |
hda_codec_t *codec; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
670 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
671 |
wid_t sum_wid; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
672 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
673 |
audiohd_state_t *statep; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
674 |
}; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
675 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
676 |
typedef struct audiohd_port |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
677 |
{ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
678 |
uint8_t nchan; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
679 |
int index; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
680 |
uint16_t regoff; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
681 |
boolean_t started; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
682 |
boolean_t triggered; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
683 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
684 |
unsigned fragfr; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
685 |
unsigned nframes; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
686 |
uint64_t count; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
687 |
int curpos; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
688 |
int intrs; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
689 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
690 |
uint_t format; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
691 |
unsigned sync_dir; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
692 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
693 |
ddi_dma_handle_t samp_dmah; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
694 |
ddi_acc_handle_t samp_acch; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
695 |
size_t samp_size; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
696 |
caddr_t samp_kaddr; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
697 |
uint64_t samp_paddr; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
698 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
699 |
ddi_dma_handle_t bdl_dmah; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
700 |
ddi_acc_handle_t bdl_acch; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
701 |
size_t bdl_size; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
702 |
caddr_t bdl_kaddr; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
703 |
uint64_t bdl_paddr; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
704 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
705 |
audio_engine_t *engine; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
706 |
audiohd_state_t *statep; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
707 |
}audiohd_port_t; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
708 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
709 |
typedef struct audiohd_ctrl |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
710 |
{ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
711 |
audiohd_state_t *statep; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
712 |
audio_ctrl_t *ctrl; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
713 |
uint32_t num; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
714 |
uint64_t val; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
715 |
} audiohd_ctrl_t; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
716 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
717 |
struct audiohd_pin { |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
718 |
audiohd_pin_t *next; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
719 |
wid_t wid; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
720 |
wid_t mute_wid; /* node used to mute this pin */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
721 |
int mute_dir; /* 1: input, 2: output */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
722 |
wid_t gain_wid; /* node for gain control */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
723 |
int gain_dir; /* _OUTPUT/_INPUT */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
724 |
uint32_t gain_bits; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
725 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
726 |
uint8_t vrefvalue; /* value of VRef */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
727 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
728 |
uint32_t cap; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
729 |
uint32_t config; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
730 |
uint32_t ctrl; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
731 |
uint32_t assoc; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
732 |
uint32_t seq; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
733 |
wid_t adc_dac_wid; /* AD/DA wid which can route to this pin */ |
9842
333f65f565a1
6828784 Beep doesn't work for Opensolaris on DELL LATITUDE D630
lipeng sang - Sun Microsystems - Beijing China <Lipeng.Sang@Sun.COM>
parents:
9841
diff
changeset
|
734 |
wid_t beep_wid; |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
735 |
int no_phys_conn; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
736 |
enum audiohda_device_type device; |
2307
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
737 |
|
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
738 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
739 |
* mg_dir, mg_gain, mg_wid are used to store the monitor gain control |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
740 |
* widget wid. |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
741 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
742 |
int mg_dir[AUDIOHD_MAX_CONN]; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
743 |
int mg_gain[AUDIOHD_MAX_CONN]; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
744 |
int mg_wid[AUDIOHD_MAX_CONN]; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
745 |
int num; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
746 |
int finish; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
747 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
748 |
}; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
749 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
750 |
typedef struct { |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
751 |
ddi_dma_handle_t ad_dmahdl; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
752 |
ddi_acc_handle_t ad_acchdl; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
753 |
caddr_t ad_vaddr; /* virtual addr */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
754 |
uint64_t ad_paddr; /* physical addr */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
755 |
size_t ad_req_sz; /* required size of memory */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
756 |
size_t ad_real_sz; /* real size of memory */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
757 |
} audiohd_dma_t; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
758 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
759 |
struct hda_codec { |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
760 |
uint8_t index; /* codec address */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
761 |
uint32_t vid; /* vendor id and device id */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
762 |
uint32_t revid; /* revision id */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
763 |
wid_t wid_afg; /* id of AFG */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
764 |
wid_t first_wid; /* wid of 1st subnode of AFG */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
765 |
wid_t last_wid; /* wid of the last subnode of AFG */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
766 |
int nnodes; /* # of subnodes of AFG */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
767 |
uint8_t nistream; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
768 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
769 |
uint32_t outamp_cap; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
770 |
uint32_t inamp_cap; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
771 |
uint32_t stream_format; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
772 |
uint32_t pcm_format; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
773 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
774 |
audiohd_state_t *soft_statep; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
775 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
776 |
/* use wid as index to the array of widget pointers */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
777 |
audiohd_widget_t *widget[AUDIOHD_MAX_WIDGET]; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
778 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
779 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
780 |
audiohd_port_t *port[AUDIOHD_PORT_MAX]; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
781 |
uint8_t portnum; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
782 |
audiohd_pin_t *first_pin; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
783 |
}; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
784 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
785 |
#define AUDIOHD_MAX_ASSOC 15 |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
786 |
struct audiohd_state { |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
787 |
dev_info_t *hda_dip; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
788 |
kstat_t *hda_ksp; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
789 |
kmutex_t hda_mutex; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
790 |
uint32_t hda_flags; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
791 |
|
9510
ad868d7bc35a
6835361 Soft volume should be used to control the PCM volume if DAC has no capability to control
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
9484
diff
changeset
|
792 |
boolean_t soft_volume; |
9841
c7ecdbcb7950
6848264 Sound distorts when recording with the built-in MIC on Toshiba M9
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
9727
diff
changeset
|
793 |
boolean_t intr_added; |
9510
ad868d7bc35a
6835361 Soft volume should be used to control the PCM volume if DAC has no capability to control
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
9484
diff
changeset
|
794 |
|
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
795 |
caddr_t hda_reg_base; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
796 |
ddi_acc_handle_t hda_pci_handle; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
797 |
ddi_acc_handle_t hda_reg_handle; |
10347
ef3957bb6db1
6853359 internal microphone always enabled in Lenovo T60
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
10078
diff
changeset
|
798 |
|
ef3957bb6db1
6853359 internal microphone always enabled in Lenovo T60
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
10078
diff
changeset
|
799 |
ddi_intr_handle_t *htable; /* For array of interrupts */ |
ef3957bb6db1
6853359 internal microphone always enabled in Lenovo T60
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
10078
diff
changeset
|
800 |
int intr_type; /* What type of interrupt */ |
ef3957bb6db1
6853359 internal microphone always enabled in Lenovo T60
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
10078
diff
changeset
|
801 |
int intr_rqst; /* # of request intrs count */ |
ef3957bb6db1
6853359 internal microphone always enabled in Lenovo T60
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
10078
diff
changeset
|
802 |
int intr_cnt; /* # of intrs count returned */ |
ef3957bb6db1
6853359 internal microphone always enabled in Lenovo T60
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
10078
diff
changeset
|
803 |
uint_t intr_pri; /* Interrupt priority */ |
ef3957bb6db1
6853359 internal microphone always enabled in Lenovo T60
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
10078
diff
changeset
|
804 |
int intr_cap; /* Interrupt capabilities */ |
ef3957bb6db1
6853359 internal microphone always enabled in Lenovo T60
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
10078
diff
changeset
|
805 |
boolean_t msi_enable; |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
806 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
807 |
audiohd_dma_t hda_dma_corb; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
808 |
audiohd_dma_t hda_dma_rirb; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
809 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
810 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
811 |
uint8_t hda_rirb_rp; /* read pointer for rirb */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
812 |
uint16_t hda_codec_mask; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
813 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
814 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
815 |
audio_dev_t *adev; |
10821
77dbb4cf3365
6884252 Reliable hang with MCP51 audio effective build 123
Zhao Edgar Liu - Sun Microsystems <Edgar.Liu@Sun.COM>
parents:
10531
diff
changeset
|
816 |
uint32_t devid; |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
817 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
818 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
819 |
int hda_pint_freq; /* play intr frequence */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
820 |
int hda_rint_freq; /* record intr frequence */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
821 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
822 |
int hda_input_streams; /* # of input stream */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
823 |
int hda_output_streams; /* # of output stream */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
824 |
int hda_streams_nums; /* # of stream */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
825 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
826 |
uint_t hda_play_regbase; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
827 |
uint_t hda_record_regbase; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
828 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
829 |
uint_t hda_play_stag; /* tag of playback stream */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
830 |
uint_t hda_record_stag; /* tag of record stream */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
831 |
uint_t hda_play_lgain; /* left gain for playback */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
832 |
uint_t hda_play_rgain; /* right gain for playback */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
833 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
834 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
835 |
* Now, for the time being, we add some fields |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
836 |
* for parsing codec topology |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
837 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
838 |
hda_codec_t *codec[AUDIOHD_CODEC_MAX]; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
839 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
840 |
* Suspend/Resume used fields |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
841 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
842 |
boolean_t suspended; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
843 |
boolean_t monitor_unsupported; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
844 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
845 |
audiohd_path_t *path[AUDIOHD_PORT_MAX]; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
846 |
uint8_t pathnum; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
847 |
audiohd_port_t *port[PORT_MAX]; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
848 |
uint8_t pchan; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
849 |
uint8_t rchan; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
850 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
851 |
uint64_t inmask; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
852 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
853 |
uint_t hda_out_ports; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
854 |
uint_t in_port; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
855 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
856 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
857 |
* Controls |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
858 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
859 |
audiohd_ctrl_t *controls[CTRL_NUM]; |
2307
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
860 |
|
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
861 |
/* for multichannel */ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
862 |
uint8_t chann[AUDIOHD_MAX_ASSOC]; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
863 |
uint8_t assoc; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
864 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
865 |
}; |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
866 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
867 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
868 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
869 |
* Operation for high definition audio control system bus |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
870 |
* interface registers |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
871 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
872 |
#define AUDIOHD_REG_GET8(reg) \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
873 |
ddi_get8(statep->hda_reg_handle, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
874 |
(void *)((char *)statep->hda_reg_base + (reg))) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
875 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
876 |
#define AUDIOHD_REG_GET16(reg) \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
877 |
ddi_get16(statep->hda_reg_handle, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
878 |
(void *)((char *)statep->hda_reg_base + (reg))) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
879 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
880 |
#define AUDIOHD_REG_GET32(reg) \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
881 |
ddi_get32(statep->hda_reg_handle, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
882 |
(void *)((char *)statep->hda_reg_base + (reg))) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
883 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
884 |
#define AUDIOHD_REG_GET64(reg) \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
885 |
ddi_get64(statep->hda_reg_handle, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
886 |
(void *)((char *)statep->hda_reg_base + (reg))) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
887 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
888 |
#define AUDIOHD_REG_SET8(reg, val) \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
889 |
ddi_put8(statep->hda_reg_handle, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
890 |
(void *)((char *)statep->hda_reg_base + (reg)), (val)) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
891 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
892 |
#define AUDIOHD_REG_SET16(reg, val) \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
893 |
ddi_put16(statep->hda_reg_handle, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
894 |
(void *)((char *)statep->hda_reg_base + (reg)), (val)) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
895 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
896 |
#define AUDIOHD_REG_SET32(reg, val) \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
897 |
ddi_put32(statep->hda_reg_handle, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
898 |
(void *)((char *)statep->hda_reg_base + (reg)), (val)) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
899 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
900 |
#define AUDIOHD_REG_SET64(reg, val) \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
901 |
ddi_put64(statep->hda_reg_handle, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
902 |
(void *)((char *)statep->hda_reg_base + (reg)), (val)) |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
903 |
|
2307
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
904 |
|
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
905 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
906 |
* enable a pin widget to output |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
907 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
908 |
#define AUDIOHD_ENABLE_PIN_OUT(statep, caddr, wid) \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
909 |
{ \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
910 |
uint32_t lTmp; \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
911 |
\ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
912 |
lTmp = audioha_codec_verb_get(statep, caddr, wid, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
913 |
AUDIOHDC_VERB_GET_PIN_CTRL, 0); \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
914 |
if (lTmp == AUDIOHD_CODEC_FAILURE) \ |
9841
c7ecdbcb7950
6848264 Sound distorts when recording with the built-in MIC on Toshiba M9
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
9727
diff
changeset
|
915 |
return (DDI_FAILURE); \ |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
916 |
lTmp = audioha_codec_verb_get(statep, caddr, wid, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
917 |
AUDIOHDC_VERB_SET_PIN_CTRL, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
918 |
(lTmp | AUDIOHDC_PIN_CONTROL_OUT_ENABLE | \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
919 |
AUDIOHDC_PIN_CONTROL_HP_ENABLE)); \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
920 |
if (lTmp == AUDIOHD_CODEC_FAILURE) \ |
9841
c7ecdbcb7950
6848264 Sound distorts when recording with the built-in MIC on Toshiba M9
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
9727
diff
changeset
|
921 |
return (DDI_FAILURE); \ |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
922 |
} |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
923 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
924 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
925 |
* disable output pin |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
926 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
927 |
#define AUDIOHD_DISABLE_PIN_OUT(statep, caddr, wid) \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
928 |
{ \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
929 |
uint32_t lTmp; \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
930 |
\ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
931 |
lTmp = audioha_codec_verb_get(statep, caddr, wid, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
932 |
AUDIOHDC_VERB_GET_PIN_CTRL, 0); \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
933 |
if (lTmp == AUDIOHD_CODEC_FAILURE) \ |
9841
c7ecdbcb7950
6848264 Sound distorts when recording with the built-in MIC on Toshiba M9
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
9727
diff
changeset
|
934 |
return (DDI_FAILURE); \ |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
935 |
lTmp = audioha_codec_verb_get(statep, caddr, wid, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
936 |
AUDIOHDC_VERB_SET_PIN_CTRL, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
937 |
(lTmp & ~AUDIOHDC_PIN_CONTROL_OUT_ENABLE)); \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
938 |
if (lTmp == AUDIOHD_CODEC_FAILURE) \ |
9841
c7ecdbcb7950
6848264 Sound distorts when recording with the built-in MIC on Toshiba M9
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
9727
diff
changeset
|
939 |
return (DDI_FAILURE); \ |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
940 |
} |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
941 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
942 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
943 |
* enable a pin widget to input |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
944 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
945 |
#define AUDIOHD_ENABLE_PIN_IN(statep, caddr, wid) \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
946 |
{ \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
947 |
(void) audioha_codec_verb_get(statep, caddr, wid, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
948 |
AUDIOHDC_VERB_SET_PIN_CTRL, AUDIOHDC_PIN_CONTROL_IN_ENABLE | 4); \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
949 |
} |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
950 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
951 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
952 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
953 |
* disable input pin |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
954 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
955 |
#define AUDIOHD_DISABLE_PIN_IN(statep, caddr, wid) \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
956 |
{ \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
957 |
uint32_t lTmp; \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
958 |
\ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
959 |
lTmp = audioha_codec_verb_get(statep, caddr, wid, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
960 |
AUDIOHDC_VERB_GET_PIN_CTRL, 0); \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
961 |
if (lTmp == AUDIOHD_CODEC_FAILURE) \ |
9841
c7ecdbcb7950
6848264 Sound distorts when recording with the built-in MIC on Toshiba M9
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
9727
diff
changeset
|
962 |
return (DDI_FAILURE); \ |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
963 |
lTmp = audioha_codec_verb_get(statep, caddr, wid, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
964 |
AUDIOHDC_VERB_SET_PIN_CTRL, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
965 |
(lTmp & ~AUDIOHDC_PIN_CONTROL_IN_ENABLE)); \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
966 |
if (lTmp == AUDIOHD_CODEC_FAILURE) \ |
9841
c7ecdbcb7950
6848264 Sound distorts when recording with the built-in MIC on Toshiba M9
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
9727
diff
changeset
|
967 |
return (DDI_FAILURE); \ |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
968 |
} |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
969 |
|
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
970 |
/* |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
971 |
* unmute an output pin |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
972 |
*/ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
973 |
#define AUDIOHD_NODE_UNMUTE_OUT(statep, caddr, wid) \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
974 |
{ \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
975 |
if (audioha_codec_4bit_verb_get(statep, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
976 |
caddr, wid, AUDIOHDC_VERB_SET_AMP_MUTE, \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
977 |
AUDIOHDC_AMP_SET_LR_OUTPUT | AUDIOHDC_GAIN_MAX) == \ |
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
978 |
AUDIOHD_CODEC_FAILURE) \ |
9841
c7ecdbcb7950
6848264 Sound distorts when recording with the built-in MIC on Toshiba M9
Yang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>
parents:
9727
diff
changeset
|
979 |
return (DDI_FAILURE); \ |
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
980 |
} |
2307
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
981 |
|
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
982 |
#ifdef __cplusplus |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
983 |
} |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
984 |
#endif |
0b8abf5d5947
PSARC 2006/394 Solaris audio driver for Munich Workstation
fl147353
parents:
diff
changeset
|
985 |
|
9484
fbd5ddc28e96
PSARC 2008/318 Boomer: Next Generation Solaris Audio
Garrett D'Amore <garrett.damore@Sun.COM>
parents:
4814
diff
changeset
|
986 |
#endif /* _SYS_AUDIOHD_IMPL_H_ */ |