All of lore.kernel.org
 help / color / mirror / Atom feed
* [RESEND PATCH 0/5] qcom-cpufreq-nvmem: Add msm8939 with some fixups
@ 2022-06-29 13:02 Bryan O'Donoghue
  2022-06-29 13:02 ` [RESEND PATCH 1/5] dt-bindings: opp: Add missing compat devices Bryan O'Donoghue
                   ` (4 more replies)
  0 siblings, 5 replies; 17+ messages in thread
From: Bryan O'Donoghue @ 2022-06-29 13:02 UTC (permalink / raw)
  To: ilia.lin, agross, bjorn.andersson, rafael, viresh.kumar, robh+dt,
	krzysztof.kozlowski+dt
  Cc: linux-pm, linux-arm-msm, Bryan O'Donoghue

V1 RESEND:

Resending the series with a better description to give context.

This is a simple precursor series to add the msm8939 SoC dtsi.

- dt-bindings fixes. We are missing some documentation for existing compat
  strings in qcom-cpufreq-nvmem.yaml
- dt-bindings add in msm8939 to qcom-cpufreq-nvmem.yaml
- Add the msm8939 to the cpufreq-dt-platdev exclusion list
- Fixing the naming of the code in qcom-cpufreq-nvmem so that we can
  re-use the qcs404 code for msm8939
- Adding msm8939 to the qcom-cpufreq-nvmem driver compat list

Most of the msm8939 stuff is down to dt-bindings fixups and then adding the
SoC dtsi. The minor exception here of needing to add the msm8939 compat to
qcom-cpufreq-nvmem.c.

A relatively tidy/scrubbed integrated tree for msm8939 is here for
reference.

https://git.linaro.org/people/bryan.odonoghue/kernel.git/log/?h=linux-next-27-06-22-msm8939-no-cpr-v4

V1
Fix up some missing compat strings for the qcom-cpufreq-nvmem yaml.
Add in msm8939 as a compatible qcom-cpufreq-nvmem.

Bryan O'Donoghue (5):
  dt-bindings: opp: Add missing compat devices
  dt-bindings: opp: Add msm8939 to the compatible list
  cpufreq: blocklist Qualcomm msm8939 in cpufreq-dt-platdev
  cpufreq: qcom-cpufreq-nvmem: Rename qcs404 data to cpr_genpd
  cpufreq: qcom-cpufreq-nvmem: Add msm8939 as cpr_genpd

 .../devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml  | 7 +++++++
 drivers/cpufreq/cpufreq-dt-platdev.c                     | 1 +
 drivers/cpufreq/qcom-cpufreq-nvmem.c                     | 9 +++++----
 3 files changed, 13 insertions(+), 4 deletions(-)

-- 
2.36.1


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [RESEND PATCH 1/5] dt-bindings: opp: Add missing compat devices
  2022-06-29 13:02 [RESEND PATCH 0/5] qcom-cpufreq-nvmem: Add msm8939 with some fixups Bryan O'Donoghue
@ 2022-06-29 13:02 ` Bryan O'Donoghue
  2022-06-29 18:19   ` Krzysztof Kozlowski
                     ` (2 more replies)
  2022-06-29 13:03 ` [RESEND PATCH 2/5] dt-bindings: opp: Add msm8939 to the compatible list Bryan O'Donoghue
                   ` (3 subsequent siblings)
  4 siblings, 3 replies; 17+ messages in thread
From: Bryan O'Donoghue @ 2022-06-29 13:02 UTC (permalink / raw)
  To: ilia.lin, agross, bjorn.andersson, rafael, viresh.kumar, robh+dt,
	krzysztof.kozlowski+dt
  Cc: linux-pm, linux-arm-msm, Bryan O'Donoghue, krzk+dt, devicetree

A number of devices listed in drivers/cpufreq/qcom-cpufreq-nvmem.c appear
to be missing from the compatible list.

Cc: ilia.lin@kernel.org
Cc: robh+dt@kernel.org
Cc: krzk+dt@kernel.org
Cc: devicetree@vger.kernel.org
Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
---
 .../devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml     | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml b/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
index a9a776da55056..5eb1dba13fe2b 100644
--- a/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
+++ b/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
@@ -22,6 +22,12 @@ select:
     compatible:
       contains:
         enum:
+          - qcom,apq8064
+          - qcom,apq8096
+          - qcom,ipq8064
+          - qcom,msm8960
+          - qcom,msm8974
+          - qcom,msm8996
           - qcom,qcs404
   required:
     - compatible
-- 
2.36.1


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [RESEND PATCH 2/5] dt-bindings: opp: Add msm8939 to the compatible list
  2022-06-29 13:02 [RESEND PATCH 0/5] qcom-cpufreq-nvmem: Add msm8939 with some fixups Bryan O'Donoghue
  2022-06-29 13:02 ` [RESEND PATCH 1/5] dt-bindings: opp: Add missing compat devices Bryan O'Donoghue
@ 2022-06-29 13:03 ` Bryan O'Donoghue
  2022-06-29 18:20   ` Krzysztof Kozlowski
  2022-06-29 13:03 ` [RESEND PATCH 3/5] cpufreq: blocklist Qualcomm msm8939 in cpufreq-dt-platdev Bryan O'Donoghue
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 17+ messages in thread
From: Bryan O'Donoghue @ 2022-06-29 13:03 UTC (permalink / raw)
  To: ilia.lin, agross, bjorn.andersson, rafael, viresh.kumar, robh+dt,
	krzysztof.kozlowski+dt
  Cc: linux-pm, linux-arm-msm, Bryan O'Donoghue, krzk+dt, devicetree

msm8939 will uses this driver instead of the generic dt-cpufreq. Add to the
compatible list.

Cc: ilia.lin@kernel.org
Cc: robh+dt@kernel.org
Cc: krzk+dt@kernel.org
Cc: devicetree@vger.kernel.org
Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
---
 .../devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml          | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml b/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
index 5eb1dba13fe2b..7efae476c02e0 100644
--- a/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
+++ b/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
@@ -25,6 +25,7 @@ select:
           - qcom,apq8064
           - qcom,apq8096
           - qcom,ipq8064
+          - qcom,msm8939
           - qcom,msm8960
           - qcom,msm8974
           - qcom,msm8996
-- 
2.36.1


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [RESEND PATCH 3/5] cpufreq: blocklist Qualcomm msm8939 in cpufreq-dt-platdev
  2022-06-29 13:02 [RESEND PATCH 0/5] qcom-cpufreq-nvmem: Add msm8939 with some fixups Bryan O'Donoghue
  2022-06-29 13:02 ` [RESEND PATCH 1/5] dt-bindings: opp: Add missing compat devices Bryan O'Donoghue
  2022-06-29 13:03 ` [RESEND PATCH 2/5] dt-bindings: opp: Add msm8939 to the compatible list Bryan O'Donoghue
@ 2022-06-29 13:03 ` Bryan O'Donoghue
  2022-06-29 13:03 ` [RESEND PATCH 4/5] cpufreq: qcom-cpufreq-nvmem: Rename qcs404 data to cpr_genpd Bryan O'Donoghue
  2022-06-29 13:03 ` [RESEND PATCH 5/5] cpufreq: qcom-cpufreq-nvmem: Add msm8939 as cpr_genpd Bryan O'Donoghue
  4 siblings, 0 replies; 17+ messages in thread
From: Bryan O'Donoghue @ 2022-06-29 13:03 UTC (permalink / raw)
  To: ilia.lin, agross, bjorn.andersson, rafael, viresh.kumar, robh+dt,
	krzysztof.kozlowski+dt
  Cc: linux-pm, linux-arm-msm, Bryan O'Donoghue

msm8939 uses qcom-cpufreq-nvmem. Block it on the generic cpufreq-dt list.

Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
---
 drivers/cpufreq/cpufreq-dt-platdev.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/cpufreq/cpufreq-dt-platdev.c b/drivers/cpufreq/cpufreq-dt-platdev.c
index 96de1536e1cbf..71d5b0df4a75d 100644
--- a/drivers/cpufreq/cpufreq-dt-platdev.c
+++ b/drivers/cpufreq/cpufreq-dt-platdev.c
@@ -136,6 +136,7 @@ static const struct of_device_id blocklist[] __initconst = {
 	{ .compatible = "nvidia,tegra210", },
 
 	{ .compatible = "qcom,apq8096", },
+	{ .compatible = "qcom,msm8939", },
 	{ .compatible = "qcom,msm8996", },
 	{ .compatible = "qcom,qcs404", },
 	{ .compatible = "qcom,sa8155p" },
-- 
2.36.1


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [RESEND PATCH 4/5] cpufreq: qcom-cpufreq-nvmem: Rename qcs404 data to cpr_genpd
  2022-06-29 13:02 [RESEND PATCH 0/5] qcom-cpufreq-nvmem: Add msm8939 with some fixups Bryan O'Donoghue
                   ` (2 preceding siblings ...)
  2022-06-29 13:03 ` [RESEND PATCH 3/5] cpufreq: blocklist Qualcomm msm8939 in cpufreq-dt-platdev Bryan O'Donoghue
@ 2022-06-29 13:03 ` Bryan O'Donoghue
  2022-06-29 19:11   ` Stephan Gerhold
  2022-07-13 13:50   ` Dmitry Baryshkov
  2022-06-29 13:03 ` [RESEND PATCH 5/5] cpufreq: qcom-cpufreq-nvmem: Add msm8939 as cpr_genpd Bryan O'Donoghue
  4 siblings, 2 replies; 17+ messages in thread
From: Bryan O'Donoghue @ 2022-06-29 13:03 UTC (permalink / raw)
  To: ilia.lin, agross, bjorn.andersson, rafael, viresh.kumar, robh+dt,
	krzysztof.kozlowski+dt
  Cc: linux-pm, linux-arm-msm, Bryan O'Donoghue

At the moment the CPR genpd based code is named after the qcs404 however
msm8936, msm8939 and other antecedent processors of the qcs404 can also
make use of this data.

Rename it to reflect a more generic use.

Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
---
 drivers/cpufreq/qcom-cpufreq-nvmem.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/cpufreq/qcom-cpufreq-nvmem.c b/drivers/cpufreq/qcom-cpufreq-nvmem.c
index 6dfa86971a757..355c8b99e974a 100644
--- a/drivers/cpufreq/qcom-cpufreq-nvmem.c
+++ b/drivers/cpufreq/qcom-cpufreq-nvmem.c
@@ -252,10 +252,10 @@ static const struct qcom_cpufreq_match_data match_data_krait = {
 	.get_version = qcom_cpufreq_krait_name_version,
 };
 
-static const char *qcs404_genpd_names[] = { "cpr", NULL };
+static const char *cpr_genpd_names[] = { "cpr", NULL };
 
-static const struct qcom_cpufreq_match_data match_data_qcs404 = {
-	.genpd_names = qcs404_genpd_names,
+static const struct qcom_cpufreq_match_data match_data_cpr_genpd = {
+	.genpd_names = cpr_genpd_names,
 };
 
 static int qcom_cpufreq_probe(struct platform_device *pdev)
@@ -454,7 +454,7 @@ static struct platform_driver qcom_cpufreq_driver = {
 static const struct of_device_id qcom_cpufreq_match_list[] __initconst = {
 	{ .compatible = "qcom,apq8096", .data = &match_data_kryo },
 	{ .compatible = "qcom,msm8996", .data = &match_data_kryo },
-	{ .compatible = "qcom,qcs404", .data = &match_data_qcs404 },
+	{ .compatible = "qcom,qcs404", .data = &match_data_cpr_genpd },
 	{ .compatible = "qcom,ipq8064", .data = &match_data_krait },
 	{ .compatible = "qcom,apq8064", .data = &match_data_krait },
 	{ .compatible = "qcom,msm8974", .data = &match_data_krait },
-- 
2.36.1


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [RESEND PATCH 5/5] cpufreq: qcom-cpufreq-nvmem: Add msm8939 as cpr_genpd
  2022-06-29 13:02 [RESEND PATCH 0/5] qcom-cpufreq-nvmem: Add msm8939 with some fixups Bryan O'Donoghue
                   ` (3 preceding siblings ...)
  2022-06-29 13:03 ` [RESEND PATCH 4/5] cpufreq: qcom-cpufreq-nvmem: Rename qcs404 data to cpr_genpd Bryan O'Donoghue
@ 2022-06-29 13:03 ` Bryan O'Donoghue
  4 siblings, 0 replies; 17+ messages in thread
From: Bryan O'Donoghue @ 2022-06-29 13:03 UTC (permalink / raw)
  To: ilia.lin, agross, bjorn.andersson, rafael, viresh.kumar, robh+dt,
	krzysztof.kozlowski+dt
  Cc: linux-pm, linux-arm-msm, Bryan O'Donoghue

Add in msm8939 as a CPR genpd cpufreq SoC.

Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
---
 drivers/cpufreq/qcom-cpufreq-nvmem.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/cpufreq/qcom-cpufreq-nvmem.c b/drivers/cpufreq/qcom-cpufreq-nvmem.c
index 355c8b99e974a..63cbb6b57e64b 100644
--- a/drivers/cpufreq/qcom-cpufreq-nvmem.c
+++ b/drivers/cpufreq/qcom-cpufreq-nvmem.c
@@ -453,6 +453,7 @@ static struct platform_driver qcom_cpufreq_driver = {
 
 static const struct of_device_id qcom_cpufreq_match_list[] __initconst = {
 	{ .compatible = "qcom,apq8096", .data = &match_data_kryo },
+	{ .compatible = "qcom,msm8939", .data = &match_data_cpr_genpd },
 	{ .compatible = "qcom,msm8996", .data = &match_data_kryo },
 	{ .compatible = "qcom,qcs404", .data = &match_data_cpr_genpd },
 	{ .compatible = "qcom,ipq8064", .data = &match_data_krait },
-- 
2.36.1


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* Re: [RESEND PATCH 1/5] dt-bindings: opp: Add missing compat devices
  2022-06-29 13:02 ` [RESEND PATCH 1/5] dt-bindings: opp: Add missing compat devices Bryan O'Donoghue
@ 2022-06-29 18:19   ` Krzysztof Kozlowski
  2022-06-29 22:36   ` Rob Herring
  2022-06-30 21:16   ` Rob Herring
  2 siblings, 0 replies; 17+ messages in thread
From: Krzysztof Kozlowski @ 2022-06-29 18:19 UTC (permalink / raw)
  To: Bryan O'Donoghue, ilia.lin, agross, bjorn.andersson, rafael,
	viresh.kumar, robh+dt, krzysztof.kozlowski+dt
  Cc: linux-pm, linux-arm-msm, krzk+dt, devicetree

On 29/06/2022 15:02, Bryan O'Donoghue wrote:
> A number of devices listed in drivers/cpufreq/qcom-cpufreq-nvmem.c appear
> to be missing from the compatible list.
> 
> Cc: ilia.lin@kernel.org
> Cc: robh+dt@kernel.org
> Cc: krzk+dt@kernel.org
> Cc: devicetree@vger.kernel.org
> Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
> ---

Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>


Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [RESEND PATCH 2/5] dt-bindings: opp: Add msm8939 to the compatible list
  2022-06-29 13:03 ` [RESEND PATCH 2/5] dt-bindings: opp: Add msm8939 to the compatible list Bryan O'Donoghue
@ 2022-06-29 18:20   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 17+ messages in thread
From: Krzysztof Kozlowski @ 2022-06-29 18:20 UTC (permalink / raw)
  To: Bryan O'Donoghue, ilia.lin, agross, bjorn.andersson, rafael,
	viresh.kumar, robh+dt, krzysztof.kozlowski+dt
  Cc: linux-pm, linux-arm-msm, krzk+dt, devicetree

On 29/06/2022 15:03, Bryan O'Donoghue wrote:
> msm8939 will uses this driver instead of the generic dt-cpufreq. Add to the
> compatible list.
> 
> Cc: ilia.lin@kernel.org
> Cc: robh+dt@kernel.org
> Cc: krzk+dt@kernel.org
> Cc: devicetree@vger.kernel.org
> Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>


Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [RESEND PATCH 4/5] cpufreq: qcom-cpufreq-nvmem: Rename qcs404 data to cpr_genpd
  2022-06-29 13:03 ` [RESEND PATCH 4/5] cpufreq: qcom-cpufreq-nvmem: Rename qcs404 data to cpr_genpd Bryan O'Donoghue
@ 2022-06-29 19:11   ` Stephan Gerhold
  2022-06-30  4:05     ` Bryan O'Donoghue
  2022-07-13 13:50   ` Dmitry Baryshkov
  1 sibling, 1 reply; 17+ messages in thread
From: Stephan Gerhold @ 2022-06-29 19:11 UTC (permalink / raw)
  To: Bryan O'Donoghue
  Cc: ilia.lin, agross, bjorn.andersson, rafael, viresh.kumar, robh+dt,
	krzysztof.kozlowski+dt, linux-pm, linux-arm-msm

On Wed, Jun 29, 2022 at 02:03:02PM +0100, Bryan O'Donoghue wrote:
> At the moment the CPR genpd based code is named after the qcs404 however
> msm8936, msm8939 and other antecedent processors of the qcs404 can also
> make use of this data.
> 
> Rename it to reflect a more generic use.
> 
> Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>

There is another power domain that needs to be scaled together with the
CPU frequency on MSM8916 and MSM8939: (VDD)MX. How do you handle that?

In downstream this is part of the CPR driver and specified as follows:

	qcom,vdd-mx-corner-map = <4 5 7>;
	qcom,vdd-mx-vmin-method = <4>;
	vdd-mx-supply = <&pm8916_l3_corner_ao>;
	qcom,vdd-mx-vmax = <7>;
	qcom,cpr-corner-map = <1 1 2 2 3 3 3 3 3>; /* MSM8916 */
	qcom,cpr-corner-map = <1 1 1 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3
			       3 3 3 3 3 3 3 3>; /* MSM8939 */

On MSM8916 this means to vote for MX corner 4 (&rpmpd_opp_svs_soc) for
the first two frequencies, then corner 5 (&rpmpd_opp_nominal) and corner 7
(&rpmpd_opp_super_turbo) for the remaining CPU frequencies. It's similar
for MSM8939, you just have more OPPs there.

There was a semi-related discussion about this in [1] (a bit mixed with
potential ways how to do CPU frequency scaling without CPR). It's been a
while but I think the conclusion back then was that it's easiest to
attach both "mx" and "cpr" in this driver and then scale it as part of
the OPP table.

[1]: https://lore.kernel.org/linux-arm-msm/20200403013119.GB20625@builder.lan/

I'll attach an excerpt of the changes that I used on MSM8916 at the end
of the mail. Note that it does not actually work as-is: IIRC at the
moment there is still nothing that actually enables the power domains
listed for CPUs. The CPR driver does not check that, but rpmpd does and
just ignores the votes.

I submitted a possible patch for this but it just got stuck at some
point because of all the complexity involved:
https://lore.kernel.org/linux-pm/20200826093328.88268-1-stephan@gerhold.net/

Shortly said: I think you do not just want "cpr" here but also "mx".

Thanks,
Stephan

static const char *msm8916_genpd_names[] = { "mx", "cpr", NULL };

cpu@0 {
	power-domains = <&CPU_PD0>, <&rpmpd MSM8916_VDDMX_AO>, <&cpr>;
	power-domain-names = "psci", "mx", "cpr";
};

cpu_opp_table: cpu-opp-table {
	compatible = "operating-points-v2-kryo-cpu";
	opp-shared;

	opp-200000000 {
		opp-hz = /bits/ 64 <200000000>;
		required-opps = <&rpmpd_opp_svs_soc>, <&cpr_opp1>;
	};
	opp-400000000 {
		opp-hz = /bits/ 64 <400000000>;
		required-opps = <&rpmpd_opp_svs_soc>, <&cpr_opp2>;
	};
	opp-533333000 {
		opp-hz = /bits/ 64 <533333000>;
		required-opps = <&rpmpd_opp_nominal>, <&cpr_opp3>;
	};
	opp-800000000 {
		opp-hz = /bits/ 64 <800000000>;
		required-opps = <&rpmpd_opp_nominal>, <&cpr_opp4>;
	};
	opp-998400000 {
		opp-hz = /bits/ 64 <998400000>;
		required-opps = <&rpmpd_opp_super_turbo>, <&cpr_opp5>;
	};
	opp-1094400000 {
		opp-hz = /bits/ 64 <1094400000>;
		required-opps = <&rpmpd_opp_super_turbo>, <&cpr_opp6>;
	};
	opp-1152000000 {
		opp-hz = /bits/ 64 <1152000000>;
		required-opps = <&rpmpd_opp_super_turbo>, <&cpr_opp7>;
	};
	opp-1209600000 {
		opp-hz = /bits/ 64 <1209600000>;
		required-opps = <&rpmpd_opp_super_turbo>, <&cpr_opp8>;
	};
	opp-1363200000 {
		opp-hz = /bits/ 64 <1363200000>;
		required-opps = <&rpmpd_opp_super_turbo>, <&cpr_opp9>;
	};
};

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [RESEND PATCH 1/5] dt-bindings: opp: Add missing compat devices
  2022-06-29 13:02 ` [RESEND PATCH 1/5] dt-bindings: opp: Add missing compat devices Bryan O'Donoghue
  2022-06-29 18:19   ` Krzysztof Kozlowski
@ 2022-06-29 22:36   ` Rob Herring
  2022-06-30  4:10     ` Bryan O'Donoghue
  2022-06-30 21:16   ` Rob Herring
  2 siblings, 1 reply; 17+ messages in thread
From: Rob Herring @ 2022-06-29 22:36 UTC (permalink / raw)
  To: Bryan O'Donoghue
  Cc: krzysztof.kozlowski+dt, devicetree, ilia.lin, robh+dt, agross,
	linux-pm, rafael, bjorn.andersson, krzk+dt, viresh.kumar,
	linux-arm-msm

On Wed, 29 Jun 2022 14:02:59 +0100, Bryan O'Donoghue wrote:
> A number of devices listed in drivers/cpufreq/qcom-cpufreq-nvmem.c appear
> to be missing from the compatible list.
> 
> Cc: ilia.lin@kernel.org
> Cc: robh+dt@kernel.org
> Cc: krzk+dt@kernel.org
> Cc: devicetree@vger.kernel.org
> Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
> ---
>  .../devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml     | 6 ++++++
>  1 file changed, 6 insertions(+)
> 

My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):

yamllint warnings/errors:

dtschema/dtc warnings/errors:
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@0: 'power-domains' is a required property
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@0: 'power-domain-names' is a required property
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@1: 'power-domains' is a required property
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@1: 'power-domain-names' is a required property
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@100: 'power-domains' is a required property
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@100: 'power-domain-names' is a required property
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@101: 'power-domains' is a required property
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@101: 'power-domain-names' is a required property
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-0:opp-307200000: 'required-opps' is a required property
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-0:opp-1401600000: 'required-opps' is a required property
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-0:opp-1593600000: 'required-opps' is a required property
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-1:opp-307200000: 'required-opps' is a required property
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-1:opp-1804800000: 'required-opps' is a required property
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-1:opp-1900800000: 'required-opps' is a required property
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-1:opp-2150400000: 'required-opps' is a required property
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml

doc reference errors (make refcheckdocs):

See https://patchwork.ozlabs.org/patch/

This check can fail if there are any dependencies. The base for a patch
series is generally the most recent rc1.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit.


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [RESEND PATCH 4/5] cpufreq: qcom-cpufreq-nvmem: Rename qcs404 data to cpr_genpd
  2022-06-29 19:11   ` Stephan Gerhold
@ 2022-06-30  4:05     ` Bryan O'Donoghue
  2022-06-30 18:25       ` Stephan Gerhold
  0 siblings, 1 reply; 17+ messages in thread
From: Bryan O'Donoghue @ 2022-06-30  4:05 UTC (permalink / raw)
  To: Stephan Gerhold
  Cc: ilia.lin, agross, bjorn.andersson, rafael, viresh.kumar, robh+dt,
	krzysztof.kozlowski+dt, linux-pm, linux-arm-msm

On 29/06/2022 20:11, Stephan Gerhold wrote:
> On Wed, Jun 29, 2022 at 02:03:02PM +0100, Bryan O'Donoghue wrote:
>> At the moment the CPR genpd based code is named after the qcs404 however
>> msm8936, msm8939 and other antecedent processors of the qcs404 can also
>> make use of this data.
>>
>> Rename it to reflect a more generic use.
>>
>> Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
> 
> There is another power domain that needs to be scaled together with the
> CPU frequency on MSM8916 and MSM8939: (VDD)MX. How do you handle that?
> 

Short answer, in another series to enable CPR on 5.x

We have code for CPR in a 4.19 tree that works but, it needs more work 
to be upstream-fit on 5.x.

CPR is deliberately omitted here to be submitted later.

In this series I'm just switching away from the default 
cpufreq-dt-platdev which breaks booting to qcom-cpufreq-nvmem.

Fair enough ?

---
bod

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [RESEND PATCH 1/5] dt-bindings: opp: Add missing compat devices
  2022-06-29 22:36   ` Rob Herring
@ 2022-06-30  4:10     ` Bryan O'Donoghue
  2022-06-30 21:16       ` Rob Herring
  0 siblings, 1 reply; 17+ messages in thread
From: Bryan O'Donoghue @ 2022-06-30  4:10 UTC (permalink / raw)
  To: Rob Herring, Bryan O'Donoghue
  Cc: krzysztof.kozlowski+dt, devicetree, ilia.lin, robh+dt, agross,
	linux-pm, rafael, bjorn.andersson, krzk+dt, viresh.kumar,
	linux-arm-msm

On 29/06/2022 23:36, Rob Herring wrote:
> On Wed, 29 Jun 2022 14:02:59 +0100, Bryan O'Donoghue wrote:
>> A number of devices listed in drivers/cpufreq/qcom-cpufreq-nvmem.c appear
>> to be missing from the compatible list.
>>
>> Cc: ilia.lin@kernel.org
>> Cc: robh+dt@kernel.org
>> Cc: krzk+dt@kernel.org
>> Cc: devicetree@vger.kernel.org
>> Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
>> ---
>>   .../devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml     | 6 ++++++
>>   1 file changed, 6 insertions(+)
>>
> 
> My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
> on your patch (DT_CHECKER_FLAGS is new in v5.13):
> 
> yamllint warnings/errors:
> 
> dtschema/dtc warnings/errors:
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@0: 'power-domains' is a required property
> 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@0: 'power-domain-names' is a required property
> 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@1: 'power-domains' is a required property
> 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@1: 'power-domain-names' is a required property
> 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@100: 'power-domains' is a required property
> 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@100: 'power-domain-names' is a required property
> 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@101: 'power-domains' is a required property
> 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@101: 'power-domain-names' is a required property
> 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-0:opp-307200000: 'required-opps' is a required property
> 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-0:opp-1401600000: 'required-opps' is a required property
> 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-0:opp-1593600000: 'required-opps' is a required property
> 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-1:opp-307200000: 'required-opps' is a required property
> 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-1:opp-1804800000: 'required-opps' is a required property
> 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-1:opp-1900800000: 'required-opps' is a required property
> 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-1:opp-2150400000: 'required-opps' is a required property
> 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> 
> doc reference errors (make refcheckdocs):
> 
> See https://patchwork.ozlabs.org/patch/
> 
> This check can fail if there are any dependencies. The base for a patch
> series is generally the most recent rc1.
> 
> If you already ran 'make dt_binding_check' and didn't see the above
> error(s), then make sure 'yamllint' is installed and dt-schema is up to
> date:
> 
> pip3 install dtschema --upgrade
> 
> Please check and re-submit.
> 

Well I didn't see those errors but, I don't mind fixing them.

I'll do a V2 for these

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [RESEND PATCH 4/5] cpufreq: qcom-cpufreq-nvmem: Rename qcs404 data to cpr_genpd
  2022-06-30  4:05     ` Bryan O'Donoghue
@ 2022-06-30 18:25       ` Stephan Gerhold
  0 siblings, 0 replies; 17+ messages in thread
From: Stephan Gerhold @ 2022-06-30 18:25 UTC (permalink / raw)
  To: Bryan O'Donoghue
  Cc: ilia.lin, agross, bjorn.andersson, rafael, viresh.kumar, robh+dt,
	krzysztof.kozlowski+dt, linux-pm, linux-arm-msm

On Thu, Jun 30, 2022 at 05:05:59AM +0100, Bryan O'Donoghue wrote:
> On 29/06/2022 20:11, Stephan Gerhold wrote:
> > On Wed, Jun 29, 2022 at 02:03:02PM +0100, Bryan O'Donoghue wrote:
> > > At the moment the CPR genpd based code is named after the qcs404 however
> > > msm8936, msm8939 and other antecedent processors of the qcs404 can also
> > > make use of this data.
> > > 
> > > Rename it to reflect a more generic use.
> > > 
> > > Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
> > 
> > There is another power domain that needs to be scaled together with the
> > CPU frequency on MSM8916 and MSM8939: (VDD)MX. How do you handle that?
> > 
> 
> Short answer, in another series to enable CPR on 5.x
> 
> We have code for CPR in a 4.19 tree that works but, it needs more work to be
> upstream-fit on 5.x.
> 
> CPR is deliberately omitted here to be submitted later.
> 

I agree with this decision (doing CPR properly is way too complicated to
block the entire msm8939.dtsi with this).

> In this series I'm just switching away from the default cpufreq-dt-platdev
> which breaks booting to qcom-cpufreq-nvmem.
> 
> Fair enough ?

... but then I don't understand: Why do you need this patch set? You
only need to attach the "cpr" power domain in qcom-cpufreq-nvmem if
you're actually using CPR.

I would recommend adding MSM8939 in a similar way to MSM8916, so without
using qcom-cpufreq-nvmem for now. Then we can add CPR on both platforms
in a similar way later.

Thanks,
Stephan

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [RESEND PATCH 1/5] dt-bindings: opp: Add missing compat devices
  2022-06-30  4:10     ` Bryan O'Donoghue
@ 2022-06-30 21:16       ` Rob Herring
  0 siblings, 0 replies; 17+ messages in thread
From: Rob Herring @ 2022-06-30 21:16 UTC (permalink / raw)
  To: Bryan O'Donoghue
  Cc: Bryan O'Donoghue, krzysztof.kozlowski+dt, devicetree,
	ilia.lin, agross, linux-pm, rafael, bjorn.andersson, krzk+dt,
	viresh.kumar, linux-arm-msm

On Thu, Jun 30, 2022 at 05:10:34AM +0100, Bryan O'Donoghue wrote:
> On 29/06/2022 23:36, Rob Herring wrote:
> > On Wed, 29 Jun 2022 14:02:59 +0100, Bryan O'Donoghue wrote:
> > > A number of devices listed in drivers/cpufreq/qcom-cpufreq-nvmem.c appear
> > > to be missing from the compatible list.
> > > 
> > > Cc: ilia.lin@kernel.org
> > > Cc: robh+dt@kernel.org
> > > Cc: krzk+dt@kernel.org
> > > Cc: devicetree@vger.kernel.org
> > > Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
> > > ---
> > >   .../devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml     | 6 ++++++
> > >   1 file changed, 6 insertions(+)
> > > 
> > 
> > My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
> > on your patch (DT_CHECKER_FLAGS is new in v5.13):
> > 
> > yamllint warnings/errors:
> > 
> > dtschema/dtc warnings/errors:
> > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@0: 'power-domains' is a required property
> > 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@0: 'power-domain-names' is a required property
> > 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@1: 'power-domains' is a required property
> > 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@1: 'power-domain-names' is a required property
> > 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@100: 'power-domains' is a required property
> > 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@100: 'power-domain-names' is a required property
> > 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@101: 'power-domains' is a required property
> > 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: cpus:cpu@101: 'power-domain-names' is a required property
> > 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-0:opp-307200000: 'required-opps' is a required property
> > 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-0:opp-1401600000: 'required-opps' is a required property
> > 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-0:opp-1593600000: 'required-opps' is a required property
> > 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-1:opp-307200000: 'required-opps' is a required property
> > 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-1:opp-1804800000: 'required-opps' is a required property
> > 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-1:opp-1900800000: 'required-opps' is a required property
> > 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/opp/opp-v2-kryo-cpu.example.dtb: /: opp-table-1:opp-2150400000: 'required-opps' is a required property
> > 	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml
> > 
> > doc reference errors (make refcheckdocs):
> > 
> > See https://patchwork.ozlabs.org/patch/
> > 
> > This check can fail if there are any dependencies. The base for a patch
> > series is generally the most recent rc1.
> > 
> > If you already ran 'make dt_binding_check' and didn't see the above
> > error(s), then make sure 'yamllint' is installed and dt-schema is up to
> > date:
> > 
> > pip3 install dtschema --upgrade
> > 
> > Please check and re-submit.
> > 
> 
> Well I didn't see those errors but, I don't mind fixing them.
> 
> I'll do a V2 for these

This might be fixed already by Krzysztof.

Rob

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [RESEND PATCH 1/5] dt-bindings: opp: Add missing compat devices
  2022-06-29 13:02 ` [RESEND PATCH 1/5] dt-bindings: opp: Add missing compat devices Bryan O'Donoghue
  2022-06-29 18:19   ` Krzysztof Kozlowski
  2022-06-29 22:36   ` Rob Herring
@ 2022-06-30 21:16   ` Rob Herring
  2 siblings, 0 replies; 17+ messages in thread
From: Rob Herring @ 2022-06-30 21:16 UTC (permalink / raw)
  To: Bryan O'Donoghue
  Cc: robh+dt, linux-pm, ilia.lin, agross, devicetree, linux-arm-msm,
	krzk+dt, bjorn.andersson, rafael, viresh.kumar,
	krzysztof.kozlowski+dt

On Wed, 29 Jun 2022 14:02:59 +0100, Bryan O'Donoghue wrote:
> A number of devices listed in drivers/cpufreq/qcom-cpufreq-nvmem.c appear
> to be missing from the compatible list.
> 
> Cc: ilia.lin@kernel.org
> Cc: robh+dt@kernel.org
> Cc: krzk+dt@kernel.org
> Cc: devicetree@vger.kernel.org
> Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
> ---
>  .../devicetree/bindings/cpufreq/qcom-cpufreq-nvmem.yaml     | 6 ++++++
>  1 file changed, 6 insertions(+)
> 

Acked-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [RESEND PATCH 4/5] cpufreq: qcom-cpufreq-nvmem: Rename qcs404 data to cpr_genpd
  2022-06-29 13:03 ` [RESEND PATCH 4/5] cpufreq: qcom-cpufreq-nvmem: Rename qcs404 data to cpr_genpd Bryan O'Donoghue
  2022-06-29 19:11   ` Stephan Gerhold
@ 2022-07-13 13:50   ` Dmitry Baryshkov
  2022-07-13 14:52     ` Bryan O'Donoghue
  1 sibling, 1 reply; 17+ messages in thread
From: Dmitry Baryshkov @ 2022-07-13 13:50 UTC (permalink / raw)
  To: Bryan O'Donoghue, ilia.lin, agross, bjorn.andersson, rafael,
	viresh.kumar, robh+dt, krzysztof.kozlowski+dt
  Cc: linux-pm, linux-arm-msm

On 29/06/2022 16:03, Bryan O'Donoghue wrote:
> At the moment the CPR genpd based code is named after the qcs404 however
> msm8936, msm8939 and other antecedent processors of the qcs404 can also
> make use of this data.
> 
> Rename it to reflect a more generic use.
> 
> Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
> ---
>   drivers/cpufreq/qcom-cpufreq-nvmem.c | 8 ++++----
>   1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/cpufreq/qcom-cpufreq-nvmem.c b/drivers/cpufreq/qcom-cpufreq-nvmem.c
> index 6dfa86971a757..355c8b99e974a 100644
> --- a/drivers/cpufreq/qcom-cpufreq-nvmem.c
> +++ b/drivers/cpufreq/qcom-cpufreq-nvmem.c
> @@ -252,10 +252,10 @@ static const struct qcom_cpufreq_match_data match_data_krait = {
>   	.get_version = qcom_cpufreq_krait_name_version,
>   };
>   
> -static const char *qcs404_genpd_names[] = { "cpr", NULL };
> +static const char *cpr_genpd_names[] = { "cpr", NULL };

As a generic comment, as you are touching this piece of code, code you 
please move cpr_genpd_names above match_data_kryo? So that all 
match_data instances can use it.

>   
> -static const struct qcom_cpufreq_match_data match_data_qcs404 = {
> -	.genpd_names = qcs404_genpd_names,
> +static const struct qcom_cpufreq_match_data match_data_cpr_genpd = {
> +	.genpd_names = cpr_genpd_names,
>   };
>   
>   static int qcom_cpufreq_probe(struct platform_device *pdev)
> @@ -454,7 +454,7 @@ static struct platform_driver qcom_cpufreq_driver = {
>   static const struct of_device_id qcom_cpufreq_match_list[] __initconst = {
>   	{ .compatible = "qcom,apq8096", .data = &match_data_kryo },
>   	{ .compatible = "qcom,msm8996", .data = &match_data_kryo },
> -	{ .compatible = "qcom,qcs404", .data = &match_data_qcs404 },
> +	{ .compatible = "qcom,qcs404", .data = &match_data_cpr_genpd },
>   	{ .compatible = "qcom,ipq8064", .data = &match_data_krait },
>   	{ .compatible = "qcom,apq8064", .data = &match_data_krait },
>   	{ .compatible = "qcom,msm8974", .data = &match_data_krait },


-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [RESEND PATCH 4/5] cpufreq: qcom-cpufreq-nvmem: Rename qcs404 data to cpr_genpd
  2022-07-13 13:50   ` Dmitry Baryshkov
@ 2022-07-13 14:52     ` Bryan O'Donoghue
  0 siblings, 0 replies; 17+ messages in thread
From: Bryan O'Donoghue @ 2022-07-13 14:52 UTC (permalink / raw)
  To: Dmitry Baryshkov, ilia.lin, agross, bjorn.andersson, rafael,
	viresh.kumar, robh+dt, krzysztof.kozlowski+dt
  Cc: linux-pm, linux-arm-msm

On 13/07/2022 14:50, Dmitry Baryshkov wrote:
> On 29/06/2022 16:03, Bryan O'Donoghue wrote:
>> At the moment the CPR genpd based code is named after the qcs404 however
>> msm8936, msm8939 and other antecedent processors of the qcs404 can also
>> make use of this data.
>>
>> Rename it to reflect a more generic use.
>>
>> Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
>> ---
>>   drivers/cpufreq/qcom-cpufreq-nvmem.c | 8 ++++----
>>   1 file changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/cpufreq/qcom-cpufreq-nvmem.c 
>> b/drivers/cpufreq/qcom-cpufreq-nvmem.c
>> index 6dfa86971a757..355c8b99e974a 100644
>> --- a/drivers/cpufreq/qcom-cpufreq-nvmem.c
>> +++ b/drivers/cpufreq/qcom-cpufreq-nvmem.c
>> @@ -252,10 +252,10 @@ static const struct qcom_cpufreq_match_data 
>> match_data_krait = {
>>       .get_version = qcom_cpufreq_krait_name_version,
>>   };
>> -static const char *qcs404_genpd_names[] = { "cpr", NULL };
>> +static const char *cpr_genpd_names[] = { "cpr", NULL };
> 
> As a generic comment, as you are touching this piece of code, code you 
> please move cpr_genpd_names above match_data_kryo? So that all 
> match_data instances can use it.

NP.

This has been dropped in V3 per Stephan's preference to not touch 
anything CPR related until doing the whole thing for 8939.

---
bod


^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2022-07-13 14:52 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-29 13:02 [RESEND PATCH 0/5] qcom-cpufreq-nvmem: Add msm8939 with some fixups Bryan O'Donoghue
2022-06-29 13:02 ` [RESEND PATCH 1/5] dt-bindings: opp: Add missing compat devices Bryan O'Donoghue
2022-06-29 18:19   ` Krzysztof Kozlowski
2022-06-29 22:36   ` Rob Herring
2022-06-30  4:10     ` Bryan O'Donoghue
2022-06-30 21:16       ` Rob Herring
2022-06-30 21:16   ` Rob Herring
2022-06-29 13:03 ` [RESEND PATCH 2/5] dt-bindings: opp: Add msm8939 to the compatible list Bryan O'Donoghue
2022-06-29 18:20   ` Krzysztof Kozlowski
2022-06-29 13:03 ` [RESEND PATCH 3/5] cpufreq: blocklist Qualcomm msm8939 in cpufreq-dt-platdev Bryan O'Donoghue
2022-06-29 13:03 ` [RESEND PATCH 4/5] cpufreq: qcom-cpufreq-nvmem: Rename qcs404 data to cpr_genpd Bryan O'Donoghue
2022-06-29 19:11   ` Stephan Gerhold
2022-06-30  4:05     ` Bryan O'Donoghue
2022-06-30 18:25       ` Stephan Gerhold
2022-07-13 13:50   ` Dmitry Baryshkov
2022-07-13 14:52     ` Bryan O'Donoghue
2022-06-29 13:03 ` [RESEND PATCH 5/5] cpufreq: qcom-cpufreq-nvmem: Add msm8939 as cpr_genpd Bryan O'Donoghue

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.