2023-10-27 14:44:09

by Nikita Travkin

[permalink] [raw]
Subject: [PATCH 2/3] arm64: dts: qcom: acer-aspire1: Correct audio codec definition

When initially added, a mistake was made in the definition of the codec.

Despite the fact that the DMIC line is connected on the side of the
codec chip, and relevant passive components, including 0-ohm resistors
connecting the dmics, are present, the dmic line is still cut in
another place on the board, which was overlooked.

Correct this by replacing the dmic configuration with a comment
describing this hardware detail.

While at it, also add missing regulators definitions. This is not a
functional change as all the relevant regulators were already added via
the other rail supplies.

Fixes: 4a9f8f8f2ada ("arm64: dts: qcom: Add Acer Aspire 1")
Signed-off-by: Nikita Travkin <[email protected]>
---
arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts | 17 +++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts
index cfde8cd47107..00b442696618 100644
--- a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts
+++ b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts
@@ -209,9 +209,22 @@ alc5682: codec@1a {
AVDD-supply = <&vreg_l15a_1p8>;
MICVDD-supply = <&reg_codec_3p3>;
VBAT-supply = <&reg_codec_3p3>;
+ DBVDD-supply = <&vreg_l15a_1p8>;
+ LDO1-IN-supply = <&vreg_l15a_1p8>;
+
+ /*
+ * NOTE: The board has a path from this codec to the
+ * DMIC microphones in the lid, however some of the option
+ * resistors are absent and the microphones are connected
+ * to the SoC instead.
+ *
+ * If the resistors were to be changed by the user to
+ * connect the codec, the following could be used:
+ *
+ * realtek,dmic1-data-pin = <1>;
+ * realtek,dmic1-clk-pin = <1>;
+ */

- realtek,dmic1-data-pin = <1>;
- realtek,dmic1-clk-pin = <1>;
realtek,jd-src = <1>;
};
};

--
2.41.0


2023-10-30 21:48:28

by Konrad Dybcio

[permalink] [raw]
Subject: Re: [PATCH 2/3] arm64: dts: qcom: acer-aspire1: Correct audio codec definition

On 27.10.2023 16:42, Nikita Travkin wrote:
> When initially added, a mistake was made in the definition of the codec.
>
> Despite the fact that the DMIC line is connected on the side of the
> codec chip, and relevant passive components, including 0-ohm resistors
> connecting the dmics, are present, the dmic line is still cut in
> another place on the board, which was overlooked.
>
> Correct this by replacing the dmic configuration with a comment
> describing this hardware detail.
>
> While at it, also add missing regulators definitions. This is not a
> functional change as all the relevant regulators were already added via
> the other rail supplies.
>
> Fixes: 4a9f8f8f2ada ("arm64: dts: qcom: Add Acer Aspire 1")
> Signed-off-by: Nikita Travkin <[email protected]>
> ---
> arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts | 17 +++++++++++++++--
> 1 file changed, 15 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts
> index cfde8cd47107..00b442696618 100644
> --- a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts
> +++ b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts
> @@ -209,9 +209,22 @@ alc5682: codec@1a {
> AVDD-supply = <&vreg_l15a_1p8>;
> MICVDD-supply = <&reg_codec_3p3>;
> VBAT-supply = <&reg_codec_3p3>;
> + DBVDD-supply = <&vreg_l15a_1p8>;
> + LDO1-IN-supply = <&vreg_l15a_1p8>;
> +
> + /*
> + * NOTE: The board has a path from this codec to the
> + * DMIC microphones in the lid, however some of the option
> + * resistors are absent and the microphones are connected
> + * to the SoC instead.
Would that not also require more DT changes and maybe UCM?

Konrad

2023-10-31 07:22:27

by Nikita Travkin

[permalink] [raw]
Subject: Re: [PATCH 2/3] arm64: dts: qcom: acer-aspire1: Correct audio codec definition

Konrad Dybcio писал(а) 31.10.2023 02:48:
> On 27.10.2023 16:42, Nikita Travkin wrote:
>> When initially added, a mistake was made in the definition of the codec.
>>
>> Despite the fact that the DMIC line is connected on the side of the
>> codec chip, and relevant passive components, including 0-ohm resistors
>> connecting the dmics, are present, the dmic line is still cut in
>> another place on the board, which was overlooked.
>>
>> Correct this by replacing the dmic configuration with a comment
>> describing this hardware detail.
>>
>> While at it, also add missing regulators definitions. This is not a
>> functional change as all the relevant regulators were already added via
>> the other rail supplies.
>>
>> Fixes: 4a9f8f8f2ada ("arm64: dts: qcom: Add Acer Aspire 1")
>> Signed-off-by: Nikita Travkin <[email protected]>
>> ---
>> arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts | 17 +++++++++++++++--
>> 1 file changed, 15 insertions(+), 2 deletions(-)
>>
>> diff --git a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts
>> index cfde8cd47107..00b442696618 100644
>> --- a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts
>> +++ b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts
>> @@ -209,9 +209,22 @@ alc5682: codec@1a {
>> AVDD-supply = <&vreg_l15a_1p8>;
>> MICVDD-supply = <&reg_codec_3p3>;
>> VBAT-supply = <&reg_codec_3p3>;
>> + DBVDD-supply = <&vreg_l15a_1p8>;
>> + LDO1-IN-supply = <&vreg_l15a_1p8>;
>> +
>> + /*
>> + * NOTE: The board has a path from this codec to the
>> + * DMIC microphones in the lid, however some of the option
>> + * resistors are absent and the microphones are connected
>> + * to the SoC instead.
> Would that not also require more DT changes and maybe UCM?

I don't think I had any other descriptions to support the dmic in
the initial set (first audio support for this board is 3/3 here)
and there is no upstream UCM yet - I will probably hold it off until
I get vamacro and dmic on it working.

Nikita

>
> Konrad

2023-10-31 10:07:08

by Konrad Dybcio

[permalink] [raw]
Subject: Re: [PATCH 2/3] arm64: dts: qcom: acer-aspire1: Correct audio codec definition

On 31.10.2023 08:20, Nikita Travkin wrote:
> Konrad Dybcio писал(а) 31.10.2023 02:48:
>> On 27.10.2023 16:42, Nikita Travkin wrote:
>>> When initially added, a mistake was made in the definition of the codec.
>>>
>>> Despite the fact that the DMIC line is connected on the side of the
>>> codec chip, and relevant passive components, including 0-ohm resistors
>>> connecting the dmics, are present, the dmic line is still cut in
>>> another place on the board, which was overlooked.
>>>
>>> Correct this by replacing the dmic configuration with a comment
>>> describing this hardware detail.
>>>
>>> While at it, also add missing regulators definitions. This is not a
>>> functional change as all the relevant regulators were already added via
>>> the other rail supplies.
>>>
>>> Fixes: 4a9f8f8f2ada ("arm64: dts: qcom: Add Acer Aspire 1")
>>> Signed-off-by: Nikita Travkin <[email protected]>
>>> ---
>>> arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts | 17 +++++++++++++++--
>>> 1 file changed, 15 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts
>>> index cfde8cd47107..00b442696618 100644
>>> --- a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts
>>> +++ b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts
>>> @@ -209,9 +209,22 @@ alc5682: codec@1a {
>>> AVDD-supply = <&vreg_l15a_1p8>;
>>> MICVDD-supply = <&reg_codec_3p3>;
>>> VBAT-supply = <&reg_codec_3p3>;
>>> + DBVDD-supply = <&vreg_l15a_1p8>;
>>> + LDO1-IN-supply = <&vreg_l15a_1p8>;
>>> +
>>> + /*
>>> + * NOTE: The board has a path from this codec to the
>>> + * DMIC microphones in the lid, however some of the option
>>> + * resistors are absent and the microphones are connected
>>> + * to the SoC instead.
>> Would that not also require more DT changes and maybe UCM?
>
> I don't think I had any other descriptions to support the dmic in
> the initial set (first audio support for this board is 3/3 here)
> and there is no upstream UCM yet - I will probably hold it off until
> I get vamacro and dmic on it working.
I was told that VAMACRO is "the easiest thing possible to get going"
(paraphrasing), did you go through something like this sequence [1]?

https://git.linaro.org/people/srinivas.kandagatla/alsa-ucm-conf.git/tree/ucm2/codecs/qcom-lpass/va-macro/DMIC0EnableSeq.conf?h=x13s&id=244979b03f5b9284e6a68eae6f9995f6ac735be8

Konrad

2023-10-31 10:48:42

by Nikita Travkin

[permalink] [raw]
Subject: Re: [PATCH 2/3] arm64: dts: qcom: acer-aspire1: Correct audio codec definition

Konrad Dybcio писал(а) 31.10.2023 15:06:
> On 31.10.2023 08:20, Nikita Travkin wrote:
>> Konrad Dybcio писал(а) 31.10.2023 02:48:
>>> On 27.10.2023 16:42, Nikita Travkin wrote:
>>>> When initially added, a mistake was made in the definition of the codec.
>>>>
>>>> Despite the fact that the DMIC line is connected on the side of the
>>>> codec chip, and relevant passive components, including 0-ohm resistors
>>>> connecting the dmics, are present, the dmic line is still cut in
>>>> another place on the board, which was overlooked.
>>>>
>>>> Correct this by replacing the dmic configuration with a comment
>>>> describing this hardware detail.
>>>>
>>>> While at it, also add missing regulators definitions. This is not a
>>>> functional change as all the relevant regulators were already added via
>>>> the other rail supplies.
>>>>
>>>> Fixes: 4a9f8f8f2ada ("arm64: dts: qcom: Add Acer Aspire 1")
>>>> Signed-off-by: Nikita Travkin <[email protected]>
>>>> ---
>>>> arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts | 17 +++++++++++++++--
>>>> 1 file changed, 15 insertions(+), 2 deletions(-)
>>>>
>>>> diff --git a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts
>>>> index cfde8cd47107..00b442696618 100644
>>>> --- a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts
>>>> +++ b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts
>>>> @@ -209,9 +209,22 @@ alc5682: codec@1a {
>>>> AVDD-supply = <&vreg_l15a_1p8>;
>>>> MICVDD-supply = <&reg_codec_3p3>;
>>>> VBAT-supply = <&reg_codec_3p3>;
>>>> + DBVDD-supply = <&vreg_l15a_1p8>;
>>>> + LDO1-IN-supply = <&vreg_l15a_1p8>;
>>>> +
>>>> + /*
>>>> + * NOTE: The board has a path from this codec to the
>>>> + * DMIC microphones in the lid, however some of the option
>>>> + * resistors are absent and the microphones are connected
>>>> + * to the SoC instead.
>>> Would that not also require more DT changes and maybe UCM?
>>
>> I don't think I had any other descriptions to support the dmic in
>> the initial set (first audio support for this board is 3/3 here)
>> and there is no upstream UCM yet - I will probably hold it off until
>> I get vamacro and dmic on it working.
> I was told that VAMACRO is "the easiest thing possible to get going"
> (paraphrasing), did you go through something like this sequence [1]?
>

The problem is that no one introduced it for sc7180 - it's not
in the dtsi. And so isn't the lpass-tlmm I'd need...

So the set of due changes per my understanding is like:

- Add va-macro to sc7180 (need new compatible/fallback)
- Add relevant clocks for it (seems to be firmware backed, so easy?)
- Add lpass-tlmm (it seems like we add a new driver for each soc
even if they are same? Are they same?)
- Add va macro dma dais to the asoc boardfile (trivial)
- Finally, add the dmic to the board dts and enable in the UCM
(also trivial)

So I decided to follow the "release early, release often" and
only introduce partial sound for now, following it up with
all above later.

> https://git.linaro.org/people/srinivas.kandagatla/alsa-ucm-conf.git/tree/ucm2/codecs/qcom-lpass/va-macro/DMIC0EnableSeq.conf?h=x13s&id=244979b03f5b9284e6a68eae6f9995f6ac735be8

Thanks, this is useful to have, I was indeed looking at
x13s for dmic/vamacro example after I realized my board
tricked me and it's not how trogdor does it...

Nikita

2023-10-31 10:58:24

by Konrad Dybcio

[permalink] [raw]
Subject: Re: [PATCH 2/3] arm64: dts: qcom: acer-aspire1: Correct audio codec definition

On 31.10.2023 11:48, Nikita Travkin wrote:
> Konrad Dybcio писал(а) 31.10.2023 15:06:
>> On 31.10.2023 08:20, Nikita Travkin wrote:
>>> Konrad Dybcio писал(а) 31.10.2023 02:48:
>>>> On 27.10.2023 16:42, Nikita Travkin wrote:
>>>>> When initially added, a mistake was made in the definition of the codec.
>>>>>
>>>>> Despite the fact that the DMIC line is connected on the side of the
>>>>> codec chip, and relevant passive components, including 0-ohm resistors
>>>>> connecting the dmics, are present, the dmic line is still cut in
>>>>> another place on the board, which was overlooked.
>>>>>
>>>>> Correct this by replacing the dmic configuration with a comment
>>>>> describing this hardware detail.
>>>>>
>>>>> While at it, also add missing regulators definitions. This is not a
>>>>> functional change as all the relevant regulators were already added via
>>>>> the other rail supplies.
>>>>>
>>>>> Fixes: 4a9f8f8f2ada ("arm64: dts: qcom: Add Acer Aspire 1")
>>>>> Signed-off-by: Nikita Travkin <[email protected]>
>>>>> ---
>>>>> arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts | 17 +++++++++++++++--
>>>>> 1 file changed, 15 insertions(+), 2 deletions(-)
>>>>>
>>>>> diff --git a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts
>>>>> index cfde8cd47107..00b442696618 100644
>>>>> --- a/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts
>>>>> +++ b/arch/arm64/boot/dts/qcom/sc7180-acer-aspire1.dts
>>>>> @@ -209,9 +209,22 @@ alc5682: codec@1a {
>>>>> AVDD-supply = <&vreg_l15a_1p8>;
>>>>> MICVDD-supply = <&reg_codec_3p3>;
>>>>> VBAT-supply = <&reg_codec_3p3>;
>>>>> + DBVDD-supply = <&vreg_l15a_1p8>;
>>>>> + LDO1-IN-supply = <&vreg_l15a_1p8>;
>>>>> +
>>>>> + /*
>>>>> + * NOTE: The board has a path from this codec to the
>>>>> + * DMIC microphones in the lid, however some of the option
>>>>> + * resistors are absent and the microphones are connected
>>>>> + * to the SoC instead.
>>>> Would that not also require more DT changes and maybe UCM?
>>>
>>> I don't think I had any other descriptions to support the dmic in
>>> the initial set (first audio support for this board is 3/3 here)
>>> and there is no upstream UCM yet - I will probably hold it off until
>>> I get vamacro and dmic on it working.
>> I was told that VAMACRO is "the easiest thing possible to get going"
>> (paraphrasing), did you go through something like this sequence [1]?
>>
>
> The problem is that no one introduced it for sc7180 - it's not
> in the dtsi. And so isn't the lpass-tlmm I'd need...
>
> So the set of due changes per my understanding is like:
>
> - Add va-macro to sc7180 (need new compatible/fallback)
> - Add relevant clocks for it (seems to be firmware backed, so easy?)
yes

> - Add lpass-tlmm (it seems like we add a new driver for each soc
> even if they are same? Are they same?)
there are rare cases when it's identical

> - Add va macro dma dais to the asoc boardfile (trivial)
y

> - Finally, add the dmic to the board dts and enable in the UCM
> (also trivial)
y

> So I decided to follow the "release early, release often" and
> only introduce partial sound for now, following it up with
> all above later.
Sure that makes sense, just wanted to make sure you know about this

Konrad

>
>> https://git.linaro.org/people/srinivas.kandagatla/alsa-ucm-conf.git/tree/ucm2/codecs/qcom-lpass/va-macro/DMIC0EnableSeq.conf?h=x13s&id=244979b03f5b9284e6a68eae6f9995f6ac735be8
>
> Thanks, this is useful to have, I was indeed looking at
> x13s for dmic/vamacro example after I realized my board
> tricked me and it's not how trogdor does it...
>
> Nikita