diff options
author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-16 13:13:38 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-16 13:13:38 -0400 |
commit | fc8a327db6c46de783b1a4276d846841b9abc24c (patch) | |
tree | bee512c142cccea93511debd98ef954581693727 /include | |
parent | 92d15c2ccbb3e31a3fc71ad28fdb55e1319383c0 (diff) | |
parent | 24837e6f249a2c83667552e6871c1543b4a6b934 (diff) |
Merge branch 'linus' of master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa
* 'linus' of master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa: (264 commits)
[ALSA] version 1.0.15
[ALSA] Fix thinko in cs4231 mce down check
[ALSA] sun-cs4231: improved waiting after MCE down
[ALSA] sun-cs4231: use cs4231-regs.h
[ALSA] This simplifies and fixes waiting loops of the mce_down()
[ALSA] This patch adds support for a wavetable chip on
[ALSA] This patch removes open_mutex from the ad1848-lib as
[ALSA] fix bootup crash in snd_gus_interrupt()
[ALSA] hda-codec - Fix SKU ID function for realtek codecs
[ALSA] Support ASUS P701 eeepc [0x1043 0x82a1] support
[ALSA] hda-codec - Add array terminator for dmic in STAC codec
[ALSA] hdsp - Fix zero division
[ALSA] usb-audio - Fix double comment
[ALSA] hda-codec - Fix STAC922x volume knob control
[ALSA] Changed Jaroslav Kysela's e-mail from perex@suse.cz to perex@perex.cz
[ALSA] hda-codec - Fix for Fujitsu Lifebook C1410
[ALSA] mpu-401: remove MPU401_INFO_UART_ONLY flag
[ALSA] mpu-401: do not require an ACK byte for the ENTER_UART command
[ALSA] via82xx - Add DXS quirk for Shuttle AK31v2
[ALSA] hda-codec - Fix input_mux numbers for vaio stac92xx
...
Diffstat (limited to 'include')
52 files changed, 339 insertions, 224 deletions
diff --git a/include/linux/i2c-id.h b/include/linux/i2c-id.h index a271b67a8e2d..88c81403eb3f 100644 --- a/include/linux/i2c-id.h +++ b/include/linux/i2c-id.h | |||
@@ -120,6 +120,7 @@ | |||
120 | #define I2C_DRIVERID_WM8753 91 /* Wolfson WM8753 audio codec */ | 120 | #define I2C_DRIVERID_WM8753 91 /* Wolfson WM8753 audio codec */ |
121 | #define I2C_DRIVERID_LM4857 92 /* LM4857 Audio Amplifier */ | 121 | #define I2C_DRIVERID_LM4857 92 /* LM4857 Audio Amplifier */ |
122 | #define I2C_DRIVERID_VP27SMPX 93 /* Panasonic VP27s tuner internal MPX */ | 122 | #define I2C_DRIVERID_VP27SMPX 93 /* Panasonic VP27s tuner internal MPX */ |
123 | #define I2C_DRIVERID_CS4270 94 /* Cirrus Logic 4270 audio codec */ | ||
123 | 124 | ||
124 | #define I2C_DRIVERID_I2CDEV 900 | 125 | #define I2C_DRIVERID_I2CDEV 900 |
125 | #define I2C_DRIVERID_ARP 902 /* SMBus ARP Client */ | 126 | #define I2C_DRIVERID_ARP 902 /* SMBus ARP Client */ |
diff --git a/include/linux/spi/at73c213.h b/include/linux/spi/at73c213.h new file mode 100644 index 000000000000..0f20a70e5eb4 --- /dev/null +++ b/include/linux/spi/at73c213.h | |||
@@ -0,0 +1,25 @@ | |||
1 | /* | ||
2 | * Board-specific data used to set up AT73c213 audio DAC driver. | ||
3 | */ | ||
4 | |||
5 | #ifndef __LINUX_SPI_AT73C213_H | ||
6 | #define __LINUX_SPI_AT73C213_H | ||
7 | |||
8 | /** | ||
9 | * at73c213_board_info - how the external DAC is wired to the device. | ||
10 | * | ||
11 | * @ssc_id: SSC platform_driver id the DAC shall use to stream the audio. | ||
12 | * @dac_clk: the external clock used to provide master clock to the DAC. | ||
13 | * @shortname: a short discription for the DAC, seen by userspace tools. | ||
14 | * | ||
15 | * This struct contains the configuration of the hardware connection to the | ||
16 | * external DAC. The DAC needs a master clock and a I2S audio stream. It also | ||
17 | * provides a name which is used to identify it in userspace tools. | ||
18 | */ | ||
19 | struct at73c213_board_info { | ||
20 | int ssc_id; | ||
21 | struct clk *dac_clk; | ||
22 | char shortname[32]; | ||
23 | }; | ||
24 | |||
25 | #endif /* __LINUX_SPI_AT73C213_H */ | ||
diff --git a/include/sound/ac97_codec.h b/include/sound/ac97_codec.h index 246ac23534bd..01480581f825 100644 --- a/include/sound/ac97_codec.h +++ b/include/sound/ac97_codec.h | |||
@@ -2,7 +2,7 @@ | |||
2 | #define __SOUND_AC97_CODEC_H | 2 | #define __SOUND_AC97_CODEC_H |
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 5 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
6 | * Universal interface for Audio Codec '97 | 6 | * Universal interface for Audio Codec '97 |
7 | * | 7 | * |
8 | * For more details look to AC '97 component specification revision 2.1 | 8 | * For more details look to AC '97 component specification revision 2.1 |
@@ -345,9 +345,9 @@ | |||
345 | #define AC97_ALC650_GPIO_STATUS 0x78 | 345 | #define AC97_ALC650_GPIO_STATUS 0x78 |
346 | #define AC97_ALC650_CLOCK 0x7a | 346 | #define AC97_ALC650_CLOCK 0x7a |
347 | 347 | ||
348 | /* specific - Yamaha YMF753 */ | 348 | /* specific - Yamaha YMF7x3 */ |
349 | #define AC97_YMF753_DIT_CTRL2 0x66 /* DIT Control 2 */ | 349 | #define AC97_YMF7X3_DIT_CTRL 0x66 /* DIT Control (YMF743) / 2 (YMF753) */ |
350 | #define AC97_YMF753_3D_MODE_SEL 0x68 /* 3D Mode Select */ | 350 | #define AC97_YMF7X3_3D_MODE_SEL 0x68 /* 3D Mode Select */ |
351 | 351 | ||
352 | /* specific - C-Media */ | 352 | /* specific - C-Media */ |
353 | #define AC97_CM9738_VENDOR_CTRL 0x5a | 353 | #define AC97_CM9738_VENDOR_CTRL 0x5a |
diff --git a/include/sound/ad1848.h b/include/sound/ad1848.h index b2c3f00a9b35..d04f9e78c7c1 100644 --- a/include/sound/ad1848.h +++ b/include/sound/ad1848.h | |||
@@ -2,7 +2,7 @@ | |||
2 | #define __SOUND_AD1848_H | 2 | #define __SOUND_AD1848_H |
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 5 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
6 | * Definitions for AD1847/AD1848/CS4248 chips | 6 | * Definitions for AD1847/AD1848/CS4248 chips |
7 | * | 7 | * |
8 | * | 8 | * |
@@ -27,7 +27,7 @@ | |||
27 | 27 | ||
28 | /* IO ports */ | 28 | /* IO ports */ |
29 | 29 | ||
30 | #define AD1848P( codec, x ) ( (chip) -> port + c_d_c_AD1848##x ) | 30 | #define AD1848P( chip, x ) ( (chip) -> port + c_d_c_AD1848##x ) |
31 | 31 | ||
32 | #define c_d_c_AD1848REGSEL 0 | 32 | #define c_d_c_AD1848REGSEL 0 |
33 | #define c_d_c_AD1848REG 1 | 33 | #define c_d_c_AD1848REG 1 |
@@ -154,7 +154,6 @@ struct snd_ad1848 { | |||
154 | #endif | 154 | #endif |
155 | 155 | ||
156 | spinlock_t reg_lock; | 156 | spinlock_t reg_lock; |
157 | struct mutex open_mutex; | ||
158 | }; | 157 | }; |
159 | 158 | ||
160 | /* exported functions */ | 159 | /* exported functions */ |
diff --git a/include/sound/ainstr_gf1.h b/include/sound/ainstr_gf1.h index 47726fe0f46d..b62b665c69c6 100644 --- a/include/sound/ainstr_gf1.h +++ b/include/sound/ainstr_gf1.h | |||
@@ -2,7 +2,7 @@ | |||
2 | * Advanced Linux Sound Architecture | 2 | * Advanced Linux Sound Architecture |
3 | * | 3 | * |
4 | * GF1 (GUS) Patch Instrument Format | 4 | * GF1 (GUS) Patch Instrument Format |
5 | * Copyright (c) 1994-99 by Jaroslav Kysela <perex@suse.cz> | 5 | * Copyright (c) 1994-99 by Jaroslav Kysela <perex@perex.cz> |
6 | * | 6 | * |
7 | * | 7 | * |
8 | * This program is free software; you can redistribute it and/or modify | 8 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/ainstr_iw.h b/include/sound/ainstr_iw.h index 251feaf1b388..11bd25082600 100644 --- a/include/sound/ainstr_iw.h +++ b/include/sound/ainstr_iw.h | |||
@@ -2,7 +2,7 @@ | |||
2 | * Advanced Linux Sound Architecture | 2 | * Advanced Linux Sound Architecture |
3 | * | 3 | * |
4 | * InterWave FFFF Instrument Format | 4 | * InterWave FFFF Instrument Format |
5 | * Copyright (c) 1994-99 by Jaroslav Kysela <perex@suse.cz> | 5 | * Copyright (c) 1994-99 by Jaroslav Kysela <perex@perex.cz> |
6 | * | 6 | * |
7 | * | 7 | * |
8 | * This program is free software; you can redistribute it and/or modify | 8 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/ainstr_simple.h b/include/sound/ainstr_simple.h index 5eead12e58ae..da08e7287557 100644 --- a/include/sound/ainstr_simple.h +++ b/include/sound/ainstr_simple.h | |||
@@ -2,7 +2,7 @@ | |||
2 | * Advanced Linux Sound Architecture | 2 | * Advanced Linux Sound Architecture |
3 | * | 3 | * |
4 | * Simple (MOD player) Instrument Format | 4 | * Simple (MOD player) Instrument Format |
5 | * Copyright (c) 1994-99 by Jaroslav Kysela <perex@suse.cz> | 5 | * Copyright (c) 1994-99 by Jaroslav Kysela <perex@perex.cz> |
6 | * | 6 | * |
7 | * | 7 | * |
8 | * This program is free software; you can redistribute it and/or modify | 8 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/ak4114.h b/include/sound/ak4114.h index d647dae912b9..4e80d3fe7381 100644 --- a/include/sound/ak4114.h +++ b/include/sound/ak4114.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Routines for Asahi Kasei AK4114 | 5 | * Routines for Asahi Kasei AK4114 |
6 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz>, | 6 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz>, |
7 | * | 7 | * |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/ak4117.h b/include/sound/ak4117.h index d650d52e3d29..1e8178171baf 100644 --- a/include/sound/ak4117.h +++ b/include/sound/ak4117.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Routines for Asahi Kasei AK4117 | 5 | * Routines for Asahi Kasei AK4117 |
6 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz>, | 6 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz>, |
7 | * | 7 | * |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/ak4531_codec.h b/include/sound/ak4531_codec.h index fb30faab43a8..575296cf7987 100644 --- a/include/sound/ak4531_codec.h +++ b/include/sound/ak4531_codec.h | |||
@@ -2,7 +2,7 @@ | |||
2 | #define __SOUND_AK4531_CODEC_H | 2 | #define __SOUND_AK4531_CODEC_H |
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 5 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
6 | * Universal interface for Audio Codec '97 | 6 | * Universal interface for Audio Codec '97 |
7 | * | 7 | * |
8 | * For more details look to AC '97 component specification revision 2.1 | 8 | * For more details look to AC '97 component specification revision 2.1 |
diff --git a/include/sound/ak4xxx-adda.h b/include/sound/ak4xxx-adda.h index fd0a6c46f497..891cf1aea8b1 100644 --- a/include/sound/ak4xxx-adda.h +++ b/include/sound/ak4xxx-adda.h | |||
@@ -5,7 +5,7 @@ | |||
5 | * ALSA driver for AK4524 / AK4528 / AK4529 / AK4355 / AK4381 | 5 | * ALSA driver for AK4524 / AK4528 / AK4529 / AK4355 / AK4381 |
6 | * AD and DA converters | 6 | * AD and DA converters |
7 | * | 7 | * |
8 | * Copyright (c) 2000 Jaroslav Kysela <perex@suse.cz> | 8 | * Copyright (c) 2000 Jaroslav Kysela <perex@perex.cz> |
9 | * | 9 | * |
10 | * This program is free software; you can redistribute it and/or modify | 10 | * This program is free software; you can redistribute it and/or modify |
11 | * it under the terms of the GNU General Public License as published by | 11 | * it under the terms of the GNU General Public License as published by |
diff --git a/include/sound/asequencer.h b/include/sound/asequencer.h index 3f2f4042a20d..64daccbe8b29 100644 --- a/include/sound/asequencer.h +++ b/include/sound/asequencer.h | |||
@@ -1,7 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * Main header file for the ALSA sequencer | 2 | * Main header file for the ALSA sequencer |
3 | * Copyright (c) 1998-1999 by Frank van de Pol <fvdpol@coil.demon.nl> | 3 | * Copyright (c) 1998-1999 by Frank van de Pol <fvdpol@coil.demon.nl> |
4 | * (c) 1998-1999 by Jaroslav Kysela <perex@suse.cz> | 4 | * (c) 1998-1999 by Jaroslav Kysela <perex@perex.cz> |
5 | * | 5 | * |
6 | * | 6 | * |
7 | * This program is free software; you can redistribute it and/or modify | 7 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/asound.h b/include/sound/asound.h index c1621c650a9a..af9d11d315e9 100644 --- a/include/sound/asound.h +++ b/include/sound/asound.h | |||
@@ -1,6 +1,6 @@ | |||
1 | /* | 1 | /* |
2 | * Advanced Linux Sound Architecture - ALSA - Driver | 2 | * Advanced Linux Sound Architecture - ALSA - Driver |
3 | * Copyright (c) 1994-2003 by Jaroslav Kysela <perex@suse.cz>, | 3 | * Copyright (c) 1994-2003 by Jaroslav Kysela <perex@perex.cz>, |
4 | * Abramo Bagnara <abramo@alsa-project.org> | 4 | * Abramo Bagnara <abramo@alsa-project.org> |
5 | * | 5 | * |
6 | * | 6 | * |
@@ -92,6 +92,7 @@ enum { | |||
92 | SNDRV_HWDEP_IFACE_USX2Y_PCM, /* Tascam US122, US224 & US428 rawusb pcm */ | 92 | SNDRV_HWDEP_IFACE_USX2Y_PCM, /* Tascam US122, US224 & US428 rawusb pcm */ |
93 | SNDRV_HWDEP_IFACE_PCXHR, /* Digigram PCXHR */ | 93 | SNDRV_HWDEP_IFACE_PCXHR, /* Digigram PCXHR */ |
94 | SNDRV_HWDEP_IFACE_SB_RC, /* SB Extigy/Audigy2NX remote control */ | 94 | SNDRV_HWDEP_IFACE_SB_RC, /* SB Extigy/Audigy2NX remote control */ |
95 | SNDRV_HWDEP_IFACE_HDA, /* HD-audio */ | ||
95 | 96 | ||
96 | /* Don't forget to change the following: */ | 97 | /* Don't forget to change the following: */ |
97 | SNDRV_HWDEP_IFACE_LAST = SNDRV_HWDEP_IFACE_SB_RC | 98 | SNDRV_HWDEP_IFACE_LAST = SNDRV_HWDEP_IFACE_SB_RC |
diff --git a/include/sound/asound_fm.h b/include/sound/asound_fm.h index 956fdc23c595..8fbcab7cc73b 100644 --- a/include/sound/asound_fm.h +++ b/include/sound/asound_fm.h | |||
@@ -5,7 +5,7 @@ | |||
5 | * Advanced Linux Sound Architecture - ALSA | 5 | * Advanced Linux Sound Architecture - ALSA |
6 | * | 6 | * |
7 | * Interface file between ALSA driver & user space | 7 | * Interface file between ALSA driver & user space |
8 | * Copyright (c) 1994-98 by Jaroslav Kysela <perex@suse.cz>, | 8 | * Copyright (c) 1994-98 by Jaroslav Kysela <perex@perex.cz>, |
9 | * 4Front Technologies | 9 | * 4Front Technologies |
10 | * | 10 | * |
11 | * Direct FM control | 11 | * Direct FM control |
diff --git a/include/sound/asoundef.h b/include/sound/asoundef.h index 58c9ef3d1825..024ce62f7d16 100644 --- a/include/sound/asoundef.h +++ b/include/sound/asoundef.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Advanced Linux Sound Architecture - ALSA - Driver | 5 | * Advanced Linux Sound Architecture - ALSA - Driver |
6 | * Copyright (c) 1994-2000 by Jaroslav Kysela <perex@suse.cz> | 6 | * Copyright (c) 1994-2000 by Jaroslav Kysela <perex@perex.cz> |
7 | * | 7 | * |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/control.h b/include/sound/control.h index 72e759f619b1..e79baa63912f 100644 --- a/include/sound/control.h +++ b/include/sound/control.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Header file for control interface | 5 | * Header file for control interface |
6 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 6 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
7 | * | 7 | * |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
@@ -161,4 +161,12 @@ static inline struct snd_ctl_elem_id *snd_ctl_build_ioff(struct snd_ctl_elem_id | |||
161 | return dst_id; | 161 | return dst_id; |
162 | } | 162 | } |
163 | 163 | ||
164 | /* | ||
165 | * Frequently used control callbacks | ||
166 | */ | ||
167 | int snd_ctl_boolean_mono_info(struct snd_kcontrol *kcontrol, | ||
168 | struct snd_ctl_elem_info *uinfo); | ||
169 | int snd_ctl_boolean_stereo_info(struct snd_kcontrol *kcontrol, | ||
170 | struct snd_ctl_elem_info *uinfo); | ||
171 | |||
164 | #endif /* __SOUND_CONTROL_H */ | 172 | #endif /* __SOUND_CONTROL_H */ |
diff --git a/include/sound/core.h b/include/sound/core.h index 4b9e609975ab..6954836487ed 100644 --- a/include/sound/core.h +++ b/include/sound/core.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Main header file for the ALSA driver | 5 | * Main header file for the ALSA driver |
6 | * Copyright (c) 1994-2001 by Jaroslav Kysela <perex@suse.cz> | 6 | * Copyright (c) 1994-2001 by Jaroslav Kysela <perex@perex.cz> |
7 | * | 7 | * |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/cs4231-regs.h b/include/sound/cs4231-regs.h new file mode 100644 index 000000000000..f1490265c9b8 --- /dev/null +++ b/include/sound/cs4231-regs.h | |||
@@ -0,0 +1,180 @@ | |||
1 | #ifndef __SOUND_CS4231_REGS_H | ||
2 | #define __SOUND_CS4231_REGS_H | ||
3 | |||
4 | /* | ||
5 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> | ||
6 | * Definitions for CS4231 & InterWave chips & compatible chips registers | ||
7 | * | ||
8 | * | ||
9 | * This program is free software; you can redistribute it and/or modify | ||
10 | * it under the terms of the GNU General Public License as published by | ||
11 | * the Free Software Foundation; either version 2 of the License, or | ||
12 | * (at your option) any later version. | ||
13 | * | ||
14 | * This program is distributed in the hope that it will be useful, | ||
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | * GNU General Public License for more details. | ||
18 | * | ||
19 | * You should have received a copy of the GNU General Public License | ||
20 | * along with this program; if not, write to the Free Software | ||
21 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
22 | * | ||
23 | */ | ||
24 | |||
25 | /* IO ports */ | ||
26 | |||
27 | #define CS4231P(x) (c_d_c_CS4231##x) | ||
28 | |||
29 | #define c_d_c_CS4231REGSEL 0 | ||
30 | #define c_d_c_CS4231REG 1 | ||
31 | #define c_d_c_CS4231STATUS 2 | ||
32 | #define c_d_c_CS4231PIO 3 | ||
33 | |||
34 | /* codec registers */ | ||
35 | |||
36 | #define CS4231_LEFT_INPUT 0x00 /* left input control */ | ||
37 | #define CS4231_RIGHT_INPUT 0x01 /* right input control */ | ||
38 | #define CS4231_AUX1_LEFT_INPUT 0x02 /* left AUX1 input control */ | ||
39 | #define CS4231_AUX1_RIGHT_INPUT 0x03 /* right AUX1 input control */ | ||
40 | #define CS4231_AUX2_LEFT_INPUT 0x04 /* left AUX2 input control */ | ||
41 | #define CS4231_AUX2_RIGHT_INPUT 0x05 /* right AUX2 input control */ | ||
42 | #define CS4231_LEFT_OUTPUT 0x06 /* left output control register */ | ||
43 | #define CS4231_RIGHT_OUTPUT 0x07 /* right output control register */ | ||
44 | #define CS4231_PLAYBK_FORMAT 0x08 /* clock and data format - playback - bits 7-0 MCE */ | ||
45 | #define CS4231_IFACE_CTRL 0x09 /* interface control - bits 7-2 MCE */ | ||
46 | #define CS4231_PIN_CTRL 0x0a /* pin control */ | ||
47 | #define CS4231_TEST_INIT 0x0b /* test and initialization */ | ||
48 | #define CS4231_MISC_INFO 0x0c /* miscellaneaous information */ | ||
49 | #define CS4231_LOOPBACK 0x0d /* loopback control */ | ||
50 | #define CS4231_PLY_UPR_CNT 0x0e /* playback upper base count */ | ||
51 | #define CS4231_PLY_LWR_CNT 0x0f /* playback lower base count */ | ||
52 | #define CS4231_ALT_FEATURE_1 0x10 /* alternate #1 feature enable */ | ||
53 | #define AD1845_AF1_MIC_LEFT 0x10 /* alternate #1 feature + MIC left */ | ||
54 | #define CS4231_ALT_FEATURE_2 0x11 /* alternate #2 feature enable */ | ||
55 | #define AD1845_AF2_MIC_RIGHT 0x11 /* alternate #2 feature + MIC right */ | ||
56 | #define CS4231_LEFT_LINE_IN 0x12 /* left line input control */ | ||
57 | #define CS4231_RIGHT_LINE_IN 0x13 /* right line input control */ | ||
58 | #define CS4231_TIMER_LOW 0x14 /* timer low byte */ | ||
59 | #define CS4231_TIMER_HIGH 0x15 /* timer high byte */ | ||
60 | #define CS4231_LEFT_MIC_INPUT 0x16 /* left MIC input control register (InterWave only) */ | ||
61 | #define AD1845_UPR_FREQ_SEL 0x16 /* upper byte of frequency select */ | ||
62 | #define CS4231_RIGHT_MIC_INPUT 0x17 /* right MIC input control register (InterWave only) */ | ||
63 | #define AD1845_LWR_FREQ_SEL 0x17 /* lower byte of frequency select */ | ||
64 | #define CS4236_EXT_REG 0x17 /* extended register access */ | ||
65 | #define CS4231_IRQ_STATUS 0x18 /* irq status register */ | ||
66 | #define CS4231_LINE_LEFT_OUTPUT 0x19 /* left line output control register (InterWave only) */ | ||
67 | #define CS4231_VERSION 0x19 /* CS4231(A) - version values */ | ||
68 | #define CS4231_MONO_CTRL 0x1a /* mono input/output control */ | ||
69 | #define CS4231_LINE_RIGHT_OUTPUT 0x1b /* right line output control register (InterWave only) */ | ||
70 | #define AD1845_PWR_DOWN 0x1b /* power down control */ | ||
71 | #define CS4235_LEFT_MASTER 0x1b /* left master output control */ | ||
72 | #define CS4231_REC_FORMAT 0x1c /* clock and data format - record - bits 7-0 MCE */ | ||
73 | #define CS4231_PLY_VAR_FREQ 0x1d /* playback variable frequency */ | ||
74 | #define AD1845_CLOCK 0x1d /* crystal clock select and total power down */ | ||
75 | #define CS4235_RIGHT_MASTER 0x1d /* right master output control */ | ||
76 | #define CS4231_REC_UPR_CNT 0x1e /* record upper count */ | ||
77 | #define CS4231_REC_LWR_CNT 0x1f /* record lower count */ | ||
78 | |||
79 | /* definitions for codec register select port - CODECP( REGSEL ) */ | ||
80 | |||
81 | #define CS4231_INIT 0x80 /* CODEC is initializing */ | ||
82 | #define CS4231_MCE 0x40 /* mode change enable */ | ||
83 | #define CS4231_TRD 0x20 /* transfer request disable */ | ||
84 | |||
85 | /* definitions for codec status register - CODECP( STATUS ) */ | ||
86 | |||
87 | #define CS4231_GLOBALIRQ 0x01 /* IRQ is active */ | ||
88 | |||
89 | /* definitions for codec irq status */ | ||
90 | |||
91 | #define CS4231_PLAYBACK_IRQ 0x10 | ||
92 | #define CS4231_RECORD_IRQ 0x20 | ||
93 | #define CS4231_TIMER_IRQ 0x40 | ||
94 | #define CS4231_ALL_IRQS 0x70 | ||
95 | #define CS4231_REC_UNDERRUN 0x08 | ||
96 | #define CS4231_REC_OVERRUN 0x04 | ||
97 | #define CS4231_PLY_OVERRUN 0x02 | ||
98 | #define CS4231_PLY_UNDERRUN 0x01 | ||
99 | |||
100 | /* definitions for CS4231_LEFT_INPUT and CS4231_RIGHT_INPUT registers */ | ||
101 | |||
102 | #define CS4231_ENABLE_MIC_GAIN 0x20 | ||
103 | |||
104 | #define CS4231_MIXS_LINE 0x00 | ||
105 | #define CS4231_MIXS_AUX1 0x40 | ||
106 | #define CS4231_MIXS_MIC 0x80 | ||
107 | #define CS4231_MIXS_ALL 0xc0 | ||
108 | |||
109 | /* definitions for clock and data format register - CS4231_PLAYBK_FORMAT */ | ||
110 | |||
111 | #define CS4231_LINEAR_8 0x00 /* 8-bit unsigned data */ | ||
112 | #define CS4231_ALAW_8 0x60 /* 8-bit A-law companded */ | ||
113 | #define CS4231_ULAW_8 0x20 /* 8-bit U-law companded */ | ||
114 | #define CS4231_LINEAR_16 0x40 /* 16-bit twos complement data - little endian */ | ||
115 | #define CS4231_LINEAR_16_BIG 0xc0 /* 16-bit twos complement data - big endian */ | ||
116 | #define CS4231_ADPCM_16 0xa0 /* 16-bit ADPCM */ | ||
117 | #define CS4231_STEREO 0x10 /* stereo mode */ | ||
118 | /* bits 3-1 define frequency divisor */ | ||
119 | #define CS4231_XTAL1 0x00 /* 24.576 crystal */ | ||
120 | #define CS4231_XTAL2 0x01 /* 16.9344 crystal */ | ||
121 | |||
122 | /* definitions for interface control register - CS4231_IFACE_CTRL */ | ||
123 | |||
124 | #define CS4231_RECORD_PIO 0x80 /* record PIO enable */ | ||
125 | #define CS4231_PLAYBACK_PIO 0x40 /* playback PIO enable */ | ||
126 | #define CS4231_CALIB_MODE 0x18 /* calibration mode bits */ | ||
127 | #define CS4231_AUTOCALIB 0x08 /* auto calibrate */ | ||
128 | #define CS4231_SINGLE_DMA 0x04 /* use single DMA channel */ | ||
129 | #define CS4231_RECORD_ENABLE 0x02 /* record enable */ | ||
130 | #define CS4231_PLAYBACK_ENABLE 0x01 /* playback enable */ | ||
131 | |||
132 | /* definitions for pin control register - CS4231_PIN_CTRL */ | ||
133 | |||
134 | #define CS4231_IRQ_ENABLE 0x02 /* enable IRQ */ | ||
135 | #define CS4231_XCTL1 0x40 /* external control #1 */ | ||
136 | #define CS4231_XCTL0 0x80 /* external control #0 */ | ||
137 | |||
138 | /* definitions for test and init register - CS4231_TEST_INIT */ | ||
139 | |||
140 | #define CS4231_CALIB_IN_PROGRESS 0x20 /* auto calibrate in progress */ | ||
141 | #define CS4231_DMA_REQUEST 0x10 /* DMA request in progress */ | ||
142 | |||
143 | /* definitions for misc control register - CS4231_MISC_INFO */ | ||
144 | |||
145 | #define CS4231_MODE2 0x40 /* MODE 2 */ | ||
146 | #define CS4231_IW_MODE3 0x6c /* MODE 3 - InterWave enhanced mode */ | ||
147 | #define CS4231_4236_MODE3 0xe0 /* MODE 3 - CS4236+ enhanced mode */ | ||
148 | |||
149 | /* definitions for alternate feature 1 register - CS4231_ALT_FEATURE_1 */ | ||
150 | |||
151 | #define CS4231_DACZ 0x01 /* zero DAC when underrun */ | ||
152 | #define CS4231_TIMER_ENABLE 0x40 /* codec timer enable */ | ||
153 | #define CS4231_OLB 0x80 /* output level bit */ | ||
154 | |||
155 | /* definitions for Extended Registers - CS4236+ */ | ||
156 | |||
157 | #define CS4236_REG(i23val) (((i23val << 2) & 0x10) | ((i23val >> 4) & 0x0f)) | ||
158 | #define CS4236_I23VAL(reg) ((((reg)&0xf) << 4) | (((reg)&0x10) >> 2) | 0x8) | ||
159 | |||
160 | #define CS4236_LEFT_LINE 0x08 /* left LINE alternate volume */ | ||
161 | #define CS4236_RIGHT_LINE 0x18 /* right LINE alternate volume */ | ||
162 | #define CS4236_LEFT_MIC 0x28 /* left MIC volume */ | ||
163 | #define CS4236_RIGHT_MIC 0x38 /* right MIC volume */ | ||
164 | #define CS4236_LEFT_MIX_CTRL 0x48 /* synthesis and left input mixer control */ | ||
165 | #define CS4236_RIGHT_MIX_CTRL 0x58 /* right input mixer control */ | ||
166 | #define CS4236_LEFT_FM 0x68 /* left FM volume */ | ||
167 | #define CS4236_RIGHT_FM 0x78 /* right FM volume */ | ||
168 | #define CS4236_LEFT_DSP 0x88 /* left DSP serial port volume */ | ||
169 | #define CS4236_RIGHT_DSP 0x98 /* right DSP serial port volume */ | ||
170 | #define CS4236_RIGHT_LOOPBACK 0xa8 /* right loopback monitor volume */ | ||
171 | #define CS4236_DAC_MUTE 0xb8 /* DAC mute and IFSE enable */ | ||
172 | #define CS4236_ADC_RATE 0xc8 /* indenpendent ADC sample frequency */ | ||
173 | #define CS4236_DAC_RATE 0xd8 /* indenpendent DAC sample frequency */ | ||
174 | #define CS4236_LEFT_MASTER 0xe8 /* left master digital audio volume */ | ||
175 | #define CS4236_RIGHT_MASTER 0xf8 /* right master digital audio volume */ | ||
176 | #define CS4236_LEFT_WAVE 0x0c /* left wavetable serial port volume */ | ||
177 | #define CS4236_RIGHT_WAVE 0x1c /* right wavetable serial port volume */ | ||
178 | #define CS4236_VERSION 0x9c /* chip version and ID */ | ||
179 | |||
180 | #endif /* __SOUND_CS4231_REGS_H */ | ||
diff --git a/include/sound/cs4231.h b/include/sound/cs4231.h index ab51ce1ba9a5..66055d702aa3 100644 --- a/include/sound/cs4231.h +++ b/include/sound/cs4231.h | |||
@@ -2,7 +2,7 @@ | |||
2 | #define __SOUND_CS4231_H | 2 | #define __SOUND_CS4231_H |
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 5 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
6 | * Definitions for CS4231 & InterWave chips & compatible chips | 6 | * Definitions for CS4231 & InterWave chips & compatible chips |
7 | * | 7 | * |
8 | * | 8 | * |
@@ -26,160 +26,7 @@ | |||
26 | #include "pcm.h" | 26 | #include "pcm.h" |
27 | #include "timer.h" | 27 | #include "timer.h" |
28 | 28 | ||
29 | /* IO ports */ | 29 | #include "cs4231-regs.h" |
30 | |||
31 | #define CS4231P(x) (c_d_c_CS4231##x) | ||
32 | |||
33 | #define c_d_c_CS4231REGSEL 0 | ||
34 | #define c_d_c_CS4231REG 1 | ||
35 | #define c_d_c_CS4231STATUS 2 | ||
36 | #define c_d_c_CS4231PIO 3 | ||
37 | |||
38 | /* codec registers */ | ||
39 | |||
40 | #define CS4231_LEFT_INPUT 0x00 /* left input control */ | ||
41 | #define CS4231_RIGHT_INPUT 0x01 /* right input control */ | ||
42 | #define CS4231_AUX1_LEFT_INPUT 0x02 /* left AUX1 input control */ | ||
43 | #define CS4231_AUX1_RIGHT_INPUT 0x03 /* right AUX1 input control */ | ||
44 | #define CS4231_AUX2_LEFT_INPUT 0x04 /* left AUX2 input control */ | ||
45 | #define CS4231_AUX2_RIGHT_INPUT 0x05 /* right AUX2 input control */ | ||
46 | #define CS4231_LEFT_OUTPUT 0x06 /* left output control register */ | ||
47 | #define CS4231_RIGHT_OUTPUT 0x07 /* right output control register */ | ||
48 | #define CS4231_PLAYBK_FORMAT 0x08 /* clock and data format - playback - bits 7-0 MCE */ | ||
49 | #define CS4231_IFACE_CTRL 0x09 /* interface control - bits 7-2 MCE */ | ||
50 | #define CS4231_PIN_CTRL 0x0a /* pin control */ | ||
51 | #define CS4231_TEST_INIT 0x0b /* test and initialization */ | ||
52 | #define CS4231_MISC_INFO 0x0c /* miscellaneaous information */ | ||
53 | #define CS4231_LOOPBACK 0x0d /* loopback control */ | ||
54 | #define CS4231_PLY_UPR_CNT 0x0e /* playback upper base count */ | ||
55 | #define CS4231_PLY_LWR_CNT 0x0f /* playback lower base count */ | ||
56 | #define CS4231_ALT_FEATURE_1 0x10 /* alternate #1 feature enable */ | ||
57 | #define AD1845_AF1_MIC_LEFT 0x10 /* alternate #1 feature + MIC left */ | ||
58 | #define CS4231_ALT_FEATURE_2 0x11 /* alternate #2 feature enable */ | ||
59 | #define AD1845_AF2_MIC_RIGHT 0x11 /* alternate #2 feature + MIC right */ | ||
60 | #define CS4231_LEFT_LINE_IN 0x12 /* left line input control */ | ||
61 | #define CS4231_RIGHT_LINE_IN 0x13 /* right line input control */ | ||
62 | #define CS4231_TIMER_LOW 0x14 /* timer low byte */ | ||
63 | #define CS4231_TIMER_HIGH 0x15 /* timer high byte */ | ||
64 | #define CS4231_LEFT_MIC_INPUT 0x16 /* left MIC input control register (InterWave only) */ | ||
65 | #define AD1845_UPR_FREQ_SEL 0x16 /* upper byte of frequency select */ | ||
66 | #define CS4231_RIGHT_MIC_INPUT 0x17 /* right MIC input control register (InterWave only) */ | ||
67 | #define AD1845_LWR_FREQ_SEL 0x17 /* lower byte of frequency select */ | ||
68 | #define CS4236_EXT_REG 0x17 /* extended register access */ | ||
69 | #define CS4231_IRQ_STATUS 0x18 /* irq status register */ | ||
70 | #define CS4231_LINE_LEFT_OUTPUT 0x19 /* left line output control register (InterWave only) */ | ||
71 | #define CS4231_VERSION 0x19 /* CS4231(A) - version values */ | ||
72 | #define CS4231_MONO_CTRL 0x1a /* mono input/output control */ | ||
73 | #define CS4231_LINE_RIGHT_OUTPUT 0x1b /* right line output control register (InterWave only) */ | ||
74 | #define AD1845_PWR_DOWN 0x1b /* power down control */ | ||
75 | #define CS4235_LEFT_MASTER 0x1b /* left master output control */ | ||
76 | #define CS4231_REC_FORMAT 0x1c /* clock and data format - record - bits 7-0 MCE */ | ||
77 | #define CS4231_PLY_VAR_FREQ 0x1d /* playback variable frequency */ | ||
78 | #define AD1845_CLOCK 0x1d /* crystal clock select and total power down */ | ||
79 | #define CS4235_RIGHT_MASTER 0x1d /* right master output control */ | ||
80 | #define CS4231_REC_UPR_CNT 0x1e /* record upper count */ | ||
81 | #define CS4231_REC_LWR_CNT 0x1f /* record lower count */ | ||
82 | |||
83 | /* definitions for codec register select port - CODECP( REGSEL ) */ | ||
84 | |||
85 | #define CS4231_INIT 0x80 /* CODEC is initializing */ | ||
86 | #define CS4231_MCE 0x40 /* mode change enable */ | ||
87 | #define CS4231_TRD 0x20 /* transfer request disable */ | ||
88 | |||
89 | /* definitions for codec status register - CODECP( STATUS ) */ | ||
90 | |||
91 | #define CS4231_GLOBALIRQ 0x01 /* IRQ is active */ | ||
92 | |||
93 | /* definitions for codec irq status */ | ||
94 | |||
95 | #define CS4231_PLAYBACK_IRQ 0x10 | ||
96 | #define CS4231_RECORD_IRQ 0x20 | ||
97 | #define CS4231_TIMER_IRQ 0x40 | ||
98 | #define CS4231_ALL_IRQS 0x70 | ||
99 | #define CS4231_REC_UNDERRUN 0x08 | ||
100 | #define CS4231_REC_OVERRUN 0x04 | ||
101 | #define CS4231_PLY_OVERRUN 0x02 | ||
102 | #define CS4231_PLY_UNDERRUN 0x01 | ||
103 | |||
104 | /* definitions for CS4231_LEFT_INPUT and CS4231_RIGHT_INPUT registers */ | ||
105 | |||
106 | #define CS4231_ENABLE_MIC_GAIN 0x20 | ||
107 | |||
108 | #define CS4231_MIXS_LINE 0x00 | ||
109 | #define CS4231_MIXS_AUX1 0x40 | ||
110 | #define CS4231_MIXS_MIC 0x80 | ||
111 | #define CS4231_MIXS_ALL 0xc0 | ||
112 | |||
113 | /* definitions for clock and data format register - CS4231_PLAYBK_FORMAT */ | ||
114 | |||
115 | #define CS4231_LINEAR_8 0x00 /* 8-bit unsigned data */ | ||
116 | #define CS4231_ALAW_8 0x60 /* 8-bit A-law companded */ | ||
117 | #define CS4231_ULAW_8 0x20 /* 8-bit U-law companded */ | ||
118 | #define CS4231_LINEAR_16 0x40 /* 16-bit twos complement data - little endian */ | ||
119 | #define CS4231_LINEAR_16_BIG 0xc0 /* 16-bit twos complement data - big endian */ | ||
120 | #define CS4231_ADPCM_16 0xa0 /* 16-bit ADPCM */ | ||
121 | #define CS4231_STEREO 0x10 /* stereo mode */ | ||
122 | /* bits 3-1 define frequency divisor */ | ||
123 | #define CS4231_XTAL1 0x00 /* 24.576 crystal */ | ||
124 | #define CS4231_XTAL2 0x01 /* 16.9344 crystal */ | ||
125 | |||
126 | /* definitions for interface control register - CS4231_IFACE_CTRL */ | ||
127 | |||
128 | #define CS4231_RECORD_PIO 0x80 /* record PIO enable */ | ||
129 | #define CS4231_PLAYBACK_PIO 0x40 /* playback PIO enable */ | ||
130 | #define CS4231_CALIB_MODE 0x18 /* calibration mode bits */ | ||
131 | #define CS4231_AUTOCALIB 0x08 /* auto calibrate */ | ||
132 | #define CS4231_SINGLE_DMA 0x04 /* use single DMA channel */ | ||
133 | #define CS4231_RECORD_ENABLE 0x02 /* record enable */ | ||
134 | #define CS4231_PLAYBACK_ENABLE 0x01 /* playback enable */ | ||
135 | |||
136 | /* definitions for pin control register - CS4231_PIN_CTRL */ | ||
137 | |||
138 | #define CS4231_IRQ_ENABLE 0x02 /* enable IRQ */ | ||
139 | #define CS4231_XCTL1 0x40 /* external control #1 */ | ||
140 | #define CS4231_XCTL0 0x80 /* external control #0 */ | ||
141 | |||
142 | /* definitions for test and init register - CS4231_TEST_INIT */ | ||
143 | |||
144 | #define CS4231_CALIB_IN_PROGRESS 0x20 /* auto calibrate in progress */ | ||
145 | #define CS4231_DMA_REQUEST 0x10 /* DMA request in progress */ | ||
146 | |||
147 | /* definitions for misc control register - CS4231_MISC_INFO */ | ||
148 | |||
149 | #define CS4231_MODE2 0x40 /* MODE 2 */ | ||
150 | #define CS4231_IW_MODE3 0x6c /* MODE 3 - InterWave enhanced mode */ | ||
151 | #define CS4231_4236_MODE3 0xe0 /* MODE 3 - CS4236+ enhanced mode */ | ||
152 | |||
153 | /* definitions for alternate feature 1 register - CS4231_ALT_FEATURE_1 */ | ||
154 | |||
155 | #define CS4231_DACZ 0x01 /* zero DAC when underrun */ | ||
156 | #define CS4231_TIMER_ENABLE 0x40 /* codec timer enable */ | ||
157 | #define CS4231_OLB 0x80 /* output level bit */ | ||
158 | |||
159 | /* definitions for Extended Registers - CS4236+ */ | ||
160 | |||
161 | #define CS4236_REG(i23val) (((i23val << 2) & 0x10) | ((i23val >> 4) & 0x0f)) | ||
162 | #define CS4236_I23VAL(reg) ((((reg)&0xf) << 4) | (((reg)&0x10) >> 2) | 0x8) | ||
163 | |||
164 | #define CS4236_LEFT_LINE 0x08 /* left LINE alternate volume */ | ||
165 | #define CS4236_RIGHT_LINE 0x18 /* right LINE alternate volume */ | ||
166 | #define CS4236_LEFT_MIC 0x28 /* left MIC volume */ | ||
167 | #define CS4236_RIGHT_MIC 0x38 /* right MIC volume */ | ||
168 | #define CS4236_LEFT_MIX_CTRL 0x48 /* synthesis and left input mixer control */ | ||
169 | #define CS4236_RIGHT_MIX_CTRL 0x58 /* right input mixer control */ | ||
170 | #define CS4236_LEFT_FM 0x68 /* left FM volume */ | ||
171 | #define CS4236_RIGHT_FM 0x78 /* right FM volume */ | ||
172 | #define CS4236_LEFT_DSP 0x88 /* left DSP serial port volume */ | ||
173 | #define CS4236_RIGHT_DSP 0x98 /* right DSP serial port volume */ | ||
174 | #define CS4236_RIGHT_LOOPBACK 0xa8 /* right loopback monitor volume */ | ||
175 | #define CS4236_DAC_MUTE 0xb8 /* DAC mute and IFSE enable */ | ||
176 | #define CS4236_ADC_RATE 0xc8 /* indenpendent ADC sample frequency */ | ||
177 | #define CS4236_DAC_RATE 0xd8 /* indenpendent DAC sample frequency */ | ||
178 | #define CS4236_LEFT_MASTER 0xe8 /* left master digital audio volume */ | ||
179 | #define CS4236_RIGHT_MASTER 0xf8 /* right master digital audio volume */ | ||
180 | #define CS4236_LEFT_WAVE 0x0c /* left wavetable serial port volume */ | ||
181 | #define CS4236_RIGHT_WAVE 0x1c /* right wavetable serial port volume */ | ||
182 | #define CS4236_VERSION 0x9c /* chip version and ID */ | ||
183 | 30 | ||
184 | /* defines for codec.mode */ | 31 | /* defines for codec.mode */ |
185 | 32 | ||
@@ -210,7 +57,7 @@ | |||
210 | #define CS4231_HW_CS4239 0x0404 /* CS4239 - Crystal Clear (tm) stereo enhancement */ | 57 | #define CS4231_HW_CS4239 0x0404 /* CS4239 - Crystal Clear (tm) stereo enhancement */ |
211 | /* compatible, but clones */ | 58 | /* compatible, but clones */ |
212 | #define CS4231_HW_INTERWAVE 0x1000 /* InterWave chip */ | 59 | #define CS4231_HW_INTERWAVE 0x1000 /* InterWave chip */ |
213 | #define CS4231_HW_OPL3SA2 0x1001 /* OPL3-SA2 chip */ | 60 | #define CS4231_HW_OPL3SA2 0x1101 /* OPL3-SA2 chip, similar to cs4231 */ |
214 | 61 | ||
215 | /* defines for codec.hwshare */ | 62 | /* defines for codec.hwshare */ |
216 | #define CS4231_HWSHARE_IRQ (1<<0) | 63 | #define CS4231_HWSHARE_IRQ (1<<0) |
diff --git a/include/sound/cs46xx.h b/include/sound/cs46xx.h index 353910ce9755..6b40ee60f4c5 100644 --- a/include/sound/cs46xx.h +++ b/include/sound/cs46xx.h | |||
@@ -2,7 +2,7 @@ | |||
2 | #define __SOUND_CS46XX_H | 2 | #define __SOUND_CS46XX_H |
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz>, | 5 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz>, |
6 | * Cirrus Logic, Inc. | 6 | * Cirrus Logic, Inc. |
7 | * Definitions for Cirrus Logic CS46xx chips | 7 | * Definitions for Cirrus Logic CS46xx chips |
8 | * | 8 | * |
diff --git a/include/sound/cs46xx_dsp_scb_types.h b/include/sound/cs46xx_dsp_scb_types.h index 9cb6c7d09567..080857ad0ca2 100644 --- a/include/sound/cs46xx_dsp_scb_types.h +++ b/include/sound/cs46xx_dsp_scb_types.h | |||
@@ -1,6 +1,6 @@ | |||
1 | /* | 1 | /* |
2 | * The driver for the Cirrus Logic's Sound Fusion CS46XX based soundcards | 2 | * The driver for the Cirrus Logic's Sound Fusion CS46XX based soundcards |
3 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 3 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
4 | * | 4 | * |
5 | * | 5 | * |
6 | * This program is free software; you can redistribute it and/or modify | 6 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/cs46xx_dsp_spos.h b/include/sound/cs46xx_dsp_spos.h index d9da9e59cf37..7c44667e79a6 100644 --- a/include/sound/cs46xx_dsp_spos.h +++ b/include/sound/cs46xx_dsp_spos.h | |||
@@ -1,6 +1,6 @@ | |||
1 | /* | 1 | /* |
2 | * The driver for the Cirrus Logic's Sound Fusion CS46XX based soundcards | 2 | * The driver for the Cirrus Logic's Sound Fusion CS46XX based soundcards |
3 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 3 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
4 | * | 4 | * |
5 | * | 5 | * |
6 | * This program is free software; you can redistribute it and/or modify | 6 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/cs46xx_dsp_task_types.h b/include/sound/cs46xx_dsp_task_types.h index b3076c487de6..5cf920bfda27 100644 --- a/include/sound/cs46xx_dsp_task_types.h +++ b/include/sound/cs46xx_dsp_task_types.h | |||
@@ -1,6 +1,6 @@ | |||
1 | /* | 1 | /* |
2 | * The driver for the Cirrus Logic's Sound Fusion CS46XX based soundcards | 2 | * The driver for the Cirrus Logic's Sound Fusion CS46XX based soundcards |
3 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 3 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
4 | * | 4 | * |
5 | * | 5 | * |
6 | * This program is free software; you can redistribute it and/or modify | 6 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/cs8403.h b/include/sound/cs8403.h index c6c3f9f0da78..3a8c174a4209 100644 --- a/include/sound/cs8403.h +++ b/include/sound/cs8403.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Routines for Cirrus Logic CS8403/CS8404A IEC958 (S/PDIF) Transmitter | 5 | * Routines for Cirrus Logic CS8403/CS8404A IEC958 (S/PDIF) Transmitter |
6 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz>, | 6 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz>, |
7 | * Takashi Iwai <tiwai@suse.de> | 7 | * Takashi Iwai <tiwai@suse.de> |
8 | * | 8 | * |
9 | * | 9 | * |
diff --git a/include/sound/cs8427.h b/include/sound/cs8427.h index 97fd9acf8028..f862cfff5f6a 100644 --- a/include/sound/cs8427.h +++ b/include/sound/cs8427.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Routines for Cirrus Logic CS8427 | 5 | * Routines for Cirrus Logic CS8427 |
6 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz>, | 6 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz>, |
7 | * | 7 | * |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/driver.h b/include/sound/driver.h index 3c522e59a33c..5ccb6c5feecb 100644 --- a/include/sound/driver.h +++ b/include/sound/driver.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Main header file for the ALSA driver | 5 | * Main header file for the ALSA driver |
6 | * Copyright (c) 1994-2000 by Jaroslav Kysela <perex@suse.cz> | 6 | * Copyright (c) 1994-2000 by Jaroslav Kysela <perex@perex.cz> |
7 | * | 7 | * |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/emu10k1.h b/include/sound/emu10k1.h index 529d0a564367..441aa06dcd6f 100644 --- a/include/sound/emu10k1.h +++ b/include/sound/emu10k1.h | |||
@@ -2,7 +2,7 @@ | |||
2 | #define __SOUND_EMU10K1_H | 2 | #define __SOUND_EMU10K1_H |
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz>, | 5 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz>, |
6 | * Creative Labs, Inc. | 6 | * Creative Labs, Inc. |
7 | * Definitions for EMU10K1 (SB Live!) chips | 7 | * Definitions for EMU10K1 (SB Live!) chips |
8 | * | 8 | * |
@@ -1408,8 +1408,6 @@ struct snd_emu10k1_fx8010 { | |||
1408 | struct snd_emu10k1_fx8010_irq *irq_handlers; | 1408 | struct snd_emu10k1_fx8010_irq *irq_handlers; |
1409 | }; | 1409 | }; |
1410 | 1410 | ||
1411 | #define emu10k1_gpr_ctl(n) list_entry(n, struct snd_emu10k1_fx8010_ctl, list) | ||
1412 | |||
1413 | struct snd_emu10k1_midi { | 1411 | struct snd_emu10k1_midi { |
1414 | struct snd_emu10k1 *emu; | 1412 | struct snd_emu10k1 *emu; |
1415 | struct snd_rawmidi *rmidi; | 1413 | struct snd_rawmidi *rmidi; |
@@ -1456,6 +1454,9 @@ struct snd_emu1010 { | |||
1456 | unsigned int adc_pads; /* bit mask */ | 1454 | unsigned int adc_pads; /* bit mask */ |
1457 | unsigned int dac_pads; /* bit mask */ | 1455 | unsigned int dac_pads; /* bit mask */ |
1458 | unsigned int internal_clock; /* 44100 or 48000 */ | 1456 | unsigned int internal_clock; /* 44100 or 48000 */ |
1457 | unsigned int optical_in; /* 0:SPDIF, 1:ADAT */ | ||
1458 | unsigned int optical_out; /* 0:SPDIF, 1:ADAT */ | ||
1459 | struct task_struct *firmware_thread; | ||
1459 | }; | 1460 | }; |
1460 | 1461 | ||
1461 | struct snd_emu10k1 { | 1462 | struct snd_emu10k1 { |
@@ -1599,9 +1600,9 @@ unsigned int snd_emu10k1_ptr20_read(struct snd_emu10k1 * emu, unsigned int reg, | |||
1599 | void snd_emu10k1_ptr20_write(struct snd_emu10k1 *emu, unsigned int reg, unsigned int chn, unsigned int data); | 1600 | void snd_emu10k1_ptr20_write(struct snd_emu10k1 *emu, unsigned int reg, unsigned int chn, unsigned int data); |
1600 | int snd_emu10k1_spi_write(struct snd_emu10k1 * emu, unsigned int data); | 1601 | int snd_emu10k1_spi_write(struct snd_emu10k1 * emu, unsigned int data); |
1601 | int snd_emu10k1_i2c_write(struct snd_emu10k1 *emu, u32 reg, u32 value); | 1602 | int snd_emu10k1_i2c_write(struct snd_emu10k1 *emu, u32 reg, u32 value); |
1602 | int snd_emu1010_fpga_write(struct snd_emu10k1 * emu, int reg, int value); | 1603 | int snd_emu1010_fpga_write(struct snd_emu10k1 * emu, u32 reg, u32 value); |
1603 | int snd_emu1010_fpga_read(struct snd_emu10k1 * emu, int reg, int *value); | 1604 | int snd_emu1010_fpga_read(struct snd_emu10k1 * emu, u32 reg, u32 *value); |
1604 | int snd_emu1010_fpga_link_dst_src_write(struct snd_emu10k1 * emu, int dst, int src); | 1605 | int snd_emu1010_fpga_link_dst_src_write(struct snd_emu10k1 * emu, u32 dst, u32 src); |
1605 | unsigned int snd_emu10k1_efx_read(struct snd_emu10k1 *emu, unsigned int pc); | 1606 | unsigned int snd_emu10k1_efx_read(struct snd_emu10k1 *emu, unsigned int pc); |
1606 | void snd_emu10k1_intr_enable(struct snd_emu10k1 *emu, unsigned int intrenb); | 1607 | void snd_emu10k1_intr_enable(struct snd_emu10k1 *emu, unsigned int intrenb); |
1607 | void snd_emu10k1_intr_disable(struct snd_emu10k1 *emu, unsigned int intrenb); | 1608 | void snd_emu10k1_intr_disable(struct snd_emu10k1 *emu, unsigned int intrenb); |
@@ -1746,6 +1747,8 @@ int snd_emu10k1_fx8010_unregister_irq_handler(struct snd_emu10k1 *emu, | |||
1746 | #define A_FXBUS2(x) (0x80 + (x)) /* x = 0x00 - 0x1f extra outs used for EFX capture -> A_FXWC2 */ | 1747 | #define A_FXBUS2(x) (0x80 + (x)) /* x = 0x00 - 0x1f extra outs used for EFX capture -> A_FXWC2 */ |
1747 | #define A_EMU32OUTH(x) (0xa0 + (x)) /* x = 0x00 - 0x0f "EMU32_OUT_10 - _1F" - ??? */ | 1748 | #define A_EMU32OUTH(x) (0xa0 + (x)) /* x = 0x00 - 0x0f "EMU32_OUT_10 - _1F" - ??? */ |
1748 | #define A_EMU32OUTL(x) (0xb0 + (x)) /* x = 0x00 - 0x0f "EMU32_OUT_1 - _F" - ??? */ | 1749 | #define A_EMU32OUTL(x) (0xb0 + (x)) /* x = 0x00 - 0x0f "EMU32_OUT_1 - _F" - ??? */ |
1750 | #define A3_EMU32IN(x) (0x160 + (x)) /* x = 0x00 - 0x3f "EMU32_IN_00 - _3F" - Only when .device = 0x0008 */ | ||
1751 | #define A3_EMU32OUT(x) (0x1E0 + (x)) /* x = 0x00 - 0x0f "EMU32_OUT_00 - _3F" - Only when .device = 0x0008 */ | ||
1749 | #define A_GPR(x) (A_FXGPREGBASE + (x)) | 1752 | #define A_GPR(x) (A_FXGPREGBASE + (x)) |
1750 | 1753 | ||
1751 | /* cc_reg constants */ | 1754 | /* cc_reg constants */ |
diff --git a/include/sound/es1688.h b/include/sound/es1688.h index fc1c47dae3da..10fcf1465810 100644 --- a/include/sound/es1688.h +++ b/include/sound/es1688.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Header file for ES488/ES1688 | 5 | * Header file for ES488/ES1688 |
6 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 6 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
7 | * | 7 | * |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/gus.h b/include/sound/gus.h index c49ea57db8cc..e5433d8b78bc 100644 --- a/include/sound/gus.h +++ b/include/sound/gus.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Global structures used for GUS part of ALSA driver | 5 | * Global structures used for GUS part of ALSA driver |
6 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 6 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
7 | * | 7 | * |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/hda_hwdep.h b/include/sound/hda_hwdep.h new file mode 100644 index 000000000000..1c0034e87f22 --- /dev/null +++ b/include/sound/hda_hwdep.h | |||
@@ -0,0 +1,44 @@ | |||
1 | /* | ||
2 | * HWDEP Interface for HD-audio codec | ||
3 | * | ||
4 | * Copyright (c) 2007 Takashi Iwai <tiwai@suse.de> | ||
5 | * | ||
6 | * This driver is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This driver is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
19 | */ | ||
20 | |||
21 | #ifndef __SOUND_HDA_HWDEP_H | ||
22 | #define __SOUND_HDA_HWDEP_H | ||
23 | |||
24 | #define HDA_HWDEP_VERSION ((1 << 16) | (0 << 8) | (0 << 0)) /* 1.0.0 */ | ||
25 | |||
26 | /* verb */ | ||
27 | #define HDA_REG_NID_SHIFT 24 | ||
28 | #define HDA_REG_VERB_SHIFT 8 | ||
29 | #define HDA_REG_VAL_SHIFT 0 | ||
30 | #define HDA_VERB(nid,verb,param) ((nid)<<24 | (verb)<<8 | (param)) | ||
31 | |||
32 | struct hda_verb_ioctl { | ||
33 | u32 verb; /* HDA_VERB() */ | ||
34 | u32 res; /* response */ | ||
35 | }; | ||
36 | |||
37 | /* | ||
38 | * ioctls | ||
39 | */ | ||
40 | #define HDA_IOCTL_PVERSION _IOR('H', 0x10, int) | ||
41 | #define HDA_IOCTL_VERB_WRITE _IOWR('H', 0x11, struct hda_verb_ioctl) | ||
42 | #define HDA_IOCTL_GET_WCAP _IOWR('H', 0x12, struct hda_verb_ioctl) | ||
43 | |||
44 | #endif | ||
diff --git a/include/sound/hdspm.h b/include/sound/hdspm.h index c3c854d99c28..81990b2bcc98 100644 --- a/include/sound/hdspm.h +++ b/include/sound/hdspm.h | |||
@@ -1,4 +1,4 @@ | |||
1 | #ifndef __SOUND_HDSPM_H /* -*- linux-c -*- */ | 1 | #ifndef __SOUND_HDSPM_H |
2 | #define __SOUND_HDSPM_H | 2 | #define __SOUND_HDSPM_H |
3 | /* | 3 | /* |
4 | * Copyright (C) 2003 Winfried Ritsch (IEM) | 4 | * Copyright (C) 2003 Winfried Ritsch (IEM) |
@@ -61,7 +61,8 @@ struct hdspm_peak_rms_ioctl { | |||
61 | }; | 61 | }; |
62 | 62 | ||
63 | /* use indirect access due to the limit of ioctl bit size */ | 63 | /* use indirect access due to the limit of ioctl bit size */ |
64 | #define SNDRV_HDSPM_IOCTL_GET_PEAK_RMS _IOR('H', 0x40, struct hdspm_peak_rms_ioctl) | 64 | #define SNDRV_HDSPM_IOCTL_GET_PEAK_RMS \ |
65 | _IOR('H', 0x40, struct hdspm_peak_rms_ioctl) | ||
65 | 66 | ||
66 | /* ------------ CONFIG block IOCTL ---------------------- */ | 67 | /* ------------ CONFIG block IOCTL ---------------------- */ |
67 | 68 | ||
@@ -79,7 +80,8 @@ struct hdspm_config_info { | |||
79 | unsigned int analog_out; | 80 | unsigned int analog_out; |
80 | }; | 81 | }; |
81 | 82 | ||
82 | #define SNDRV_HDSPM_IOCTL_GET_CONFIG_INFO _IOR('H', 0x41, struct hdspm_config_info) | 83 | #define SNDRV_HDSPM_IOCTL_GET_CONFIG_INFO \ |
84 | _IOR('H', 0x41, struct hdspm_config_info) | ||
83 | 85 | ||
84 | 86 | ||
85 | /* get Soundcard Version */ | 87 | /* get Soundcard Version */ |
@@ -93,10 +95,14 @@ struct hdspm_version { | |||
93 | 95 | ||
94 | /* ------------- get Matrix Mixer IOCTL --------------- */ | 96 | /* ------------- get Matrix Mixer IOCTL --------------- */ |
95 | 97 | ||
96 | /* MADI mixer: 64inputs+64playback in 64outputs = 8192 => *4Byte = 32768 Bytes */ | 98 | /* MADI mixer: 64inputs+64playback in 64outputs = 8192 => *4Byte = |
99 | * 32768 Bytes | ||
100 | */ | ||
97 | 101 | ||
98 | /* organisation is 64 channelfader in a continous memory block */ | 102 | /* organisation is 64 channelfader in a continous memory block */ |
99 | /* equivalent to hardware definition, maybe for future feature of mmap of them */ | 103 | /* equivalent to hardware definition, maybe for future feature of mmap of |
104 | * them | ||
105 | */ | ||
100 | /* each of 64 outputs has 64 infader and 64 outfader: | 106 | /* each of 64 outputs has 64 infader and 64 outfader: |
101 | Ins to Outs mixer[out].in[in], Outstreams to Outs mixer[out].pb[pb] */ | 107 | Ins to Outs mixer[out].in[in], Outstreams to Outs mixer[out].pb[pb] */ |
102 | 108 | ||
diff --git a/include/sound/hwdep.h b/include/sound/hwdep.h index 94c387b5d724..d9eea013c753 100644 --- a/include/sound/hwdep.h +++ b/include/sound/hwdep.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Hardware dependent layer | 5 | * Hardware dependent layer |
6 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 6 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
7 | * | 7 | * |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/info.h b/include/sound/info.h index 97ffc4fb9969..fecbb1ffd540 100644 --- a/include/sound/info.h +++ b/include/sound/info.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Header file for info interface | 5 | * Header file for info interface |
6 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 6 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
7 | * | 7 | * |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/initval.h b/include/sound/initval.h index e85b90750a59..1daa6dff8297 100644 --- a/include/sound/initval.h +++ b/include/sound/initval.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Init values for soundcard modules | 5 | * Init values for soundcard modules |
6 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 6 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
7 | * | 7 | * |
8 | * This program is free software; you can redistribute it and/or modify | 8 | * This program is free software; you can redistribute it and/or modify |
9 | * it under the terms of the GNU General Public License as published by | 9 | * it under the terms of the GNU General Public License as published by |
diff --git a/include/sound/memalloc.h b/include/sound/memalloc.h index 83489c3abbaf..ae2921d9ddcc 100644 --- a/include/sound/memalloc.h +++ b/include/sound/memalloc.h | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 2 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
3 | * Takashi Iwai <tiwai@suse.de> | 3 | * Takashi Iwai <tiwai@suse.de> |
4 | * | 4 | * |
5 | * Generic memory allocators | 5 | * Generic memory allocators |
diff --git a/include/sound/mixer_oss.h b/include/sound/mixer_oss.h index 197b9e3d612b..51fbcb4a277a 100644 --- a/include/sound/mixer_oss.h +++ b/include/sound/mixer_oss.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * OSS MIXER API | 5 | * OSS MIXER API |
6 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 6 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
7 | * | 7 | * |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/mpu401.h b/include/sound/mpu401.h index d5c1396c4c9e..d45218b44dfe 100644 --- a/include/sound/mpu401.h +++ b/include/sound/mpu401.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Header file for MPU-401 and compatible cards | 5 | * Header file for MPU-401 and compatible cards |
6 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 6 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
7 | * | 7 | * |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
@@ -50,7 +50,6 @@ | |||
50 | #define MPU401_INFO_INTEGRATED (1 << 2) /* integrated h/w port */ | 50 | #define MPU401_INFO_INTEGRATED (1 << 2) /* integrated h/w port */ |
51 | #define MPU401_INFO_MMIO (1 << 3) /* MMIO access */ | 51 | #define MPU401_INFO_MMIO (1 << 3) /* MMIO access */ |
52 | #define MPU401_INFO_TX_IRQ (1 << 4) /* independent TX irq */ | 52 | #define MPU401_INFO_TX_IRQ (1 << 4) /* independent TX irq */ |
53 | #define MPU401_INFO_UART_ONLY (1 << 5) /* No ENTER_UART cmd needed */ | ||
54 | 53 | ||
55 | #define MPU401_MODE_BIT_INPUT 0 | 54 | #define MPU401_MODE_BIT_INPUT 0 |
56 | #define MPU401_MODE_BIT_OUTPUT 1 | 55 | #define MPU401_MODE_BIT_OUTPUT 1 |
diff --git a/include/sound/opl3.h b/include/sound/opl3.h index 82fdb0930720..1d14b3f82393 100644 --- a/include/sound/opl3.h +++ b/include/sound/opl3.h | |||
@@ -4,7 +4,7 @@ | |||
4 | /* | 4 | /* |
5 | * Definitions of the OPL-3 registers. | 5 | * Definitions of the OPL-3 registers. |
6 | * | 6 | * |
7 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz>, | 7 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz>, |
8 | * Hannu Savolainen 1993-1996 | 8 | * Hannu Savolainen 1993-1996 |
9 | * | 9 | * |
10 | * | 10 | * |
diff --git a/include/sound/pcm-indirect.h b/include/sound/pcm-indirect.h index 7003d7702e26..1df7acaaa535 100644 --- a/include/sound/pcm-indirect.h +++ b/include/sound/pcm-indirect.h | |||
@@ -2,7 +2,7 @@ | |||
2 | * Helper functions for indirect PCM data transfer | 2 | * Helper functions for indirect PCM data transfer |
3 | * | 3 | * |
4 | * Copyright (c) by Takashi Iwai <tiwai@suse.de> | 4 | * Copyright (c) by Takashi Iwai <tiwai@suse.de> |
5 | * Jaroslav Kysela <perex@suse.cz> | 5 | * Jaroslav Kysela <perex@perex.cz> |
6 | * | 6 | * |
7 | * This program is free software; you can redistribute it and/or modify | 7 | * This program is free software; you can redistribute it and/or modify |
8 | * it under the terms of the GNU General Public License as published by | 8 | * it under the terms of the GNU General Public License as published by |
diff --git a/include/sound/pcm.h b/include/sound/pcm.h index 73334e0f823f..5e9cc460075e 100644 --- a/include/sound/pcm.h +++ b/include/sound/pcm.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Digital Audio (PCM) abstract layer | 5 | * Digital Audio (PCM) abstract layer |
6 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 6 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
7 | * Abramo Bagnara <abramo@alsa-project.org> | 7 | * Abramo Bagnara <abramo@alsa-project.org> |
8 | * | 8 | * |
9 | * | 9 | * |
@@ -301,8 +301,8 @@ struct snd_pcm_runtime { | |||
301 | union snd_pcm_sync_id sync; /* hardware synchronization ID */ | 301 | union snd_pcm_sync_id sync; /* hardware synchronization ID */ |
302 | 302 | ||
303 | /* -- mmap -- */ | 303 | /* -- mmap -- */ |
304 | volatile struct snd_pcm_mmap_status *status; | 304 | struct snd_pcm_mmap_status *status; |
305 | volatile struct snd_pcm_mmap_control *control; | 305 | struct snd_pcm_mmap_control *control; |
306 | 306 | ||
307 | /* -- locking / scheduling -- */ | 307 | /* -- locking / scheduling -- */ |
308 | wait_queue_head_t sleep; | 308 | wait_queue_head_t sleep; |
@@ -791,13 +791,13 @@ static inline struct snd_interval *hw_param_interval(struct snd_pcm_hw_params *p | |||
791 | static inline const struct snd_mask *hw_param_mask_c(const struct snd_pcm_hw_params *params, | 791 | static inline const struct snd_mask *hw_param_mask_c(const struct snd_pcm_hw_params *params, |
792 | snd_pcm_hw_param_t var) | 792 | snd_pcm_hw_param_t var) |
793 | { | 793 | { |
794 | return (const struct snd_mask *)hw_param_mask((struct snd_pcm_hw_params*) params, var); | 794 | return ¶ms->masks[var - SNDRV_PCM_HW_PARAM_FIRST_MASK]; |
795 | } | 795 | } |
796 | 796 | ||
797 | static inline const struct snd_interval *hw_param_interval_c(const struct snd_pcm_hw_params *params, | 797 | static inline const struct snd_interval *hw_param_interval_c(const struct snd_pcm_hw_params *params, |
798 | snd_pcm_hw_param_t var) | 798 | snd_pcm_hw_param_t var) |
799 | { | 799 | { |
800 | return (const struct snd_interval *)hw_param_interval((struct snd_pcm_hw_params*) params, var); | 800 | return ¶ms->intervals[var - SNDRV_PCM_HW_PARAM_FIRST_INTERVAL]; |
801 | } | 801 | } |
802 | 802 | ||
803 | #define params_access(p) snd_mask_min(hw_param_mask((p), SNDRV_PCM_HW_PARAM_ACCESS)) | 803 | #define params_access(p) snd_mask_min(hw_param_mask((p), SNDRV_PCM_HW_PARAM_ACCESS)) |
@@ -922,7 +922,10 @@ snd_pcm_sframes_t snd_pcm_lib_writev(struct snd_pcm_substream *substream, | |||
922 | snd_pcm_sframes_t snd_pcm_lib_readv(struct snd_pcm_substream *substream, | 922 | snd_pcm_sframes_t snd_pcm_lib_readv(struct snd_pcm_substream *substream, |
923 | void __user **bufs, snd_pcm_uframes_t frames); | 923 | void __user **bufs, snd_pcm_uframes_t frames); |
924 | 924 | ||
925 | extern const struct snd_pcm_hw_constraint_list snd_pcm_known_rates; | ||
926 | |||
925 | int snd_pcm_limit_hw_rates(struct snd_pcm_runtime *runtime); | 927 | int snd_pcm_limit_hw_rates(struct snd_pcm_runtime *runtime); |
928 | unsigned int snd_pcm_rate_to_rate_bit(unsigned int rate); | ||
926 | 929 | ||
927 | static inline void snd_pcm_set_runtime_buffer(struct snd_pcm_substream *substream, | 930 | static inline void snd_pcm_set_runtime_buffer(struct snd_pcm_substream *substream, |
928 | struct snd_dma_buffer *bufp) | 931 | struct snd_dma_buffer *bufp) |
diff --git a/include/sound/pcm_oss.h b/include/sound/pcm_oss.h index 1cd4f64cdf31..cc4e226f35fd 100644 --- a/include/sound/pcm_oss.h +++ b/include/sound/pcm_oss.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Digital Audio (PCM) - OSS compatibility abstract layer | 5 | * Digital Audio (PCM) - OSS compatibility abstract layer |
6 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 6 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
7 | * | 7 | * |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/rawmidi.h b/include/sound/rawmidi.h index 7dbcd10fa215..b550a416d075 100644 --- a/include/sound/rawmidi.h +++ b/include/sound/rawmidi.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Abstract layer for MIDI v1.0 stream | 5 | * Abstract layer for MIDI v1.0 stream |
6 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 6 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
7 | * | 7 | * |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/sb.h b/include/sound/sb.h index 3ad854b397d2..d0c9ed3546c8 100644 --- a/include/sound/sb.h +++ b/include/sound/sb.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Header file for SoundBlaster cards | 5 | * Header file for SoundBlaster cards |
6 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 6 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
7 | * | 7 | * |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/seq_instr.h b/include/sound/seq_instr.h index f2db03bfd74e..93b0c51df5b0 100644 --- a/include/sound/seq_instr.h +++ b/include/sound/seq_instr.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Main kernel header file for the ALSA sequencer | 5 | * Main kernel header file for the ALSA sequencer |
6 | * Copyright (c) 1999 by Jaroslav Kysela <perex@suse.cz> | 6 | * Copyright (c) 1999 by Jaroslav Kysela <perex@perex.cz> |
7 | * | 7 | * |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/seq_midi_event.h b/include/sound/seq_midi_event.h index dd789e7cdb20..5efab8b29c57 100644 --- a/include/sound/seq_midi_event.h +++ b/include/sound/seq_midi_event.h | |||
@@ -5,7 +5,7 @@ | |||
5 | * MIDI byte <-> sequencer event coder | 5 | * MIDI byte <-> sequencer event coder |
6 | * | 6 | * |
7 | * Copyright (C) 1998,99 Takashi Iwai <tiwai@suse.de>, | 7 | * Copyright (C) 1998,99 Takashi Iwai <tiwai@suse.de>, |
8 | * Jaroslav Kysela <perex@suse.cz> | 8 | * Jaroslav Kysela <perex@perex.cz> |
9 | * | 9 | * |
10 | * This program is free software; you can redistribute it and/or modify | 10 | * This program is free software; you can redistribute it and/or modify |
11 | * it under the terms of the GNU General Public License as published by | 11 | * it under the terms of the GNU General Public License as published by |
diff --git a/include/sound/seq_virmidi.h b/include/sound/seq_virmidi.h index 8d5aea76d7c3..d888433a3096 100644 --- a/include/sound/seq_virmidi.h +++ b/include/sound/seq_virmidi.h | |||
@@ -4,7 +4,7 @@ | |||
4 | /* | 4 | /* |
5 | * Virtual Raw MIDI client on Sequencer | 5 | * Virtual Raw MIDI client on Sequencer |
6 | * Copyright (c) 2000 by Takashi Iwai <tiwai@suse.de>, | 6 | * Copyright (c) 2000 by Takashi Iwai <tiwai@suse.de>, |
7 | * Jaroslav Kysela <perex@suse.cz> | 7 | * Jaroslav Kysela <perex@perex.cz> |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
10 | * it under the terms of the GNU General Public License as published by | 10 | * it under the terms of the GNU General Public License as published by |
diff --git a/include/sound/soc.h b/include/sound/soc.h index db6edba8ef08..f47ef1f75f18 100644 --- a/include/sound/soc.h +++ b/include/sound/soc.h | |||
@@ -201,8 +201,7 @@ int snd_soc_info_volsw(struct snd_kcontrol *kcontrol, | |||
201 | struct snd_ctl_elem_info *uinfo); | 201 | struct snd_ctl_elem_info *uinfo); |
202 | int snd_soc_info_volsw_ext(struct snd_kcontrol *kcontrol, | 202 | int snd_soc_info_volsw_ext(struct snd_kcontrol *kcontrol, |
203 | struct snd_ctl_elem_info *uinfo); | 203 | struct snd_ctl_elem_info *uinfo); |
204 | int snd_soc_info_bool_ext(struct snd_kcontrol *kcontrol, | 204 | #define snd_soc_info_bool_ext snd_ctl_boolean_mono |
205 | struct snd_ctl_elem_info *uinfo); | ||
206 | int snd_soc_get_volsw(struct snd_kcontrol *kcontrol, | 205 | int snd_soc_get_volsw(struct snd_kcontrol *kcontrol, |
207 | struct snd_ctl_elem_value *ucontrol); | 206 | struct snd_ctl_elem_value *ucontrol); |
208 | int snd_soc_put_volsw(struct snd_kcontrol *kcontrol, | 207 | int snd_soc_put_volsw(struct snd_kcontrol *kcontrol, |
diff --git a/include/sound/tea575x-tuner.h b/include/sound/tea575x-tuner.h index b5067d3c2387..e8eeb3a1ed29 100644 --- a/include/sound/tea575x-tuner.h +++ b/include/sound/tea575x-tuner.h | |||
@@ -4,7 +4,7 @@ | |||
4 | /* | 4 | /* |
5 | * ALSA driver for TEA5757/5759 Philips AM/FM tuner chips | 5 | * ALSA driver for TEA5757/5759 Philips AM/FM tuner chips |
6 | * | 6 | * |
7 | * Copyright (c) 2004 Jaroslav Kysela <perex@suse.cz> | 7 | * Copyright (c) 2004 Jaroslav Kysela <perex@perex.cz> |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
10 | * it under the terms of the GNU General Public License as published by | 10 | * it under the terms of the GNU General Public License as published by |
diff --git a/include/sound/timer.h b/include/sound/timer.h index d42c083db1da..7990469a44ce 100644 --- a/include/sound/timer.h +++ b/include/sound/timer.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Timer abstract layer | 5 | * Timer abstract layer |
6 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz>, | 6 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz>, |
7 | * Abramo Bagnara <abramo@alsa-project.org> | 7 | * Abramo Bagnara <abramo@alsa-project.org> |
8 | * | 8 | * |
9 | * | 9 | * |
diff --git a/include/sound/tlv.h b/include/sound/tlv.h index d93a96b91875..d136ea2181ed 100644 --- a/include/sound/tlv.h +++ b/include/sound/tlv.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Advanced Linux Sound Architecture - ALSA - Driver | 5 | * Advanced Linux Sound Architecture - ALSA - Driver |
6 | * Copyright (c) 2006 by Jaroslav Kysela <perex@suse.cz> | 6 | * Copyright (c) 2006 by Jaroslav Kysela <perex@perex.cz> |
7 | * | 7 | * |
8 | * | 8 | * |
9 | * This program is free software; you can redistribute it and/or modify | 9 | * This program is free software; you can redistribute it and/or modify |
diff --git a/include/sound/version.h b/include/sound/version.h index 6bbcfefd2c38..8d4a8dd89237 100644 --- a/include/sound/version.h +++ b/include/sound/version.h | |||
@@ -1,3 +1,3 @@ | |||
1 | /* include/version.h. Generated by alsa/ksync script. */ | 1 | /* include/version.h. Generated by alsa/ksync script. */ |
2 | #define CONFIG_SND_VERSION "1.0.14" | 2 | #define CONFIG_SND_VERSION "1.0.15" |
3 | #define CONFIG_SND_DATE " (Fri Jul 20 09:12:58 2007 UTC)" | 3 | #define CONFIG_SND_DATE " (Tue Oct 16 14:57:44 2007 UTC)" |
diff --git a/include/sound/ymfpci.h b/include/sound/ymfpci.h index 203d2b45b788..05ead6698434 100644 --- a/include/sound/ymfpci.h +++ b/include/sound/ymfpci.h | |||
@@ -2,7 +2,7 @@ | |||
2 | #define __SOUND_YMFPCI_H | 2 | #define __SOUND_YMFPCI_H |
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Copyright (c) by Jaroslav Kysela <perex@suse.cz> | 5 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
6 | * Definitions for Yahama YMF724/740/744/754 chips | 6 | * Definitions for Yahama YMF724/740/744/754 chips |
7 | * | 7 | * |
8 | * | 8 | * |