1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 */ 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * ppc_cbe_cpufreq.h 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * This file contains the definitions used by the cbe_cpufreq driver. 6*4882a593Smuzhiyun * 7*4882a593Smuzhiyun * (C) Copyright IBM Deutschland Entwicklung GmbH 2005-2007 8*4882a593Smuzhiyun * 9*4882a593Smuzhiyun * Author: Christian Krafft <krafft@de.ibm.com> 10*4882a593Smuzhiyun * 11*4882a593Smuzhiyun */ 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun #include <linux/cpufreq.h> 14*4882a593Smuzhiyun #include <linux/types.h> 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun int cbe_cpufreq_set_pmode(int cpu, unsigned int pmode); 17*4882a593Smuzhiyun int cbe_cpufreq_get_pmode(int cpu); 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun int cbe_cpufreq_set_pmode_pmi(int cpu, unsigned int pmode); 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun #if IS_ENABLED(CONFIG_CPU_FREQ_CBE_PMI) 22*4882a593Smuzhiyun extern bool cbe_cpufreq_has_pmi; 23*4882a593Smuzhiyun void cbe_cpufreq_pmi_policy_init(struct cpufreq_policy *policy); 24*4882a593Smuzhiyun void cbe_cpufreq_pmi_policy_exit(struct cpufreq_policy *policy); 25*4882a593Smuzhiyun void cbe_cpufreq_pmi_init(void); 26*4882a593Smuzhiyun void cbe_cpufreq_pmi_exit(void); 27*4882a593Smuzhiyun #else 28*4882a593Smuzhiyun #define cbe_cpufreq_has_pmi (0) cbe_cpufreq_pmi_policy_init(struct cpufreq_policy * policy)29*4882a593Smuzhiyunstatic inline void cbe_cpufreq_pmi_policy_init(struct cpufreq_policy *policy) {} cbe_cpufreq_pmi_policy_exit(struct cpufreq_policy * policy)30*4882a593Smuzhiyunstatic inline void cbe_cpufreq_pmi_policy_exit(struct cpufreq_policy *policy) {} cbe_cpufreq_pmi_init(void)31*4882a593Smuzhiyunstatic inline void cbe_cpufreq_pmi_init(void) {} cbe_cpufreq_pmi_exit(void)32*4882a593Smuzhiyunstatic inline void cbe_cpufreq_pmi_exit(void) {} 33*4882a593Smuzhiyun #endif 34