Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

Merge branches 'pm-sleep' and 'pm-cpufreq'

* pm-sleep:
  PM / sleep: fix freeze_ops NULL pointer dereferences
  PM / sleep: Fix request_firmware() error at resume

* pm-cpufreq:
  cpufreq: make table sentinel macros unsigned to match use
  cpufreq: move policy kobj to policy->cpu at resume
  cpufreq: cpu0: OPPs can be populated at runtime
  cpufreq: kirkwood: Reinstate cpufreq driver for ARCH_KIRKWOOD
  cpufreq: imx6q: Select PM_OPP
  cpufreq: sa1110: set memory type for h3600
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -8,10 +8,12 @@ Both required and optional properties listed below must be defined
under node /cpus/cpu@0.

Required properties:
- operating-points: Refer to Documentation/devicetree/bindings/power/opp.txt
  for details
- None

Optional properties:
- operating-points: Refer to Documentation/devicetree/bindings/power/opp.txt for
  details. OPPs *must* be supplied either via DT, i.e. this property, or
  populated at runtime.
- clock-latency: Specify the possible maximum transition latency for clock,
  in unit of nanoseconds.
- voltage-tolerance: Specify the CPU voltage tolerance in percentage.
+2 −1
Original line number Diff line number Diff line
@@ -104,6 +104,7 @@ config ARM_IMX6Q_CPUFREQ
	tristate "Freescale i.MX6 cpufreq support"
	depends on ARCH_MXC
	depends on REGULATOR_ANATOP
	select PM_OPP
	help
	  This adds cpufreq driver support for Freescale i.MX6 series SoCs.

@@ -118,7 +119,7 @@ config ARM_INTEGRATOR
	  If in doubt, say Y.

config ARM_KIRKWOOD_CPUFREQ
	def_bool MACH_KIRKWOOD
	def_bool ARCH_KIRKWOOD || MACH_KIRKWOOD
	help
	  This adds the CPUFreq driver for Marvell Kirkwood
	  SoCs.
+2 −5
Original line number Diff line number Diff line
@@ -152,11 +152,8 @@ static int cpu0_cpufreq_probe(struct platform_device *pdev)
		goto out_put_reg;
	}

	ret = of_init_opp_table(cpu_dev);
	if (ret) {
		pr_err("failed to init OPP table: %d\n", ret);
		goto out_put_clk;
	}
	/* OPPs might be populated at runtime, don't check for error here */
	of_init_opp_table(cpu_dev);

	ret = dev_pm_opp_init_cpufreq_table(cpu_dev, &freq_table);
	if (ret) {
+4 −2
Original line number Diff line number Diff line
@@ -1153,10 +1153,12 @@ static int __cpufreq_add_dev(struct device *dev, struct subsys_interface *sif)
	 * the creation of a brand new one. So we need to perform this update
	 * by invoking update_policy_cpu().
	 */
	if (recover_policy && cpu != policy->cpu)
	if (recover_policy && cpu != policy->cpu) {
		update_policy_cpu(policy, cpu);
	else
		WARN_ON(kobject_move(&policy->kobj, &dev->kobj));
	} else {
		policy->cpu = cpu;
	}

	cpumask_copy(policy->cpus, cpumask_of(cpu));

+1 −1
Original line number Diff line number Diff line
@@ -349,7 +349,7 @@ static int __init sa1110_clk_init(void)
			name = "K4S641632D";
		if (machine_is_h3100())
			name = "KM416S4030CT";
		if (machine_is_jornada720())
		if (machine_is_jornada720() || machine_is_h3600())
			name = "K4S281632B-1H";
		if (machine_is_nanoengine())
			name = "MT48LC8M16A2TG-75";
Loading