diff --git a/[refs] b/[refs] index 342ada7f9a3c..fb2a27f9ca98 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: adf1b3d25e50dbab48fdd21006bea2dd5a4cb3a8 +refs/heads/master: 59d48582508c6e3ed6f60bdd7d13e3e2893416b4 diff --git a/trunk/sound/core/Kconfig b/trunk/sound/core/Kconfig index 83cbe20c9c9e..f79755f77a81 100644 --- a/trunk/sound/core/Kconfig +++ b/trunk/sound/core/Kconfig @@ -122,6 +122,14 @@ config SND_DYNAMIC_MINORS If you are unsure about this, say N here. +config SND_SUPPORT_OLD_API + bool "Support old ALSA API" + depends on SND + default y + help + Say Y here to support the obsolete ALSA PCM API (ver.0.9.0 rc3 + or older). + config SND_VERBOSE_PRINTK bool "Verbose printk" depends on SND diff --git a/trunk/sound/core/pcm_native.c b/trunk/sound/core/pcm_native.c index 9010306bcead..f3d5de7b55ac 100644 --- a/trunk/sound/core/pcm_native.c +++ b/trunk/sound/core/pcm_native.c @@ -55,6 +55,7 @@ struct snd_pcm_hw_params_old { unsigned char reserved[64]; }; +#ifdef CONFIG_SND_SUPPORT_OLD_API #define SNDRV_PCM_IOCTL_HW_REFINE_OLD _IOWR('A', 0x10, struct snd_pcm_hw_params_old) #define SNDRV_PCM_IOCTL_HW_PARAMS_OLD _IOWR('A', 0x11, struct snd_pcm_hw_params_old) @@ -62,6 +63,7 @@ static int snd_pcm_hw_refine_old_user(struct snd_pcm_substream *substream, struct snd_pcm_hw_params_old __user * _oparams); static int snd_pcm_hw_params_old_user(struct snd_pcm_substream *substream, struct snd_pcm_hw_params_old __user * _oparams); +#endif static int snd_pcm_open(struct file *file, struct snd_pcm *pcm, int stream); /* @@ -2527,10 +2529,12 @@ static int snd_pcm_common_ioctl1(struct snd_pcm_substream *substream, return snd_pcm_delay(substream, arg); case SNDRV_PCM_IOCTL_SYNC_PTR: return snd_pcm_sync_ptr(substream, arg); +#ifdef CONFIG_SND_SUPPORT_OLD_API case SNDRV_PCM_IOCTL_HW_REFINE_OLD: return snd_pcm_hw_refine_old_user(substream, arg); case SNDRV_PCM_IOCTL_HW_PARAMS_OLD: return snd_pcm_hw_params_old_user(substream, arg); +#endif case SNDRV_PCM_IOCTL_DRAIN: return snd_pcm_drain(substream); case SNDRV_PCM_IOCTL_DROP: @@ -3270,6 +3274,7 @@ static int snd_pcm_fasync(int fd, struct file * file, int on) * To be removed helpers to keep binary compatibility */ +#ifdef CONFIG_SND_SUPPORT_OLD_API #define __OLD_TO_NEW_MASK(x) ((x&7)|((x&0x07fffff8)<<5)) #define __NEW_TO_OLD_MASK(x) ((x&7)|((x&0xffffff00)>>5)) @@ -3379,6 +3384,7 @@ static int snd_pcm_hw_params_old_user(struct snd_pcm_substream *substream, kfree(oparams); return err; } +#endif /* CONFIG_SND_SUPPORT_OLD_API */ /* * Register section