From a0fa4ae01c63d7530e36a3dc2d9d26dff116a14b Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Tue, 26 Mar 2013 14:25:11 -0700 Subject: [PATCH] 3.4-stable patches added patches: asus-laptop-do-not-call-hwrs-on-init.patch rt2x00-error-in-configurations-with-mesh-support-disabled.patch --- ...asus-laptop-do-not-call-hwrs-on-init.patch | 70 +++++++++++++++++++ ...gurations-with-mesh-support-disabled.patch | 39 +++++++++++ queue-3.4/series | 2 + 3 files changed, 111 insertions(+) create mode 100644 queue-3.4/asus-laptop-do-not-call-hwrs-on-init.patch create mode 100644 queue-3.4/rt2x00-error-in-configurations-with-mesh-support-disabled.patch diff --git a/queue-3.4/asus-laptop-do-not-call-hwrs-on-init.patch b/queue-3.4/asus-laptop-do-not-call-hwrs-on-init.patch new file mode 100644 index 00000000000..68b5ab0c257 --- /dev/null +++ b/queue-3.4/asus-laptop-do-not-call-hwrs-on-init.patch @@ -0,0 +1,70 @@ +From cb7da022450cdaaebd33078b6b32fb7dd2aaf6db Mon Sep 17 00:00:00 2001 +From: Ben Hutchings +Date: Thu, 29 Nov 2012 09:12:37 +0100 +Subject: asus-laptop: Do not call HWRS on init + +From: Ben Hutchings + +commit cb7da022450cdaaebd33078b6b32fb7dd2aaf6db upstream. + +Since commit 8871e99f89b7 ('asus-laptop: HRWS/HWRS typo'), module +initialisation is very slow on the Asus UL30A. The HWRS method takes +about 12 seconds to run, and subsequent initialisation also seems to +be delayed. Since we don't really need the result, don't bother +calling it on init. Those who are curious can still get the result +through the 'infos' device attribute. + +Update the comment about HWRS in show_infos(). + +Reported-by: ryan +References: http://bugs.debian.org/692436 +Signed-off-by: Ben Hutchings +Signed-off-by: Corentin Chary +Signed-off-by: Matthew Garrett +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/platform/x86/asus-laptop.c | 17 ++++------------- + 1 file changed, 4 insertions(+), 13 deletions(-) + +--- a/drivers/platform/x86/asus-laptop.c ++++ b/drivers/platform/x86/asus-laptop.c +@@ -860,8 +860,10 @@ static ssize_t show_infos(struct device + /* + * The HWRS method return informations about the hardware. + * 0x80 bit is for WLAN, 0x100 for Bluetooth. ++ * 0x40 for WWAN, 0x10 for WIMAX. + * The significance of others is yet to be found. +- * If we don't find the method, we assume the device are present. ++ * We don't currently use this for device detection, and it ++ * takes several seconds to run on some systems. + */ + rv = acpi_evaluate_integer(asus->handle, "HWRS", NULL, &temp); + if (!ACPI_FAILURE(rv)) +@@ -1682,7 +1684,7 @@ static int asus_laptop_get_info(struct a + { + struct acpi_buffer buffer = { ACPI_ALLOCATE_BUFFER, NULL }; + union acpi_object *model = NULL; +- unsigned long long bsts_result, hwrs_result; ++ unsigned long long bsts_result; + char *string = NULL; + acpi_status status; + +@@ -1744,17 +1746,6 @@ static int asus_laptop_get_info(struct a + if (*string) + pr_notice(" %s model detected\n", string); + +- /* +- * The HWRS method return informations about the hardware. +- * 0x80 bit is for WLAN, 0x100 for Bluetooth, +- * 0x40 for WWAN, 0x10 for WIMAX. +- * The significance of others is yet to be found. +- */ +- status = +- acpi_evaluate_integer(asus->handle, "HWRS", NULL, &hwrs_result); +- if (!ACPI_FAILURE(status)) +- pr_notice(" HWRS returned %x", (int)hwrs_result); +- + if (!acpi_check_handle(asus->handle, METHOD_WL_STATUS, NULL)) + asus->have_rsts = true; + diff --git a/queue-3.4/rt2x00-error-in-configurations-with-mesh-support-disabled.patch b/queue-3.4/rt2x00-error-in-configurations-with-mesh-support-disabled.patch new file mode 100644 index 00000000000..8228cc2bf5d --- /dev/null +++ b/queue-3.4/rt2x00-error-in-configurations-with-mesh-support-disabled.patch @@ -0,0 +1,39 @@ +From 6ef9e2f6d12ce9e2120916804d2ddd46b954a70b Mon Sep 17 00:00:00 2001 +From: Felix Fietkau +Date: Tue, 26 Feb 2013 16:09:55 +0100 +Subject: rt2x00: error in configurations with mesh support disabled + +From: Felix Fietkau + +commit 6ef9e2f6d12ce9e2120916804d2ddd46b954a70b upstream. + +If CONFIG_MAC80211_MESH is not set, cfg80211 will now allow advertising +interface combinations with NL80211_IFTYPE_MESH_POINT present. +Add appropriate ifdefs to avoid running into errors. + +[Backported for 3.8-stable. Removed code of simultaneous AP and mesh +mode added in 4a5fc6d 3.9-rc1.] + +Signed-off-by: Felix Fietkau +Acked-by: Gertjan van Wingerde +Signed-off-by: John W. Linville +Signed-off-by: Lingzhu Xiang +Reviewed-by: CAI Qian +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/net/wireless/rt2x00/rt2x00dev.c | 2 ++ + 1 file changed, 2 insertions(+) + +--- a/drivers/net/wireless/rt2x00/rt2x00dev.c ++++ b/drivers/net/wireless/rt2x00/rt2x00dev.c +@@ -1157,7 +1157,9 @@ int rt2x00lib_probe_dev(struct rt2x00_de + rt2x00dev->hw->wiphy->interface_modes |= + BIT(NL80211_IFTYPE_ADHOC) | + BIT(NL80211_IFTYPE_AP) | ++#ifdef CONFIG_MAC80211_MESH + BIT(NL80211_IFTYPE_MESH_POINT) | ++#endif + BIT(NL80211_IFTYPE_WDS); + + /* diff --git a/queue-3.4/series b/queue-3.4/series index c746dfcb35d..17aa9661b61 100644 --- a/queue-3.4/series +++ b/queue-3.4/series @@ -68,3 +68,5 @@ udf-avoid-info-leak-on-export.patch tools-hv-netlink-source-address-validation-allows-dos.patch i915-initialize-cadl-in-opregion.patch exec-use-eloop-for-max-recursion-depth.patch +rt2x00-error-in-configurations-with-mesh-support-disabled.patch +asus-laptop-do-not-call-hwrs-on-init.patch -- 2.47.3