[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <e61e17ca-fed7-4712-96fc-a9a2339de1fb@linaro.org>
Date: Mon, 28 Apr 2025 16:41:53 +0200
From: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
To: Konrad Dybcio <konrad.dybcio@....qualcomm.com>,
Bjorn Andersson <andersson@...nel.org>,
Konrad Dybcio <konradybcio@...nel.org>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>, Conor Dooley <conor+dt@...nel.org>
Cc: linux-arm-msm@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 2/2] arm64: dts: qcom: sm8750-mtp: Add sound (speakers,
headset codec, dmics)
On 25/04/2025 11:30, Konrad Dybcio wrote:
> On 4/24/25 11:40 AM, Krzysztof Kozlowski wrote:
>> Add device nodes for most of the sound support - WSA883x smart speakers,
>> WCD9395 audio codec (headset) and sound card - which allows sound
>> playback via speakers and recording via DMIC microphones. Changes bring
>> necessary foundation for headset playback/recording via USB, but that
>> part is not yet ready.
>>
>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
>> ---
>
> [...]
>
>> + sound {
>> + compatible = "qcom,sm8750-sndcard", "qcom,sm8450-sndcard";
>> + model = "SM8750-MTP";
>> + audio-routing = "SpkrLeft IN", "WSA_SPK1 OUT",
>> + "SpkrRight IN", "WSA_SPK2 OUT",
>> + "IN1_HPHL", "HPHL_OUT",
>> + "IN2_HPHR", "HPHR_OUT",
>> + "AMIC2", "MIC BIAS2",
>> + "VA DMIC0", "MIC BIAS3", /* MIC4 on schematics */
>> + "VA DMIC1", "MIC BIAS3", /* MIC1 on schematics */
>
> Is this a mistake in what the codec driver exposes, or just a fumble
> in numbering $somewhere?
Which mistake? MIC4? Schematics call name things differently. They
always were, so to make it clear for people without schematics I wrote
which MIC it actually is.
>
>> + "VA DMIC2", "MIC BIAS1",
>> + "VA DMIC3", "MIC BIAS1",
>> + "VA DMIC0", "VA MIC BIAS3",
>> + "VA DMIC1", "VA MIC BIAS3",
>> + "VA DMIC2", "VA MIC BIAS1",
>> + "VA DMIC3", "VA MIC BIAS1",
>> + "TX SWR_INPUT1", "ADC2_OUTPUT";
>> +
>> + wcd-playback-dai-link {
>> + link-name = "WCD Playback";
>> +
>> + cpu {
>> + sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>;
>> + };
>> +
>> + codec {
>
> 'co'dec < 'cp'u
>
> [...]
That was the convention so far, but we can start a new one, sure. Just
ask the same all other patch contributors, because each of them will be
copying old code, which means cpu->codec->platform
>
>> + /*
>> + * WCD9395 RX Port 1 (HPH_L/R) <=> SWR1 Port 1 (HPH_L/R)
>> + * WCD9395 RX Port 2 (CLSH) <=> SWR1 Port 2 (CLSH)
>> + * WCD9395 RX Port 3 (COMP_L/R) <=> SWR1 Port 3 (COMP_L/R)
>> + * WCD9395 RX Port 4 (LO) <=> SWR1 Port 4 (LO)
>> + * WCD9395 RX Port 5 (DSD_L/R) <=> SWR1 Port 5 (DSD_L/R)
>> + * WCD9395 RX Port 6 (HIFI_PCM_L/R) <=> SWR1 Port 9 (HIFI_PCM_L/R)
>> + */
>> + qcom,rx-port-mapping = <1 2 3 4 5 9>;
>
> Does this deserve some dt-bindings constants?
No, because these are hardware details/constants. Drivers do not use them.
Best regards,
Krzysztof
Powered by blists - more mailing lists