From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1761182AbbCDKMk (ORCPT ); Wed, 4 Mar 2015 05:12:40 -0500 Received: from ltw.loris.tv ([188.40.101.23]:57339 "EHLO ltw.loris.tv" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758887AbbCDKMh (ORCPT ); Wed, 4 Mar 2015 05:12:37 -0500 X-Greylist: delayed 533 seconds by postgrey-1.27 at vger.kernel.org; Wed, 04 Mar 2015 05:12:36 EST X-Spam-Flag: NO X-Spam-Score: -2.9 Message-ID: <54F6D874.7020907@drcomp.erfurt.thur.de> Date: Wed, 04 Mar 2015 11:03:32 +0100 From: Adrian Knoth User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 MIME-Version: 1.0 To: Greg Kroah-Hartman , linux-kernel@vger.kernel.org CC: stable@vger.kernel.org, Takashi Iwai Subject: Re: [PATCH 3.10 16/53] ALSA: hdspm - Constrain periods to 2 on older cards References: <20150304054609.869052846@linuxfoundation.org> <20150304054612.657368945@linuxfoundation.org> In-Reply-To: <20150304054612.657368945@linuxfoundation.org> Content-Type: text/plain; charset=iso-8859-15; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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; } Cheers