2022-11-29 00:26:56

by Alex Elder

[permalink] [raw]
Subject: [PATCH] clk: qcom: rpmh: add support for SM6350 rpmh IPA clock

From: Luca Weiss <[email protected]>

The IPA core clock is required for SM6350. Define it.

Signed-off-by: Luca Weiss <[email protected]>
---
drivers/clk/qcom/clk-rpmh.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/clk/qcom/clk-rpmh.c b/drivers/clk/qcom/clk-rpmh.c
index 0471bab824642..6a5887aae21a4 100644
--- a/drivers/clk/qcom/clk-rpmh.c
+++ b/drivers/clk/qcom/clk-rpmh.c
@@ -603,6 +603,7 @@ static const struct clk_rpmh_desc clk_rpmh_sc7280 = {
DEFINE_CLK_RPMH_VRM(sm6350, ln_bb_clk2, ln_bb_clk2_ao, "lnbclkg2", 4);
DEFINE_CLK_RPMH_VRM(sm6350, ln_bb_clk3, ln_bb_clk3_ao, "lnbclkg3", 4);
DEFINE_CLK_RPMH_ARC(sm6350, qlink, qlink_ao, "qphy.lvl", 0x1, 4);
+DEFINE_CLK_RPMH_BCM(sm6350, ipa, "IP0");

static struct clk_hw *sm6350_rpmh_clocks[] = {
[RPMH_CXO_CLK] = &sc7280_bi_tcxo.hw,
@@ -613,6 +614,7 @@ static struct clk_hw *sm6350_rpmh_clocks[] = {
[RPMH_LN_BB_CLK3_A] = &sm6350_ln_bb_clk3_ao.hw,
[RPMH_QLINK_CLK] = &sm6350_qlink.hw,
[RPMH_QLINK_CLK_A] = &sm6350_qlink_ao.hw,
+ [RPMH_IPA_CLK] = &sm6350_ipa.hw,
};

static const struct clk_rpmh_desc clk_rpmh_sm6350 = {
--
2.34.1


2022-11-29 01:45:55

by Dmitry Baryshkov

[permalink] [raw]
Subject: Re: [PATCH] clk: qcom: rpmh: add support for SM6350 rpmh IPA clock

On Tue, 29 Nov 2022 at 02:00, Alex Elder <[email protected]> wrote:
>
> From: Luca Weiss <[email protected]>
>
> The IPA core clock is required for SM6350. Define it.
>
> Signed-off-by: Luca Weiss <[email protected]>
> ---
> drivers/clk/qcom/clk-rpmh.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/clk/qcom/clk-rpmh.c b/drivers/clk/qcom/clk-rpmh.c
> index 0471bab824642..6a5887aae21a4 100644
> --- a/drivers/clk/qcom/clk-rpmh.c
> +++ b/drivers/clk/qcom/clk-rpmh.c
> @@ -603,6 +603,7 @@ static const struct clk_rpmh_desc clk_rpmh_sc7280 = {
> DEFINE_CLK_RPMH_VRM(sm6350, ln_bb_clk2, ln_bb_clk2_ao, "lnbclkg2", 4);
> DEFINE_CLK_RPMH_VRM(sm6350, ln_bb_clk3, ln_bb_clk3_ao, "lnbclkg3", 4);
> DEFINE_CLK_RPMH_ARC(sm6350, qlink, qlink_ao, "qphy.lvl", 0x1, 4);
> +DEFINE_CLK_RPMH_BCM(sm6350, ipa, "IP0");
>
> static struct clk_hw *sm6350_rpmh_clocks[] = {
> [RPMH_CXO_CLK] = &sc7280_bi_tcxo.hw,
> @@ -613,6 +614,7 @@ static struct clk_hw *sm6350_rpmh_clocks[] = {
> [RPMH_LN_BB_CLK3_A] = &sm6350_ln_bb_clk3_ao.hw,
> [RPMH_QLINK_CLK] = &sm6350_qlink.hw,
> [RPMH_QLINK_CLK_A] = &sm6350_qlink_ao.hw,
> + [RPMH_IPA_CLK] = &sm6350_ipa.hw,

This can use sdm845_ipa.hw instead of defining new clocks.

> };
>
> static const struct clk_rpmh_desc clk_rpmh_sm6350 = {
> --
> 2.34.1
>


--
With best wishes
Dmitry

2022-11-29 02:21:38

by Alex Elder

[permalink] [raw]
Subject: Re: [PATCH] clk: qcom: rpmh: add support for SM6350 rpmh IPA clock

On 11/28/22 7:35 PM, Dmitry Baryshkov wrote:
> On Tue, 29 Nov 2022 at 02:00, Alex Elder <[email protected]> wrote:
>>
>> From: Luca Weiss <[email protected]>
>>
>> The IPA core clock is required for SM6350. Define it.
>>
>> Signed-off-by: Luca Weiss <[email protected]>
>> ---
>> drivers/clk/qcom/clk-rpmh.c | 2 ++
>> 1 file changed, 2 insertions(+)
>>
>> diff --git a/drivers/clk/qcom/clk-rpmh.c b/drivers/clk/qcom/clk-rpmh.c
>> index 0471bab824642..6a5887aae21a4 100644
>> --- a/drivers/clk/qcom/clk-rpmh.c
>> +++ b/drivers/clk/qcom/clk-rpmh.c
>> @@ -603,6 +603,7 @@ static const struct clk_rpmh_desc clk_rpmh_sc7280 = {
>> DEFINE_CLK_RPMH_VRM(sm6350, ln_bb_clk2, ln_bb_clk2_ao, "lnbclkg2", 4);
>> DEFINE_CLK_RPMH_VRM(sm6350, ln_bb_clk3, ln_bb_clk3_ao, "lnbclkg3", 4);
>> DEFINE_CLK_RPMH_ARC(sm6350, qlink, qlink_ao, "qphy.lvl", 0x1, 4);
>> +DEFINE_CLK_RPMH_BCM(sm6350, ipa, "IP0");

So you're saying that the above line is unnecessary...

>> static struct clk_hw *sm6350_rpmh_clocks[] = {
>> [RPMH_CXO_CLK] = &sc7280_bi_tcxo.hw,
>> @@ -613,6 +614,7 @@ static struct clk_hw *sm6350_rpmh_clocks[] = {
>> [RPMH_LN_BB_CLK3_A] = &sm6350_ln_bb_clk3_ao.hw,
>> [RPMH_QLINK_CLK] = &sm6350_qlink.hw,
>> [RPMH_QLINK_CLK_A] = &sm6350_qlink_ao.hw,
>> + [RPMH_IPA_CLK] = &sm6350_ipa.hw,

...and that this line (above) can instead look like this:

[RPMH_IPA_CLK] = &sdm845_ipa.hw,

Correct?

> This can use sdm845_ipa.hw instead of defining new clocks.

Your statement seems to also be true for the [RPMH_IPA_CLK]
entry in sdx55_rpmh_clocks[]. (For the record, the commit
that added that one was authored by me, and I didn't realize
what you have stated here.)

Please confirm, and I'll update.

I'll also send another patch to remove the definition of
sdx55_ipa if Mani is willing to test it for me...

Thank you Dmitry.

-Alex

>> };
>>
>> static const struct clk_rpmh_desc clk_rpmh_sm6350 = {
>> --
>> 2.34.1
>>
>
>

2022-11-29 10:09:59

by Dmitry Baryshkov

[permalink] [raw]
Subject: Re: [PATCH] clk: qcom: rpmh: add support for SM6350 rpmh IPA clock

On Tue, 29 Nov 2022 at 03:54, Alex Elder <[email protected]> wrote:
>
> On 11/28/22 7:35 PM, Dmitry Baryshkov wrote:
> > On Tue, 29 Nov 2022 at 02:00, Alex Elder <[email protected]> wrote:
> >>
> >> From: Luca Weiss <[email protected]>
> >>
> >> The IPA core clock is required for SM6350. Define it.
> >>
> >> Signed-off-by: Luca Weiss <[email protected]>
> >> ---
> >> drivers/clk/qcom/clk-rpmh.c | 2 ++
> >> 1 file changed, 2 insertions(+)
> >>
> >> diff --git a/drivers/clk/qcom/clk-rpmh.c b/drivers/clk/qcom/clk-rpmh.c
> >> index 0471bab824642..6a5887aae21a4 100644
> >> --- a/drivers/clk/qcom/clk-rpmh.c
> >> +++ b/drivers/clk/qcom/clk-rpmh.c
> >> @@ -603,6 +603,7 @@ static const struct clk_rpmh_desc clk_rpmh_sc7280 = {
> >> DEFINE_CLK_RPMH_VRM(sm6350, ln_bb_clk2, ln_bb_clk2_ao, "lnbclkg2", 4);
> >> DEFINE_CLK_RPMH_VRM(sm6350, ln_bb_clk3, ln_bb_clk3_ao, "lnbclkg3", 4);
> >> DEFINE_CLK_RPMH_ARC(sm6350, qlink, qlink_ao, "qphy.lvl", 0x1, 4);
> >> +DEFINE_CLK_RPMH_BCM(sm6350, ipa, "IP0");
>
> So you're saying that the above line is unnecessary...

Yes

>
> >> static struct clk_hw *sm6350_rpmh_clocks[] = {
> >> [RPMH_CXO_CLK] = &sc7280_bi_tcxo.hw,
> >> @@ -613,6 +614,7 @@ static struct clk_hw *sm6350_rpmh_clocks[] = {
> >> [RPMH_LN_BB_CLK3_A] = &sm6350_ln_bb_clk3_ao.hw,
> >> [RPMH_QLINK_CLK] = &sm6350_qlink.hw,
> >> [RPMH_QLINK_CLK_A] = &sm6350_qlink_ao.hw,
> >> + [RPMH_IPA_CLK] = &sm6350_ipa.hw,
>
> ...and that this line (above) can instead look like this:
>
> [RPMH_IPA_CLK] = &sdm845_ipa.hw,
>
> Correct?

Yes

>
> > This can use sdm845_ipa.hw instead of defining new clocks.
>
> Your statement seems to also be true for the [RPMH_IPA_CLK]
> entry in sdx55_rpmh_clocks[]. (For the record, the commit
> that added that one was authored by me, and I didn't realize
> what you have stated here.)
>
> Please confirm, and I'll update.
>
> I'll also send another patch to remove the definition of
> sdx55_ipa if Mani is willing to test it for me...
>
> Thank you Dmitry.
>
> -Alex
>
> >> };
> >>
> >> static const struct clk_rpmh_desc clk_rpmh_sm6350 = {
> >> --
> >> 2.34.1
> >>
> >
> >
>

--
With best wishes
Dmitry