From patchwork Fri Jan 11 04:49:47 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: laxmi.devi@in.bosch.com X-Patchwork-Id: 10762697 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 1FA4C6C2 for ; Mon, 14 Jan 2019 14:08:47 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 098FB285CE for ; Mon, 14 Jan 2019 14:08:47 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id F1AC228CD0; Mon, 14 Jan 2019 14:08:46 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 510A2285CE for ; Mon, 14 Jan 2019 14:08:46 +0000 (UTC) Received: from alsa0.perex.cz (localhost [127.0.0.1]) by alsa0.perex.cz (Postfix) with ESMTP id ADAE6266AA9; Mon, 14 Jan 2019 15:08:40 +0100 (CET) X-Original-To: alsa-devel@alsa-project.org Delivered-To: alsa-devel@alsa-project.org Received: by alsa0.perex.cz (Postfix, from userid 1000) id AF5BB26780A; Fri, 11 Jan 2019 05:52:00 +0100 (CET) Received: from de-out1.bosch-org.com (de-out1.bosch-org.com [139.15.230.186]) by alsa0.perex.cz (Postfix) with ESMTP id 29ECD2676EB; Fri, 11 Jan 2019 05:51:54 +0100 (CET) Received: from fe0vm1650.rbesz01.com (unknown [139.15.230.188]) by fe0vms0187.rbdmz01.com (Postfix) with ESMTPS id 43bVp20KtDz1XLDQw; Fri, 11 Jan 2019 05:51:54 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=in.bosch.com; s=2015-01-21; t=1547182314; bh=CX+w/nR4SJzzOPvDPU0/ML5HvbqrquVrfOefvgXdqvw=; l=10; h=From:From:Reply-To:Sender; b=lXQZi7sepQeeguxKwP0OHm1VwOWTZCiQ+01xFOzGSBNYuyVDfAJJiQW3bhI2Shxew Tp+/c2QWvOmrK17+SiRROokqHQh7umvzNRsilROtZQ9raMxevyXIIUv5qEeoahs3vb T06akgkxI/9sXaDbsXSlBKV2VFOJLKQZZ7VJFfhM= Received: from si0vm2082.rbesz01.com (unknown [10.58.172.176]) by fe0vm1650.rbesz01.com (Postfix) with ESMTPS id 43bVp16zhSz1CK; Fri, 11 Jan 2019 05:51:53 +0100 (CET) X-AuditID: 0a3aad16-f37ff7000000381f-f5-5c3820e9b4ca Received: from fe0vm1651.rbesz01.com ( [10.58.173.29]) (using TLS with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by si0vm2082.rbesz01.com (SMG Outbound) with SMTP id 29.70.14367.9E0283C5; Fri, 11 Jan 2019 05:51:53 +0100 (CET) Received: from FE-HUB2000.de.bosch.com (fe-hub2000.de.bosch.com [10.4.103.109]) by fe0vm1651.rbesz01.com (Postfix) with ESMTPS id 43bVp15YF9z1p6; Fri, 11 Jan 2019 05:51:53 +0100 (CET) Received: from localhost.localdomain (10.47.103.107) by FE-HUB2000.de.bosch.com (10.4.103.109) with Microsoft SMTP Server id 15.1.1591.10; Fri, 11 Jan 2019 05:51:52 +0100 From: To: Date: Fri, 11 Jan 2019 10:19:47 +0530 Message-ID: <1547182188-14480-1-git-send-email-laxmi.devi@in.bosch.com> X-Mailer: git-send-email 2.7.4 MIME-Version: 1.0 X-Originating-IP: [10.47.103.107] X-Brightmail-Tracker: H4sIAAAAAAAAA22Sb0wTZxzHee765zw4ci3/flYROKeJGLUwSE8Q2ZtNZ2I0uvhCm+ghR9vQ UnJXqvDGxv+iRNFsw7K5ZQH8Q0AgFSFE0UrIKIYBASaJGdtisk5dtq4gjWi2Ow9sX/ju93y/ v8/zzfPNQ+D6i1oDYatw8UIFZ2c0pIosaEvf8GcmazZ2TOSzE2N+jG277lGzP3x1FfsE394R Pq7Z7j3Tqt2N7Se3lPJ2m5sXNm09RFrrfwprKluTj4bapzAP6qZr0TIC6DzoDfZoaxFJ6Omv MVjoGcWUQx8C39h/SDm0I/jR97daRjR0Bpy/36SqRQSRTK+Ei+OULON0KTxYaNTIcxJthsbR mXezil4DMwsRrTxT9Db46/YTjZK8CqZHzuGKroOhq89Uyj0AD4NBXNnJgscj/2CXUKI3Zs0b s/Y9wm6hFNFmdDtyjWzuRqGEF2uMORsPOx1dSGkrtQc1B8r8iCYQk0ANq1mzXs25xWqHH+UT GJNC7YqXpMQSZ2m1lROtB4UqOy8yBgrFxcXpk97LYlWJwyaKNmeFHwGBM8lUXYrEUaVcdQ0v OBXMj1YQKiaNmiuyHdDTFs7Fl/N8JS8suYUEwQC1L0MCdQJv4Y+W2eyuJZtJVzJTY53YWIxY 5kcfEwlSdkGmnC1Wcg7RZlnElyu4fkmNogFkMqRRA3IsLbvWqor3qYaV1Ot5k1mfEmNEyedo Gkm9JVE7ZDhB+ojRPKBONf12QK9bFKNQbrPE0B0knPGdwuHN7F0cOltOqOHJwDdqmG0bJmH0 WlM8BE/eSoSI5wUN3s55Goau1etg7myXDvqHn+ngxsPuVBjyXV4ODXN9q+B26EUmdPu+ZCTi OgOPJ//9CJ6G69dKU1c2hOsGs2EiMCxN98azoXMgYIT53sE8+CXyMg8uDPXnQ/jmHRbGm28W wux4pAgiL2uLn0tlYlKZe1+Z5DJdnOsDZS6q0dcZPCi+L9ygmtppcV5hF1SPno6uc+/r7X7V +Pt8py91w5ZgxvSuspyMkaK0s6uD1OZjj8htr/H+n79jLJ+JBdbilrcrvhXq0//wHvGWHyfr zn8eOH25vdjgPnjPHCqcCc307THt2LTeg0+WXxkTG/Z+OtjQqs07eWGCXV8TMnXs+eLXLDuj Eq1cTjYuiNz/9rAUJCIEAAA= X-Mailman-Approved-At: Mon, 14 Jan 2019 15:08:36 +0100 Cc: twischer@de.adit-jv.com, alsa-devel@alsa-project.org, Laxmi Devi Subject: [alsa-devel] [PATCH - ALSA JACK plugin 1/2] jack: Replacing jack->channels with jack->num_ports X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org X-Virus-Scanned: ClamAV using ClamSMTP From: Laxmi Devi As jack->num_ports and jack->channels hold the same values, jack->channels is redundant and hence removed. Sanity check is added in prepare, to check if io->Channels is same as jack->num_ports. Signed-off-by: Laxmi Devi diff --git a/jack/pcm_jack.c b/jack/pcm_jack.c index af2136e..d723b17 100644 --- a/jack/pcm_jack.c +++ b/jack/pcm_jack.c @@ -48,7 +48,6 @@ typedef struct { unsigned int sample_bits; snd_pcm_uframes_t min_avail; - unsigned int channels; snd_pcm_channel_area_t *areas; jack_port_t **ports; @@ -263,6 +262,12 @@ static int snd_pcm_jack_prepare(snd_pcm_ioplug_t *io) snd_pcm_sw_params_t *swparams; int err; + if (io->channels != jack->num_ports) { + SNDERR("Channel count %d not equal to no. of ports %d in JACK", + io->channels, jack->num_ports); + return -EINVAL; + } + jack->hw_ptr = 0; jack->xrun_detected = false; @@ -381,7 +386,7 @@ static int jack_set_hw_constraint(snd_pcm_jack_t *jack) unsigned int psize_list[MAX_PERIODS_MULTIPLE]; unsigned int nframes = jack_get_buffer_size(jack->client); unsigned int jack_buffer_bytes = (snd_pcm_format_size(format, nframes) * - jack->channels); + jack->num_ports); unsigned int i; int err; @@ -398,7 +403,7 @@ static int jack_set_hw_constraint(snd_pcm_jack_t *jack) (err = snd_pcm_ioplug_set_param_list(&jack->io, SND_PCM_IOPLUG_HW_FORMAT, 1, &format)) < 0 || (err = snd_pcm_ioplug_set_param_minmax(&jack->io, SND_PCM_IOPLUG_HW_CHANNELS, - jack->channels, jack->channels)) < 0 || + jack->num_ports, jack->num_ports)) < 0 || (err = snd_pcm_ioplug_set_param_minmax(&jack->io, SND_PCM_IOPLUG_HW_RATE, rate, rate)) < 0 || (err = snd_pcm_ioplug_set_param_list(&jack->io, SND_PCM_IOPLUG_HW_PERIOD_BYTES, @@ -485,8 +490,7 @@ static int snd_pcm_jack_open(snd_pcm_t **pcmp, const char *name, return err; } - jack->channels = jack->num_ports; - if (jack->channels == 0) { + if (jack->num_ports == 0) { SNDERR("define the %s_ports section", stream == SND_PCM_STREAM_PLAYBACK ? "playback" : "capture"); snd_pcm_jack_free(jack); @@ -514,7 +518,7 @@ static int snd_pcm_jack_open(snd_pcm_t **pcmp, const char *name, return -ENOENT; } - jack->areas = calloc(jack->channels, sizeof(snd_pcm_channel_area_t)); + jack->areas = calloc(jack->num_ports, sizeof(snd_pcm_channel_area_t)); if (! jack->areas) { snd_pcm_jack_free(jack); return -ENOMEM;