From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758539AbbCDSTr (ORCPT ); Wed, 4 Mar 2015 13:19:47 -0500 Received: from mail.linuxfoundation.org ([140.211.169.12]:57008 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754761AbbCDSTp (ORCPT ); Wed, 4 Mar 2015 13:19:45 -0500 Date: Wed, 4 Mar 2015 10:19:44 -0800 From: Greg Kroah-Hartman To: Adrian Knoth Cc: linux-kernel@vger.kernel.org, stable@vger.kernel.org, Takashi Iwai Subject: Re: [PATCH 3.10 16/53] ALSA: hdspm - Constrain periods to 2 on older cards Message-ID: <20150304181944.GF13218@kroah.com> References: <20150304054609.869052846@linuxfoundation.org> <20150304054612.657368945@linuxfoundation.org> <54F6D874.7020907@drcomp.erfurt.thur.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <54F6D874.7020907@drcomp.erfurt.thur.de> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Mar 04, 2015 at 11:03:32AM +0100, Adrian Knoth wrote: > On 03/04/15 07:06, Greg Kroah-Hartman wrote: > > Hi! > > >3.10-stable review patch. If anyone has any objections, please let me know. > > Right here! ;) Since this is my first interaction with the stable > branch, chances are I'm doing it wrong. Just tell me if you need the > patch in a different format (read: clone the stable repo) > > For some reasons, the 3.10.x version of the patch isn't correct: > > > >------------------ > > > >From: Adrian Knoth > > > >commit f0153c3d948c1764f6c920a0675d86fc1d75813e upstream. > > > >RME RayDAT and AIO use a fixed buffer size of 16384 samples. With period > >sizes of 32-4096, this translates to 4-512 periods. > > > >The older RME cards have a variable buffer size but require exactly two > >periods. > > > >This patch enforces nperiods=2 on those cards. > > > >Signed-off-by: Adrian Knoth > >Signed-off-by: Takashi Iwai > >Signed-off-by: Greg Kroah-Hartman > > > >--- > > sound/pci/rme9652/hdspm.c | 6 ++++++ > > 1 file changed, 6 insertions(+) > > > >--- a/sound/pci/rme9652/hdspm.c > >+++ b/sound/pci/rme9652/hdspm.c > >@@ -5863,6 +5863,12 @@ static int snd_hdspm_capture_open(struct > > snd_pcm_hw_constraint_minmax(runtime, > > SNDRV_PCM_HW_PARAM_PERIOD_SIZE, > > 64, 8192); > >+ snd_pcm_hw_constraint_minmax(runtime, > >+ SNDRV_PCM_HW_PARAM_PERIODS, > >+ 2, 2); > >+ snd_pcm_hw_constraint_minmax(runtime, > >+ SNDRV_PCM_HW_PARAM_PERIODS, > >+ 2, 2); > > break; > > } > > Obviously, it doesn't make sense to do the same thing twice. > > Here's how it should look: one of the constraints goes into > snd_hdspm_capture_open(), the other into snd_hdspm_capture_open(). > > > --- 3.10.y/hdspm.c 2015-03-04 10:54:05.120849082 +0100 > +++ 3.10.y-new/hdspm.c 2015-03-04 10:56:10.146020714 +0100 > @@ -5789,6 +5789,9 @@ static int snd_hdspm_playback_open(struc > snd_pcm_hw_constraint_minmax(runtime, > SNDRV_PCM_HW_PARAM_PERIOD_SIZE, > 64, 8192); > + snd_pcm_hw_constraint_minmax(runtime, > + SNDRV_PCM_HW_PARAM_PERIODS, > + 2, 2); > break; > } > > @@ -5863,6 +5866,9 @@ static int snd_hdspm_capture_open(struct > snd_pcm_hw_constraint_minmax(runtime, > SNDRV_PCM_HW_PARAM_PERIOD_SIZE, > 64, 8192); > + snd_pcm_hw_constraint_minmax(runtime, > + SNDRV_PCM_HW_PARAM_PERIODS, > + 2, 2); > break; > } Very odd, and very good catch, thanks for this. I've fixed it up now and pushed out an updated queue. greg k-h