Linux ARM-MSM sub-architecture
 help / color / mirror / Atom feed
From: "Srinivasa Rao Mandadapu (Temp)" <quic_srivasam@quicinc.com>
To: Stephen Boyd <swboyd@chromium.org>, <agross@kernel.org>,
	<alsa-devel@alsa-project.org>, <bgoswami@codeaurora.org>,
	<bjorn.andersson@linaro.org>, <broonie@kernel.org>,
	<devicetree@vger.kernel.org>, <judyhsiao@chromium.org>,
	<lgirdwood@gmail.com>, <linux-arm-msm@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>, <perex@perex.cz>,
	<quic_plai@quicinc.com>, <robh+dt@kernel.org>,
	<rohitkr@codeaurora.org>, <srinivas.kandagatla@linaro.org>,
	<tiwai@suse.com>
Cc: Venkata Prasad Potturu <quic_potturu@quicinc.com>
Subject: Re: [RESEND v13 04/10] ASoC: qcom: Add helper function to get dma control and lpaif handle
Date: Sun, 20 Feb 2022 00:15:12 +0530	[thread overview]
Message-ID: <356abae0-c19b-ccbb-fa5f-4e91619243bf@quicinc.com> (raw)
In-Reply-To: <CAE-0n538Lhp7U=pEB_7R5EARG6LveeO=jvF+kE7HCCEXUEm-kQ@mail.gmail.com>


On 2/18/2022 1:11 AM, Stephen Boyd wrote:
Thanks for Your time Stephen!!!
> Quoting Srinivasa Rao Mandadapu (2022-02-15 21:11:29)
>> On 2/15/2022 6:40 AM, Stephen Boyd wrote:
>> Thanks for your time Stephen!!!
>>> Quoting Srinivasa Rao Mandadapu (2022-02-14 06:58:22)
>>>> Add support function to get dma control and lpaif handle to avoid
>>>> repeated code in platform driver
>>>>
>>>> Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
>>>> Co-developed-by: Venkata Prasad Potturu <quic_potturu@quicinc.com>
>>>> Signed-off-by: Venkata Prasad Potturu <quic_potturu@quicinc.com>
>>>> Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
>>>> ---
>>>>    sound/soc/qcom/lpass-platform.c | 113 +++++++++++++++++++++++-----------------
>>>>    1 file changed, 66 insertions(+), 47 deletions(-)
>>>>
>>>> diff --git a/sound/soc/qcom/lpass-platform.c b/sound/soc/qcom/lpass-platform.c
>>>> index a44162c..5d77240 100644
>>>> --- a/sound/soc/qcom/lpass-platform.c
>>>> +++ b/sound/soc/qcom/lpass-platform.c
>>>> @@ -177,6 +177,49 @@ static int lpass_platform_pcmops_close(struct snd_soc_component *component,
>>>>           return 0;
>>>>    }
>>>>
>>>> +static void __lpass_get_lpaif_handle(struct snd_pcm_substream *substream,
>>> const?
>> Okay. will add const to substream pointer.
>>>> +                                    struct snd_soc_component *component,
>>> const?
>> Here const is giving compilation errors in below code.
> Ok
>
>>>> +                       l_id = pcm_data->dma_ch;
>>>> +                       l_dmactl = drvdata->rd_dmactl;
>>>> +               } else {
>>>> +                       l_dmactl = drvdata->wr_dmactl;
>>>> +                       l_id = pcm_data->dma_ch - v->wrdma_channel_start;
>>>> +               }
>>>> +               l_map = drvdata->lpaif_map;
>>>> +               break;
>>>> +       case LPASS_DP_RX:
>>>> +               l_id = pcm_data->dma_ch;
>>>> +               l_dmactl = drvdata->hdmi_rd_dmactl;
>>>> +               l_map = drvdata->hdmiif_map;
>>>> +               break;
>>>> +       default:
>>>> +               break;
>>>> +       }
>>>> +       if (dmactl)
>>>> +               *dmactl = l_dmactl;
>>>> +       if (id)
>>>> +               *id = l_id;
>>>> +       if (map)
>>>> +               *map = l_map;
>>> Why not 'return 0' here and return -EINVAL in the default case above? Then
>>> we can skip the checks for !map or !dmactl below and simply bail out if
>>> it failed with an error value.
>> Here the check is for input params. some users call for only damctl or
>> only map.
> Yes the check is to make sure there's a pointer to store the value into.
> I get that. The users are all internal to this driver though because
> the function is static. If the function returned an error because it
> couldn't find something then we wouldn't have to test the resulting
> pointers for success, instead we could check for a return value.
> Similarly, it may be clearer to have a single get for each item and then
> return a pointer from the function vs. passing it in to extract
> something. It may duplicate some code but otherwise the code would be
> clearer because we're getting one thing and can pass an error value
> through the pointer with PTR_ERR().

Okay. Agreed. But in initial review comments, asked to make common 
function for code readability,

and to avoid duplicate code.

Anyway will change accordingly and re post it.


  reply	other threads:[~2022-02-19 18:45 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-14 14:58 [RESEND v13 00/10] Add support for audio on SC7280 based targets Srinivasa Rao Mandadapu
2022-02-14 14:58 ` [RESEND v13 01/10] ASoC: qcom: SC7280: Update config for building codec dma drivers Srinivasa Rao Mandadapu
2022-02-14 14:58 ` [RESEND v13 02/10] ASoC: qcom: Move lpass_pcm_data structure to lpass header Srinivasa Rao Mandadapu
2022-02-14 14:58 ` [RESEND v13 03/10] ASoC: qcom: lpass: Add dma fields for codec dma lpass interface Srinivasa Rao Mandadapu
2022-02-15  1:05   ` Stephen Boyd
2022-02-16  4:58     ` Srinivasa Rao Mandadapu
2022-02-14 14:58 ` [RESEND v13 04/10] ASoC: qcom: Add helper function to get dma control and lpaif handle Srinivasa Rao Mandadapu
2022-02-15  1:10   ` Stephen Boyd
2022-02-16  5:11     ` Srinivasa Rao Mandadapu
2022-02-17 19:41       ` Stephen Boyd
2022-02-19 18:45         ` Srinivasa Rao Mandadapu (Temp) [this message]
2022-02-14 14:58 ` [RESEND v13 05/10] ASoC: qcom: Add register definition for codec rddma and wrdma Srinivasa Rao Mandadapu
2022-02-15  1:12   ` Stephen Boyd
2022-02-16  5:14     ` Srinivasa Rao Mandadapu
2022-02-14 14:58 ` [RESEND v13 06/10] ASoC: qcom: Add regmap config support for codec dma driver Srinivasa Rao Mandadapu
2022-02-14 14:58 ` [RESEND v13 07/10] ASoC: qcom: Add " Srinivasa Rao Mandadapu
2022-02-15  1:27   ` Stephen Boyd
2022-02-16  6:53     ` Srinivasa Rao Mandadapu
2022-02-17 19:50       ` Stephen Boyd
2022-02-16  6:42   ` kernel test robot
2022-02-17 13:14   ` Dan Carpenter
2022-02-14 14:58 ` [RESEND v13 08/10] ASoC: qcom: Add lpass CPU driver for codec dma control Srinivasa Rao Mandadapu
2022-02-15  1:33   ` Stephen Boyd
2022-02-16  9:42     ` Srinivasa Rao Mandadapu
2022-02-17 19:53       ` Stephen Boyd
2022-02-19 18:56         ` Srinivasa Rao Mandadapu (Temp)
2022-02-14 14:58 ` [RESEND v13 09/10] ASoC: dt-bindings: Add SC7280 lpass cpu bindings Srinivasa Rao Mandadapu
2022-02-14 14:58 ` [RESEND v13 10/10] ASoC: qcom: lpass-sc7280: Add platform driver for lpass audio Srinivasa Rao Mandadapu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=356abae0-c19b-ccbb-fa5f-4e91619243bf@quicinc.com \
    --to=quic_srivasam@quicinc.com \
    --cc=agross@kernel.org \
    --cc=alsa-devel@alsa-project.org \
    --cc=bgoswami@codeaurora.org \
    --cc=bjorn.andersson@linaro.org \
    --cc=broonie@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=judyhsiao@chromium.org \
    --cc=lgirdwood@gmail.com \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=perex@perex.cz \
    --cc=quic_plai@quicinc.com \
    --cc=quic_potturu@quicinc.com \
    --cc=robh+dt@kernel.org \
    --cc=rohitkr@codeaurora.org \
    --cc=srinivas.kandagatla@linaro.org \
    --cc=swboyd@chromium.org \
    --cc=tiwai@suse.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox