eeepc-laptop: Disable wireless hotplug on 1005HA, 1201N and 1005PE since it disconnects the wrong device (Closes: #573607)
svn path=/dists/sid/linux-2.6/; revision=15429
This commit is contained in:
parent
3d1093d637
commit
d254a7df29
|
@ -10,6 +10,8 @@ linux-2.6 (2.6.32-11) UNRELEASED; urgency=low
|
||||||
* iwlwifi: Fix repeated warnings about tfds_in_queue (Closes: #574526)
|
* iwlwifi: Fix repeated warnings about tfds_in_queue (Closes: #574526)
|
||||||
* eeepc-laptop: Disable CPU speed control on 701 and 702 since it can
|
* eeepc-laptop: Disable CPU speed control on 701 and 702 since it can
|
||||||
cause the system to hang (Closes: #559578)
|
cause the system to hang (Closes: #559578)
|
||||||
|
* eeepc-laptop: Disable wireless hotplug on 1005HA, 1201N and 1005PE
|
||||||
|
since it disconnects the wrong device (Closes: #573607)
|
||||||
|
|
||||||
[ maximilian attems]
|
[ maximilian attems]
|
||||||
* [alpha, hppa] Disable oprofile as tracing code is unsupported here.
|
* [alpha, hppa] Disable oprofile as tracing code is unsupported here.
|
||||||
|
|
|
@ -0,0 +1,39 @@
|
||||||
|
From: Corentin Chary <corentincj@iksaif.net>
|
||||||
|
Date: Wed, 6 Jan 2010 22:07:40 +0100
|
||||||
|
Subject: [PATCH 1/3] eeepc-laptop: add hotplug_disable parameter
|
||||||
|
|
||||||
|
Some new models need to disable wireless hotplug.
|
||||||
|
For the moment, we don't know excactly what models need that,
|
||||||
|
except 1005HA.
|
||||||
|
Users will be able to use that param as a workaround.
|
||||||
|
|
||||||
|
Signed-off-by: Corentin Chary <corentincj@iksaif.net>
|
||||||
|
Signed-off-by: Len Brown <len.brown@intel.com>
|
||||||
|
[bwh: Backported to 2.6.32]
|
||||||
|
|
||||||
|
--- a/drivers/platform/x86/eeepc-laptop.c
|
||||||
|
+++ b/drivers/platform/x86/eeepc-laptop.c
|
||||||
|
@@ -254,6 +254,14 @@ MODULE_AUTHOR("Corentin Chary, Eric Cooper");
|
||||||
|
MODULE_DESCRIPTION(EEEPC_HOTK_NAME);
|
||||||
|
MODULE_LICENSE("GPL");
|
||||||
|
|
||||||
|
+static bool hotplug_disabled;
|
||||||
|
+
|
||||||
|
+module_param(hotplug_disabled, bool, 0644);
|
||||||
|
+MODULE_PARM_DESC(hotplug_disabled,
|
||||||
|
+ "Disable hotplug for wireless device. "
|
||||||
|
+ "If your laptop need that, please report to "
|
||||||
|
+ "acpi4asus-user@lists.sourceforge.net.");
|
||||||
|
+
|
||||||
|
/*
|
||||||
|
* ACPI Helpers
|
||||||
|
*/
|
||||||
|
@@ -1305,6 +1313,8 @@ static int __devinit eeepc_acpi_add(struct acpi_device *device)
|
||||||
|
device->driver_data = ehotk;
|
||||||
|
ehotk->device = device;
|
||||||
|
|
||||||
|
+ ehotk->hotplug_disabled = hotplug_disabled;
|
||||||
|
+
|
||||||
|
eeepc_dmi_check();
|
||||||
|
|
||||||
|
result = eeepc_hotk_check();
|
26
debian/patches/bugfix/x86/eeepc-laptop-disable-wireless-hotplug-for-1005PE.patch
vendored
Normal file
26
debian/patches/bugfix/x86/eeepc-laptop-disable-wireless-hotplug-for-1005PE.patch
vendored
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
From: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
|
||||||
|
Date: Sat, 20 Feb 2010 11:02:24 +0000
|
||||||
|
Subject: [PATCH 3/3] eeepc-laptop: disable wireless hotplug for 1005PE
|
||||||
|
|
||||||
|
The wireless hotplug code is not needed on this model, and it disables
|
||||||
|
the wired ethernet card. (Like on the 1005HA and 1201N).
|
||||||
|
|
||||||
|
References: <http://lists.alioth.debian.org/pipermail/debian-eeepc-devel/2010-February/003281.html>
|
||||||
|
|
||||||
|
Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
|
||||||
|
Reported-by: Ansgar Burchardt <ansgar@43-1.org>
|
||||||
|
CC: stable@kernel.org
|
||||||
|
[bwh: Backported to 2.6.32]
|
||||||
|
|
||||||
|
--- a/drivers/platform/x86/eeepc-laptop.c
|
||||||
|
+++ b/drivers/platform/x86/eeepc-laptop.c
|
||||||
|
@@ -660,7 +660,8 @@ static void eeepc_dmi_check(struct eeepc_laptop *eeepc)
|
||||||
|
* hotplug code. In fact, current hotplug code seems to unplug another
|
||||||
|
* device...
|
||||||
|
*/
|
||||||
|
- if (strcmp(model, "1005HA") == 0 || strcmp(model, "1201N") == 0) {
|
||||||
|
+ if (strcmp(model, "1005HA") == 0 || strcmp(model, "1201N") == 0 ||
|
||||||
|
+ strcmp(model, "1005PE") == 0) {
|
||||||
|
ehotk->hotplug_disabled = true;
|
||||||
|
pr_info("wlan hotplug disabled\n");
|
||||||
|
}
|
19
debian/patches/bugfix/x86/eeepc-laptop-disable-wireless-hotplug-for-1201N.patch
vendored
Normal file
19
debian/patches/bugfix/x86/eeepc-laptop-disable-wireless-hotplug-for-1201N.patch
vendored
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
From: Corentin Chary <corentincj@iksaif.net>
|
||||||
|
Date: Wed, 6 Jan 2010 22:07:41 +0100
|
||||||
|
Subject: [PATCH 2/3] eeepc-laptop: disable wireless hotplug for 1201N
|
||||||
|
|
||||||
|
Signed-off-by: Corentin Chary <corentincj@iksaif.net>
|
||||||
|
Signed-off-by: Len Brown <len.brown@intel.com>
|
||||||
|
[bwh: Backported to 2.6.32]
|
||||||
|
|
||||||
|
--- a/drivers/platform/x86/eeepc-laptop.c
|
||||||
|
+++ b/drivers/platform/x86/eeepc-laptop.c
|
||||||
|
@@ -660,7 +660,7 @@ static void eeepc_dmi_check(struct eeepc_laptop *eeepc)
|
||||||
|
* hotplug code. In fact, current hotplug code seems to unplug another
|
||||||
|
* device...
|
||||||
|
*/
|
||||||
|
- if (strcmp(model, "1005HA") == 0) {
|
||||||
|
+ if (strcmp(model, "1005HA") == 0 || strcmp(model, "1201N") == 0) {
|
||||||
|
ehotk->hotplug_disabled = true;
|
||||||
|
pr_info("wlan hotplug disabled\n");
|
||||||
|
}
|
73
debian/patches/bugfix/x86/eeepc-laptop-dmi-blacklist-to-disable-pci-hotplug.patch
vendored
Normal file
73
debian/patches/bugfix/x86/eeepc-laptop-dmi-blacklist-to-disable-pci-hotplug.patch
vendored
Normal file
|
@ -0,0 +1,73 @@
|
||||||
|
From: Corentin Chary <corentincj@iksaif.net>
|
||||||
|
Date: Wed, 6 Jan 2010 22:07:38 +0100
|
||||||
|
Subject: [PATCH] eeepc-laptop: dmi blacklist to disable pci hotplug code
|
||||||
|
|
||||||
|
This is a short term workaround for Eeepc 1005HA.
|
||||||
|
|
||||||
|
refs: <http://bugzilla.kernel.org/show_bug.cgi?id=14570>
|
||||||
|
|
||||||
|
Signed-off-by: Corentin Chary <corentincj@iksaif.net>
|
||||||
|
Signed-off-by: Len Brown <len.brown@intel.com>
|
||||||
|
[bwh: Backported to 2.6.32]
|
||||||
|
|
||||||
|
--- a/drivers/platform/x86/eeepc-laptop.c
|
||||||
|
+++ b/drivers/platform/x86/eeepc-laptop.c
|
||||||
|
@@ -137,6 +137,7 @@ struct eeepc_hotk {
|
||||||
|
u32 cm_supported; /* the control methods supported
|
||||||
|
by this BIOS */
|
||||||
|
bool cpufv_disabled;
|
||||||
|
+ bool hotplug_disabled;
|
||||||
|
uint init_flag; /* Init flags */
|
||||||
|
u16 event_count[128]; /* count for each event */
|
||||||
|
|
||||||
|
@@ -614,6 +615,10 @@ static void eeepc_dmi_check(struct eeepc_laptop *eeepc)
|
||||||
|
{
|
||||||
|
const char *model;
|
||||||
|
|
||||||
|
+ model = dmi_get_system_info(DMI_PRODUCT_NAME);
|
||||||
|
+ if (!model)
|
||||||
|
+ return;
|
||||||
|
+
|
||||||
|
/*
|
||||||
|
* Blacklist for setting cpufv (cpu speed).
|
||||||
|
*
|
||||||
|
@@ -633,17 +638,24 @@ static void eeepc_dmi_check(struct eeepc_laptop *eeepc)
|
||||||
|
* substring matching. We don't want to affect the "701SD"
|
||||||
|
* and "701SDX" models, because they do support S.H.E.
|
||||||
|
*/
|
||||||
|
-
|
||||||
|
- model = dmi_get_system_info(DMI_PRODUCT_NAME);
|
||||||
|
- if (!model)
|
||||||
|
- return;
|
||||||
|
-
|
||||||
|
if (strcmp(model, "701") == 0 || strcmp(model, "702") == 0) {
|
||||||
|
ehotk->cpufv_disabled = true;
|
||||||
|
pr_info("model %s does not officially support setting cpu "
|
||||||
|
"speed\n", model);
|
||||||
|
pr_info("cpufv disabled to avoid instability\n");
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
+ * Blacklist for wlan hotplug
|
||||||
|
+ *
|
||||||
|
+ * Eeepc 1005HA doesn't work like others models and don't need the
|
||||||
|
+ * hotplug code. In fact, current hotplug code seems to unplug another
|
||||||
|
+ * device...
|
||||||
|
+ */
|
||||||
|
+ if (strcmp(model, "1005HA") == 0) {
|
||||||
|
+ ehotk->hotplug_disabled = true;
|
||||||
|
+ pr_info("wlan hotplug disabled\n");
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
|
||||||
|
static void cmsg_quirk(struct eeepc_laptop *eeepc, int cm, const char *name)
|
||||||
|
@@ -1156,6 +1168,9 @@ static int eeepc_rfkill_init(struct eeepc_laptop *eeepc)
|
||||||
|
if (result && result != -ENODEV)
|
||||||
|
goto exit;
|
||||||
|
|
||||||
|
+ if (ehotk->hotplug_disabled)
|
||||||
|
+ return 0;
|
||||||
|
+
|
||||||
|
result = eeepc_setup_pci_hotplug();
|
||||||
|
/*
|
||||||
|
* If we get -EBUSY then something else is handling the PCI hotplug -
|
|
@ -2,3 +2,7 @@
|
||||||
+ bugfix/sparc/sparc-Provide-io-read-write-16-32-be.patch
|
+ bugfix/sparc/sparc-Provide-io-read-write-16-32-be.patch
|
||||||
+ bugfix/all/iwlwifi-fix-nfreed.patch
|
+ bugfix/all/iwlwifi-fix-nfreed.patch
|
||||||
+ bugfix/x86/eeepc-laptop-disable-cpu-speed-control-on-EeePC-701.patch
|
+ bugfix/x86/eeepc-laptop-disable-cpu-speed-control-on-EeePC-701.patch
|
||||||
|
+ bugfix/x86/eeepc-laptop-dmi-blacklist-to-disable-pci-hotplug.patch
|
||||||
|
+ bugfix/x86/eeepc-laptop-add-hotplug_disable-parameter.patch
|
||||||
|
+ bugfix/x86/eeepc-laptop-disable-wireless-hotplug-for-1201N.patch
|
||||||
|
+ bugfix/x86/eeepc-laptop-disable-wireless-hotplug-for-1005PE.patch
|
||||||
|
|
Loading…
Reference in New Issue