2022-07-28 14:57:45

by Srinivasa Rao Mandadapu

[permalink] [raw]
Subject: [PATCH v2] ASoC: qcom: SC7280: Add support for external DMIC bias supply

Update SC7280 machine driver for enabling external dmic bias supply,
which is required for villager evt boards.

Signed-off-by: Srinivasa Rao Mandadapu <[email protected]>
---
Changes since v1:
-- Replace dapm widget SND_SOC_DAPM_MIC with SND_SOC_DAPM_REGULATOR_SUPPLY.
sound/soc/qcom/sc7280.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/sound/soc/qcom/sc7280.c b/sound/soc/qcom/sc7280.c
index da7469a..4a60f34 100644
--- a/sound/soc/qcom/sc7280.c
+++ b/sound/soc/qcom/sc7280.c
@@ -356,6 +356,7 @@ static const struct snd_soc_ops sc7280_ops = {
static const struct snd_soc_dapm_widget sc7280_snd_widgets[] = {
SND_SOC_DAPM_HP("Headphone Jack", NULL),
SND_SOC_DAPM_MIC("Headset Mic", NULL),
+ SND_SOC_DAPM_REGULATOR_SUPPLY("DMICVDD", 0, 0),
};

static int sc7280_snd_platform_probe(struct platform_device *pdev)
--
2.7.4


2022-07-28 15:06:47

by Mark Brown

[permalink] [raw]
Subject: Re: [PATCH v2] ASoC: qcom: SC7280: Add support for external DMIC bias supply

On Thu, Jul 28, 2022 at 07:29:49PM +0530, Srinivasa Rao Mandadapu wrote:
> Update SC7280 machine driver for enabling external dmic bias supply,
> which is required for villager evt boards.

> +++ b/sound/soc/qcom/sc7280.c
> @@ -356,6 +356,7 @@ static const struct snd_soc_ops sc7280_ops = {
> static const struct snd_soc_dapm_widget sc7280_snd_widgets[] = {
> SND_SOC_DAPM_HP("Headphone Jack", NULL),
> SND_SOC_DAPM_MIC("Headset Mic", NULL),
> + SND_SOC_DAPM_REGULATOR_SUPPLY("DMICVDD", 0, 0),
> };
>
> static int sc7280_snd_platform_probe(struct platform_device *pdev)

Don't you want to connect this to something? This won't do anything
as-is. I can't see any references to DMICVDD which might be failing to
resolve in the current sound/soc/qcom.


Attachments:
(No filename) (777.00 B)
signature.asc (499.00 B)
Download all attachments

2022-07-28 16:12:51

by Srinivasa Rao Mandadapu

[permalink] [raw]
Subject: Re: [PATCH v2] ASoC: qcom: SC7280: Add support for external DMIC bias supply


On 7/28/2022 7:52 PM, Mark Brown wrote:
Thanks for your time Mark!!!
> On Thu, Jul 28, 2022 at 07:29:49PM +0530, Srinivasa Rao Mandadapu wrote:
>> Update SC7280 machine driver for enabling external dmic bias supply,
>> which is required for villager evt boards.
>> +++ b/sound/soc/qcom/sc7280.c
>> @@ -356,6 +356,7 @@ static const struct snd_soc_ops sc7280_ops = {
>> static const struct snd_soc_dapm_widget sc7280_snd_widgets[] = {
>> SND_SOC_DAPM_HP("Headphone Jack", NULL),
>> SND_SOC_DAPM_MIC("Headset Mic", NULL),
>> + SND_SOC_DAPM_REGULATOR_SUPPLY("DMICVDD", 0, 0),
>> };
>>
>> static int sc7280_snd_platform_probe(struct platform_device *pdev)
> Don't you want to connect this to something? This won't do anything
> as-is. I can't see any references to DMICVDD which might be failing to
> resolve in the current sound/soc/qcom.

The connection is being done to "VA DMIC"through audio routing in board
specific dts file.

Will post the changes once the main dts patches are landed.

Ex:-

&sound {
    DMICVDD-supply = <&pp1800_l2c>;

    audio-routing =
            "IN1_HPHL", "HPHL_OUT",
            "IN2_HPHR", "HPHR_OUT",
            "AMIC1", "MIC BIAS1",
            "AMIC2", "MIC BIAS2",
            "VA DMIC0", "DMICVDD",
            "VA DMIC1", "DMICVDD",
            "VA DMIC2", "DMICVDD",
            "VA DMIC3", "DMICVDD",
            .....

            .....

};


2022-07-29 08:43:42

by Srinivas Kandagatla

[permalink] [raw]
Subject: Re: [PATCH v2] ASoC: qcom: SC7280: Add support for external DMIC bias supply



On 28/07/2022 17:09, Srinivasa Rao Mandadapu wrote:
>
> On 7/28/2022 7:52 PM, Mark Brown wrote:
> Thanks for your time Mark!!!
>> On Thu, Jul 28, 2022 at 07:29:49PM +0530, Srinivasa Rao Mandadapu wrote:
>>> Update SC7280 machine driver for enabling external dmic bias supply,
>>> which is required for villager evt boards.
>>> +++ b/sound/soc/qcom/sc7280.c
>>> @@ -356,6 +356,7 @@ static const struct snd_soc_ops sc7280_ops = {
>>>   static const struct snd_soc_dapm_widget sc7280_snd_widgets[] = {
>>>       SND_SOC_DAPM_HP("Headphone Jack", NULL),
>>>       SND_SOC_DAPM_MIC("Headset Mic", NULL),
>>> +    SND_SOC_DAPM_REGULATOR_SUPPLY("DMICVDD", 0, 0),
>>>   };
>>>   static int sc7280_snd_platform_probe(struct platform_device *pdev)
>> Don't you want to connect this to something?  This won't do anything
>> as-is.  I can't see any references to DMICVDD which might be failing to
>> resolve in the current sound/soc/qcom.
>
> The connection is being done to "VA DMIC"through audio routing in board
> specific dts file.
>
> Will post the changes once the main dts patches are landed.
>
> Ex:-
>
> &sound {
>     DMICVDD-supply = <&pp1800_l2c>;
>
>     audio-routing =
>             "IN1_HPHL", "HPHL_OUT",
>             "IN2_HPHR", "HPHR_OUT",
>             "AMIC1", "MIC BIAS1",
>             "AMIC2", "MIC BIAS2",
>             "VA DMIC0", "DMICVDD",
>             "VA DMIC1", "DMICVDD",
>             "VA DMIC2", "DMICVDD",
>             "VA DMIC3", "DMICVDD",

You should just use "vdd-micb" instead of DMICVDD.
There is already a SUPPLY DAPM in lpass-va-macro codec.

--srini
>             .....
>
>             .....
>
> };
>
>

2022-07-29 12:05:29

by Srinivasa Rao Mandadapu

[permalink] [raw]
Subject: Re: [PATCH v2] ASoC: qcom: SC7280: Add support for external DMIC bias supply


On 7/29/2022 2:09 PM, Srinivas Kandagatla wrote:
> Thanks for your time and valuable input Srini!!!
>
> On 28/07/2022 17:09, Srinivasa Rao Mandadapu wrote:
>>
>> On 7/28/2022 7:52 PM, Mark Brown wrote:
>> Thanks for your time Mark!!!
>>> On Thu, Jul 28, 2022 at 07:29:49PM +0530, Srinivasa Rao Mandadapu
>>> wrote:
>>>> Update SC7280 machine driver for enabling external dmic bias supply,
>>>> which is required for villager evt boards.
>>>> +++ b/sound/soc/qcom/sc7280.c
>>>> @@ -356,6 +356,7 @@ static const struct snd_soc_ops sc7280_ops = {
>>>>   static const struct snd_soc_dapm_widget sc7280_snd_widgets[] = {
>>>>       SND_SOC_DAPM_HP("Headphone Jack", NULL),
>>>>       SND_SOC_DAPM_MIC("Headset Mic", NULL),
>>>> +    SND_SOC_DAPM_REGULATOR_SUPPLY("DMICVDD", 0, 0),
>>>>   };
>>>>   static int sc7280_snd_platform_probe(struct platform_device *pdev)
>>> Don't you want to connect this to something?  This won't do anything
>>> as-is.  I can't see any references to DMICVDD which might be failing to
>>> resolve in the current sound/soc/qcom.
>>
>> The connection is being done to "VA DMIC"through audio routing in
>> board specific dts file.
>>
>> Will post the changes once the main dts patches are landed.
>>
>> Ex:-
>>
>> &sound {
>>      DMICVDD-supply = <&pp1800_l2c>;
>>
>>      audio-routing =
>>              "IN1_HPHL", "HPHL_OUT",
>>              "IN2_HPHR", "HPHR_OUT",
>>              "AMIC1", "MIC BIAS1",
>>              "AMIC2", "MIC BIAS2",
>>              "VA DMIC0", "DMICVDD",
>>              "VA DMIC1", "DMICVDD",
>>              "VA DMIC2", "DMICVDD",
>>              "VA DMIC3", "DMICVDD",
>
> You should just use "vdd-micb" instead of DMICVDD.
> There is already a SUPPLY DAPM in lpass-va-macro codec.
>
> --srini
Yes it's available in va macro. Will test with vdd-micb DAPM. if that
works,  I think we can drop this patch.
>>              .....
>>
>>              .....
>>
>> };
>>
>>