58 lines · c
1/* SPDX-License-Identifier: GPL-2.0 */2#ifndef __DT_IDLE_GENPD3#define __DT_IDLE_GENPD4 5struct device_node;6struct generic_pm_domain;7 8#ifdef CONFIG_DT_IDLE_GENPD9 10void dt_idle_pd_free(struct generic_pm_domain *pd);11 12struct generic_pm_domain *dt_idle_pd_alloc(struct device_node *np,13 int (*parse_state)(struct device_node *, u32 *));14 15int dt_idle_pd_init_topology(struct device_node *np);16 17int dt_idle_pd_remove_topology(struct device_node *np);18 19struct device *dt_idle_attach_cpu(int cpu, const char *name);20 21void dt_idle_detach_cpu(struct device *dev);22 23#else24 25static inline void dt_idle_pd_free(struct generic_pm_domain *pd)26{27}28 29static inline struct generic_pm_domain *dt_idle_pd_alloc(30 struct device_node *np,31 int (*parse_state)(struct device_node *, u32 *))32{33 return NULL;34}35 36static inline int dt_idle_pd_init_topology(struct device_node *np)37{38 return 0;39}40 41static inline int dt_idle_pd_remove_topology(struct device_node *np)42{43 return 0;44}45 46static inline struct device *dt_idle_attach_cpu(int cpu, const char *name)47{48 return NULL;49}50 51static inline void dt_idle_detach_cpu(struct device *dev)52{53}54 55#endif56 57#endif58