^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /* SPDX-License-Identifier: GPL-2.0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) #ifndef __CPUIDLE_PSCI_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) #define __CPUIDLE_PSCI_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) struct device;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) struct device_node;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) void psci_set_domain_state(u32 state);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) int psci_dt_parse_state_node(struct device_node *np, u32 *state);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) #ifdef CONFIG_ARM_PSCI_CPUIDLE_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) struct device *psci_dt_attach_cpu(int cpu);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) void psci_dt_detach_cpu(struct device *dev);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) static inline struct device *psci_dt_attach_cpu(int cpu) { return NULL; }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) static inline void psci_dt_detach_cpu(struct device *dev) { }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) #endif /* __CPUIDLE_PSCI_H */