1/* SPDX-License-Identifier: GPL-2.0 */ 2#ifndef __DT_IDLE_GENPD 3#define __DT_IDLE_GENPD 4 5struct device_node; 6struct generic_pm_domain; 7 8#ifdef CONFIG_DT_IDLE_GENPD 9 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#else 24 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#endif 56 57#endif 58