Re: [PATCH v5 6/9] ASoC: dt-bindings: qcom: Add Hawi LPASS macro codecs

From: Prasad Kumpatla

Date: Mon Oct 19 2026 - 09:41:47 EST



On 10/16/2026 7:21 PM, Krzysztof Kozlowski wrote:
On 16/10/2026 10:14, Prasad Kumpatla wrote:
On 10/15/2026 3:08 PM, Krzysztof Kozlowski wrote:
Are you sure you are not using source clock names?
On Hawi this RX input is sourced from the LPR vote (LPASS_HW_LPR_VOTE)
That the source clock name. Look, where LPASS_HW_LPR_VOTE is used:

instead of the MACRO vote used on sm8550:

clocks = <&q6prmcc LPASS_CLK_ID_RX_CORE_TX_MCLK ...>,
<&q6prmcc*LPASS_HW_LPR_VOTE* ...>,
Here. LPASS_HW_LPR_VOTE is the name in q6prmcc.

<&q6prmcc LPASS_HW_DCODEC_VOTE ...>,
<&lpass_vamacro>;
clock-names = "mclk",*"lpr"*, "dcodec", "fsgen";

"lpr" is the same style of name as the existing "macro"/"dcodec" entries,
That's the same vote as here, no? Vote for main block (macro)?

No, LPR and MACRO are different votes - they request different param_ids:

    bool lpr_req = (hw_block_id == Q6PRM_HW_LPR_VOTE);
    param_data->param_id = lpr_req ? PARAM_ID_RSC_CPU_LPR
                                   : PARAM_ID_RSC_HW_CORE;
    if (lpr_req)
            req->lpr_state = LPR_CPU_SS_SLEEP_DISABLE;
    else
            req->hw_clk_id = hw_block_id;

It's not the macro vote. LPR is the vote to put the LPASS block into
sleep-disable before accessing the LPAIF registers, so the name reflects
that different vote rather than the macro one.

This LPR Vote is common accross all the LPASS macros to use for Hawi and Maili LPASS versions .
I will reframe the commit message to reflect same in next revision.

Thanks,
Prasad


not a parent/source name. An sm8550 fallback can't be used here because it
pins input #2 to "macro", which no longer matches the LPR source on Hawi;
the other three inputs are unchanged, so RX gets its own clock-names.

Thanks,
Prasad


Best regards,
Krzysztof