Home
last modified time | relevance | path

Searched refs:devfreq (Results 1 – 23 of 23) sorted by relevance

/linux-4.4.14/drivers/devfreq/
Ddevfreq.c52 static struct devfreq *find_device_devfreq(struct device *dev) in find_device_devfreq()
54 struct devfreq *tmp_devfreq; in find_device_devfreq()
76 static int devfreq_get_freq_level(struct devfreq *devfreq, unsigned long freq) in devfreq_get_freq_level() argument
80 for (lev = 0; lev < devfreq->profile->max_state; lev++) in devfreq_get_freq_level()
81 if (freq == devfreq->profile->freq_table[lev]) in devfreq_get_freq_level()
92 static int devfreq_update_status(struct devfreq *devfreq, unsigned long freq) in devfreq_update_status() argument
99 prev_lev = devfreq_get_freq_level(devfreq, devfreq->previous_freq); in devfreq_update_status()
105 devfreq->time_in_state[prev_lev] += in devfreq_update_status()
106 cur_time - devfreq->last_stat_updated; in devfreq_update_status()
108 lev = devfreq_get_freq_level(devfreq, freq); in devfreq_update_status()
[all …]
Dgovernor_userspace.c25 static int devfreq_userspace_func(struct devfreq *df, unsigned long *freq) in devfreq_userspace_func()
48 struct devfreq *devfreq = to_devfreq(dev); in store_freq() local
54 mutex_lock(&devfreq->lock); in store_freq()
55 data = devfreq->data; in store_freq()
60 err = update_devfreq(devfreq); in store_freq()
63 mutex_unlock(&devfreq->lock); in store_freq()
70 struct devfreq *devfreq = to_devfreq(dev); in show_freq() local
74 mutex_lock(&devfreq->lock); in show_freq()
75 data = devfreq->data; in show_freq()
81 mutex_unlock(&devfreq->lock); in show_freq()
[all …]
Dgovernor.h19 #define to_devfreq(DEV) container_of((DEV), struct devfreq, dev)
29 extern int update_devfreq(struct devfreq *devfreq);
31 extern void devfreq_monitor_start(struct devfreq *devfreq);
32 extern void devfreq_monitor_stop(struct devfreq *devfreq);
33 extern void devfreq_monitor_suspend(struct devfreq *devfreq);
34 extern void devfreq_monitor_resume(struct devfreq *devfreq);
35 extern void devfreq_interval_update(struct devfreq *devfreq,
Dgovernor_powersave.c16 static int devfreq_powersave_func(struct devfreq *df, in devfreq_powersave_func()
27 static int devfreq_powersave_handler(struct devfreq *devfreq, in devfreq_powersave_handler() argument
33 mutex_lock(&devfreq->lock); in devfreq_powersave_handler()
34 ret = update_devfreq(devfreq); in devfreq_powersave_handler()
35 mutex_unlock(&devfreq->lock); in devfreq_powersave_handler()
Dgovernor_performance.c16 static int devfreq_performance_func(struct devfreq *df, in devfreq_performance_func()
30 static int devfreq_performance_handler(struct devfreq *devfreq, in devfreq_performance_handler() argument
36 mutex_lock(&devfreq->lock); in devfreq_performance_handler()
37 ret = update_devfreq(devfreq); in devfreq_performance_handler()
38 mutex_unlock(&devfreq->lock); in devfreq_performance_handler()
Dgovernor_simpleondemand.c21 static int devfreq_simple_ondemand_func(struct devfreq *df, in devfreq_simple_ondemand_func()
96 static int devfreq_simple_ondemand_handler(struct devfreq *devfreq, in devfreq_simple_ondemand_handler() argument
101 devfreq_monitor_start(devfreq); in devfreq_simple_ondemand_handler()
105 devfreq_monitor_stop(devfreq); in devfreq_simple_ondemand_handler()
109 devfreq_interval_update(devfreq, (unsigned int *)data); in devfreq_simple_ondemand_handler()
113 devfreq_monitor_suspend(devfreq); in devfreq_simple_ondemand_handler()
117 devfreq_monitor_resume(devfreq); in devfreq_simple_ondemand_handler()
DKconfig6 devfreq, a generic DVFS framework can be registered for a device
7 in order to let the governor provided to devfreq choose an
12 notification to "nb", a notifier block, of devfreq.
16 determined by the single device's state, an instance of devfreq
19 to a device by 1-to-1. The device registering devfreq takes the
22 given to devfreq.
24 When OPP is used with the devfreq device, it is recommended to
25 register devfreq's nb to the OPP's notifier head. If OPP is
26 used with the devfreq device, you may use OPP helper
27 functions defined in devfreq.h.
[all …]
Dtegra-devfreq.c162 struct devfreq *devfreq; member
375 mutex_lock(&tegra->devfreq->lock); in actmon_thread_isr()
376 update_devfreq(tegra->devfreq); in actmon_thread_isr()
377 mutex_unlock(&tegra->devfreq->lock); in actmon_thread_isr()
541 static int tegra_governor_get_target(struct devfreq *devfreq, in tegra_governor_get_target() argument
551 err = devfreq_update_stats(devfreq); in tegra_governor_get_target()
555 stat = &devfreq->last_status; in tegra_governor_get_target()
572 static int tegra_governor_event_handler(struct devfreq *devfreq, in tegra_governor_event_handler() argument
578 tegra = dev_get_drvdata(devfreq->dev.parent); in tegra_governor_event_handler()
582 devfreq_monitor_start(devfreq); in tegra_governor_event_handler()
[all …]
DMakefile1 obj-$(CONFIG_PM_DEVFREQ) += devfreq.o
2 obj-$(CONFIG_PM_DEVFREQ_EVENT) += devfreq-event.o
11 obj-$(CONFIG_ARM_TEGRA_DEVFREQ) += tegra-devfreq.o
/linux-4.4.14/include/linux/
Ddevfreq.h22 struct devfreq;
117 int (*get_target_freq)(struct devfreq *this, unsigned long *freq);
118 int (*event_handler)(struct devfreq *devfreq,
155 struct devfreq { struct
183 extern struct devfreq *devfreq_add_device(struct device *dev, argument
187 extern int devfreq_remove_device(struct devfreq *devfreq);
188 extern struct devfreq *devm_devfreq_add_device(struct device *dev,
193 struct devfreq *devfreq);
196 extern int devfreq_suspend_device(struct devfreq *devfreq);
197 extern int devfreq_resume_device(struct devfreq *devfreq);
[all …]
Ddevfreq_cooling.h47 of_devfreq_cooling_register_power(struct device_node *np, struct devfreq *df,
50 of_devfreq_cooling_register(struct device_node *np, struct devfreq *df);
51 struct thermal_cooling_device *devfreq_cooling_register(struct devfreq *df);
57 of_devfreq_cooling_register_power(struct device_node *np, struct devfreq *df, in of_devfreq_cooling_register_power()
64 of_devfreq_cooling_register(struct device_node *np, struct devfreq *df) in of_devfreq_cooling_register()
70 devfreq_cooling_register(struct devfreq *df) in devfreq_cooling_register()
/linux-4.4.14/Documentation/ABI/testing/
Dsysfs-class-devfreq1 What: /sys/class/devfreq/.../
5 Provide a place in sysfs for the devfreq objects.
6 This allows accessing various devfreq specific variables.
7 The name of devfreq object denoted as ... is same as the
8 name of device using devfreq.
10 What: /sys/class/devfreq/.../governor
14 The /sys/class/devfreq/.../governor show or set the name of the
15 governor used by the corresponding devfreq object.
17 What: /sys/class/devfreq/.../cur_freq
21 The /sys/class/devfreq/.../cur_freq shows the current
[all …]
/linux-4.4.14/drivers/thermal/
Ddevfreq_cooling.c52 struct devfreq *devfreq; member
108 struct device *dev = dfc->devfreq->dev.parent; in partition_enable_opps()
161 struct devfreq *df = dfc->devfreq; in devfreq_cooling_set_cur_state()
216 struct devfreq *df = dfc->devfreq; in get_static_power()
279 struct devfreq *df = dfc->devfreq; in devfreq_cooling_get_requested_power()
330 struct devfreq *df = dfc->devfreq; in devfreq_cooling_power2state()
386 struct devfreq *df = dfc->devfreq; in devfreq_cooling_gen_tables()
471 of_devfreq_cooling_register_power(struct device_node *np, struct devfreq *df, in of_devfreq_cooling_register_power()
483 dfc->devfreq = df; in of_devfreq_cooling_register_power()
537 of_devfreq_cooling_register(struct device_node *np, struct devfreq *df) in of_devfreq_cooling_register()
[all …]
DKconfig155 This implements the generic devfreq cooling mechanism through
156 frequency reduction for devices using devfreq.
162 devfreq should use the simple_ondemand governor.
/linux-4.4.14/drivers/devfreq/event/
DKconfig4 The devfreq-event device provide the raw data and events which
5 indicate the current state of devfreq-event device. The provided
6 data from devfreq-event device is used to monitor the state of
10 The devfreq-event device can support the various type of events
12 may be used by devfreq governor and other subsystem.
21 This add the devfreq-event driver for Exynos SoC. It provides PPMU
/linux-4.4.14/drivers/devfreq/exynos/
Dexynos5_bus.c51 struct devfreq *devfreq; member
337 data->devfreq = devm_devfreq_add_device(dev, &exynos5_devfreq_int_profile, in exynos5_busfreq_int_probe()
339 if (IS_ERR(data->devfreq)) in exynos5_busfreq_int_probe()
340 return PTR_ERR(data->devfreq); in exynos5_busfreq_int_probe()
342 err = devm_devfreq_register_opp_notifier(dev, data->devfreq); in exynos5_busfreq_int_probe()
Dexynos4_bus.c76 struct devfreq *devfreq; member
973 data->devfreq = devm_devfreq_add_device(dev, &exynos4_devfreq_profile, in exynos4_busfreq_probe()
975 if (IS_ERR(data->devfreq)) in exynos4_busfreq_probe()
976 return PTR_ERR(data->devfreq); in exynos4_busfreq_probe()
985 err = devm_devfreq_register_opp_notifier(dev, data->devfreq); in exynos4_busfreq_probe()
/linux-4.4.14/Documentation/devicetree/bindings/devfreq/event/
Dexynos-ppmu.txt9 The Exynos PPMU driver uses the devfreq-event class to provide event data
10 to various devfreq devices. The devfreq devices would use the event data when
/linux-4.4.14/drivers/scsi/ufs/
Dufshcd.h532 struct devfreq *devfreq; member
Dufshcd.c565 devfreq_resume_device(hba->devfreq); in ufshcd_ungate_work()
660 devfreq_suspend_device(hba->devfreq); in ufshcd_gate_work()
4308 devfreq_resume_device(hba->devfreq); in ufshcd_probe_hba()
5037 devfreq_suspend_device(hba->devfreq); in ufshcd_suspend()
5160 devfreq_resume_device(hba->devfreq); in ufshcd_resume()
5346 devfreq_remove_device(hba->devfreq); in ufshcd_remove()
5627 hba->devfreq = devfreq_add_device(dev, &ufs_devfreq_profile, in ufshcd_init()
5629 if (IS_ERR(hba->devfreq)) { in ufshcd_init()
5631 PTR_ERR(hba->devfreq)); in ufshcd_init()
5635 devfreq_suspend_device(hba->devfreq); in ufshcd_init()
/linux-4.4.14/drivers/
DMakefile156 obj-$(CONFIG_PM_DEVFREQ) += devfreq/
DKconfig155 source "drivers/devfreq/Kconfig"
/linux-4.4.14/
DMAINTAINERS3407 F: drivers/devfreq/