/*
 *  $Id: speedstep.c,v 1.3 2001/07/28 23:07:44 davej Exp $
 *
 *	(C) 2001  Dave Jones, Arjan van de ven.
 *
 * 	Licensed under the terms of the GNU GPL License version 2.
 *  Based upon reverse engineered information.
 *
 *  BIG FAT DISCLAIMER: Work in progress code. Possibly *dangerous*
 *
 *	Version $Id: speedstep.c,v 1.3 2001/07/28 23:07:44 davej Exp $
 */

#include <linux/kernel.h>
#include <linux/module.h> 
#include <linux/sched.h>
#include <linux/init.h>
#include <asm/msr.h>
#include <asm/timex.h>
#include <asm/io.h>
#include <linux/delay.h>
#include <linux/proc_fs.h>

static unsigned int cpufreq;

void set_cpu_frequency_speedstep(unsigned int Mhz, int fsb)
{
	printk (KERN_INFO "Setting speed with speedstep currently unsupported.\n");
	printk (KERN_INFO "Reverse engineering still in progress.\n");
}

int speedstep_init(void)
{
	unsigned long lo, hi;

	rdmsr (0x2a, lo, hi);
	if (lo==0x45080020)		cpufreq = 550;
	if (lo==0x46480020)		cpufreq = 700;

	return 0;
}

void speedstep_exit(void)
{
}

module_init(speedstep_init);
module_exit(speedstep_exit);

