At Wed, 21 Nov 2007 16:04:04 +0100, I wrote:
At Wed, 21 Nov 2007 16:27:47 +0100 (CET), Jaroslav Kysela wrote:
On Wed, 21 Nov 2007, Clemens Ladisch wrote:
Takashi Iwai wrote:
Yes, querying channel mapping is another missing piece with popular demand.
The implementation would be easy, I guess. But we have to define the way to inform this from kernel to user space: whether create a new ioctl or extend the existing ones (if possible)...
It's just metadata that describes a PCM device, so I think we should use TLV for this.
The existing struct snd_ctl_tlv uses a single integer to identify control elements. We could restrict control numid's to 31 bits and use the upper bit to signal that this value includes device type and device number in the lower bits, if we want to reuse the same TLV ioctls.
We can also encode PCM device / subdevice numbers to data structure. But I think that best way is to extend channel_info PCM ioctl (create new version and emulate old one - it should be quite easy to implement).
OK, that sounds feasible.
Do we have any other missing channel meta data?
I'm tring to implement in this way, and made preliminary patches.
One is to replace pcm_ops->ioctl to new pcm_ops->channel_info and pcm_ops->reset callbacks. This will make easier to extend the new channel_info stuff, and even clean up a lot of drivers.
The patch is below. The extended channel_info patch will follow later (maybe tomorrow).
Takashi
diff -r 5829c288c7df Documentation/DocBook/writing-an-alsa-driver.tmpl --- a/Documentation/DocBook/writing-an-alsa-driver.tmpl Mon Nov 26 15:00:40 2007 +0100 +++ b/Documentation/DocBook/writing-an-alsa-driver.tmpl Mon Nov 26 16:52:39 2007 +0100 @@ -1891,7 +1891,6 @@ static struct snd_pcm_ops snd_mychip_playback_ops = { .open = snd_mychip_playback_open, .close = snd_mychip_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_mychip_pcm_hw_params, .hw_free = snd_mychip_pcm_hw_free, .prepare = snd_mychip_pcm_prepare, @@ -1903,7 +1902,6 @@ static struct snd_pcm_ops snd_mychip_capture_ops = { .open = snd_mychip_capture_open, .close = snd_mychip_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_mychip_pcm_hw_params, .hw_free = snd_mychip_pcm_hw_free, .prepare = snd_mychip_pcm_prepare, @@ -2038,7 +2036,6 @@ static struct snd_pcm_ops snd_mychip_playback_ops = { .open = snd_mychip_pcm_open, .close = snd_mychip_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_mychip_pcm_hw_params, .hw_free = snd_mychip_pcm_hw_free, .prepare = snd_mychip_pcm_prepare, @@ -2710,12 +2707,24 @@ struct _snd_pcm_runtime { </para> </section>
- <section id="pcm-interface-operators-ioctl-callback"> - <title>ioctl callback</title> - <para> - This is used for any special call to pcm ioctls. But - usually you can pass a generic ioctl callback, - <function>snd_pcm_lib_ioctl</function>. + <section id="pcm-interface-operators-reset-callback"> + <title>reset callback</title> + <para> + This is used for resetting the PCM buffer and position, issued + when an explicit prepare or reset action is done by user. + You can pass <constant>NULL</constant> usually. + </para> + </section> + + <section id="pcm-interface-operators-reset-callback"> + <title>channel_info callback</title> + <para> + This is used for returning the channel information of the + given channel. The channel information contains the offset, + size and step for MMAP access, and also some extended + attribute like channel-mapping. + You can pass <constant>NULL</constant> as long as you don't + need any special handling. </para> </section>
diff -r 5829c288c7df aoa/soundbus/i2sbus/i2sbus-pcm.c --- a/aoa/soundbus/i2sbus/i2sbus-pcm.c Mon Nov 26 15:00:40 2007 +0100 +++ b/aoa/soundbus/i2sbus/i2sbus-pcm.c Mon Nov 26 16:52:39 2007 +0100 @@ -782,7 +782,6 @@ static struct snd_pcm_ops i2sbus_playbac static struct snd_pcm_ops i2sbus_playback_ops = { .open = i2sbus_playback_open, .close = i2sbus_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = i2sbus_hw_params, .hw_free = i2sbus_playback_hw_free, .prepare = i2sbus_playback_prepare, @@ -852,7 +851,6 @@ static struct snd_pcm_ops i2sbus_record_ static struct snd_pcm_ops i2sbus_record_ops = { .open = i2sbus_record_open, .close = i2sbus_record_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = i2sbus_hw_params, .hw_free = i2sbus_record_hw_free, .prepare = i2sbus_record_prepare, diff -r 5829c288c7df arm/aaci.c --- a/arm/aaci.c Mon Nov 26 15:00:40 2007 +0100 +++ b/arm/aaci.c Mon Nov 26 16:52:39 2007 +0100 @@ -717,7 +717,6 @@ static struct snd_pcm_ops aaci_playback_ static struct snd_pcm_ops aaci_playback_ops = { .open = aaci_pcm_open, .close = aaci_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = aaci_pcm_playback_hw_params, .hw_free = aaci_pcm_hw_free, .prepare = aaci_pcm_prepare, @@ -845,7 +844,6 @@ static struct snd_pcm_ops aaci_capture_o static struct snd_pcm_ops aaci_capture_ops = { .open = aaci_pcm_open, .close = aaci_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = aaci_pcm_capture_hw_params, .hw_free = aaci_pcm_hw_free, .prepare = aaci_pcm_capture_prepare, diff -r 5829c288c7df arm/pxa2xx-pcm.c --- a/arm/pxa2xx-pcm.c Mon Nov 26 15:00:40 2007 +0100 +++ b/arm/pxa2xx-pcm.c Mon Nov 26 16:52:39 2007 +0100 @@ -272,7 +272,6 @@ static struct snd_pcm_ops pxa2xx_pcm_ops static struct snd_pcm_ops pxa2xx_pcm_ops = { .open = pxa2xx_pcm_open, .close = pxa2xx_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = pxa2xx_pcm_hw_params, .hw_free = pxa2xx_pcm_hw_free, .prepare = pxa2xx_pcm_prepare, diff -r 5829c288c7df arm/sa11xx-uda1341.c --- a/arm/sa11xx-uda1341.c Mon Nov 26 15:00:40 2007 +0100 +++ b/arm/sa11xx-uda1341.c Mon Nov 26 16:52:39 2007 +0100 @@ -777,7 +777,6 @@ static struct snd_pcm_ops snd_card_sa11x static struct snd_pcm_ops snd_card_sa11xx_uda1341_playback_ops = { .open = snd_card_sa11xx_uda1341_open, .close = snd_card_sa11xx_uda1341_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_sa11xx_uda1341_hw_params, .hw_free = snd_sa11xx_uda1341_hw_free, .prepare = snd_sa11xx_uda1341_prepare, @@ -788,7 +787,6 @@ static struct snd_pcm_ops snd_card_sa11x static struct snd_pcm_ops snd_card_sa11xx_uda1341_capture_ops = { .open = snd_card_sa11xx_uda1341_open, .close = snd_card_sa11xx_uda1341_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_sa11xx_uda1341_hw_params, .hw_free = snd_sa11xx_uda1341_hw_free, .prepare = snd_sa11xx_uda1341_prepare, diff -r 5829c288c7df core/pcm_lib.c --- a/core/pcm_lib.c Mon Nov 26 15:00:40 2007 +0100 +++ b/core/pcm_lib.c Mon Nov 26 16:52:39 2007 +0100 @@ -1374,25 +1374,20 @@ int snd_pcm_hw_params_choose(struct snd_ return 0; }
-static int snd_pcm_lib_ioctl_reset(struct snd_pcm_substream *substream, - void *arg) +/** + * snd_pcm_lib_channel_info - a generic PCM channel_ioctl callback + * @substream: the pcm substream instance + * @info: channel_info argument + * + * Processes the generic channel_info ioctl for PCM. + * Can be passed as the channel_info callback for PCM ops. + * + * Returns zero if successful, or a negative error code on failure. + */ + +int snd_pcm_lib_channel_info(struct snd_pcm_substream *substream, + struct snd_pcm_channel_info *info) { - struct snd_pcm_runtime *runtime = substream->runtime; - unsigned long flags; - snd_pcm_stream_lock_irqsave(substream, flags); - if (snd_pcm_running(substream) && - snd_pcm_update_hw_ptr(substream) >= 0) - runtime->status->hw_ptr %= runtime->buffer_size; - else - runtime->status->hw_ptr = 0; - snd_pcm_stream_unlock_irqrestore(substream, flags); - return 0; -} - -static int snd_pcm_lib_ioctl_channel_info(struct snd_pcm_substream *substream, - void *arg) -{ - struct snd_pcm_channel_info *info = arg; struct snd_pcm_runtime *runtime = substream->runtime; int width; if (!(runtime->info & SNDRV_PCM_INFO_MMAP)) { @@ -1423,33 +1418,6 @@ static int snd_pcm_lib_ioctl_channel_inf } return 0; } - -/** - * snd_pcm_lib_ioctl - a generic PCM ioctl callback - * @substream: the pcm substream instance - * @cmd: ioctl command - * @arg: ioctl argument - * - * Processes the generic ioctl commands for PCM. - * Can be passed as the ioctl callback for PCM ops. - * - * Returns zero if successful, or a negative error code on failure. - */ -int snd_pcm_lib_ioctl(struct snd_pcm_substream *substream, - unsigned int cmd, void *arg) -{ - switch (cmd) { - case SNDRV_PCM_IOCTL1_INFO: - return 0; - case SNDRV_PCM_IOCTL1_RESET: - return snd_pcm_lib_ioctl_reset(substream, arg); - case SNDRV_PCM_IOCTL1_CHANNEL_INFO: - return snd_pcm_lib_ioctl_channel_info(substream, arg); - } - return -ENXIO; -} - -EXPORT_SYMBOL(snd_pcm_lib_ioctl);
/* * Conditions diff -r 5829c288c7df core/pcm_native.c --- a/core/pcm_native.c Mon Nov 26 15:00:40 2007 +0100 +++ b/core/pcm_native.c Mon Nov 26 16:52:39 2007 +0100 @@ -109,11 +109,8 @@ int snd_pcm_info(struct snd_pcm_substrea info->subdevices_avail = pstr->substream_count - pstr->substream_opened; strlcpy(info->subname, substream->name, sizeof(info->subname)); runtime = substream->runtime; - /* AB: FIXME!!! This is definitely nonsense */ - if (runtime) { + if (runtime) info->sync = runtime->sync; - substream->ops->ioctl(substream, SNDRV_PCM_IOCTL1_INFO, info); - } return 0; }
@@ -663,7 +660,10 @@ static int snd_pcm_channel_info(struct s return -EINVAL; memset(info, 0, sizeof(*info)); info->channel = channel; - return substream->ops->ioctl(substream, SNDRV_PCM_IOCTL1_CHANNEL_INFO, info); + if (substream->ops->channel_info) + return substream->ops->channel_info(substream, info); + else + return snd_pcm_lib_channel_info(substream, info); }
static int snd_pcm_channel_info_user(struct snd_pcm_substream *substream, @@ -1264,10 +1264,19 @@ static int snd_pcm_do_reset(struct snd_p static int snd_pcm_do_reset(struct snd_pcm_substream *substream, int state) { struct snd_pcm_runtime *runtime = substream->runtime; - int err = substream->ops->ioctl(substream, SNDRV_PCM_IOCTL1_RESET, NULL); - if (err < 0) - return err; - // snd_assert(runtime->status->hw_ptr < runtime->buffer_size, ); + int err; + + if (substream->ops->reset) { + err = substream->ops->reset(substream); + if (err < 0) + return err; + } else { + if (snd_pcm_running(substream) && + snd_pcm_update_hw_ptr(substream) >= 0) + runtime->status->hw_ptr %= runtime->buffer_size; + else + runtime->status->hw_ptr = 0; + } runtime->hw_ptr_base = 0; runtime->hw_ptr_interrupt = runtime->status->hw_ptr - runtime->status->hw_ptr % runtime->period_size; diff -r 5829c288c7df drivers/dummy.c --- a/drivers/dummy.c Mon Nov 26 15:00:40 2007 +0100 +++ b/drivers/dummy.c Mon Nov 26 16:52:39 2007 +0100 @@ -404,7 +404,6 @@ static struct snd_pcm_ops snd_card_dummy static struct snd_pcm_ops snd_card_dummy_playback_ops = { .open = snd_card_dummy_playback_open, .close = snd_card_dummy_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_card_dummy_hw_params, .hw_free = snd_card_dummy_hw_free, .prepare = snd_card_dummy_pcm_prepare, @@ -415,7 +414,6 @@ static struct snd_pcm_ops snd_card_dummy static struct snd_pcm_ops snd_card_dummy_capture_ops = { .open = snd_card_dummy_capture_open, .close = snd_card_dummy_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_card_dummy_hw_params, .hw_free = snd_card_dummy_hw_free, .prepare = snd_card_dummy_pcm_prepare, diff -r 5829c288c7df drivers/ml403-ac97cr.c --- a/drivers/ml403-ac97cr.c Mon Nov 26 15:00:40 2007 +0100 +++ b/drivers/ml403-ac97cr.c Mon Nov 26 16:52:39 2007 +0100 @@ -762,7 +762,6 @@ static struct snd_pcm_ops snd_ml403_ac97 static struct snd_pcm_ops snd_ml403_ac97cr_playback_ops = { .open = snd_ml403_ac97cr_playback_open, .close = snd_ml403_ac97cr_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ml403_ac97cr_hw_params, .hw_free = snd_ml403_ac97cr_hw_free, .prepare = snd_ml403_ac97cr_pcm_playback_prepare, @@ -773,7 +772,6 @@ static struct snd_pcm_ops snd_ml403_ac97 static struct snd_pcm_ops snd_ml403_ac97cr_capture_ops = { .open = snd_ml403_ac97cr_capture_open, .close = snd_ml403_ac97cr_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ml403_ac97cr_hw_params, .hw_free = snd_ml403_ac97cr_hw_free, .prepare = snd_ml403_ac97cr_pcm_capture_prepare, diff -r 5829c288c7df drivers/vx/vx_pcm.c --- a/drivers/vx/vx_pcm.c Mon Nov 26 15:00:40 2007 +0100 +++ b/drivers/vx/vx_pcm.c Mon Nov 26 16:52:39 2007 +0100 @@ -947,7 +947,6 @@ static struct snd_pcm_ops vx_pcm_playbac static struct snd_pcm_ops vx_pcm_playback_ops = { .open = vx_pcm_playback_open, .close = vx_pcm_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = vx_pcm_hw_params, .hw_free = vx_pcm_hw_free, .prepare = vx_pcm_prepare, @@ -1166,7 +1165,6 @@ static struct snd_pcm_ops vx_pcm_capture static struct snd_pcm_ops vx_pcm_capture_ops = { .open = vx_pcm_capture_open, .close = vx_pcm_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = vx_pcm_hw_params, .hw_free = vx_pcm_hw_free, .prepare = vx_pcm_prepare, diff -r 5829c288c7df include/pcm.h --- a/include/pcm.h Mon Nov 26 15:00:40 2007 +0100 +++ b/include/pcm.h Mon Nov 26 16:52:39 2007 +0100 @@ -61,8 +61,9 @@ struct snd_pcm_ops { struct snd_pcm_ops { int (*open)(struct snd_pcm_substream *substream); int (*close)(struct snd_pcm_substream *substream); - int (*ioctl)(struct snd_pcm_substream * substream, - unsigned int cmd, void *arg); + int (*reset)(struct snd_pcm_substream * substream); + int (*channel_info)(struct snd_pcm_substream * substream, + struct snd_pcm_channel_info *info); int (*hw_params)(struct snd_pcm_substream *substream, struct snd_pcm_hw_params *params); int (*hw_free)(struct snd_pcm_substream *substream); @@ -85,14 +86,6 @@ struct snd_pcm_ops { */
#define SNDRV_PCM_DEVICES 8 - -#define SNDRV_PCM_IOCTL1_FALSE ((void *)0) -#define SNDRV_PCM_IOCTL1_TRUE ((void *)1) - -#define SNDRV_PCM_IOCTL1_RESET 0 -#define SNDRV_PCM_IOCTL1_INFO 1 -#define SNDRV_PCM_IOCTL1_CHANNEL_INFO 2 -#define SNDRV_PCM_IOCTL1_GSTATE 3
#define SNDRV_PCM_TRIGGER_STOP 0 #define SNDRV_PCM_TRIGGER_START 1 @@ -900,8 +893,8 @@ void snd_pcm_set_ops(struct snd_pcm * pc void snd_pcm_set_ops(struct snd_pcm * pcm, int direction, struct snd_pcm_ops *ops); void snd_pcm_set_sync(struct snd_pcm_substream *substream); int snd_pcm_lib_interleave_len(struct snd_pcm_substream *substream); -int snd_pcm_lib_ioctl(struct snd_pcm_substream *substream, - unsigned int cmd, void *arg); +int snd_pcm_lib_channel_info(struct snd_pcm_substream *substream, + struct snd_pcm_channel_info *info); int snd_pcm_update_hw_ptr(struct snd_pcm_substream *substream); int snd_pcm_playback_xrun_check(struct snd_pcm_substream *substream); int snd_pcm_capture_xrun_check(struct snd_pcm_substream *substream); diff -r 5829c288c7df isa/ad1816a/ad1816a_lib.c --- a/isa/ad1816a/ad1816a_lib.c Mon Nov 26 15:00:40 2007 +0100 +++ b/isa/ad1816a/ad1816a_lib.c Mon Nov 26 16:52:39 2007 +0100 @@ -641,7 +641,6 @@ static struct snd_pcm_ops snd_ad1816a_pl static struct snd_pcm_ops snd_ad1816a_playback_ops = { .open = snd_ad1816a_playback_open, .close = snd_ad1816a_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ad1816a_hw_params, .hw_free = snd_ad1816a_hw_free, .prepare = snd_ad1816a_playback_prepare, @@ -652,7 +651,6 @@ static struct snd_pcm_ops snd_ad1816a_ca static struct snd_pcm_ops snd_ad1816a_capture_ops = { .open = snd_ad1816a_capture_open, .close = snd_ad1816a_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ad1816a_hw_params, .hw_free = snd_ad1816a_hw_free, .prepare = snd_ad1816a_capture_prepare, diff -r 5829c288c7df isa/ad1848/ad1848_lib.c --- a/isa/ad1848/ad1848_lib.c Mon Nov 26 15:00:40 2007 +0100 +++ b/isa/ad1848/ad1848_lib.c Mon Nov 26 16:52:39 2007 +0100 @@ -312,12 +312,6 @@ static unsigned char snd_ad1848_get_rate return freq_bits[i]; snd_BUG(); return freq_bits[ARRAY_SIZE(rates) - 1]; -} - -static int snd_ad1848_ioctl(struct snd_pcm_substream *substream, - unsigned int cmd, void *arg) -{ - return snd_pcm_lib_ioctl(substream, cmd, arg); }
static unsigned char snd_ad1848_get_format(int format, int channels) @@ -929,7 +923,6 @@ static struct snd_pcm_ops snd_ad1848_pla static struct snd_pcm_ops snd_ad1848_playback_ops = { .open = snd_ad1848_playback_open, .close = snd_ad1848_playback_close, - .ioctl = snd_ad1848_ioctl, .hw_params = snd_ad1848_playback_hw_params, .hw_free = snd_ad1848_playback_hw_free, .prepare = snd_ad1848_playback_prepare, @@ -940,7 +933,6 @@ static struct snd_pcm_ops snd_ad1848_cap static struct snd_pcm_ops snd_ad1848_capture_ops = { .open = snd_ad1848_capture_open, .close = snd_ad1848_capture_close, - .ioctl = snd_ad1848_ioctl, .hw_params = snd_ad1848_capture_hw_params, .hw_free = snd_ad1848_capture_hw_free, .prepare = snd_ad1848_capture_prepare, diff -r 5829c288c7df isa/cs423x/cs4231_lib.c --- a/isa/cs423x/cs4231_lib.c Mon Nov 26 15:00:40 2007 +0100 +++ b/isa/cs423x/cs4231_lib.c Mon Nov 26 16:52:39 2007 +0100 @@ -1499,7 +1499,6 @@ static struct snd_pcm_ops snd_cs4231_pla static struct snd_pcm_ops snd_cs4231_playback_ops = { .open = snd_cs4231_playback_open, .close = snd_cs4231_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cs4231_playback_hw_params, .hw_free = snd_cs4231_playback_hw_free, .prepare = snd_cs4231_playback_prepare, @@ -1510,7 +1509,6 @@ static struct snd_pcm_ops snd_cs4231_cap static struct snd_pcm_ops snd_cs4231_capture_ops = { .open = snd_cs4231_capture_open, .close = snd_cs4231_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cs4231_capture_hw_params, .hw_free = snd_cs4231_capture_hw_free, .prepare = snd_cs4231_capture_prepare, diff -r 5829c288c7df isa/es1688/es1688_lib.c --- a/isa/es1688/es1688_lib.c Mon Nov 26 15:00:40 2007 +0100 +++ b/isa/es1688/es1688_lib.c Mon Nov 26 16:52:39 2007 +0100 @@ -317,12 +317,6 @@ static void snd_es1688_set_rate(struct s /* write result to hardware */ snd_es1688_write(chip, 0xa1, bits); snd_es1688_write(chip, 0xa2, divider); -} - -static int snd_es1688_ioctl(struct snd_pcm_substream *substream, - unsigned int cmd, void *arg) -{ - return snd_pcm_lib_ioctl(substream, cmd, arg); }
static int snd_es1688_trigger(struct snd_es1688 *chip, int cmd, unsigned char value) @@ -705,7 +699,6 @@ static struct snd_pcm_ops snd_es1688_pla static struct snd_pcm_ops snd_es1688_playback_ops = { .open = snd_es1688_playback_open, .close = snd_es1688_playback_close, - .ioctl = snd_es1688_ioctl, .hw_params = snd_es1688_hw_params, .hw_free = snd_es1688_hw_free, .prepare = snd_es1688_playback_prepare, @@ -716,7 +709,6 @@ static struct snd_pcm_ops snd_es1688_cap static struct snd_pcm_ops snd_es1688_capture_ops = { .open = snd_es1688_capture_open, .close = snd_es1688_capture_close, - .ioctl = snd_es1688_ioctl, .hw_params = snd_es1688_hw_params, .hw_free = snd_es1688_hw_free, .prepare = snd_es1688_capture_prepare, diff -r 5829c288c7df isa/es18xx.c --- a/isa/es18xx.c Mon Nov 26 15:00:40 2007 +0100 +++ b/isa/es18xx.c Mon Nov 26 16:52:39 2007 +0100 @@ -1671,7 +1671,6 @@ static struct snd_pcm_ops snd_es18xx_pla static struct snd_pcm_ops snd_es18xx_playback_ops = { .open = snd_es18xx_playback_open, .close = snd_es18xx_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_es18xx_playback_hw_params, .hw_free = snd_es18xx_pcm_hw_free, .prepare = snd_es18xx_playback_prepare, @@ -1682,7 +1681,6 @@ static struct snd_pcm_ops snd_es18xx_cap static struct snd_pcm_ops snd_es18xx_capture_ops = { .open = snd_es18xx_capture_open, .close = snd_es18xx_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_es18xx_capture_hw_params, .hw_free = snd_es18xx_pcm_hw_free, .prepare = snd_es18xx_capture_prepare, diff -r 5829c288c7df isa/gus/gus_pcm.c --- a/isa/gus/gus_pcm.c Mon Nov 26 15:00:40 2007 +0100 +++ b/isa/gus/gus_pcm.c Mon Nov 26 16:52:39 2007 +0100 @@ -811,7 +811,6 @@ static struct snd_pcm_ops snd_gf1_pcm_pl static struct snd_pcm_ops snd_gf1_pcm_playback_ops = { .open = snd_gf1_pcm_playback_open, .close = snd_gf1_pcm_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_gf1_pcm_playback_hw_params, .hw_free = snd_gf1_pcm_playback_hw_free, .prepare = snd_gf1_pcm_playback_prepare, @@ -824,7 +823,6 @@ static struct snd_pcm_ops snd_gf1_pcm_ca static struct snd_pcm_ops snd_gf1_pcm_capture_ops = { .open = snd_gf1_pcm_capture_open, .close = snd_gf1_pcm_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_gf1_pcm_capture_hw_params, .hw_free = snd_gf1_pcm_capture_hw_free, .prepare = snd_gf1_pcm_capture_prepare, diff -r 5829c288c7df isa/opti9xx/opti92x-ad1848.c --- a/isa/opti9xx/opti92x-ad1848.c Mon Nov 26 15:00:40 2007 +0100 +++ b/isa/opti9xx/opti92x-ad1848.c Mon Nov 26 16:52:39 2007 +0100 @@ -1333,7 +1333,6 @@ static struct snd_pcm_ops snd_opti93x_pl static struct snd_pcm_ops snd_opti93x_playback_ops = { .open = snd_opti93x_playback_open, .close = snd_opti93x_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_opti93x_hw_params, .hw_free = snd_opti93x_hw_free, .prepare = snd_opti93x_playback_prepare, @@ -1344,7 +1343,6 @@ static struct snd_pcm_ops snd_opti93x_ca static struct snd_pcm_ops snd_opti93x_capture_ops = { .open = snd_opti93x_capture_open, .close = snd_opti93x_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_opti93x_hw_params, .hw_free = snd_opti93x_hw_free, .prepare = snd_opti93x_capture_prepare, diff -r 5829c288c7df isa/sb/emu8000_pcm.c --- a/isa/sb/emu8000_pcm.c Mon Nov 26 15:00:40 2007 +0100 +++ b/isa/sb/emu8000_pcm.c Mon Nov 26 16:52:39 2007 +0100 @@ -666,7 +666,6 @@ static struct snd_pcm_ops emu8k_pcm_ops static struct snd_pcm_ops emu8k_pcm_ops = { .open = emu8k_pcm_open, .close = emu8k_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = emu8k_pcm_hw_params, .hw_free = emu8k_pcm_hw_free, .prepare = emu8k_pcm_prepare, diff -r 5829c288c7df isa/sb/sb16_main.c --- a/isa/sb/sb16_main.c Mon Nov 26 15:00:40 2007 +0100 +++ b/isa/sb/sb16_main.c Mon Nov 26 16:52:39 2007 +0100 @@ -846,7 +846,6 @@ static struct snd_pcm_ops snd_sb16_playb static struct snd_pcm_ops snd_sb16_playback_ops = { .open = snd_sb16_playback_open, .close = snd_sb16_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_sb16_hw_params, .hw_free = snd_sb16_hw_free, .prepare = snd_sb16_playback_prepare, @@ -857,7 +856,6 @@ static struct snd_pcm_ops snd_sb16_captu static struct snd_pcm_ops snd_sb16_capture_ops = { .open = snd_sb16_capture_open, .close = snd_sb16_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_sb16_hw_params, .hw_free = snd_sb16_hw_free, .prepare = snd_sb16_capture_prepare, diff -r 5829c288c7df isa/sb/sb8_main.c --- a/isa/sb/sb8_main.c Mon Nov 26 15:00:40 2007 +0100 +++ b/isa/sb/sb8_main.c Mon Nov 26 16:52:39 2007 +0100 @@ -488,7 +488,6 @@ static struct snd_pcm_ops snd_sb8_playba static struct snd_pcm_ops snd_sb8_playback_ops = { .open = snd_sb8_open, .close = snd_sb8_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_sb8_hw_params, .hw_free = snd_sb8_hw_free, .prepare = snd_sb8_playback_prepare, @@ -499,7 +498,6 @@ static struct snd_pcm_ops snd_sb8_captur static struct snd_pcm_ops snd_sb8_capture_ops = { .open = snd_sb8_open, .close = snd_sb8_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_sb8_hw_params, .hw_free = snd_sb8_hw_free, .prepare = snd_sb8_capture_prepare, diff -r 5829c288c7df kernel/drivers/media/video/cx88/cx88-alsa.c --- a/kernel/drivers/media/video/cx88/cx88-alsa.c Mon Nov 26 15:00:40 2007 +0100 +++ b/kernel/drivers/media/video/cx88/cx88-alsa.c Mon Nov 26 16:52:39 2007 +0100 @@ -515,7 +515,6 @@ static struct snd_pcm_ops snd_cx88_pcm_o static struct snd_pcm_ops snd_cx88_pcm_ops = { .open = snd_cx88_pcm_open, .close = snd_cx88_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cx88_hw_params, .hw_free = snd_cx88_hw_free, .prepare = snd_cx88_prepare, diff -r 5829c288c7df kernel/drivers/media/video/saa7134/saa7134-alsa.c --- a/kernel/drivers/media/video/saa7134/saa7134-alsa.c Mon Nov 26 15:00:40 2007 +0100 +++ b/kernel/drivers/media/video/saa7134/saa7134-alsa.c Mon Nov 26 16:52:39 2007 +0100 @@ -658,7 +658,6 @@ static struct snd_pcm_ops snd_card_saa71 static struct snd_pcm_ops snd_card_saa7134_capture_ops = { .open = snd_card_saa7134_capture_open, .close = snd_card_saa7134_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_card_saa7134_hw_params, .hw_free = snd_card_saa7134_hw_free, .prepare = snd_card_saa7134_capture_prepare, diff -r 5829c288c7df mips/au1x00.c --- a/mips/au1x00.c Mon Nov 26 15:00:40 2007 +0100 +++ b/mips/au1x00.c Mon Nov 26 16:52:39 2007 +0100 @@ -419,7 +419,6 @@ static struct snd_pcm_ops snd_card_au100 static struct snd_pcm_ops snd_card_au1000_playback_ops = { .open = snd_au1000_playback_open, .close = snd_au1000_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_au1000_hw_params, .hw_free = snd_au1000_hw_free, .prepare = snd_au1000_playback_prepare, @@ -430,7 +429,6 @@ static struct snd_pcm_ops snd_card_au100 static struct snd_pcm_ops snd_card_au1000_capture_ops = { .open = snd_au1000_capture_open, .close = snd_au1000_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_au1000_hw_params, .hw_free = snd_au1000_hw_free, .prepare = snd_au1000_capture_prepare, diff -r 5829c288c7df parisc/harmony.c --- a/parisc/harmony.c Mon Nov 26 15:00:40 2007 +0100 +++ b/parisc/harmony.c Mon Nov 26 16:52:39 2007 +0100 @@ -600,7 +600,6 @@ static struct snd_pcm_ops snd_harmony_pl static struct snd_pcm_ops snd_harmony_playback_ops = { .open = snd_harmony_playback_open, .close = snd_harmony_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_harmony_hw_params, .hw_free = snd_harmony_hw_free, .prepare = snd_harmony_playback_prepare, @@ -611,7 +610,6 @@ static struct snd_pcm_ops snd_harmony_ca static struct snd_pcm_ops snd_harmony_capture_ops = { .open = snd_harmony_capture_open, .close = snd_harmony_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_harmony_hw_params, .hw_free = snd_harmony_hw_free, .prepare = snd_harmony_capture_prepare, diff -r 5829c288c7df pci/ad1889.c --- a/pci/ad1889.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/ad1889.c Mon Nov 26 16:52:39 2007 +0100 @@ -576,7 +576,6 @@ static struct snd_pcm_ops snd_ad1889_pla static struct snd_pcm_ops snd_ad1889_playback_ops = { .open = snd_ad1889_playback_open, .close = snd_ad1889_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ad1889_hw_params, .hw_free = snd_ad1889_hw_free, .prepare = snd_ad1889_playback_prepare, @@ -587,7 +586,6 @@ static struct snd_pcm_ops snd_ad1889_cap static struct snd_pcm_ops snd_ad1889_capture_ops = { .open = snd_ad1889_capture_open, .close = snd_ad1889_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ad1889_hw_params, .hw_free = snd_ad1889_hw_free, .prepare = snd_ad1889_capture_prepare, diff -r 5829c288c7df pci/ali5451/ali5451.c --- a/pci/ali5451/ali5451.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/ali5451/ali5451.c Mon Nov 26 16:52:39 2007 +0100 @@ -1615,7 +1615,6 @@ static struct snd_pcm_ops snd_ali_playba static struct snd_pcm_ops snd_ali_playback_ops = { .open = snd_ali_playback_open, .close = snd_ali_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ali_playback_hw_params, .hw_free = snd_ali_playback_hw_free, .prepare = snd_ali_playback_prepare, @@ -1626,7 +1625,6 @@ static struct snd_pcm_ops snd_ali_captur static struct snd_pcm_ops snd_ali_capture_ops = { .open = snd_ali_capture_open, .close = snd_ali_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ali_hw_params, .hw_free = snd_ali_hw_free, .prepare = snd_ali_prepare, @@ -1701,7 +1699,6 @@ static struct snd_pcm_ops snd_ali_modem_ static struct snd_pcm_ops snd_ali_modem_playback_ops = { .open = snd_ali_modem_playback_open, .close = snd_ali_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ali_modem_hw_params, .hw_free = snd_ali_hw_free, .prepare = snd_ali_prepare, @@ -1712,7 +1709,6 @@ static struct snd_pcm_ops snd_ali_modem_ static struct snd_pcm_ops snd_ali_modem_capture_ops = { .open = snd_ali_modem_capture_open, .close = snd_ali_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ali_modem_hw_params, .hw_free = snd_ali_hw_free, .prepare = snd_ali_prepare, diff -r 5829c288c7df pci/als300.c --- a/pci/als300.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/als300.c Mon Nov 26 16:52:39 2007 +0100 @@ -593,7 +593,6 @@ static struct snd_pcm_ops snd_als300_pla static struct snd_pcm_ops snd_als300_playback_ops = { .open = snd_als300_playback_open, .close = snd_als300_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_als300_pcm_hw_params, .hw_free = snd_als300_pcm_hw_free, .prepare = snd_als300_playback_prepare, @@ -604,7 +603,6 @@ static struct snd_pcm_ops snd_als300_cap static struct snd_pcm_ops snd_als300_capture_ops = { .open = snd_als300_capture_open, .close = snd_als300_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_als300_pcm_hw_params, .hw_free = snd_als300_pcm_hw_free, .prepare = snd_als300_capture_prepare, diff -r 5829c288c7df pci/als4000.c --- a/pci/als4000.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/als4000.c Mon Nov 26 16:52:39 2007 +0100 @@ -503,7 +503,6 @@ static struct snd_pcm_ops snd_als4000_pl static struct snd_pcm_ops snd_als4000_playback_ops = { .open = snd_als4000_playback_open, .close = snd_als4000_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_als4000_hw_params, .hw_free = snd_als4000_hw_free, .prepare = snd_als4000_playback_prepare, @@ -514,7 +513,6 @@ static struct snd_pcm_ops snd_als4000_ca static struct snd_pcm_ops snd_als4000_capture_ops = { .open = snd_als4000_capture_open, .close = snd_als4000_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_als4000_hw_params, .hw_free = snd_als4000_hw_free, .prepare = snd_als4000_capture_prepare, diff -r 5829c288c7df pci/atiixp.c --- a/pci/atiixp.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/atiixp.c Mon Nov 26 16:52:39 2007 +0100 @@ -1149,7 +1149,6 @@ static struct snd_pcm_ops snd_atiixp_pla static struct snd_pcm_ops snd_atiixp_playback_ops = { .open = snd_atiixp_playback_open, .close = snd_atiixp_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_atiixp_pcm_hw_params, .hw_free = snd_atiixp_pcm_hw_free, .prepare = snd_atiixp_playback_prepare, @@ -1161,7 +1160,6 @@ static struct snd_pcm_ops snd_atiixp_cap static struct snd_pcm_ops snd_atiixp_capture_ops = { .open = snd_atiixp_capture_open, .close = snd_atiixp_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_atiixp_pcm_hw_params, .hw_free = snd_atiixp_pcm_hw_free, .prepare = snd_atiixp_capture_prepare, @@ -1173,7 +1171,6 @@ static struct snd_pcm_ops snd_atiixp_spd static struct snd_pcm_ops snd_atiixp_spdif_ops = { .open = snd_atiixp_spdif_open, .close = snd_atiixp_spdif_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_atiixp_pcm_hw_params, .hw_free = snd_atiixp_pcm_hw_free, .prepare = snd_atiixp_spdif_prepare, diff -r 5829c288c7df pci/atiixp_modem.c --- a/pci/atiixp_modem.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/atiixp_modem.c Mon Nov 26 16:52:39 2007 +0100 @@ -947,7 +947,6 @@ static struct snd_pcm_ops snd_atiixp_pla static struct snd_pcm_ops snd_atiixp_playback_ops = { .open = snd_atiixp_playback_open, .close = snd_atiixp_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_atiixp_pcm_hw_params, .hw_free = snd_atiixp_pcm_hw_free, .prepare = snd_atiixp_playback_prepare, @@ -959,7 +958,6 @@ static struct snd_pcm_ops snd_atiixp_cap static struct snd_pcm_ops snd_atiixp_capture_ops = { .open = snd_atiixp_capture_open, .close = snd_atiixp_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_atiixp_pcm_hw_params, .hw_free = snd_atiixp_pcm_hw_free, .prepare = snd_atiixp_capture_prepare, diff -r 5829c288c7df pci/au88x0/au88x0_pcm.c --- a/pci/au88x0/au88x0_pcm.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/au88x0/au88x0_pcm.c Mon Nov 26 16:52:39 2007 +0100 @@ -404,7 +404,6 @@ static struct snd_pcm_ops snd_vortex_pla static struct snd_pcm_ops snd_vortex_playback_ops = { .open = snd_vortex_pcm_open, .close = snd_vortex_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_vortex_pcm_hw_params, .hw_free = snd_vortex_pcm_hw_free, .prepare = snd_vortex_pcm_prepare, diff -r 5829c288c7df pci/azt3328.c --- a/pci/azt3328.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/azt3328.c Mon Nov 26 16:52:39 2007 +0100 @@ -1397,7 +1397,6 @@ static struct snd_pcm_ops snd_azf3328_pl static struct snd_pcm_ops snd_azf3328_playback_ops = { .open = snd_azf3328_playback_open, .close = snd_azf3328_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_azf3328_hw_params, .hw_free = snd_azf3328_hw_free, .prepare = snd_azf3328_playback_prepare, @@ -1408,7 +1407,6 @@ static struct snd_pcm_ops snd_azf3328_ca static struct snd_pcm_ops snd_azf3328_capture_ops = { .open = snd_azf3328_capture_open, .close = snd_azf3328_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_azf3328_hw_params, .hw_free = snd_azf3328_hw_free, .prepare = snd_azf3328_capture_prepare, diff -r 5829c288c7df pci/bt87x.c --- a/pci/bt87x.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/bt87x.c Mon Nov 26 16:52:39 2007 +0100 @@ -543,7 +543,6 @@ static struct snd_pcm_ops snd_bt87x_pcm_ static struct snd_pcm_ops snd_bt87x_pcm_ops = { .open = snd_bt87x_pcm_open, .close = snd_bt87x_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_bt87x_hw_params, .hw_free = snd_bt87x_hw_free, .prepare = snd_bt87x_prepare, diff -r 5829c288c7df pci/ca0106/ca0106_main.c --- a/pci/ca0106/ca0106_main.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/ca0106/ca0106_main.c Mon Nov 26 16:52:39 2007 +0100 @@ -967,7 +967,6 @@ static struct snd_pcm_ops snd_ca0106_pla static struct snd_pcm_ops snd_ca0106_playback_front_ops = { .open = snd_ca0106_pcm_open_playback_front, .close = snd_ca0106_pcm_close_playback, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ca0106_pcm_hw_params_playback, .hw_free = snd_ca0106_pcm_hw_free_playback, .prepare = snd_ca0106_pcm_prepare_playback, @@ -978,7 +977,6 @@ static struct snd_pcm_ops snd_ca0106_cap static struct snd_pcm_ops snd_ca0106_capture_0_ops = { .open = snd_ca0106_pcm_open_0_capture, .close = snd_ca0106_pcm_close_capture, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ca0106_pcm_hw_params_capture, .hw_free = snd_ca0106_pcm_hw_free_capture, .prepare = snd_ca0106_pcm_prepare_capture, @@ -989,7 +987,6 @@ static struct snd_pcm_ops snd_ca0106_cap static struct snd_pcm_ops snd_ca0106_capture_1_ops = { .open = snd_ca0106_pcm_open_1_capture, .close = snd_ca0106_pcm_close_capture, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ca0106_pcm_hw_params_capture, .hw_free = snd_ca0106_pcm_hw_free_capture, .prepare = snd_ca0106_pcm_prepare_capture, @@ -1000,7 +997,6 @@ static struct snd_pcm_ops snd_ca0106_cap static struct snd_pcm_ops snd_ca0106_capture_2_ops = { .open = snd_ca0106_pcm_open_2_capture, .close = snd_ca0106_pcm_close_capture, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ca0106_pcm_hw_params_capture, .hw_free = snd_ca0106_pcm_hw_free_capture, .prepare = snd_ca0106_pcm_prepare_capture, @@ -1011,7 +1007,6 @@ static struct snd_pcm_ops snd_ca0106_cap static struct snd_pcm_ops snd_ca0106_capture_3_ops = { .open = snd_ca0106_pcm_open_3_capture, .close = snd_ca0106_pcm_close_capture, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ca0106_pcm_hw_params_capture, .hw_free = snd_ca0106_pcm_hw_free_capture, .prepare = snd_ca0106_pcm_prepare_capture, @@ -1022,7 +1017,6 @@ static struct snd_pcm_ops snd_ca0106_pla static struct snd_pcm_ops snd_ca0106_playback_center_lfe_ops = { .open = snd_ca0106_pcm_open_playback_center_lfe, .close = snd_ca0106_pcm_close_playback, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ca0106_pcm_hw_params_playback, .hw_free = snd_ca0106_pcm_hw_free_playback, .prepare = snd_ca0106_pcm_prepare_playback, @@ -1033,7 +1027,6 @@ static struct snd_pcm_ops snd_ca0106_pla static struct snd_pcm_ops snd_ca0106_playback_unknown_ops = { .open = snd_ca0106_pcm_open_playback_unknown, .close = snd_ca0106_pcm_close_playback, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ca0106_pcm_hw_params_playback, .hw_free = snd_ca0106_pcm_hw_free_playback, .prepare = snd_ca0106_pcm_prepare_playback, @@ -1044,7 +1037,6 @@ static struct snd_pcm_ops snd_ca0106_pla static struct snd_pcm_ops snd_ca0106_playback_rear_ops = { .open = snd_ca0106_pcm_open_playback_rear, .close = snd_ca0106_pcm_close_playback, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ca0106_pcm_hw_params_playback, .hw_free = snd_ca0106_pcm_hw_free_playback, .prepare = snd_ca0106_pcm_prepare_playback, diff -r 5829c288c7df pci/cmipci.c --- a/pci/cmipci.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/cmipci.c Mon Nov 26 16:52:39 2007 +0100 @@ -1834,7 +1834,6 @@ static struct snd_pcm_ops snd_cmipci_pla static struct snd_pcm_ops snd_cmipci_playback_ops = { .open = snd_cmipci_playback_open, .close = snd_cmipci_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cmipci_hw_params, .hw_free = snd_cmipci_playback_hw_free, .prepare = snd_cmipci_playback_prepare, @@ -1845,7 +1844,6 @@ static struct snd_pcm_ops snd_cmipci_cap static struct snd_pcm_ops snd_cmipci_capture_ops = { .open = snd_cmipci_capture_open, .close = snd_cmipci_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cmipci_hw_params, .hw_free = snd_cmipci_hw_free, .prepare = snd_cmipci_capture_prepare, @@ -1856,7 +1854,6 @@ static struct snd_pcm_ops snd_cmipci_pla static struct snd_pcm_ops snd_cmipci_playback2_ops = { .open = snd_cmipci_playback2_open, .close = snd_cmipci_playback2_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cmipci_playback2_hw_params, .hw_free = snd_cmipci_playback2_hw_free, .prepare = snd_cmipci_capture_prepare, /* channel B */ @@ -1867,7 +1864,6 @@ static struct snd_pcm_ops snd_cmipci_pla static struct snd_pcm_ops snd_cmipci_playback_spdif_ops = { .open = snd_cmipci_playback_spdif_open, .close = snd_cmipci_playback_spdif_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cmipci_hw_params, .hw_free = snd_cmipci_playback_hw_free, .prepare = snd_cmipci_playback_spdif_prepare, /* set up rate */ @@ -1878,7 +1874,6 @@ static struct snd_pcm_ops snd_cmipci_cap static struct snd_pcm_ops snd_cmipci_capture_spdif_ops = { .open = snd_cmipci_capture_spdif_open, .close = snd_cmipci_capture_spdif_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cmipci_hw_params, .hw_free = snd_cmipci_capture_spdif_hw_free, .prepare = snd_cmipci_capture_spdif_prepare, diff -r 5829c288c7df pci/cs4281.c --- a/pci/cs4281.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/cs4281.c Mon Nov 26 16:52:39 2007 +0100 @@ -947,7 +947,6 @@ static struct snd_pcm_ops snd_cs4281_pla static struct snd_pcm_ops snd_cs4281_playback_ops = { .open = snd_cs4281_playback_open, .close = snd_cs4281_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cs4281_hw_params, .hw_free = snd_cs4281_hw_free, .prepare = snd_cs4281_playback_prepare, @@ -958,7 +957,6 @@ static struct snd_pcm_ops snd_cs4281_cap static struct snd_pcm_ops snd_cs4281_capture_ops = { .open = snd_cs4281_capture_open, .close = snd_cs4281_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cs4281_hw_params, .hw_free = snd_cs4281_hw_free, .prepare = snd_cs4281_capture_prepare, diff -r 5829c288c7df pci/cs46xx/cs46xx_lib.c --- a/pci/cs46xx/cs46xx_lib.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/cs46xx/cs46xx_lib.c Mon Nov 26 16:52:39 2007 +0100 @@ -1462,7 +1462,6 @@ static struct snd_pcm_ops snd_cs46xx_pla static struct snd_pcm_ops snd_cs46xx_playback_rear_ops = { .open = snd_cs46xx_playback_open_rear, .close = snd_cs46xx_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cs46xx_playback_hw_params, .hw_free = snd_cs46xx_playback_hw_free, .prepare = snd_cs46xx_playback_prepare, @@ -1473,7 +1472,6 @@ static struct snd_pcm_ops snd_cs46xx_pla static struct snd_pcm_ops snd_cs46xx_playback_indirect_rear_ops = { .open = snd_cs46xx_playback_open_rear, .close = snd_cs46xx_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cs46xx_playback_hw_params, .hw_free = snd_cs46xx_playback_hw_free, .prepare = snd_cs46xx_playback_prepare, @@ -1485,7 +1483,6 @@ static struct snd_pcm_ops snd_cs46xx_pla static struct snd_pcm_ops snd_cs46xx_playback_clfe_ops = { .open = snd_cs46xx_playback_open_clfe, .close = snd_cs46xx_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cs46xx_playback_hw_params, .hw_free = snd_cs46xx_playback_hw_free, .prepare = snd_cs46xx_playback_prepare, @@ -1496,7 +1493,6 @@ static struct snd_pcm_ops snd_cs46xx_pla static struct snd_pcm_ops snd_cs46xx_playback_indirect_clfe_ops = { .open = snd_cs46xx_playback_open_clfe, .close = snd_cs46xx_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cs46xx_playback_hw_params, .hw_free = snd_cs46xx_playback_hw_free, .prepare = snd_cs46xx_playback_prepare, @@ -1508,7 +1504,6 @@ static struct snd_pcm_ops snd_cs46xx_pla static struct snd_pcm_ops snd_cs46xx_playback_iec958_ops = { .open = snd_cs46xx_playback_open_iec958, .close = snd_cs46xx_playback_close_iec958, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cs46xx_playback_hw_params, .hw_free = snd_cs46xx_playback_hw_free, .prepare = snd_cs46xx_playback_prepare, @@ -1519,7 +1514,6 @@ static struct snd_pcm_ops snd_cs46xx_pla static struct snd_pcm_ops snd_cs46xx_playback_indirect_iec958_ops = { .open = snd_cs46xx_playback_open_iec958, .close = snd_cs46xx_playback_close_iec958, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cs46xx_playback_hw_params, .hw_free = snd_cs46xx_playback_hw_free, .prepare = snd_cs46xx_playback_prepare, @@ -1533,7 +1527,6 @@ static struct snd_pcm_ops snd_cs46xx_pla static struct snd_pcm_ops snd_cs46xx_playback_ops = { .open = snd_cs46xx_playback_open, .close = snd_cs46xx_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cs46xx_playback_hw_params, .hw_free = snd_cs46xx_playback_hw_free, .prepare = snd_cs46xx_playback_prepare, @@ -1544,7 +1537,6 @@ static struct snd_pcm_ops snd_cs46xx_pla static struct snd_pcm_ops snd_cs46xx_playback_indirect_ops = { .open = snd_cs46xx_playback_open, .close = snd_cs46xx_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cs46xx_playback_hw_params, .hw_free = snd_cs46xx_playback_hw_free, .prepare = snd_cs46xx_playback_prepare, @@ -1556,7 +1548,6 @@ static struct snd_pcm_ops snd_cs46xx_cap static struct snd_pcm_ops snd_cs46xx_capture_ops = { .open = snd_cs46xx_capture_open, .close = snd_cs46xx_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cs46xx_capture_hw_params, .hw_free = snd_cs46xx_capture_hw_free, .prepare = snd_cs46xx_capture_prepare, @@ -1567,7 +1558,6 @@ static struct snd_pcm_ops snd_cs46xx_cap static struct snd_pcm_ops snd_cs46xx_capture_indirect_ops = { .open = snd_cs46xx_capture_open, .close = snd_cs46xx_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cs46xx_capture_hw_params, .hw_free = snd_cs46xx_capture_hw_free, .prepare = snd_cs46xx_capture_prepare, diff -r 5829c288c7df pci/cs5535audio/cs5535audio_pcm.c --- a/pci/cs5535audio/cs5535audio_pcm.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/cs5535audio/cs5535audio_pcm.c Mon Nov 26 16:52:39 2007 +0100 @@ -366,7 +366,6 @@ static struct snd_pcm_ops snd_cs5535audi static struct snd_pcm_ops snd_cs5535audio_playback_ops = { .open = snd_cs5535audio_playback_open, .close = snd_cs5535audio_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cs5535audio_hw_params, .hw_free = snd_cs5535audio_hw_free, .prepare = snd_cs5535audio_playback_prepare, @@ -377,7 +376,6 @@ static struct snd_pcm_ops snd_cs5535audi static struct snd_pcm_ops snd_cs5535audio_capture_ops = { .open = snd_cs5535audio_capture_open, .close = snd_cs5535audio_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cs5535audio_hw_params, .hw_free = snd_cs5535audio_hw_free, .prepare = snd_cs5535audio_capture_prepare, diff -r 5829c288c7df pci/echoaudio/echoaudio.c --- a/pci/echoaudio/echoaudio.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/echoaudio/echoaudio.c Mon Nov 26 16:52:39 2007 +0100 @@ -795,7 +795,6 @@ static struct snd_pcm_ops analog_playbac static struct snd_pcm_ops analog_playback_ops = { .open = pcm_analog_out_open, .close = pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = pcm_analog_out_hw_params, .hw_free = pcm_hw_free, .prepare = pcm_prepare, @@ -806,7 +805,6 @@ static struct snd_pcm_ops analog_capture static struct snd_pcm_ops analog_capture_ops = { .open = pcm_analog_in_open, .close = pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = pcm_analog_in_hw_params, .hw_free = pcm_hw_free, .prepare = pcm_prepare, @@ -819,7 +817,6 @@ static struct snd_pcm_ops digital_playba static struct snd_pcm_ops digital_playback_ops = { .open = pcm_digital_out_open, .close = pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = pcm_digital_out_hw_params, .hw_free = pcm_hw_free, .prepare = pcm_prepare, @@ -831,7 +828,6 @@ static struct snd_pcm_ops digital_captur static struct snd_pcm_ops digital_capture_ops = { .open = pcm_digital_in_open, .close = pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = pcm_digital_in_hw_params, .hw_free = pcm_hw_free, .prepare = pcm_prepare, diff -r 5829c288c7df pci/emu10k1/emu10k1x.c --- a/pci/emu10k1/emu10k1x.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/emu10k1/emu10k1x.c Mon Nov 26 16:52:39 2007 +0100 @@ -547,7 +547,6 @@ static struct snd_pcm_ops snd_emu10k1x_p static struct snd_pcm_ops snd_emu10k1x_playback_ops = { .open = snd_emu10k1x_playback_open, .close = snd_emu10k1x_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_emu10k1x_pcm_hw_params, .hw_free = snd_emu10k1x_pcm_hw_free, .prepare = snd_emu10k1x_pcm_prepare, @@ -693,7 +692,6 @@ static struct snd_pcm_ops snd_emu10k1x_c static struct snd_pcm_ops snd_emu10k1x_capture_ops = { .open = snd_emu10k1x_pcm_open_capture, .close = snd_emu10k1x_pcm_close_capture, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_emu10k1x_pcm_hw_params_capture, .hw_free = snd_emu10k1x_pcm_hw_free_capture, .prepare = snd_emu10k1x_pcm_prepare_capture, diff -r 5829c288c7df pci/emu10k1/emupcm.c --- a/pci/emu10k1/emupcm.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/emu10k1/emupcm.c Mon Nov 26 16:52:39 2007 +0100 @@ -1318,7 +1318,6 @@ static struct snd_pcm_ops snd_emu10k1_pl static struct snd_pcm_ops snd_emu10k1_playback_ops = { .open = snd_emu10k1_playback_open, .close = snd_emu10k1_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_emu10k1_playback_hw_params, .hw_free = snd_emu10k1_playback_hw_free, .prepare = snd_emu10k1_playback_prepare, @@ -1330,7 +1329,6 @@ static struct snd_pcm_ops snd_emu10k1_ca static struct snd_pcm_ops snd_emu10k1_capture_ops = { .open = snd_emu10k1_capture_open, .close = snd_emu10k1_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_emu10k1_capture_hw_params, .hw_free = snd_emu10k1_capture_hw_free, .prepare = snd_emu10k1_capture_prepare, @@ -1342,7 +1340,6 @@ static struct snd_pcm_ops snd_emu10k1_ef static struct snd_pcm_ops snd_emu10k1_efx_playback_ops = { .open = snd_emu10k1_efx_playback_open, .close = snd_emu10k1_efx_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_emu10k1_playback_hw_params, .hw_free = snd_emu10k1_efx_playback_hw_free, .prepare = snd_emu10k1_efx_playback_prepare, @@ -1421,7 +1418,6 @@ static struct snd_pcm_ops snd_emu10k1_ca static struct snd_pcm_ops snd_emu10k1_capture_mic_ops = { .open = snd_emu10k1_capture_mic_open, .close = snd_emu10k1_capture_mic_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_emu10k1_capture_hw_params, .hw_free = snd_emu10k1_capture_hw_free, .prepare = snd_emu10k1_capture_prepare, @@ -1521,7 +1517,6 @@ static struct snd_pcm_ops snd_emu10k1_ca static struct snd_pcm_ops snd_emu10k1_capture_efx_ops = { .open = snd_emu10k1_capture_efx_open, .close = snd_emu10k1_capture_efx_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_emu10k1_capture_hw_params, .hw_free = snd_emu10k1_capture_hw_free, .prepare = snd_emu10k1_capture_prepare, @@ -1752,7 +1747,6 @@ static struct snd_pcm_ops snd_emu10k1_fx static struct snd_pcm_ops snd_emu10k1_fx8010_playback_ops = { .open = snd_emu10k1_fx8010_playback_open, .close = snd_emu10k1_fx8010_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_emu10k1_fx8010_playback_hw_params, .hw_free = snd_emu10k1_fx8010_playback_hw_free, .prepare = snd_emu10k1_fx8010_playback_prepare, diff -r 5829c288c7df pci/emu10k1/p16v.c --- a/pci/emu10k1/p16v.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/emu10k1/p16v.c Mon Nov 26 16:52:39 2007 +0100 @@ -568,7 +568,6 @@ static struct snd_pcm_ops snd_p16v_playb static struct snd_pcm_ops snd_p16v_playback_front_ops = { .open = snd_p16v_pcm_open_playback_front, .close = snd_p16v_pcm_close_playback, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_p16v_pcm_hw_params_playback, .hw_free = snd_p16v_pcm_hw_free_playback, .prepare = snd_p16v_pcm_prepare_playback, @@ -579,7 +578,6 @@ static struct snd_pcm_ops snd_p16v_captu static struct snd_pcm_ops snd_p16v_capture_ops = { .open = snd_p16v_pcm_open_capture, .close = snd_p16v_pcm_close_capture, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_p16v_pcm_hw_params_capture, .hw_free = snd_p16v_pcm_hw_free_capture, .prepare = snd_p16v_pcm_prepare_capture, diff -r 5829c288c7df pci/ens1370.c --- a/pci/ens1370.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/ens1370.c Mon Nov 26 16:52:39 2007 +0100 @@ -1213,7 +1213,6 @@ static struct snd_pcm_ops snd_ensoniq_pl static struct snd_pcm_ops snd_ensoniq_playback1_ops = { .open = snd_ensoniq_playback1_open, .close = snd_ensoniq_playback1_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ensoniq_hw_params, .hw_free = snd_ensoniq_hw_free, .prepare = snd_ensoniq_playback1_prepare, @@ -1224,7 +1223,6 @@ static struct snd_pcm_ops snd_ensoniq_pl static struct snd_pcm_ops snd_ensoniq_playback2_ops = { .open = snd_ensoniq_playback2_open, .close = snd_ensoniq_playback2_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ensoniq_hw_params, .hw_free = snd_ensoniq_hw_free, .prepare = snd_ensoniq_playback2_prepare, @@ -1235,7 +1233,6 @@ static struct snd_pcm_ops snd_ensoniq_ca static struct snd_pcm_ops snd_ensoniq_capture_ops = { .open = snd_ensoniq_capture_open, .close = snd_ensoniq_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ensoniq_hw_params, .hw_free = snd_ensoniq_hw_free, .prepare = snd_ensoniq_capture_prepare, diff -r 5829c288c7df pci/es1938.c --- a/pci/es1938.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/es1938.c Mon Nov 26 16:52:39 2007 +0100 @@ -984,7 +984,6 @@ static struct snd_pcm_ops snd_es1938_pla static struct snd_pcm_ops snd_es1938_playback_ops = { .open = snd_es1938_playback_open, .close = snd_es1938_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_es1938_pcm_hw_params, .hw_free = snd_es1938_pcm_hw_free, .prepare = snd_es1938_playback_prepare, @@ -995,7 +994,6 @@ static struct snd_pcm_ops snd_es1938_cap static struct snd_pcm_ops snd_es1938_capture_ops = { .open = snd_es1938_capture_open, .close = snd_es1938_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_es1938_pcm_hw_params, .hw_free = snd_es1938_pcm_hw_free, .prepare = snd_es1938_capture_prepare, diff -r 5829c288c7df pci/es1968.c --- a/pci/es1968.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/es1968.c Mon Nov 26 16:52:39 2007 +0100 @@ -1654,7 +1654,6 @@ static struct snd_pcm_ops snd_es1968_pla static struct snd_pcm_ops snd_es1968_playback_ops = { .open = snd_es1968_playback_open, .close = snd_es1968_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_es1968_hw_params, .hw_free = snd_es1968_hw_free, .prepare = snd_es1968_pcm_prepare, @@ -1665,7 +1664,6 @@ static struct snd_pcm_ops snd_es1968_cap static struct snd_pcm_ops snd_es1968_capture_ops = { .open = snd_es1968_capture_open, .close = snd_es1968_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_es1968_hw_params, .hw_free = snd_es1968_hw_free, .prepare = snd_es1968_pcm_prepare, diff -r 5829c288c7df pci/fm801.c --- a/pci/fm801.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/fm801.c Mon Nov 26 16:52:39 2007 +0100 @@ -663,7 +663,6 @@ static struct snd_pcm_ops snd_fm801_play static struct snd_pcm_ops snd_fm801_playback_ops = { .open = snd_fm801_playback_open, .close = snd_fm801_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_fm801_hw_params, .hw_free = snd_fm801_hw_free, .prepare = snd_fm801_playback_prepare, @@ -674,7 +673,6 @@ static struct snd_pcm_ops snd_fm801_capt static struct snd_pcm_ops snd_fm801_capture_ops = { .open = snd_fm801_capture_open, .close = snd_fm801_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_fm801_hw_params, .hw_free = snd_fm801_hw_free, .prepare = snd_fm801_capture_prepare, diff -r 5829c288c7df pci/hda/hda_intel.c --- a/pci/hda/hda_intel.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/hda/hda_intel.c Mon Nov 26 16:52:39 2007 +0100 @@ -1340,7 +1340,6 @@ static struct snd_pcm_ops azx_pcm_ops = static struct snd_pcm_ops azx_pcm_ops = { .open = azx_pcm_open, .close = azx_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = azx_pcm_hw_params, .hw_free = azx_pcm_hw_free, .prepare = azx_pcm_prepare, diff -r 5829c288c7df pci/ice1712/ice1712.c --- a/pci/ice1712/ice1712.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/ice1712/ice1712.c Mon Nov 26 16:52:39 2007 +0100 @@ -841,7 +841,6 @@ static struct snd_pcm_ops snd_ice1712_pl static struct snd_pcm_ops snd_ice1712_playback_ops = { .open = snd_ice1712_playback_open, .close = snd_ice1712_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ice1712_hw_params, .hw_free = snd_ice1712_hw_free, .prepare = snd_ice1712_playback_prepare, @@ -852,7 +851,6 @@ static struct snd_pcm_ops snd_ice1712_pl static struct snd_pcm_ops snd_ice1712_playback_ds_ops = { .open = snd_ice1712_playback_ds_open, .close = snd_ice1712_playback_ds_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ice1712_hw_params, .hw_free = snd_ice1712_hw_free, .prepare = snd_ice1712_playback_ds_prepare, @@ -863,7 +861,6 @@ static struct snd_pcm_ops snd_ice1712_ca static struct snd_pcm_ops snd_ice1712_capture_ops = { .open = snd_ice1712_capture_open, .close = snd_ice1712_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ice1712_hw_params, .hw_free = snd_ice1712_hw_free, .prepare = snd_ice1712_capture_prepare, @@ -1220,7 +1217,6 @@ static struct snd_pcm_ops snd_ice1712_pl static struct snd_pcm_ops snd_ice1712_playback_pro_ops = { .open = snd_ice1712_playback_pro_open, .close = snd_ice1712_playback_pro_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ice1712_playback_pro_hw_params, .hw_free = snd_ice1712_hw_free, .prepare = snd_ice1712_playback_pro_prepare, @@ -1231,7 +1227,6 @@ static struct snd_pcm_ops snd_ice1712_ca static struct snd_pcm_ops snd_ice1712_capture_pro_ops = { .open = snd_ice1712_capture_pro_open, .close = snd_ice1712_capture_pro_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ice1712_capture_pro_hw_params, .hw_free = snd_ice1712_hw_free, .prepare = snd_ice1712_capture_pro_prepare, diff -r 5829c288c7df pci/ice1712/ice1724.c --- a/pci/ice1712/ice1724.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/ice1712/ice1724.c Mon Nov 26 16:52:39 2007 +0100 @@ -842,7 +842,6 @@ static struct snd_pcm_ops snd_vt1724_pla static struct snd_pcm_ops snd_vt1724_playback_pro_ops = { .open = snd_vt1724_playback_pro_open, .close = snd_vt1724_playback_pro_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_vt1724_pcm_hw_params, .hw_free = snd_vt1724_pcm_hw_free, .prepare = snd_vt1724_playback_pro_prepare, @@ -853,7 +852,6 @@ static struct snd_pcm_ops snd_vt1724_cap static struct snd_pcm_ops snd_vt1724_capture_pro_ops = { .open = snd_vt1724_capture_pro_open, .close = snd_vt1724_capture_pro_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_vt1724_pcm_hw_params, .hw_free = snd_vt1724_pcm_hw_free, .prepare = snd_vt1724_pcm_prepare, @@ -1018,7 +1016,6 @@ static struct snd_pcm_ops snd_vt1724_pla static struct snd_pcm_ops snd_vt1724_playback_spdif_ops = { .open = snd_vt1724_playback_spdif_open, .close = snd_vt1724_playback_spdif_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_vt1724_pcm_hw_params, .hw_free = snd_vt1724_pcm_hw_free, .prepare = snd_vt1724_playback_spdif_prepare, @@ -1029,7 +1026,6 @@ static struct snd_pcm_ops snd_vt1724_cap static struct snd_pcm_ops snd_vt1724_capture_spdif_ops = { .open = snd_vt1724_capture_spdif_open, .close = snd_vt1724_capture_spdif_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_vt1724_pcm_hw_params, .hw_free = snd_vt1724_pcm_hw_free, .prepare = snd_vt1724_pcm_prepare, @@ -1163,7 +1159,6 @@ static struct snd_pcm_ops snd_vt1724_pla static struct snd_pcm_ops snd_vt1724_playback_indep_ops = { .open = snd_vt1724_playback_indep_open, .close = snd_vt1724_playback_indep_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_vt1724_pcm_hw_params, .hw_free = snd_vt1724_pcm_hw_free, .prepare = snd_vt1724_playback_indep_prepare, diff -r 5829c288c7df pci/intel8x0.c --- a/pci/intel8x0.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/intel8x0.c Mon Nov 26 16:52:39 2007 +0100 @@ -1307,7 +1307,6 @@ static struct snd_pcm_ops snd_intel8x0_p static struct snd_pcm_ops snd_intel8x0_playback_ops = { .open = snd_intel8x0_playback_open, .close = snd_intel8x0_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_intel8x0_hw_params, .hw_free = snd_intel8x0_hw_free, .prepare = snd_intel8x0_pcm_prepare, @@ -1318,7 +1317,6 @@ static struct snd_pcm_ops snd_intel8x0_c static struct snd_pcm_ops snd_intel8x0_capture_ops = { .open = snd_intel8x0_capture_open, .close = snd_intel8x0_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_intel8x0_hw_params, .hw_free = snd_intel8x0_hw_free, .prepare = snd_intel8x0_pcm_prepare, @@ -1329,7 +1327,6 @@ static struct snd_pcm_ops snd_intel8x0_c static struct snd_pcm_ops snd_intel8x0_capture_mic_ops = { .open = snd_intel8x0_mic_open, .close = snd_intel8x0_mic_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_intel8x0_hw_params, .hw_free = snd_intel8x0_hw_free, .prepare = snd_intel8x0_pcm_prepare, @@ -1340,7 +1337,6 @@ static struct snd_pcm_ops snd_intel8x0_c static struct snd_pcm_ops snd_intel8x0_capture_mic2_ops = { .open = snd_intel8x0_mic2_open, .close = snd_intel8x0_mic2_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_intel8x0_hw_params, .hw_free = snd_intel8x0_hw_free, .prepare = snd_intel8x0_pcm_prepare, @@ -1351,7 +1347,6 @@ static struct snd_pcm_ops snd_intel8x0_c static struct snd_pcm_ops snd_intel8x0_capture2_ops = { .open = snd_intel8x0_capture2_open, .close = snd_intel8x0_capture2_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_intel8x0_hw_params, .hw_free = snd_intel8x0_hw_free, .prepare = snd_intel8x0_pcm_prepare, @@ -1362,7 +1357,6 @@ static struct snd_pcm_ops snd_intel8x0_s static struct snd_pcm_ops snd_intel8x0_spdif_ops = { .open = snd_intel8x0_spdif_open, .close = snd_intel8x0_spdif_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_intel8x0_hw_params, .hw_free = snd_intel8x0_hw_free, .prepare = snd_intel8x0_pcm_prepare, @@ -1373,7 +1367,6 @@ static struct snd_pcm_ops snd_intel8x0_a static struct snd_pcm_ops snd_intel8x0_ali_playback_ops = { .open = snd_intel8x0_playback_open, .close = snd_intel8x0_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_intel8x0_hw_params, .hw_free = snd_intel8x0_hw_free, .prepare = snd_intel8x0_pcm_prepare, @@ -1384,7 +1377,6 @@ static struct snd_pcm_ops snd_intel8x0_a static struct snd_pcm_ops snd_intel8x0_ali_capture_ops = { .open = snd_intel8x0_capture_open, .close = snd_intel8x0_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_intel8x0_hw_params, .hw_free = snd_intel8x0_hw_free, .prepare = snd_intel8x0_pcm_prepare, @@ -1395,7 +1387,6 @@ static struct snd_pcm_ops snd_intel8x0_a static struct snd_pcm_ops snd_intel8x0_ali_capture_mic_ops = { .open = snd_intel8x0_mic_open, .close = snd_intel8x0_mic_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_intel8x0_hw_params, .hw_free = snd_intel8x0_hw_free, .prepare = snd_intel8x0_pcm_prepare, @@ -1406,7 +1397,6 @@ static struct snd_pcm_ops snd_intel8x0_a static struct snd_pcm_ops snd_intel8x0_ali_ac97spdifout_ops = { .open = snd_intel8x0_ali_ac97spdifout_open, .close = snd_intel8x0_ali_ac97spdifout_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_intel8x0_hw_params, .hw_free = snd_intel8x0_hw_free, .prepare = snd_intel8x0_pcm_prepare, @@ -1418,7 +1408,6 @@ static struct snd_pcm_ops snd_intel8x0_a static struct snd_pcm_ops snd_intel8x0_ali_spdifin_ops = { .open = snd_intel8x0_ali_spdifin_open, .close = snd_intel8x0_ali_spdifin_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_intel8x0_hw_params, .hw_free = snd_intel8x0_hw_free, .prepare = snd_intel8x0_pcm_prepare, @@ -1429,7 +1418,6 @@ static struct snd_pcm_ops snd_intel8x0_a static struct snd_pcm_ops snd_intel8x0_ali_spdifout_ops = { .open = snd_intel8x0_ali_spdifout_open, .close = snd_intel8x0_ali_spdifout_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_intel8x0_hw_params, .hw_free = snd_intel8x0_hw_free, .prepare = snd_intel8x0_pcm_prepare, diff -r 5829c288c7df pci/intel8x0m.c --- a/pci/intel8x0m.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/intel8x0m.c Mon Nov 26 16:52:39 2007 +0100 @@ -675,7 +675,6 @@ static struct snd_pcm_ops snd_intel8x0m_ static struct snd_pcm_ops snd_intel8x0m_playback_ops = { .open = snd_intel8x0m_playback_open, .close = snd_intel8x0m_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_intel8x0_hw_params, .hw_free = snd_intel8x0_hw_free, .prepare = snd_intel8x0m_pcm_prepare, @@ -686,7 +685,6 @@ static struct snd_pcm_ops snd_intel8x0m_ static struct snd_pcm_ops snd_intel8x0m_capture_ops = { .open = snd_intel8x0m_capture_open, .close = snd_intel8x0m_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_intel8x0_hw_params, .hw_free = snd_intel8x0_hw_free, .prepare = snd_intel8x0m_pcm_prepare, diff -r 5829c288c7df pci/korg1212/korg1212.c --- a/pci/korg1212/korg1212.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/korg1212/korg1212.c Mon Nov 26 16:52:39 2007 +0100 @@ -1478,21 +1478,17 @@ static int snd_korg1212_capture_close(st return 0; }
-static int snd_korg1212_ioctl(struct snd_pcm_substream *substream, - unsigned int cmd, void *arg) +static int snd_korg1212_channel_info(struct snd_pcm_substream *substream, + struct snd_pcm_channel_info *info) { - K1212_DEBUG_PRINTK("K1212_DEBUG: snd_korg1212_ioctl: cmd=%d\n", cmd); - - if (cmd == SNDRV_PCM_IOCTL1_CHANNEL_INFO ) { - struct snd_pcm_channel_info *info = arg; - info->offset = 0; - info->first = info->channel * 16; - info->step = 256; - K1212_DEBUG_PRINTK("K1212_DEBUG: channel_info %d:, offset=%ld, first=%d, step=%d\n", info->channel, info->offset, info->first, info->step); - return 0; - } - - return snd_pcm_lib_ioctl(substream, cmd, arg); + info->offset = 0; + info->first = info->channel * 16; + info->step = 256; + K1212_DEBUG_PRINTK("K1212_DEBUG: channel_info %d:" + ", offset=%ld, first=%d, step=%d\n", + info->channel, info->offset, info->first, + info->step); + return 0; }
static int snd_korg1212_hw_params(struct snd_pcm_substream *substream, @@ -1691,7 +1687,7 @@ static struct snd_pcm_ops snd_korg1212_p static struct snd_pcm_ops snd_korg1212_playback_ops = { .open = snd_korg1212_playback_open, .close = snd_korg1212_playback_close, - .ioctl = snd_korg1212_ioctl, + .channel_info = snd_korg1212_channel_info, .hw_params = snd_korg1212_hw_params, .prepare = snd_korg1212_prepare, .trigger = snd_korg1212_trigger, @@ -1703,7 +1699,7 @@ static struct snd_pcm_ops snd_korg1212_c static struct snd_pcm_ops snd_korg1212_capture_ops = { .open = snd_korg1212_capture_open, .close = snd_korg1212_capture_close, - .ioctl = snd_korg1212_ioctl, + .channel_info = snd_korg1212_channel_info, .hw_params = snd_korg1212_hw_params, .prepare = snd_korg1212_prepare, .trigger = snd_korg1212_trigger, diff -r 5829c288c7df pci/maestro3.c --- a/pci/maestro3.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/maestro3.c Mon Nov 26 16:52:39 2007 +0100 @@ -1864,7 +1864,6 @@ static struct snd_pcm_ops snd_m3_playbac static struct snd_pcm_ops snd_m3_playback_ops = { .open = snd_m3_playback_open, .close = snd_m3_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_m3_pcm_hw_params, .hw_free = snd_m3_pcm_hw_free, .prepare = snd_m3_pcm_prepare, @@ -1875,7 +1874,6 @@ static struct snd_pcm_ops snd_m3_capture static struct snd_pcm_ops snd_m3_capture_ops = { .open = snd_m3_capture_open, .close = snd_m3_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_m3_pcm_hw_params, .hw_free = snd_m3_pcm_hw_free, .prepare = snd_m3_pcm_prepare, diff -r 5829c288c7df pci/mixart/mixart.c --- a/pci/mixart/mixart.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/mixart/mixart.c Mon Nov 26 16:52:39 2007 +0100 @@ -889,7 +889,6 @@ static struct snd_pcm_ops snd_mixart_pla static struct snd_pcm_ops snd_mixart_playback_ops = { .open = snd_mixart_playback_open, .close = snd_mixart_close, - .ioctl = snd_pcm_lib_ioctl, .prepare = snd_mixart_prepare, .hw_params = snd_mixart_hw_params, .hw_free = snd_mixart_hw_free, @@ -900,7 +899,6 @@ static struct snd_pcm_ops snd_mixart_cap static struct snd_pcm_ops snd_mixart_capture_ops = { .open = snd_mixart_capture_open, .close = snd_mixart_close, - .ioctl = snd_pcm_lib_ioctl, .prepare = snd_mixart_prepare, .hw_params = snd_mixart_hw_params, .hw_free = snd_mixart_hw_free, diff -r 5829c288c7df pci/nm256/nm256.c --- a/pci/nm256/nm256.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/nm256/nm256.c Mon Nov 26 16:52:39 2007 +0100 @@ -898,7 +898,6 @@ static struct snd_pcm_ops snd_nm256_play static struct snd_pcm_ops snd_nm256_playback_ops = { .open = snd_nm256_playback_open, .close = snd_nm256_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_nm256_pcm_hw_params, .prepare = snd_nm256_pcm_prepare, .trigger = snd_nm256_playback_trigger, @@ -913,7 +912,6 @@ static struct snd_pcm_ops snd_nm256_capt static struct snd_pcm_ops snd_nm256_capture_ops = { .open = snd_nm256_capture_open, .close = snd_nm256_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_nm256_pcm_hw_params, .prepare = snd_nm256_pcm_prepare, .trigger = snd_nm256_capture_trigger, diff -r 5829c288c7df pci/pcxhr/pcxhr.c --- a/pci/pcxhr/pcxhr.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/pcxhr/pcxhr.c Mon Nov 26 16:52:39 2007 +0100 @@ -964,7 +964,6 @@ static struct snd_pcm_ops pcxhr_ops = { static struct snd_pcm_ops pcxhr_ops = { .open = pcxhr_open, .close = pcxhr_close, - .ioctl = snd_pcm_lib_ioctl, .prepare = pcxhr_prepare, .hw_params = pcxhr_hw_params, .hw_free = pcxhr_hw_free, diff -r 5829c288c7df pci/riptide/riptide.c --- a/pci/riptide/riptide.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/riptide/riptide.c Mon Nov 26 16:52:39 2007 +0100 @@ -1693,7 +1693,6 @@ static struct snd_pcm_ops snd_riptide_pl static struct snd_pcm_ops snd_riptide_playback_ops = { .open = snd_riptide_playback_open, .close = snd_riptide_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_riptide_hw_params, .hw_free = snd_riptide_hw_free, .prepare = snd_riptide_prepare, @@ -1704,7 +1703,6 @@ static struct snd_pcm_ops snd_riptide_ca static struct snd_pcm_ops snd_riptide_capture_ops = { .open = snd_riptide_capture_open, .close = snd_riptide_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_riptide_hw_params, .hw_free = snd_riptide_hw_free, .prepare = snd_riptide_prepare, diff -r 5829c288c7df pci/rme32.c --- a/pci/rme32.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/rme32.c Mon Nov 26 16:52:39 2007 +0100 @@ -1204,7 +1204,6 @@ static struct snd_pcm_ops snd_rme32_play static struct snd_pcm_ops snd_rme32_playback_spdif_ops = { .open = snd_rme32_playback_spdif_open, .close = snd_rme32_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_rme32_playback_hw_params, .hw_free = snd_rme32_pcm_hw_free, .prepare = snd_rme32_playback_prepare, @@ -1218,7 +1217,6 @@ static struct snd_pcm_ops snd_rme32_capt static struct snd_pcm_ops snd_rme32_capture_spdif_ops = { .open = snd_rme32_capture_spdif_open, .close = snd_rme32_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_rme32_capture_hw_params, .hw_free = snd_rme32_pcm_hw_free, .prepare = snd_rme32_capture_prepare, @@ -1231,7 +1229,6 @@ static struct snd_pcm_ops snd_rme32_play static struct snd_pcm_ops snd_rme32_playback_adat_ops = { .open = snd_rme32_playback_adat_open, .close = snd_rme32_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_rme32_playback_hw_params, .prepare = snd_rme32_playback_prepare, .trigger = snd_rme32_pcm_trigger, @@ -1244,7 +1241,6 @@ static struct snd_pcm_ops snd_rme32_capt static struct snd_pcm_ops snd_rme32_capture_adat_ops = { .open = snd_rme32_capture_adat_open, .close = snd_rme32_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_rme32_capture_hw_params, .prepare = snd_rme32_capture_prepare, .trigger = snd_rme32_pcm_trigger, @@ -1257,7 +1253,6 @@ static struct snd_pcm_ops snd_rme32_play static struct snd_pcm_ops snd_rme32_playback_spdif_fd_ops = { .open = snd_rme32_playback_spdif_open, .close = snd_rme32_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_rme32_playback_hw_params, .hw_free = snd_rme32_pcm_hw_free, .prepare = snd_rme32_playback_prepare, @@ -1269,7 +1264,6 @@ static struct snd_pcm_ops snd_rme32_capt static struct snd_pcm_ops snd_rme32_capture_spdif_fd_ops = { .open = snd_rme32_capture_spdif_open, .close = snd_rme32_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_rme32_capture_hw_params, .hw_free = snd_rme32_pcm_hw_free, .prepare = snd_rme32_capture_prepare, @@ -1281,7 +1275,6 @@ static struct snd_pcm_ops snd_rme32_play static struct snd_pcm_ops snd_rme32_playback_adat_fd_ops = { .open = snd_rme32_playback_adat_open, .close = snd_rme32_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_rme32_playback_hw_params, .prepare = snd_rme32_playback_prepare, .trigger = snd_rme32_pcm_trigger, @@ -1292,7 +1285,6 @@ static struct snd_pcm_ops snd_rme32_capt static struct snd_pcm_ops snd_rme32_capture_adat_fd_ops = { .open = snd_rme32_capture_adat_open, .close = snd_rme32_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_rme32_capture_hw_params, .prepare = snd_rme32_capture_prepare, .trigger = snd_rme32_pcm_trigger, diff -r 5829c288c7df pci/rme96.c --- a/pci/rme96.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/rme96.c Mon Nov 26 16:52:39 2007 +0100 @@ -1456,7 +1456,6 @@ static struct snd_pcm_ops snd_rme96_play static struct snd_pcm_ops snd_rme96_playback_spdif_ops = { .open = snd_rme96_playback_spdif_open, .close = snd_rme96_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_rme96_playback_hw_params, .prepare = snd_rme96_playback_prepare, .trigger = snd_rme96_playback_trigger, @@ -1469,7 +1468,6 @@ static struct snd_pcm_ops snd_rme96_capt static struct snd_pcm_ops snd_rme96_capture_spdif_ops = { .open = snd_rme96_capture_spdif_open, .close = snd_rme96_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_rme96_capture_hw_params, .prepare = snd_rme96_capture_prepare, .trigger = snd_rme96_capture_trigger, @@ -1481,7 +1479,6 @@ static struct snd_pcm_ops snd_rme96_play static struct snd_pcm_ops snd_rme96_playback_adat_ops = { .open = snd_rme96_playback_adat_open, .close = snd_rme96_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_rme96_playback_hw_params, .prepare = snd_rme96_playback_prepare, .trigger = snd_rme96_playback_trigger, @@ -1494,7 +1491,6 @@ static struct snd_pcm_ops snd_rme96_capt static struct snd_pcm_ops snd_rme96_capture_adat_ops = { .open = snd_rme96_capture_adat_open, .close = snd_rme96_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_rme96_capture_hw_params, .prepare = snd_rme96_capture_prepare, .trigger = snd_rme96_capture_trigger, diff -r 5829c288c7df pci/rme9652/hdsp.c --- a/pci/rme9652/hdsp.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/rme9652/hdsp.c Mon Nov 26 16:52:40 2007 +0100 @@ -3915,21 +3915,6 @@ static int snd_hdsp_channel_info(struct return 0; }
-static int snd_hdsp_ioctl(struct snd_pcm_substream *substream, - unsigned int cmd, void *arg) -{ - switch (cmd) { - case SNDRV_PCM_IOCTL1_RESET: - return snd_hdsp_reset(substream); - case SNDRV_PCM_IOCTL1_CHANNEL_INFO: - return snd_hdsp_channel_info(substream, arg); - default: - break; - } - - return snd_pcm_lib_ioctl(substream, cmd, arg); -} - static int snd_hdsp_trigger(struct snd_pcm_substream *substream, int cmd) { struct hdsp *hdsp = snd_pcm_substream_chip(substream); @@ -4663,7 +4648,8 @@ static struct snd_pcm_ops snd_hdsp_playb static struct snd_pcm_ops snd_hdsp_playback_ops = { .open = snd_hdsp_playback_open, .close = snd_hdsp_playback_release, - .ioctl = snd_hdsp_ioctl, + .reset = snd_hdsp_reset, + .channel_info = snd_hdsp_channel_info, .hw_params = snd_hdsp_hw_params, .prepare = snd_hdsp_prepare, .trigger = snd_hdsp_trigger, @@ -4675,7 +4661,8 @@ static struct snd_pcm_ops snd_hdsp_captu static struct snd_pcm_ops snd_hdsp_capture_ops = { .open = snd_hdsp_capture_open, .close = snd_hdsp_capture_release, - .ioctl = snd_hdsp_ioctl, + .reset = snd_hdsp_reset, + .channel_info = snd_hdsp_channel_info, .hw_params = snd_hdsp_hw_params, .prepare = snd_hdsp_prepare, .trigger = snd_hdsp_trigger, diff -r 5829c288c7df pci/rme9652/hdspm.c --- a/pci/rme9652/hdspm.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/rme9652/hdspm.c Mon Nov 26 16:52:40 2007 +0100 @@ -3756,25 +3756,6 @@ static int snd_hdspm_channel_info(struct return 0; }
-static int snd_hdspm_ioctl(struct snd_pcm_substream *substream, - unsigned int cmd, void *arg) -{ - switch (cmd) { - case SNDRV_PCM_IOCTL1_RESET: - return snd_hdspm_reset(substream); - - case SNDRV_PCM_IOCTL1_CHANNEL_INFO: - { - struct snd_pcm_channel_info *info = arg; - return snd_hdspm_channel_info(substream, info); - } - default: - break; - } - - return snd_pcm_lib_ioctl(substream, cmd, arg); -} - static int snd_hdspm_trigger(struct snd_pcm_substream *substream, int cmd) { struct hdspm *hdspm = snd_pcm_substream_chip(substream); @@ -4174,7 +4155,8 @@ static struct snd_pcm_ops snd_hdspm_play static struct snd_pcm_ops snd_hdspm_playback_ops = { .open = snd_hdspm_playback_open, .close = snd_hdspm_playback_release, - .ioctl = snd_hdspm_ioctl, + .reset = snd_hdspm_reset, + .channel_info = snd_hdspm_channel_info, .hw_params = snd_hdspm_hw_params, .hw_free = snd_hdspm_hw_free, .prepare = snd_hdspm_prepare, @@ -4188,7 +4170,8 @@ static struct snd_pcm_ops snd_hdspm_capt static struct snd_pcm_ops snd_hdspm_capture_ops = { .open = snd_hdspm_capture_open, .close = snd_hdspm_capture_release, - .ioctl = snd_hdspm_ioctl, + .reset = snd_hdspm_reset, + .channel_info = snd_hdspm_channel_info, .hw_params = snd_hdspm_hw_params, .hw_free = snd_hdspm_hw_free, .prepare = snd_hdspm_prepare, diff -r 5829c288c7df pci/rme9652/rme9652.c --- a/pci/rme9652/rme9652.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/rme9652/rme9652.c Mon Nov 26 16:52:40 2007 +0100 @@ -2066,26 +2066,6 @@ static int snd_rme9652_channel_info(stru return 0; }
-static int snd_rme9652_ioctl(struct snd_pcm_substream *substream, - unsigned int cmd, void *arg) -{ - switch (cmd) { - case SNDRV_PCM_IOCTL1_RESET: - { - return snd_rme9652_reset(substream); - } - case SNDRV_PCM_IOCTL1_CHANNEL_INFO: - { - struct snd_pcm_channel_info *info = arg; - return snd_rme9652_channel_info(substream, info); - } - default: - break; - } - - return snd_pcm_lib_ioctl(substream, cmd, arg); -} - static void rme9652_silence_playback(struct snd_rme9652 *rme9652) { memset(rme9652->playback_buffer, 0, RME9652_DMA_AREA_BYTES); @@ -2391,7 +2371,8 @@ static struct snd_pcm_ops snd_rme9652_pl static struct snd_pcm_ops snd_rme9652_playback_ops = { .open = snd_rme9652_playback_open, .close = snd_rme9652_playback_release, - .ioctl = snd_rme9652_ioctl, + .reset = snd_rme9652_reset, + .channel_info = snd_rme9652_channel_info, .hw_params = snd_rme9652_hw_params, .prepare = snd_rme9652_prepare, .trigger = snd_rme9652_trigger, @@ -2403,7 +2384,8 @@ static struct snd_pcm_ops snd_rme9652_ca static struct snd_pcm_ops snd_rme9652_capture_ops = { .open = snd_rme9652_capture_open, .close = snd_rme9652_capture_release, - .ioctl = snd_rme9652_ioctl, + .reset = snd_rme9652_reset, + .channel_info = snd_rme9652_channel_info, .hw_params = snd_rme9652_hw_params, .prepare = snd_rme9652_prepare, .trigger = snd_rme9652_trigger, diff -r 5829c288c7df pci/sonicvibes.c --- a/pci/sonicvibes.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/sonicvibes.c Mon Nov 26 16:52:40 2007 +0100 @@ -824,7 +824,6 @@ static struct snd_pcm_ops snd_sonicvibes static struct snd_pcm_ops snd_sonicvibes_playback_ops = { .open = snd_sonicvibes_playback_open, .close = snd_sonicvibes_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_sonicvibes_hw_params, .hw_free = snd_sonicvibes_hw_free, .prepare = snd_sonicvibes_playback_prepare, @@ -835,7 +834,6 @@ static struct snd_pcm_ops snd_sonicvibes static struct snd_pcm_ops snd_sonicvibes_capture_ops = { .open = snd_sonicvibes_capture_open, .close = snd_sonicvibes_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_sonicvibes_hw_params, .hw_free = snd_sonicvibes_hw_free, .prepare = snd_sonicvibes_capture_prepare, diff -r 5829c288c7df pci/trident/trident_main.c --- a/pci/trident/trident_main.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/trident/trident_main.c Mon Nov 26 16:52:40 2007 +0100 @@ -775,29 +775,6 @@ static unsigned int snd_trident_control_ /* * PCM part */ - -/*--------------------------------------------------------------------------- - snd_trident_ioctl - - Description: Device I/O control handler for playback/capture parameters. - - Paramters: substream - PCM substream class - cmd - what ioctl message to process - arg - additional message infoarg - - Returns: Error status - - ---------------------------------------------------------------------------*/ - -static int snd_trident_ioctl(struct snd_pcm_substream *substream, - unsigned int cmd, - void *arg) -{ - /* FIXME: it seems that with small periods the behaviour of - trident hardware is unpredictable and interrupt generator - is broken */ - return snd_pcm_lib_ioctl(substream, cmd, arg); -}
/*--------------------------------------------------------------------------- snd_trident_allocate_pcm_mem @@ -2065,7 +2042,6 @@ static struct snd_pcm_ops snd_trident_pl static struct snd_pcm_ops snd_trident_playback_ops = { .open = snd_trident_playback_open, .close = snd_trident_playback_close, - .ioctl = snd_trident_ioctl, .hw_params = snd_trident_hw_params, .hw_free = snd_trident_hw_free, .prepare = snd_trident_playback_prepare, @@ -2076,7 +2052,6 @@ static struct snd_pcm_ops snd_trident_nx static struct snd_pcm_ops snd_trident_nx_playback_ops = { .open = snd_trident_playback_open, .close = snd_trident_playback_close, - .ioctl = snd_trident_ioctl, .hw_params = snd_trident_hw_params, .hw_free = snd_trident_hw_free, .prepare = snd_trident_playback_prepare, @@ -2088,7 +2063,6 @@ static struct snd_pcm_ops snd_trident_ca static struct snd_pcm_ops snd_trident_capture_ops = { .open = snd_trident_capture_open, .close = snd_trident_capture_close, - .ioctl = snd_trident_ioctl, .hw_params = snd_trident_capture_hw_params, .hw_free = snd_trident_hw_free, .prepare = snd_trident_capture_prepare, @@ -2099,7 +2073,6 @@ static struct snd_pcm_ops snd_trident_si static struct snd_pcm_ops snd_trident_si7018_capture_ops = { .open = snd_trident_capture_open, .close = snd_trident_capture_close, - .ioctl = snd_trident_ioctl, .hw_params = snd_trident_si7018_capture_hw_params, .hw_free = snd_trident_si7018_capture_hw_free, .prepare = snd_trident_si7018_capture_prepare, @@ -2110,7 +2083,6 @@ static struct snd_pcm_ops snd_trident_fo static struct snd_pcm_ops snd_trident_foldback_ops = { .open = snd_trident_foldback_open, .close = snd_trident_foldback_close, - .ioctl = snd_trident_ioctl, .hw_params = snd_trident_hw_params, .hw_free = snd_trident_hw_free, .prepare = snd_trident_foldback_prepare, @@ -2121,7 +2093,6 @@ static struct snd_pcm_ops snd_trident_nx static struct snd_pcm_ops snd_trident_nx_foldback_ops = { .open = snd_trident_foldback_open, .close = snd_trident_foldback_close, - .ioctl = snd_trident_ioctl, .hw_params = snd_trident_hw_params, .hw_free = snd_trident_hw_free, .prepare = snd_trident_foldback_prepare, @@ -2133,7 +2104,6 @@ static struct snd_pcm_ops snd_trident_sp static struct snd_pcm_ops snd_trident_spdif_ops = { .open = snd_trident_spdif_open, .close = snd_trident_spdif_close, - .ioctl = snd_trident_ioctl, .hw_params = snd_trident_spdif_hw_params, .hw_free = snd_trident_hw_free, .prepare = snd_trident_spdif_prepare, @@ -2144,7 +2114,6 @@ static struct snd_pcm_ops snd_trident_sp static struct snd_pcm_ops snd_trident_spdif_7018_ops = { .open = snd_trident_spdif_open, .close = snd_trident_spdif_close, - .ioctl = snd_trident_ioctl, .hw_params = snd_trident_spdif_hw_params, .hw_free = snd_trident_hw_free, .prepare = snd_trident_spdif_prepare, diff -r 5829c288c7df pci/via82xx.c --- a/pci/via82xx.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/via82xx.c Mon Nov 26 16:52:40 2007 +0100 @@ -1302,7 +1302,6 @@ static struct snd_pcm_ops snd_via686_pla static struct snd_pcm_ops snd_via686_playback_ops = { .open = snd_via82xx_playback_open, .close = snd_via82xx_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_via82xx_hw_params, .hw_free = snd_via82xx_hw_free, .prepare = snd_via686_playback_prepare, @@ -1315,7 +1314,6 @@ static struct snd_pcm_ops snd_via686_cap static struct snd_pcm_ops snd_via686_capture_ops = { .open = snd_via82xx_capture_open, .close = snd_via82xx_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_via82xx_hw_params, .hw_free = snd_via82xx_hw_free, .prepare = snd_via686_capture_prepare, @@ -1328,7 +1326,6 @@ static struct snd_pcm_ops snd_via8233_pl static struct snd_pcm_ops snd_via8233_playback_ops = { .open = snd_via82xx_playback_open, .close = snd_via82xx_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_via82xx_hw_params, .hw_free = snd_via82xx_hw_free, .prepare = snd_via8233_playback_prepare, @@ -1341,7 +1338,6 @@ static struct snd_pcm_ops snd_via8233_mu static struct snd_pcm_ops snd_via8233_multi_ops = { .open = snd_via8233_multi_open, .close = snd_via82xx_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_via82xx_hw_params, .hw_free = snd_via82xx_hw_free, .prepare = snd_via8233_multi_prepare, @@ -1354,7 +1350,6 @@ static struct snd_pcm_ops snd_via8233_ca static struct snd_pcm_ops snd_via8233_capture_ops = { .open = snd_via82xx_capture_open, .close = snd_via82xx_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_via82xx_hw_params, .hw_free = snd_via82xx_hw_free, .prepare = snd_via8233_capture_prepare, diff -r 5829c288c7df pci/via82xx_modem.c --- a/pci/via82xx_modem.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/via82xx_modem.c Mon Nov 26 16:52:40 2007 +0100 @@ -798,7 +798,6 @@ static struct snd_pcm_ops snd_via686_pla static struct snd_pcm_ops snd_via686_playback_ops = { .open = snd_via82xx_playback_open, .close = snd_via82xx_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_via82xx_hw_params, .hw_free = snd_via82xx_hw_free, .prepare = snd_via82xx_pcm_prepare, @@ -811,7 +810,6 @@ static struct snd_pcm_ops snd_via686_cap static struct snd_pcm_ops snd_via686_capture_ops = { .open = snd_via82xx_capture_open, .close = snd_via82xx_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_via82xx_hw_params, .hw_free = snd_via82xx_hw_free, .prepare = snd_via82xx_pcm_prepare, diff -r 5829c288c7df pci/ymfpci/ymfpci_main.c --- a/pci/ymfpci/ymfpci_main.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pci/ymfpci/ymfpci_main.c Mon Nov 26 16:52:40 2007 +0100 @@ -1092,7 +1092,6 @@ static struct snd_pcm_ops snd_ymfpci_pla static struct snd_pcm_ops snd_ymfpci_playback_ops = { .open = snd_ymfpci_playback_open, .close = snd_ymfpci_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ymfpci_playback_hw_params, .hw_free = snd_ymfpci_playback_hw_free, .prepare = snd_ymfpci_playback_prepare, @@ -1103,7 +1102,6 @@ static struct snd_pcm_ops snd_ymfpci_cap static struct snd_pcm_ops snd_ymfpci_capture_rec_ops = { .open = snd_ymfpci_capture_rec_open, .close = snd_ymfpci_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ymfpci_capture_hw_params, .hw_free = snd_ymfpci_capture_hw_free, .prepare = snd_ymfpci_capture_prepare, @@ -1141,7 +1139,6 @@ static struct snd_pcm_ops snd_ymfpci_cap static struct snd_pcm_ops snd_ymfpci_capture_ac97_ops = { .open = snd_ymfpci_capture_ac97_open, .close = snd_ymfpci_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ymfpci_capture_hw_params, .hw_free = snd_ymfpci_capture_hw_free, .prepare = snd_ymfpci_capture_prepare, @@ -1179,7 +1176,6 @@ static struct snd_pcm_ops snd_ymfpci_pla static struct snd_pcm_ops snd_ymfpci_playback_spdif_ops = { .open = snd_ymfpci_playback_spdif_open, .close = snd_ymfpci_playback_spdif_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ymfpci_playback_hw_params, .hw_free = snd_ymfpci_playback_hw_free, .prepare = snd_ymfpci_playback_prepare, @@ -1216,7 +1212,6 @@ static struct snd_pcm_ops snd_ymfpci_pla static struct snd_pcm_ops snd_ymfpci_playback_4ch_ops = { .open = snd_ymfpci_playback_4ch_open, .close = snd_ymfpci_playback_4ch_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_ymfpci_playback_hw_params, .hw_free = snd_ymfpci_playback_hw_free, .prepare = snd_ymfpci_playback_prepare, diff -r 5829c288c7df pcmcia/pdaudiocf/pdaudiocf_pcm.c --- a/pcmcia/pdaudiocf/pdaudiocf_pcm.c Mon Nov 26 15:00:40 2007 +0100 +++ b/pcmcia/pdaudiocf/pdaudiocf_pcm.c Mon Nov 26 16:52:40 2007 +0100 @@ -313,7 +313,6 @@ static struct snd_pcm_ops pdacf_pcm_capt static struct snd_pcm_ops pdacf_pcm_capture_ops = { .open = pdacf_pcm_capture_open, .close = pdacf_pcm_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = pdacf_pcm_hw_params, .hw_free = pdacf_pcm_hw_free, .prepare = pdacf_pcm_prepare, diff -r 5829c288c7df ppc/pmac.c --- a/ppc/pmac.c Mon Nov 26 15:00:40 2007 +0100 +++ b/ppc/pmac.c Mon Nov 26 16:52:40 2007 +0100 @@ -589,7 +589,6 @@ static struct snd_pcm_ops snd_pmac_playb static struct snd_pcm_ops snd_pmac_playback_ops = { .open = snd_pmac_playback_open, .close = snd_pmac_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_pmac_pcm_hw_params, .hw_free = snd_pmac_pcm_hw_free, .prepare = snd_pmac_playback_prepare, @@ -600,7 +599,6 @@ static struct snd_pcm_ops snd_pmac_captu static struct snd_pcm_ops snd_pmac_capture_ops = { .open = snd_pmac_capture_open, .close = snd_pmac_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_pmac_pcm_hw_params, .hw_free = snd_pmac_pcm_hw_free, .prepare = snd_pmac_capture_prepare, diff -r 5829c288c7df ppc/snd_ps3.c --- a/ppc/snd_ps3.c Mon Nov 26 15:00:40 2007 +0100 +++ b/ppc/snd_ps3.c Mon Nov 26 16:52:40 2007 +0100 @@ -171,7 +171,6 @@ static struct snd_pcm_ops snd_ps3_pcm_sp .open = snd_ps3_pcm_open, .close = snd_ps3_pcm_close, .prepare = snd_ps3_pcm_prepare, - .ioctl = snd_pcm_lib_ioctl, .trigger = snd_ps3_pcm_trigger, .pointer = snd_ps3_pcm_pointer, .hw_params = snd_ps3_pcm_hw_params, diff -r 5829c288c7df sh/aica.c --- a/sh/aica.c Mon Nov 26 15:00:40 2007 +0100 +++ b/sh/aica.c Mon Nov 26 16:52:40 2007 +0100 @@ -443,7 +443,6 @@ static struct snd_pcm_ops snd_aicapcm_pl static struct snd_pcm_ops snd_aicapcm_playback_ops = { .open = snd_aicapcm_pcm_open, .close = snd_aicapcm_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_aicapcm_pcm_hw_params, .hw_free = snd_aicapcm_pcm_hw_free, .prepare = snd_aicapcm_pcm_prepare, diff -r 5829c288c7df soc/at91/at91-pcm.c --- a/soc/at91/at91-pcm.c Mon Nov 26 15:00:40 2007 +0100 +++ b/soc/at91/at91-pcm.c Mon Nov 26 16:52:40 2007 +0100 @@ -279,7 +279,6 @@ struct snd_pcm_ops at91_pcm_ops = { struct snd_pcm_ops at91_pcm_ops = { .open = at91_pcm_open, .close = at91_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = at91_pcm_hw_params, .hw_free = at91_pcm_hw_free, .prepare = at91_pcm_prepare, diff -r 5829c288c7df soc/pxa/pxa2xx-pcm.c --- a/soc/pxa/pxa2xx-pcm.c Mon Nov 26 15:00:40 2007 +0100 +++ b/soc/pxa/pxa2xx-pcm.c Mon Nov 26 16:52:40 2007 +0100 @@ -283,7 +283,6 @@ struct snd_pcm_ops pxa2xx_pcm_ops = { struct snd_pcm_ops pxa2xx_pcm_ops = { .open = pxa2xx_pcm_open, .close = pxa2xx_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = pxa2xx_pcm_hw_params, .hw_free = pxa2xx_pcm_hw_free, .prepare = pxa2xx_pcm_prepare, diff -r 5829c288c7df soc/s3c24xx/s3c24xx-pcm.c --- a/soc/s3c24xx/s3c24xx-pcm.c Mon Nov 26 15:00:40 2007 +0100 +++ b/soc/s3c24xx/s3c24xx-pcm.c Mon Nov 26 16:52:40 2007 +0100 @@ -378,7 +378,6 @@ static struct snd_pcm_ops s3c24xx_pcm_op static struct snd_pcm_ops s3c24xx_pcm_ops = { .open = s3c24xx_pcm_open, .close = s3c24xx_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = s3c24xx_pcm_hw_params, .hw_free = s3c24xx_pcm_hw_free, .prepare = s3c24xx_pcm_prepare, diff -r 5829c288c7df soc/sh/dma-sh7760.c --- a/soc/sh/dma-sh7760.c Mon Nov 26 15:00:40 2007 +0100 +++ b/soc/sh/dma-sh7760.c Mon Nov 26 16:52:40 2007 +0100 @@ -313,7 +313,6 @@ static struct snd_pcm_ops camelot_pcm_op static struct snd_pcm_ops camelot_pcm_ops = { .open = camelot_pcm_open, .close = camelot_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = camelot_hw_params, .hw_free = camelot_hw_free, .prepare = camelot_prepare, diff -r 5829c288c7df soc/soc-core.c --- a/soc/soc-core.c Mon Nov 26 15:00:40 2007 +0100 +++ b/soc/soc-core.c Mon Nov 26 16:52:40 2007 +0100 @@ -876,7 +876,6 @@ static int soc_new_pcm(struct snd_soc_de pcm->private_data = rtd; soc_pcm_ops.mmap = socdev->platform->pcm_ops->mmap; soc_pcm_ops.pointer = socdev->platform->pcm_ops->pointer; - soc_pcm_ops.ioctl = socdev->platform->pcm_ops->ioctl; soc_pcm_ops.copy = socdev->platform->pcm_ops->copy; soc_pcm_ops.silence = socdev->platform->pcm_ops->silence; soc_pcm_ops.ack = socdev->platform->pcm_ops->ack; diff -r 5829c288c7df sparc/amd7930.c --- a/sparc/amd7930.c Mon Nov 26 15:00:40 2007 +0100 +++ b/sparc/amd7930.c Mon Nov 26 16:52:40 2007 +0100 @@ -736,7 +736,6 @@ static struct snd_pcm_ops snd_amd7930_pl static struct snd_pcm_ops snd_amd7930_playback_ops = { .open = snd_amd7930_playback_open, .close = snd_amd7930_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_amd7930_hw_params, .hw_free = snd_amd7930_hw_free, .prepare = snd_amd7930_playback_prepare, @@ -747,7 +746,6 @@ static struct snd_pcm_ops snd_amd7930_ca static struct snd_pcm_ops snd_amd7930_capture_ops = { .open = snd_amd7930_capture_open, .close = snd_amd7930_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_amd7930_hw_params, .hw_free = snd_amd7930_hw_free, .prepare = snd_amd7930_capture_prepare, diff -r 5829c288c7df sparc/cs4231.c --- a/sparc/cs4231.c Mon Nov 26 15:00:40 2007 +0100 +++ b/sparc/cs4231.c Mon Nov 26 16:52:40 2007 +0100 @@ -1220,7 +1220,6 @@ static struct snd_pcm_ops snd_cs4231_pla static struct snd_pcm_ops snd_cs4231_playback_ops = { .open = snd_cs4231_playback_open, .close = snd_cs4231_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cs4231_playback_hw_params, .hw_free = snd_pcm_lib_free_pages, .prepare = snd_cs4231_playback_prepare, @@ -1231,7 +1230,6 @@ static struct snd_pcm_ops snd_cs4231_cap static struct snd_pcm_ops snd_cs4231_capture_ops = { .open = snd_cs4231_capture_open, .close = snd_cs4231_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_cs4231_capture_hw_params, .hw_free = snd_pcm_lib_free_pages, .prepare = snd_cs4231_capture_prepare, diff -r 5829c288c7df sparc/dbri.c --- a/sparc/dbri.c Mon Nov 26 15:00:40 2007 +0100 +++ b/sparc/dbri.c Mon Nov 26 16:52:40 2007 +0100 @@ -2205,7 +2205,6 @@ static struct snd_pcm_ops snd_dbri_ops = static struct snd_pcm_ops snd_dbri_ops = { .open = snd_dbri_open, .close = snd_dbri_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_dbri_hw_params, .hw_free = snd_dbri_hw_free, .prepare = snd_dbri_prepare, diff -r 5829c288c7df spi/at73c213.c --- a/spi/at73c213.c Mon Nov 26 15:00:40 2007 +0100 +++ b/spi/at73c213.c Mon Nov 26 16:52:40 2007 +0100 @@ -304,7 +304,6 @@ static struct snd_pcm_ops at73c213_playb static struct snd_pcm_ops at73c213_playback_ops = { .open = snd_at73c213_pcm_open, .close = snd_at73c213_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_at73c213_pcm_hw_params, .hw_free = snd_at73c213_pcm_hw_free, .prepare = snd_at73c213_pcm_prepare, diff -r 5829c288c7df usb/caiaq/caiaq-audio.c --- a/usb/caiaq/caiaq-audio.c Mon Nov 26 15:00:40 2007 +0100 +++ b/usb/caiaq/caiaq-audio.c Mon Nov 26 16:52:40 2007 +0100 @@ -286,7 +286,6 @@ static struct snd_pcm_ops snd_usb_caiaq_ static struct snd_pcm_ops snd_usb_caiaq_ops = { .open = snd_usb_caiaq_substream_open, .close = snd_usb_caiaq_substream_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_usb_caiaq_pcm_hw_params, .hw_free = snd_usb_caiaq_pcm_hw_free, .prepare = snd_usb_caiaq_pcm_prepare, diff -r 5829c288c7df usb/usbaudio.c --- a/usb/usbaudio.c Mon Nov 26 15:00:40 2007 +0100 +++ b/usb/usbaudio.c Mon Nov 26 16:52:40 2007 +0100 @@ -1964,7 +1964,6 @@ static struct snd_pcm_ops snd_usb_playba static struct snd_pcm_ops snd_usb_playback_ops = { .open = snd_usb_playback_open, .close = snd_usb_playback_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_usb_hw_params, .hw_free = snd_usb_hw_free, .prepare = snd_usb_pcm_prepare, @@ -1976,7 +1975,6 @@ static struct snd_pcm_ops snd_usb_captur static struct snd_pcm_ops snd_usb_capture_ops = { .open = snd_usb_capture_open, .close = snd_usb_capture_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_usb_hw_params, .hw_free = snd_usb_hw_free, .prepare = snd_usb_pcm_prepare, diff -r 5829c288c7df usb/usx2y/usbusx2yaudio.c --- a/usb/usx2y/usbusx2yaudio.c Mon Nov 26 15:00:40 2007 +0100 +++ b/usb/usx2y/usbusx2yaudio.c Mon Nov 26 16:52:40 2007 +0100 @@ -921,7 +921,6 @@ static struct snd_pcm_ops snd_usX2Y_pcm_ { .open = snd_usX2Y_pcm_open, .close = snd_usX2Y_pcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_usX2Y_pcm_hw_params, .hw_free = snd_usX2Y_pcm_hw_free, .prepare = snd_usX2Y_pcm_prepare, diff -r 5829c288c7df usb/usx2y/usx2yhwdeppcm.c --- a/usb/usx2y/usx2yhwdeppcm.c Mon Nov 26 15:00:40 2007 +0100 +++ b/usb/usx2y/usx2yhwdeppcm.c Mon Nov 26 16:52:40 2007 +0100 @@ -596,7 +596,6 @@ static struct snd_pcm_ops snd_usX2Y_usbp { .open = snd_usX2Y_usbpcm_open, .close = snd_usX2Y_usbpcm_close, - .ioctl = snd_pcm_lib_ioctl, .hw_params = snd_usX2Y_pcm_hw_params, .hw_free = snd_usX2Y_usbpcm_hw_free, .prepare = snd_usX2Y_usbpcm_prepare,