On Fri, Nov 9, 2012 at 3:07 AM, Ben Hutchings <ben@xxxxxxxxxxxxxxx> wrote: > 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 <draziw+deb@xxxxxxxxx> > References: http://bugs.debian.org/692436 > Signed-off-by: Ben Hutchings <ben@xxxxxxxxxxxxxxx> > Cc: <stable@xxxxxxxxxxxxxxx> # v3.0+ > --- > drivers/platform/x86/asus-laptop.c | 17 ++++------------- > 1 file changed, 4 insertions(+), 13 deletions(-) > > diff --git a/drivers/platform/x86/asus-laptop.c b/drivers/platform/x86/asus-laptop.c > index 4b568df..a961156 100644 > --- 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 *dev, > /* > * 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 asus_laptop *asus) > { > 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 asus_laptop *asus) > 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; > > > Acked-by: Corentin Chary <corentin.chary@xxxxxxxxx> -- Corentin Chary http://xf.iksaif.net -- To unsubscribe from this list: send the line "unsubscribe platform-driver-x86" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html