aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-16 13:13:38 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-16 13:13:38 -0400
commitfc8a327db6c46de783b1a4276d846841b9abc24c (patch)
treebee512c142cccea93511debd98ef954581693727 /include
parent92d15c2ccbb3e31a3fc71ad28fdb55e1319383c0 (diff)
parent24837e6f249a2c83667552e6871c1543b4a6b934 (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')
-rw-r--r--include/linux/i2c-id.h1
-rw-r--r--include/linux/spi/at73c213.h25
-rw-r--r--include/sound/ac97_codec.h8
-rw-r--r--include/sound/ad1848.h5
-rw-r--r--include/sound/ainstr_gf1.h2
-rw-r--r--include/sound/ainstr_iw.h2
-rw-r--r--include/sound/ainstr_simple.h2
-rw-r--r--include/sound/ak4114.h2
-rw-r--r--include/sound/ak4117.h2
-rw-r--r--include/sound/ak4531_codec.h2
-rw-r--r--include/sound/ak4xxx-adda.h2
-rw-r--r--include/sound/asequencer.h2
-rw-r--r--include/sound/asound.h3
-rw-r--r--include/sound/asound_fm.h2
-rw-r--r--include/sound/asoundef.h2
-rw-r--r--include/sound/control.h10
-rw-r--r--include/sound/core.h2
-rw-r--r--include/sound/cs4231-regs.h180
-rw-r--r--include/sound/cs4231.h159
-rw-r--r--include/sound/cs46xx.h2
-rw-r--r--include/sound/cs46xx_dsp_scb_types.h2
-rw-r--r--include/sound/cs46xx_dsp_spos.h2
-rw-r--r--include/sound/cs46xx_dsp_task_types.h2
-rw-r--r--include/sound/cs8403.h2
-rw-r--r--include/sound/cs8427.h2
-rw-r--r--include/sound/driver.h2
-rw-r--r--include/sound/emu10k1.h15
-rw-r--r--include/sound/es1688.h2
-rw-r--r--include/sound/gus.h2
-rw-r--r--include/sound/hda_hwdep.h44
-rw-r--r--include/sound/hdspm.h16
-rw-r--r--include/sound/hwdep.h2
-rw-r--r--include/sound/info.h2
-rw-r--r--include/sound/initval.h2
-rw-r--r--include/sound/memalloc.h2
-rw-r--r--include/sound/mixer_oss.h2
-rw-r--r--include/sound/mpu401.h3
-rw-r--r--include/sound/opl3.h2
-rw-r--r--include/sound/pcm-indirect.h2
-rw-r--r--include/sound/pcm.h13
-rw-r--r--include/sound/pcm_oss.h2
-rw-r--r--include/sound/rawmidi.h2
-rw-r--r--include/sound/sb.h2
-rw-r--r--include/sound/seq_instr.h2
-rw-r--r--include/sound/seq_midi_event.h2
-rw-r--r--include/sound/seq_virmidi.h2
-rw-r--r--include/sound/soc.h3
-rw-r--r--include/sound/tea575x-tuner.h2
-rw-r--r--include/sound/timer.h2
-rw-r--r--include/sound/tlv.h2
-rw-r--r--include/sound/version.h4
-rw-r--r--include/sound/ymfpci.h2
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 */
19struct 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 */
167int snd_ctl_boolean_mono_info(struct snd_kcontrol *kcontrol,
168 struct snd_ctl_elem_info *uinfo);
169int 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
1413struct snd_emu10k1_midi { 1411struct 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
1461struct snd_emu10k1 { 1462struct snd_emu10k1 {
@@ -1599,9 +1600,9 @@ unsigned int snd_emu10k1_ptr20_read(struct snd_emu10k1 * emu, unsigned int reg,
1599void snd_emu10k1_ptr20_write(struct snd_emu10k1 *emu, unsigned int reg, unsigned int chn, unsigned int data); 1600void snd_emu10k1_ptr20_write(struct snd_emu10k1 *emu, unsigned int reg, unsigned int chn, unsigned int data);
1600int snd_emu10k1_spi_write(struct snd_emu10k1 * emu, unsigned int data); 1601int snd_emu10k1_spi_write(struct snd_emu10k1 * emu, unsigned int data);
1601int snd_emu10k1_i2c_write(struct snd_emu10k1 *emu, u32 reg, u32 value); 1602int snd_emu10k1_i2c_write(struct snd_emu10k1 *emu, u32 reg, u32 value);
1602int snd_emu1010_fpga_write(struct snd_emu10k1 * emu, int reg, int value); 1603int snd_emu1010_fpga_write(struct snd_emu10k1 * emu, u32 reg, u32 value);
1603int snd_emu1010_fpga_read(struct snd_emu10k1 * emu, int reg, int *value); 1604int snd_emu1010_fpga_read(struct snd_emu10k1 * emu, u32 reg, u32 *value);
1604int snd_emu1010_fpga_link_dst_src_write(struct snd_emu10k1 * emu, int dst, int src); 1605int snd_emu1010_fpga_link_dst_src_write(struct snd_emu10k1 * emu, u32 dst, u32 src);
1605unsigned int snd_emu10k1_efx_read(struct snd_emu10k1 *emu, unsigned int pc); 1606unsigned int snd_emu10k1_efx_read(struct snd_emu10k1 *emu, unsigned int pc);
1606void snd_emu10k1_intr_enable(struct snd_emu10k1 *emu, unsigned int intrenb); 1607void snd_emu10k1_intr_enable(struct snd_emu10k1 *emu, unsigned int intrenb);
1607void snd_emu10k1_intr_disable(struct snd_emu10k1 *emu, unsigned int intrenb); 1608void 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
32struct 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
791static inline const struct snd_mask *hw_param_mask_c(const struct snd_pcm_hw_params *params, 791static 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 &params->masks[var - SNDRV_PCM_HW_PARAM_FIRST_MASK];
795} 795}
796 796
797static inline const struct snd_interval *hw_param_interval_c(const struct snd_pcm_hw_params *params, 797static 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 &params->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,
922snd_pcm_sframes_t snd_pcm_lib_readv(struct snd_pcm_substream *substream, 922snd_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
925extern const struct snd_pcm_hw_constraint_list snd_pcm_known_rates;
926
925int snd_pcm_limit_hw_rates(struct snd_pcm_runtime *runtime); 927int snd_pcm_limit_hw_rates(struct snd_pcm_runtime *runtime);
928unsigned int snd_pcm_rate_to_rate_bit(unsigned int rate);
926 929
927static inline void snd_pcm_set_runtime_buffer(struct snd_pcm_substream *substream, 930static 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);
202int snd_soc_info_volsw_ext(struct snd_kcontrol *kcontrol, 202int snd_soc_info_volsw_ext(struct snd_kcontrol *kcontrol,
203 struct snd_ctl_elem_info *uinfo); 203 struct snd_ctl_elem_info *uinfo);
204int 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);
206int snd_soc_get_volsw(struct snd_kcontrol *kcontrol, 205int snd_soc_get_volsw(struct snd_kcontrol *kcontrol,
207 struct snd_ctl_elem_value *ucontrol); 206 struct snd_ctl_elem_value *ucontrol);
208int snd_soc_put_volsw(struct snd_kcontrol *kcontrol, 207int 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 *