From: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
To: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>,
lee@kernel.org, robh@kernel.org, krzk+dt@kernel.org,
conor+dt@kernel.org, andersson@kernel.org,
konradybcio@kernel.org, sboyd@kernel.org
Cc: linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, alexey.klimov@linaro.org,
r.mereu@arduino.cc
Subject: Re: [PATCH 2/4] arm64: dts: qcom: agatti: add LPASS devices
Date: Sun, 22 Feb 2026 09:27:46 +0000 [thread overview]
Message-ID: <c94921b6-dd17-448f-b7ab-c0dfdae77df1@oss.qualcomm.com> (raw)
In-Reply-To: <d388ffc1-5e4d-4331-9a8b-a553261edc6b@oss.qualcomm.com>
On 2/10/26 10:16 AM, Konrad Dybcio wrote:
> On 2/9/26 3:24 PM, Srinivas Kandagatla wrote:
>> From: Alexey Klimov <alexey.klimov@linaro.org>
>>
>> The rxmacro, txmacro, vamacro, soundwire nodes, lpass clock
>> controllers are required to support audio playback and
>> audio capture on sm6115 and its derivatives.
>>
>> Signed-off-by: Alexey Klimov <alexey.klimov@linaro.org>
>> Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
>> ---
>
> [...]
>
>> + rxmacro: codec@a600000 {
>> + compatible = "qcom,sm6115-lpass-rx-macro";
>> + reg = <0x0 0xa600000 0x0 0x1000>;
>> +
>> + clocks = <&q6afecc LPASS_CLK_ID_RX_CORE_MCLK
>> + LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
>> + <&q6afecc LPASS_CLK_ID_RX_CORE_NPL_MCLK
>> + LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
>> + <&q6afecc LPASS_HW_DCODEC_VOTE
>> + LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
>> + <&vamacro>;
>> + clock-names = "mclk",
>> + "npl",
>> + "dcodec",
>> + "fsgen";
>> + assigned-clocks = <&q6afecc LPASS_CLK_ID_RX_CORE_MCLK
>> + LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
>> + <&q6afecc LPASS_CLK_ID_RX_CORE_NPL_MCLK
>> + LPASS_CLK_ATTRIBUTE_COUPLE_NO>;
>> + assigned-clock-rates = <22579200>,
>> + <22579200>;
>
> Is this necessary?
Not required tbh.
>
>> + #clock-cells = <0>;
>> + clock-output-names = "mclk";
>> + #sound-dai-cells = <1>;
>> + };
>> +
>> + swr1: soundwire@a610000 {
>> + compatible = "qcom,soundwire-v1.6.0";
>> + reg = <0x0 0x0a610000 0x0 0x2000>;
>
> Let's set size=0x10_000 (it's got that much reserved for it)
>
make;s sense
>> + interrupts = <GIC_SPI 297 IRQ_TYPE_LEVEL_HIGH>;
>> +
>> + clocks = <&rxmacro>;
>> + clock-names = "iface";
>> +
>> + resets = <&lpass_audiocc 0>;
>> + reset-names = "swr_audio_cgcr";
>> +
>> + label = "RX";
>> + qcom,din-ports = <0>;
>> + qcom,dout-ports = <5>;
>> +
>> + qcom,ports-sinterval-low = /bits/ 8 <0x03 0x1f 0x1f 0x07 0x00>;
>> + qcom,ports-offset1 = /bits/ 8 <0x00 0x00 0x0b 0x01 0x00>;
>> + qcom,ports-offset2 = /bits/ 8 <0x00 0x00 0x0b 0x00 0x00>;
>> + qcom,ports-hstart = /bits/ 8 <0xff 0x03 0xff 0xff 0xff>;
>> + qcom,ports-hstop = /bits/ 8 <0xff 0x06 0xff 0xff 0xff>;
>> + qcom,ports-word-length = /bits/ 8 <0x01 0x07 0x04 0xff 0xff>;
>> + qcom,ports-block-pack-mode = /bits/ 8 <0xff 0x00 0x01 0xff 0xff>;
>> + qcom,ports-block-group-count = /bits/ 8 <0xff 0xff 0xff 0xff 0x00>;
>> + qcom,ports-lane-control = /bits/ 8 <0x01 0x00 0x00 0x00 0x00>;
>> +
>> + status = "disabled";
>
> No need to disable, I think
Ok
>
>> +
>> + #sound-dai-cells = <1>;
>> + #address-cells = <2>;
>> + #size-cells = <0>;
>> + };
>> +
>> +
>> + txmacro: codec@a620000 {
>> + compatible = "qcom,sm6115-lpass-tx-macro";
>> + reg = <0x0 0x0a620000 0x0 0x1000>;
>> +
>> + clocks = <&q6afecc LPASS_CLK_ID_TX_CORE_MCLK
>> + LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
>> + <&q6afecc LPASS_CLK_ID_TX_CORE_NPL_MCLK
>> + LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
>> + <&q6afecc LPASS_HW_DCODEC_VOTE
>> + LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
>> + <&vamacro>;..
>
>> + #clock-cells = <0>;
>> + clock-output-names = "mclk";
>> + #sound-dai-cells = <1>;
>> + };
>> +
>> + lpass_audiocc: clock-controller@a6a9000 {
>> + compatible = "qcom,sm6115-lpassaudiocc";
>> + reg = <0x0 0x0a6a9000 0x0 0x1000>;
>
> This region is called 'LPASS_AUDIO_CSR' with the correct size and length
we should.
>
>
>> + #reset-cells = <1>;
>> + };
>> +
>> +
>> + swr0: soundwire@a740000 {
>> + compatible = "qcom,soundwire-v1.6.0";
>> + reg = <0x0 0x0a740000 0x0 0x2000>;
>
> sz=0x10_000
Yes, we can add full range.
>
>> + interrupts = <GIC_SPI 296 IRQ_TYPE_LEVEL_HIGH>,
>> + <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
>> + clocks = <&txmacro>;
>> + clock-names = "iface";
>> +
>> + resets = <&lpasscc 0>;
>> + reset-names = "swr_audio_cgcr";
>> +
>> + label = "VA_TX";
>> + qcom,din-ports = <3>;
>> + qcom,dout-ports = <0>;
>> +
>> + qcoze-cells = <0>;
>> + };
>> +
>> + lpasscc: clock-controller@a7ec000 {
>> + compatible = "qcom,sm6115-lpasscc";
>> + reg = <0x0 0x0a7ec000 0x0 0x1000>;
>
> This isn't quite right.. it's at LPASS_TCSR (0xa7e0000) + 0xc000
>
> Not sure if we're gonna need the rest of it in the future, but it may
> be smart to describe the whole thing.. Too bad I didn't know about it
> when I first submitted that driver...
Yes, the driver needs fixing, we do it correctly for sc8280xp
--srini
>
> Konrad
next prev parent reply other threads:[~2026-02-22 9:27 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-09 14:24 [PATCH 0/4] arm64: dts: arduino-imola: add support for sound Srinivas Kandagatla
2026-02-09 14:24 ` [PATCH 1/4] dt-bindings: mfd: qcom,spmi-pmic: add compatibles for pm4124-codec Srinivas Kandagatla
2026-02-11 6:43 ` Krzysztof Kozlowski
2026-02-11 6:54 ` Krzysztof Kozlowski
2026-02-11 10:00 ` Srinivas Kandagatla
2026-02-11 10:08 ` Krzysztof Kozlowski
2026-02-09 14:24 ` [PATCH 2/4] arm64: dts: qcom: agatti: add LPASS devices Srinivas Kandagatla
2026-02-09 15:28 ` Dmitry Baryshkov
2026-02-09 17:12 ` Srinivas Kandagatla
2026-02-09 20:20 ` Dmitry Baryshkov
2026-02-10 10:16 ` Konrad Dybcio
2026-02-22 9:27 ` Srinivas Kandagatla [this message]
2026-02-09 14:24 ` [PATCH 3/4] arm64: dts: arduino-imola: add support for sound Srinivas Kandagatla
2026-02-10 10:07 ` Konrad Dybcio
2026-02-22 9:31 ` Srinivas Kandagatla
2026-02-09 14:24 ` [PATCH 4/4] arm64: defconfig: Enable Agatti audio drivers Srinivas Kandagatla
2026-02-09 15:26 ` Dmitry Baryshkov
2026-02-09 17:13 ` Srinivas Kandagatla
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=c94921b6-dd17-448f-b7ab-c0dfdae77df1@oss.qualcomm.com \
--to=srinivas.kandagatla@oss.qualcomm.com \
--cc=alexey.klimov@linaro.org \
--cc=andersson@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=konrad.dybcio@oss.qualcomm.com \
--cc=konradybcio@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=lee@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=r.mereu@arduino.cc \
--cc=robh@kernel.org \
--cc=sboyd@kernel.org \
/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