1a5e0454cSUlf Hansson /* SPDX-License-Identifier: GPL-2.0 */ 2a5e0454cSUlf Hansson 3a5e0454cSUlf Hansson #ifndef __CPUIDLE_PSCI_H 4a5e0454cSUlf Hansson #define __CPUIDLE_PSCI_H 5a5e0454cSUlf Hansson 6*166bf835SUlf Hansson struct device; 7a65a397fSUlf Hansson struct device_node; 8a65a397fSUlf Hansson 9a65a397fSUlf Hansson void psci_set_domain_state(u32 state); 10*166bf835SUlf Hansson int psci_dt_parse_state_node(struct device_node *np, u32 *state); 11a65a397fSUlf Hansson 1203175619SUlf Hansson #ifdef CONFIG_ARM_PSCI_CPUIDLE_DOMAIN 13*166bf835SUlf Hansson struct device *psci_dt_attach_cpu(int cpu); 14*166bf835SUlf Hansson void psci_dt_detach_cpu(struct device *dev); 15a5e0454cSUlf Hansson #else 16*166bf835SUlf Hansson static inline struct device *psci_dt_attach_cpu(int cpu) { return NULL; } 17*166bf835SUlf Hansson static inline void psci_dt_detach_cpu(struct device *dev) { } 18a5e0454cSUlf Hansson #endif 19a5e0454cSUlf Hansson 20a5e0454cSUlf Hansson #endif /* __CPUIDLE_PSCI_H */ 21