mbox series

[v6,0/4] cpufreq: qcom-nvmem: add support for ipq806x

Message ID 20231013173854.7399-1-ansuelsmth@gmail.com
Headers show
Series cpufreq: qcom-nvmem: add support for ipq806x | expand

Message

Christian Marangi Oct. 13, 2023, 5:38 p.m. UTC
The first patch of this series was split to a separate series as it
doesn't depend on [1] and can be applied right away,
[1] introduced some breaking change to function that ipq806x, ipq807x
patch was dropped to permit an easier rebase and merge of both.

This small series adds support for ipq806x qcom-cpufreq-nvmem driver.
Special function are required to make use of the opp-supported-hw
binding by hardcoding custom bits based on the qcom SoC ID.

The qcom-cpufreq-nvmem driver had recent changes to also improve
support for apq8064. Because of this, this series depends on a
just merged series.

Depends on [1].

[1] https://lore.kernel.org/linux-pm/20231010063235.rj2ehxugtjr5x2xr@vireshk-i7/T/#t

Christian Marangi (4):
  dt-bindings: cpufreq: qcom-cpufreq-nvmem: Document krait-cpu
  dt-bindings: opp: opp-v2-kryo-cpu: Document named opp-microvolt
    property
  cpufreq: qcom-nvmem: add support for IPQ8064
  ARM: dts: qcom: ipq8064: Add CPU OPP table

 .../bindings/cpufreq/qcom-cpufreq-nvmem.yaml  |  4 +-
 .../bindings/opp/opp-v2-kryo-cpu.yaml         | 22 ++++++
 arch/arm/boot/dts/qcom/qcom-ipq8062.dtsi      | 30 +++++++++
 arch/arm/boot/dts/qcom/qcom-ipq8064.dtsi      | 67 +++++++++++++++++++
 arch/arm/boot/dts/qcom/qcom-ipq8065.dtsi      | 65 ++++++++++++++++++
 drivers/cpufreq/qcom-cpufreq-nvmem.c          | 67 ++++++++++++++++++-
 6 files changed, 253 insertions(+), 2 deletions(-)

Comments

Viresh Kumar Oct. 19, 2023, 6:46 a.m. UTC | #1
On 13-10-23, 19:38, Christian Marangi wrote:
> The first patch of this series was split to a separate series as it
> doesn't depend on [1] and can be applied right away,
> [1] introduced some breaking change to function that ipq806x, ipq807x
> patch was dropped to permit an easier rebase and merge of both.
> 
> This small series adds support for ipq806x qcom-cpufreq-nvmem driver.
> Special function are required to make use of the opp-supported-hw
> binding by hardcoding custom bits based on the qcom SoC ID.
> 
> The qcom-cpufreq-nvmem driver had recent changes to also improve
> support for apq8064. Because of this, this series depends on a
> just merged series.
> 
> Depends on [1].
> 
> [1] https://lore.kernel.org/linux-pm/20231010063235.rj2ehxugtjr5x2xr@vireshk-i7/T/#t
> 
> Christian Marangi (4):
>   dt-bindings: cpufreq: qcom-cpufreq-nvmem: Document krait-cpu
>   dt-bindings: opp: opp-v2-kryo-cpu: Document named opp-microvolt
>     property

Applied above two. Thanks.

>   cpufreq: qcom-nvmem: add support for IPQ8064

This doesn't apply/build anymore.

>   ARM: dts: qcom: ipq8064: Add CPU OPP table
Christian Marangi Oct. 19, 2023, 10:52 a.m. UTC | #2
On Thu, Oct 19, 2023 at 12:16:53PM +0530, Viresh Kumar wrote:
> On 13-10-23, 19:38, Christian Marangi wrote:
> > The first patch of this series was split to a separate series as it
> > doesn't depend on [1] and can be applied right away,
> > [1] introduced some breaking change to function that ipq806x, ipq807x
> > patch was dropped to permit an easier rebase and merge of both.
> > 
> > This small series adds support for ipq806x qcom-cpufreq-nvmem driver.
> > Special function are required to make use of the opp-supported-hw
> > binding by hardcoding custom bits based on the qcom SoC ID.
> > 
> > The qcom-cpufreq-nvmem driver had recent changes to also improve
> > support for apq8064. Because of this, this series depends on a
> > just merged series.
> > 
> > Depends on [1].
> > 
> > [1] https://lore.kernel.org/linux-pm/20231010063235.rj2ehxugtjr5x2xr@vireshk-i7/T/#t
> > 
> > Christian Marangi (4):
> >   dt-bindings: cpufreq: qcom-cpufreq-nvmem: Document krait-cpu
> >   dt-bindings: opp: opp-v2-kryo-cpu: Document named opp-microvolt
> >     property
> 
> Applied above two. Thanks.
> 
> >   cpufreq: qcom-nvmem: add support for IPQ8064
> 
> This doesn't apply/build anymore.
>

Hi, I sent v7 that fix the conflict problem. I dropped from the series
the 2 applied patch and added the 2 dependent patch since it seems
fixing the problem in the series might take longer times.

Can you check? Thanks a lot for the help in accepting this series.

> >   ARM: dts: qcom: ipq8064: Add CPU OPP table
>
Konrad Dybcio Oct. 26, 2023, 8:01 p.m. UTC | #3
On 10/13/23 19:38, Christian Marangi wrote:
> IPQ8064 comes in 3 families:
> * IPQ8062 up to 1.0GHz
> * IPQ8064/IPQ8066/IPQ8068 up to 1.4GHz
> * IPQ8065/IPQ8069 up to 1.7Ghz
> 
> So, in order to be able to support one OPP table, add support for
> IPQ8064 family based of SMEM SoC ID-s and correctly set the version so
> opp-supported-hw can be correctly used.
> 
> Bit are set with the following logic:
> * IPQ8062 BIT 0
> * IPQ8064/IPQ8066/IPQ8068 BIT 1
> * IPQ8065/IPQ8069 BIT 2
> 
> speed is never fused, only pvs values are fused.
> 
> IPQ806x SoC doesn't have pvs_version so we drop and we use the new
> pattern:
> opp-microvolt-speed0-pvs<PSV_VALUE>
> 
> Example:
> - for ipq8062 psv2
>    opp-microvolt-speed0-pvs2 = < 925000 878750 971250>
> 
> Fixes: a8811ec764f9 ("cpufreq: qcom: Add support for krait based socs")
> Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>

Konrad