forked from mirrors/linux
		
	 4f19048fd0
			
		
	
	
		4f19048fd0
		
	
	
	
	
		
			
			Based on 1 normalized pattern(s): licensed under the terms of the gnu gpl license version 2 extracted by the scancode license scanner the SPDX license identifier GPL-2.0-only has been chosen to replace the boilerplate/reference in 62 file(s). Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Allison Randal <allison@lohutok.net> Reviewed-by: Kate Stewart <kstewart@linuxfoundation.org> Reviewed-by: Richard Fontana <rfontana@redhat.com> Cc: linux-spdx@vger.kernel.org Link: https://lkml.kernel.org/r/20190527070033.929121379@linutronix.de Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
		
			
				
	
	
		
			48 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0-only */
 | |
| /*
 | |
|  * (C) 2002 - 2003 Dominik Brodowski <linux@brodo.de>
 | |
|  *
 | |
|  *  Library for common functions for Intel SpeedStep v.1 and v.2 support
 | |
|  *
 | |
|  *  BIG FAT DISCLAIMER: Work in progress code. Possibly *dangerous*
 | |
|  */
 | |
| 
 | |
| 
 | |
| 
 | |
| /* processors */
 | |
| enum speedstep_processor {
 | |
| 	SPEEDSTEP_CPU_PIII_C_EARLY = 0x00000001,  /* Coppermine core */
 | |
| 	SPEEDSTEP_CPU_PIII_C	   = 0x00000002,  /* Coppermine core */
 | |
| 	SPEEDSTEP_CPU_PIII_T	   = 0x00000003,  /* Tualatin core */
 | |
| 	SPEEDSTEP_CPU_P4M	   = 0x00000004,  /* P4-M  */
 | |
| /* the following processors are not speedstep-capable and are not auto-detected
 | |
|  * in speedstep_detect_processor(). However, their speed can be detected using
 | |
|  * the speedstep_get_frequency() call. */
 | |
| 	SPEEDSTEP_CPU_PM	   = 0xFFFFFF03,  /* Pentium M  */
 | |
| 	SPEEDSTEP_CPU_P4D	   = 0xFFFFFF04,  /* desktop P4  */
 | |
| 	SPEEDSTEP_CPU_PCORE	   = 0xFFFFFF05,  /* Core */
 | |
| };
 | |
| 
 | |
| /* speedstep states -- only two of them */
 | |
| 
 | |
| #define SPEEDSTEP_HIGH	0x00000000
 | |
| #define SPEEDSTEP_LOW	0x00000001
 | |
| 
 | |
| 
 | |
| /* detect a speedstep-capable processor */
 | |
| extern enum speedstep_processor speedstep_detect_processor(void);
 | |
| 
 | |
| /* detect the current speed (in khz) of the processor */
 | |
| extern unsigned int speedstep_get_frequency(enum speedstep_processor processor);
 | |
| 
 | |
| 
 | |
| /* detect the low and high speeds of the processor. The callback
 | |
|  * set_state"'s first argument is either SPEEDSTEP_HIGH or
 | |
|  * SPEEDSTEP_LOW; the second argument is zero so that no
 | |
|  * cpufreq_notify_transition calls are initiated.
 | |
|  */
 | |
| extern unsigned int speedstep_get_freqs(enum speedstep_processor processor,
 | |
| 	unsigned int *low_speed,
 | |
| 	unsigned int *high_speed,
 | |
| 	unsigned int *transition_latency,
 | |
| 	void (*set_state) (unsigned int state));
 |