summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@home.osdl.org>2003-09-09 00:38:31 -0700
committerLinus Torvalds <torvalds@home.osdl.org>2003-09-09 00:38:31 -0700
commit5be1676c2f6f17482b19d300a4cfbadf30bbf683 (patch)
tree80e5753e027116eab505a65e3ecc9fc94c464ad5 /include
parent2e926a15c9759980abb4d540723d605b9225f037 (diff)
parent5f27f4614e37155d0d5efab61140e30bef1e83f1 (diff)
Merge bk://linux-dj.bkbits.net/cpufreq
into home.osdl.org:/home/torvalds/v2.5/linux
Diffstat (limited to 'include')
-rw-r--r--include/asm-i386/ist.h32
-rw-r--r--include/asm-i386/setup.h1
-rw-r--r--include/linux/cpufreq.h10
3 files changed, 43 insertions, 0 deletions
diff --git a/include/asm-i386/ist.h b/include/asm-i386/ist.h
new file mode 100644
index 000000000000..d13d1e68afa9
--- /dev/null
+++ b/include/asm-i386/ist.h
@@ -0,0 +1,32 @@
+#ifndef _ASM_IST_H
+#define _ASM_IST_H
+
+/*
+ * Include file for the interface to IST BIOS
+ * Copyright 2002 Andy Grover <andrew.grover@intel.com>
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation; either version 2, or (at your option) any
+ * later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ */
+
+
+#ifdef __KERNEL__
+
+struct ist_info {
+ unsigned long signature;
+ unsigned long command;
+ unsigned long event;
+ unsigned long perf_level;
+};
+
+extern struct ist_info ist_info;
+
+#endif /* __KERNEL__ */
+#endif /* _ASM_IST_H */
diff --git a/include/asm-i386/setup.h b/include/asm-i386/setup.h
index 3160b947d2bd..9198a377748c 100644
--- a/include/asm-i386/setup.h
+++ b/include/asm-i386/setup.h
@@ -26,6 +26,7 @@
#define E820_MAP_NR (*(char*) (PARAM+E820NR))
#define E820_MAP ((struct e820entry *) (PARAM+E820MAP))
#define APM_BIOS_INFO (*(struct apm_bios_info *) (PARAM+0x40))
+#define IST_INFO (*(struct ist_info *) (PARAM+0x60))
#define DRIVE_INFO (*(struct drive_info_struct *) (PARAM+0x80))
#define SYS_DESC_TABLE (*(struct sys_desc_table_struct*)(PARAM+0xa0))
#define MOUNT_ROOT_RDONLY (*(unsigned short *) (PARAM+0x1F2))
diff --git a/include/linux/cpufreq.h b/include/linux/cpufreq.h
index d2403e44ff07..51790ee0ed6c 100644
--- a/include/linux/cpufreq.h
+++ b/include/linux/cpufreq.h
@@ -60,6 +60,13 @@ struct cpufreq_cpuinfo {
unsigned int transition_latency; /* in 10^(-9) s */
};
+struct cpufreq_real_policy {
+ unsigned int min; /* in kHz */
+ unsigned int max; /* in kHz */
+ unsigned int policy; /* see above */
+ struct cpufreq_governor *governor; /* see below */
+};
+
struct cpufreq_policy {
unsigned int cpu; /* cpu nr */
struct cpufreq_cpuinfo cpuinfo;/* see above */
@@ -74,6 +81,8 @@ struct cpufreq_policy {
struct semaphore lock; /* CPU ->setpolicy or ->target may
only be called once a time */
+ struct cpufreq_real_policy user_policy;
+
struct kobject kobj;
struct completion kobj_unregister;
};
@@ -217,6 +226,7 @@ struct freq_attr {
*********************************************************************/
int cpufreq_set_policy(struct cpufreq_policy *policy);
int cpufreq_get_policy(struct cpufreq_policy *policy, unsigned int cpu);
+int cpufreq_update_policy(unsigned int cpu);
/* the proc_intf.c needs this */
int cpufreq_parse_governor (char *str_governor, unsigned int *policy, struct cpufreq_governor **governor);