18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ci#ifndef __CPUIDLE_PSCI_H 48c2ecf20Sopenharmony_ci#define __CPUIDLE_PSCI_H 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_cistruct device; 78c2ecf20Sopenharmony_cistruct device_node; 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_civoid psci_set_domain_state(u32 state); 108c2ecf20Sopenharmony_ciint psci_dt_parse_state_node(struct device_node *np, u32 *state); 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_ci#ifdef CONFIG_ARM_PSCI_CPUIDLE_DOMAIN 138c2ecf20Sopenharmony_cistruct device *psci_dt_attach_cpu(int cpu); 148c2ecf20Sopenharmony_civoid psci_dt_detach_cpu(struct device *dev); 158c2ecf20Sopenharmony_ci#else 168c2ecf20Sopenharmony_cistatic inline struct device *psci_dt_attach_cpu(int cpu) { return NULL; } 178c2ecf20Sopenharmony_cistatic inline void psci_dt_detach_cpu(struct device *dev) { } 188c2ecf20Sopenharmony_ci#endif 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ci#endif /* __CPUIDLE_PSCI_H */ 21