Commit 7912c9c6 authored by Rafael J. Wysocki's avatar Rafael J. Wysocki
Browse files

Merge tag 'cpufreq-arm-updates-5.20-rc1' of...

Merge tag 'cpufreq-arm-updates-5.20-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm

Pull cpufreq/ARM updates for 5.20-rc1 from Viresh Kumar:

"- Fix return error code in mtk_cpu_dvfs_info_init (Yang Yingliang).

 - Minor cleanups and support for new boards for Qcom cpufreq drivers
   (Bryan O'Donoghue, Konrad Dybcio, Pierre Gondois, and Yicong Yang).

 - Fix sparse warnings for Tegra driver (Viresh Kumar)."

* tag 'cpufreq-arm-updates-5.20-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm:
  cpufreq: tegra194: Staticize struct tegra_cpufreq_soc instances
  dt-bindings: cpufreq: cpufreq-qcom-hw: Add SM6375 compatible
  dt-bindings: opp: Add msm8939 to the compatible list
  dt-bindings: opp: Add missing compat devices
  dt-bindings: opp: opp-v2-kryo-cpu: Fix example binding checks
  cpufreq: Change order of online() CB and policy->cpus modification
  cpufreq: qcom-hw: Remove deprecated irq_set_affinity_hint() call
  cpufreq: qcom-hw: Disable LMH irq when disabling policy
  cpufreq: qcom-hw: Reset cancel_throttle when policy is re-enabled
  cpufreq: qcom-cpufreq-hw: use HZ_PER_KHZ macro in units.h
  cpufreq: mediatek: fix error return code in mtk_cpu_dvfs_info_init()
parents a771ea64 33fe1cb2
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ properties:
      - description: v2 of CPUFREQ HW (EPSS)
        items:
          - enum:
              - qcom,sm6375-cpufreq-epss
              - qcom,sm8250-cpufreq-epss
          - const: qcom,cpufreq-epss

+7 −0
Original line number Diff line number Diff line
@@ -22,6 +22,13 @@ select:
    compatible:
      contains:
        enum:
          - qcom,apq8064
          - qcom,apq8096
          - qcom,ipq8064
          - qcom,msm8939
          - qcom,msm8960
          - qcom,msm8974
          - qcom,msm8996
          - qcom,qcs404
  required:
    - compatible
+15 −0
Original line number Diff line number Diff line
@@ -98,6 +98,8 @@ examples:
                capacity-dmips-mhz = <1024>;
                clocks = <&kryocc 0>;
                operating-points-v2 = <&cluster0_opp>;
                power-domains = <&cpr>;
                power-domain-names = "cpr";
                #cooling-cells = <2>;
                next-level-cache = <&L2_0>;
                L2_0: l2-cache {
@@ -115,6 +117,8 @@ examples:
                capacity-dmips-mhz = <1024>;
                clocks = <&kryocc 0>;
                operating-points-v2 = <&cluster0_opp>;
                power-domains = <&cpr>;
                power-domain-names = "cpr";
                #cooling-cells = <2>;
                next-level-cache = <&L2_0>;
            };
@@ -128,6 +132,8 @@ examples:
                capacity-dmips-mhz = <1024>;
                clocks = <&kryocc 1>;
                operating-points-v2 = <&cluster1_opp>;
                power-domains = <&cpr>;
                power-domain-names = "cpr";
                #cooling-cells = <2>;
                next-level-cache = <&L2_1>;
                L2_1: l2-cache {
@@ -145,6 +151,8 @@ examples:
                capacity-dmips-mhz = <1024>;
                clocks = <&kryocc 1>;
                operating-points-v2 = <&cluster1_opp>;
                power-domains = <&cpr>;
                power-domain-names = "cpr";
                #cooling-cells = <2>;
                next-level-cache = <&L2_1>;
            };
@@ -182,18 +190,21 @@ examples:
                opp-microvolt = <905000 905000 1140000>;
                opp-supported-hw = <0x7>;
                clock-latency-ns = <200000>;
                required-opps = <&cpr_opp1>;
            };
            opp-1401600000 {
                opp-hz = /bits/ 64 <1401600000>;
                opp-microvolt = <1140000 905000 1140000>;
                opp-supported-hw = <0x5>;
                clock-latency-ns = <200000>;
                required-opps = <&cpr_opp2>;
            };
            opp-1593600000 {
                opp-hz = /bits/ 64 <1593600000>;
                opp-microvolt = <1140000 905000 1140000>;
                opp-supported-hw = <0x1>;
                clock-latency-ns = <200000>;
                required-opps = <&cpr_opp3>;
            };
        };

@@ -207,24 +218,28 @@ examples:
                opp-microvolt = <905000 905000 1140000>;
                opp-supported-hw = <0x7>;
                clock-latency-ns = <200000>;
                required-opps = <&cpr_opp1>;
            };
            opp-1804800000 {
                opp-hz = /bits/ 64 <1804800000>;
                opp-microvolt = <1140000 905000 1140000>;
                opp-supported-hw = <0x6>;
                clock-latency-ns = <200000>;
                required-opps = <&cpr_opp4>;
            };
            opp-1900800000 {
                opp-hz = /bits/ 64 <1900800000>;
                opp-microvolt = <1140000 905000 1140000>;
                opp-supported-hw = <0x4>;
                clock-latency-ns = <200000>;
                required-opps = <&cpr_opp5>;
            };
            opp-2150400000 {
                opp-hz = /bits/ 64 <2150400000>;
                opp-microvolt = <1140000 905000 1140000>;
                opp-supported-hw = <0x1>;
                clock-latency-ns = <200000>;
                required-opps = <&cpr_opp6>;
            };
        };

+3 −3
Original line number Diff line number Diff line
@@ -1348,15 +1348,15 @@ static int cpufreq_online(unsigned int cpu)
	}

	if (!new_policy && cpufreq_driver->online) {
		/* Recover policy->cpus using related_cpus */
		cpumask_copy(policy->cpus, policy->related_cpus);

		ret = cpufreq_driver->online(policy);
		if (ret) {
			pr_debug("%s: %d: initialization failed\n", __func__,
				 __LINE__);
			goto out_exit_policy;
		}

		/* Recover policy->cpus using related_cpus */
		cpumask_copy(policy->cpus, policy->related_cpus);
	} else {
		cpumask_copy(policy->cpus, cpumask_of(cpu));

+1 −0
Original line number Diff line number Diff line
@@ -478,6 +478,7 @@ static int mtk_cpu_dvfs_info_init(struct mtk_cpu_dvfs_info *info, int cpu)
	if (info->soc_data->ccifreq_supported) {
		info->vproc_on_boot = regulator_get_voltage(info->proc_reg);
		if (info->vproc_on_boot < 0) {
			ret = info->vproc_on_boot;
			dev_err(info->cpu_dev,
				"invalid Vproc value: %d\n", info->vproc_on_boot);
			goto out_disable_inter_clock;
Loading