Commit 5d83a2b1 authored by Rafael J. Wysocki's avatar Rafael J. Wysocki
Browse files
Merge devfreq updates for v6.5 from Chanwoo Choi:

"1. Reorder fieldls in 'struct devfreq_dev_status' in order to shrink
    the size of 'struct devfreqw_dev_status' without any behavior
    changes.

 2. Add exynos-ppmu.c driver as a soft module dependency in order to
    prevent the freeze issue between exynos-bus.c devfreq driver and
    exynos-ppmu.c devfreq event driver.

 3. Fix variable deferencing before NULL check on mtk-cci-devfreq.c"

* tag 'devfreq-next-for-6.5' of git://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/linux:
  PM / devfreq: mtk-cci: Fix variable deferencing before NULL check
  PM / devfreq: exynos: add Exynos PPMU as a soft module dependency
  PM / devfreq: Reorder fields in 'struct devfreq_dev_status'
parents 45a3e24f a83bfdca
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -518,6 +518,7 @@ static struct platform_driver exynos_bus_platdrv = {
};
module_platform_driver(exynos_bus_platdrv);

MODULE_SOFTDEP("pre: exynos_ppmu");
MODULE_DESCRIPTION("Generic Exynos Bus frequency driver");
MODULE_AUTHOR("Chanwoo Choi <cw00.choi@samsung.com>");
MODULE_LICENSE("GPL v2");
+2 −1
Original line number Diff line number Diff line
@@ -127,7 +127,7 @@ static int mtk_ccifreq_target(struct device *dev, unsigned long *freq,
			      u32 flags)
{
	struct mtk_ccifreq_drv *drv = dev_get_drvdata(dev);
	struct clk *cci_pll = clk_get_parent(drv->cci_clk);
	struct clk *cci_pll;
	struct dev_pm_opp *opp;
	unsigned long opp_rate;
	int voltage, pre_voltage, inter_voltage, target_voltage, ret;
@@ -139,6 +139,7 @@ static int mtk_ccifreq_target(struct device *dev, unsigned long *freq,
		return 0;

	inter_voltage = drv->inter_voltage;
	cci_pll = clk_get_parent(drv->cci_clk);

	opp_rate = *freq;
	opp = devfreq_recommended_opp(dev, &opp_rate, 1);
+2 −1
Original line number Diff line number Diff line
@@ -108,7 +108,6 @@ struct devfreq_dev_profile {
	unsigned long initial_freq;
	unsigned int polling_ms;
	enum devfreq_timer timer;
	bool is_cooling_device;

	int (*target)(struct device *dev, unsigned long *freq, u32 flags);
	int (*get_dev_status)(struct device *dev,
@@ -118,6 +117,8 @@ struct devfreq_dev_profile {

	unsigned long *freq_table;
	unsigned int max_state;

	bool is_cooling_device;
};

/**