aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/cpufreq/longhaul.c
diff options
context:
space:
mode:
authorRafał Bilski <rafalbilski@interia.pl>2012-12-14 18:45:02 -0500
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2013-01-03 07:11:18 -0500
commitb5811bc469c0dbebb4f947800b9b234a9c0a68dc (patch)
tree3c94f1a16b884b765564369972b231a85ae43f7d /drivers/cpufreq/longhaul.c
parent56836fb4dab8fe906b934b231b04c33c180f8da5 (diff)
cpufreq / Longhaul: Disable driver by default
This is only solution I can think of. User decides if he wants this driver on his machine. I don't have enough knowledge and time to find the reason why same code works on some machines and doesn't on others which use the same, or very similar, chipset and processor. Signed-off-by: Rafał Bilski <rafalbilski@interia.pl> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/cpufreq/longhaul.c')
-rw-r--r--drivers/cpufreq/longhaul.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/cpufreq/longhaul.c b/drivers/cpufreq/longhaul.c
index f1fa500ac105..1180d536d1eb 100644
--- a/drivers/cpufreq/longhaul.c
+++ b/drivers/cpufreq/longhaul.c
@@ -77,7 +77,7 @@ static unsigned int longhaul_index;
77static int scale_voltage; 77static int scale_voltage;
78static int disable_acpi_c3; 78static int disable_acpi_c3;
79static int revid_errata; 79static int revid_errata;
80 80static int enable;
81 81
82/* Clock ratios multiplied by 10 */ 82/* Clock ratios multiplied by 10 */
83static int mults[32]; 83static int mults[32];
@@ -965,6 +965,10 @@ static int __init longhaul_init(void)
965 if (!x86_match_cpu(longhaul_id)) 965 if (!x86_match_cpu(longhaul_id))
966 return -ENODEV; 966 return -ENODEV;
967 967
968 if (!enable) {
969 printk(KERN_ERR PFX "Option \"enable\" not set. Aborting.\n");
970 return -ENODEV;
971 }
968#ifdef CONFIG_SMP 972#ifdef CONFIG_SMP
969 if (num_online_cpus() > 1) { 973 if (num_online_cpus() > 1) {
970 printk(KERN_ERR PFX "More than 1 CPU detected, " 974 printk(KERN_ERR PFX "More than 1 CPU detected, "
@@ -1021,6 +1025,10 @@ MODULE_PARM_DESC(scale_voltage, "Scale voltage of processor");
1021 * such. */ 1025 * such. */
1022module_param(revid_errata, int, 0644); 1026module_param(revid_errata, int, 0644);
1023MODULE_PARM_DESC(revid_errata, "Ignore CPU Revision ID"); 1027MODULE_PARM_DESC(revid_errata, "Ignore CPU Revision ID");
1028/* By default driver is disabled to prevent incompatible
1029 * system freeze. */
1030module_param(enable, int, 0644);
1031MODULE_PARM_DESC(enable, "Enable driver");
1024 1032
1025MODULE_AUTHOR("Dave Jones <davej@redhat.com>"); 1033MODULE_AUTHOR("Dave Jones <davej@redhat.com>");
1026MODULE_DESCRIPTION("Longhaul driver for VIA Cyrix processors."); 1034MODULE_DESCRIPTION("Longhaul driver for VIA Cyrix processors.");