cregit-Linux how code gets into the kernel

Release 4.11 drivers/base/power/power.h

#include <linux/pm_qos.h>


static inline void device_pm_init_common(struct device *dev) { if (!dev->power.early_init) { spin_lock_init(&dev->power.lock); dev->power.qos = NULL; dev->power.early_init = true; } }

Contributors

PersonTokensPropCommitsCommitProp
Rafael J. Wysocki49100.00%3100.00%
Total49100.00%3100.00%

#ifdef CONFIG_PM
static inline void pm_runtime_early_init(struct device *dev) { dev->power.disable_depth = 1; device_pm_init_common(dev); }

Contributors

PersonTokensPropCommitsCommitProp
Rafael J. Wysocki25100.00%1100.00%
Total25100.00%1100.00%

extern void pm_runtime_init(struct device *dev); extern void pm_runtime_reinit(struct device *dev); extern void pm_runtime_remove(struct device *dev); #define WAKE_IRQ_DEDICATED_ALLOCATED BIT(0) #define WAKE_IRQ_DEDICATED_MANAGED BIT(1) #define WAKE_IRQ_DEDICATED_MASK (WAKE_IRQ_DEDICATED_ALLOCATED | \ WAKE_IRQ_DEDICATED_MANAGED) struct wake_irq { struct device *dev; unsigned int status; int irq; }; extern void dev_pm_arm_wake_irq(struct wake_irq *wirq); extern void dev_pm_disarm_wake_irq(struct wake_irq *wirq); extern void dev_pm_enable_wake_irq_check(struct device *dev, bool can_change_status); extern void dev_pm_disable_wake_irq_check(struct device *dev); #ifdef CONFIG_PM_SLEEP extern int device_wakeup_attach_irq(struct device *dev, struct wake_irq *wakeirq); extern void device_wakeup_detach_irq(struct device *dev); extern void device_wakeup_arm_wake_irqs(void); extern void device_wakeup_disarm_wake_irqs(void); #else
static inline int device_wakeup_attach_irq(struct device *dev, struct wake_irq *wakeirq) { return 0; }

Contributors

PersonTokensPropCommitsCommitProp
Tony Lindgren20100.00%1100.00%
Total20100.00%1100.00%


static inline void device_wakeup_detach_irq(struct device *dev) { }

Contributors

PersonTokensPropCommitsCommitProp
Tony Lindgren11100.00%1100.00%
Total11100.00%1100.00%


static inline void device_wakeup_arm_wake_irqs(void) { }

Contributors

PersonTokensPropCommitsCommitProp
Tony Lindgren8100.00%1100.00%
Total8100.00%1100.00%


static inline void device_wakeup_disarm_wake_irqs(void) { }

Contributors

PersonTokensPropCommitsCommitProp
Tony Lindgren8100.00%1100.00%
Total8100.00%1100.00%

#endif /* CONFIG_PM_SLEEP */ /* * sysfs.c */ extern int dpm_sysfs_add(struct device *dev); extern void dpm_sysfs_remove(struct device *dev); extern void rpm_sysfs_remove(struct device *dev); extern int wakeup_sysfs_add(struct device *dev); extern void wakeup_sysfs_remove(struct device *dev); extern int pm_qos_sysfs_add_resume_latency(struct device *dev); extern void pm_qos_sysfs_remove_resume_latency(struct device *dev); extern int pm_qos_sysfs_add_flags(struct device *dev); extern void pm_qos_sysfs_remove_flags(struct device *dev); extern int pm_qos_sysfs_add_latency_tolerance(struct device *dev); extern void pm_qos_sysfs_remove_latency_tolerance(struct device *dev); #else /* CONFIG_PM */
static inline void pm_runtime_early_init(struct device *dev) { device_pm_init_common(dev); }

Contributors

PersonTokensPropCommitsCommitProp
Rafael J. Wysocki17100.00%1100.00%
Total17100.00%1100.00%


static inline void pm_runtime_init(struct device *dev) {}

Contributors

PersonTokensPropCommitsCommitProp
Alan Stern981.82%150.00%
Rafael J. Wysocki218.18%150.00%
Total11100.00%2100.00%


static inline void pm_runtime_reinit(struct device *dev) {}

Contributors

PersonTokensPropCommitsCommitProp
Ulf Hansson11100.00%1100.00%
Total11100.00%1100.00%


static inline void pm_runtime_remove(struct device *dev) {}

Contributors

PersonTokensPropCommitsCommitProp
Rafael J. Wysocki1090.91%150.00%
Alan Stern19.09%150.00%
Total11100.00%2100.00%


static inline int dpm_sysfs_add(struct device *dev) { return 0; }

Contributors

PersonTokensPropCommitsCommitProp
Rafael J. Wysocki15100.00%1100.00%
Total15100.00%1100.00%


static inline void dpm_sysfs_remove(struct device *dev) {}

Contributors

PersonTokensPropCommitsCommitProp
Rafael J. Wysocki11100.00%1100.00%
Total11100.00%1100.00%


static inline void rpm_sysfs_remove(struct device *dev) {}

Contributors

PersonTokensPropCommitsCommitProp
Rafael J. Wysocki11100.00%1100.00%
Total11100.00%1100.00%


static inline int wakeup_sysfs_add(struct device *dev) { return 0; }

Contributors

PersonTokensPropCommitsCommitProp
Rafael J. Wysocki15100.00%1100.00%
Total15100.00%1100.00%


static inline void wakeup_sysfs_remove(struct device *dev) {}

Contributors

PersonTokensPropCommitsCommitProp
Rafael J. Wysocki11100.00%1100.00%
Total11100.00%1100.00%


static inline int pm_qos_sysfs_add(struct device *dev) { return 0; }

Contributors

PersonTokensPropCommitsCommitProp
Rafael J. Wysocki15100.00%1100.00%
Total15100.00%1100.00%


static inline void pm_qos_sysfs_remove(struct device *dev) {}

Contributors

PersonTokensPropCommitsCommitProp
Rafael J. Wysocki11100.00%1100.00%
Total11100.00%1100.00%


static inline void dev_pm_arm_wake_irq(struct wake_irq *wirq) { }

Contributors

PersonTokensPropCommitsCommitProp
Tony Lindgren11100.00%1100.00%
Total11100.00%1100.00%


static inline void dev_pm_disarm_wake_irq(struct wake_irq *wirq) { }

Contributors

PersonTokensPropCommitsCommitProp
Tony Lindgren11100.00%1100.00%
Total11100.00%1100.00%


static inline void dev_pm_enable_wake_irq_check(struct device *dev, bool can_change_status) { }

Contributors

PersonTokensPropCommitsCommitProp
Tony Lindgren14100.00%1100.00%
Total14100.00%1100.00%


static inline void dev_pm_disable_wake_irq_check(struct device *dev) { }

Contributors

PersonTokensPropCommitsCommitProp
Tony Lindgren11100.00%1100.00%
Total11100.00%1100.00%

#endif #ifdef CONFIG_PM_SLEEP /* kernel/power/main.c */ extern int pm_async_enabled; /* drivers/base/power/main.c */ extern struct list_head dpm_list; /* The active device list */
static inline struct device *to_device(struct list_head *entry) { return container_of(entry, struct device, power.entry); }

Contributors

PersonTokensPropCommitsCommitProp
Patrick Mochel2592.59%150.00%
Alan Stern27.41%150.00%
Total27100.00%2100.00%

extern void device_pm_sleep_init(struct device *dev); extern void device_pm_add(struct device *); extern void device_pm_remove(struct device *); extern void device_pm_move_before(struct device *, struct device *); extern void device_pm_move_after(struct device *, struct device *); extern void device_pm_move_last(struct device *); extern void device_pm_check_callbacks(struct device *dev);
static inline bool device_pm_initialized(struct device *dev) { return dev->power.in_dpm_list; }

Contributors

PersonTokensPropCommitsCommitProp
Rafael J. Wysocki19100.00%1100.00%
Total19100.00%1100.00%

#else /* !CONFIG_PM_SLEEP */
static inline void device_pm_sleep_init(struct device *dev) {}

Contributors

PersonTokensPropCommitsCommitProp
Daniel Drake872.73%133.33%
Rafael J. Wysocki218.18%133.33%
Alan Stern19.09%133.33%
Total11100.00%3100.00%


static inline void device_pm_add(struct device *dev) {}

Contributors

PersonTokensPropCommitsCommitProp
Daniel Drake981.82%133.33%
Rafael J. Wysocki218.18%266.67%
Total11100.00%3100.00%


static inline void device_pm_remove(struct device *dev) { pm_runtime_remove(dev); }

Contributors

PersonTokensPropCommitsCommitProp
Rafael J. Wysocki17100.00%2100.00%
Total17100.00%2100.00%


static inline void device_pm_move_before(struct device *deva, struct device *devb) {}

Contributors

PersonTokensPropCommitsCommitProp
Cornelia Huck16100.00%1100.00%
Total16100.00%1100.00%


static inline void device_pm_move_after(struct device *deva, struct device *devb) {}

Contributors

PersonTokensPropCommitsCommitProp
Cornelia Huck16100.00%1100.00%
Total16100.00%1100.00%


static inline void device_pm_move_last(struct device *dev) {}

Contributors

PersonTokensPropCommitsCommitProp
Cornelia Huck11100.00%1100.00%
Total11100.00%1100.00%


static inline void device_pm_check_callbacks(struct device *dev) {}

Contributors

PersonTokensPropCommitsCommitProp
Tomeu Vizoso11100.00%1100.00%
Total11100.00%1100.00%


static inline bool device_pm_initialized(struct device *dev) { return device_is_registered(dev); }

Contributors

PersonTokensPropCommitsCommitProp
Rafael J. Wysocki18100.00%1100.00%
Total18100.00%1100.00%

#endif /* !CONFIG_PM_SLEEP */
static inline void device_pm_init(struct device *dev) { device_pm_init_common(dev); device_pm_sleep_init(dev); pm_runtime_init(dev); }

Contributors

PersonTokensPropCommitsCommitProp
Rafael J. Wysocki27100.00%1100.00%
Total27100.00%1100.00%


Overall Contributors

PersonTokensPropCommitsCommitProp
Rafael J. Wysocki41948.95%1047.62%
Tony Lindgren21324.88%29.52%
Cornelia Huck789.11%14.76%
Patrick Mochel485.61%29.52%
Tomeu Vizoso212.45%14.76%
Daniel Drake212.45%14.76%
Ulf Hansson212.45%14.76%
Mika Westerberg202.34%14.76%
Alan Stern151.75%29.52%
Total856100.00%21100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.