History

Merge branches 'pm-sleep', 'pm-domains', 'pm-opp' and 'powercap'

* pm-sleep: PM / wakeirq: remove unnecessary parentheses PM / core: Clean up some function headers in power.h PM / hibernate: memory_bm_find_bit(): Tighten node optimisation * pm-domains: PM / Domains: Convert to dev_to_genpd_safe() in genpd_syscore_switch() mmc: tmio: Avoid boilerplate code in ->runtime_suspend() PM / Domains: Implement the ->start() callback for genpd PM / Domains: Introduce dev_pm_domain_start() * pm-opp: PM / OPP: Support adjusting OPP voltages at runtime * powercap: powercap/intel_rapl: add support for Cometlake desktop powercap/intel_rapl: add support for CometLake Mobile

Rafael J. Wysocki committed 6 years ago

Commit 5a97aa55 parents fa6a599 01ca482 fe0c2ba 16c71c5 f84fdcb12 files · +157 −48Browse files

Showing the changes to include/linux (3 of 12 files). Show all

Unified · Split

3 files
  1. include/linux/pm.h +2 −0
  2. include/linux/pm_domain.h +5 −0
  3. include/linux/pm_opp.h +13 −0
include/linux/pm.h+2−0
@@ -637,6 +637,7 @@ extern void dev_pm_put_subsys_data(struct device *dev); · 636 unmodified lines
637 * struct dev_pm_domain - power management domain representation.637 * struct dev_pm_domain - power management domain representation.
638 *638 *
639 * @ops: Power management operations associated with this domain.639 * @ops: Power management operations associated with this domain.
640 * @start: Called when a user needs to start the device via the domain.
640 * @detach: Called when removing a device from the domain.641 * @detach: Called when removing a device from the domain.
641 * @activate: Called before executing probe routines for bus types and drivers.642 * @activate: Called before executing probe routines for bus types and drivers.
642 * @sync: Called after successful driver probe.643 * @sync: Called after successful driver probe.
@@ -648,6 +649,7 @@ extern void dev_pm_put_subsys_data(struct device *dev); · 5 unmodified lines
648 */649 */
649struct dev_pm_domain {650struct dev_pm_domain {
650 struct dev_pm_ops ops;651 struct dev_pm_ops ops;
652 int (*start)(struct device *dev);
651 void (*detach)(struct device *dev, bool power_off);653 void (*detach)(struct device *dev, bool power_off);
652 int (*activate)(struct device *dev);654 int (*activate)(struct device *dev);
653 void (*sync)(struct device *dev);655 void (*sync)(struct device *dev);
include/linux/pm_domain.h+5−0
@@ -366,6 +366,7 @@ struct device *dev_pm_domain_attach_by_id(struct device *dev, · 365 unmodified lines
366struct device *dev_pm_domain_attach_by_name(struct device *dev,366struct device *dev_pm_domain_attach_by_name(struct device *dev,
367 const char *name);367 const char *name);
368void dev_pm_domain_detach(struct device *dev, bool power_off);368void dev_pm_domain_detach(struct device *dev, bool power_off);
369int dev_pm_domain_start(struct device *dev);
369void dev_pm_domain_set(struct device *dev, struct dev_pm_domain *pd);370void dev_pm_domain_set(struct device *dev, struct dev_pm_domain *pd);
370#else371#else
371static inline int dev_pm_domain_attach(struct device *dev, bool power_on)372static inline int dev_pm_domain_attach(struct device *dev, bool power_on)
@@ -383,6 +384,10 @@ static inline struct device *dev_pm_domain_attach_by_name(struct device *dev, · 11 unmodified lines
383 return NULL;384 return NULL;
384}385}
385static inline void dev_pm_domain_detach(struct device *dev, bool power_off) {}386static inline void dev_pm_domain_detach(struct device *dev, bool power_off) {}
387static inline int dev_pm_domain_start(struct device *dev)
388{
389 return 0;
390}
386static inline void dev_pm_domain_set(struct device *dev,391static inline void dev_pm_domain_set(struct device *dev,
387 struct dev_pm_domain *pd) {}392 struct dev_pm_domain *pd) {}
388#endif393#endif
include/linux/pm_opp.h+13−0
@@ -22,6 +22,7 @@ struct opp_table; · 21 unmodified lines
22 22
23enum dev_pm_opp_event {23enum dev_pm_opp_event {
24 OPP_EVENT_ADD, OPP_EVENT_REMOVE, OPP_EVENT_ENABLE, OPP_EVENT_DISABLE,24 OPP_EVENT_ADD, OPP_EVENT_REMOVE, OPP_EVENT_ENABLE, OPP_EVENT_DISABLE,
25 OPP_EVENT_ADJUST_VOLTAGE,
25};26};
26 27
27/**28/**
@@ -113,6 +114,10 @@ int dev_pm_opp_add(struct device *dev, unsigned long freq, · 85 unmodified lines
113void dev_pm_opp_remove(struct device *dev, unsigned long freq);114void dev_pm_opp_remove(struct device *dev, unsigned long freq);
114void dev_pm_opp_remove_all_dynamic(struct device *dev);115void dev_pm_opp_remove_all_dynamic(struct device *dev);
115 116
117int dev_pm_opp_adjust_voltage(struct device *dev, unsigned long freq,
118 unsigned long u_volt, unsigned long u_volt_min,
119 unsigned long u_volt_max);
120
116int dev_pm_opp_enable(struct device *dev, unsigned long freq);121int dev_pm_opp_enable(struct device *dev, unsigned long freq);
117 122
118int dev_pm_opp_disable(struct device *dev, unsigned long freq);123int dev_pm_opp_disable(struct device *dev, unsigned long freq);
@@ -242,6 +247,14 @@ static inline void dev_pm_opp_remove_all_dynamic(struct device *dev) · 123 unmodified lines
242{247{
243}248}
244 249
250static inline int
251dev_pm_opp_adjust_voltage(struct device *dev, unsigned long freq,
252 unsigned long u_volt, unsigned long u_volt_min,
253 unsigned long u_volt_max)
254{
255 return 0;
256}
257
245static inline int dev_pm_opp_enable(struct device *dev, unsigned long freq)258static inline int dev_pm_opp_enable(struct device *dev, unsigned long freq)
246{259{
247 return 0;260 return 0;

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t