於 五,2011-06-17 於 17:03 +0200,Florian Heyer 提到:
> On 17.06.2011 15:09, Joey Lee wrote:
> > Could you pleas share the dmidecode information to me? just need: 
> >     dmidecode > dmidecode.log
> > 
> 
> No problem, see attachment.
> 
> > I want to generate a acer-wmi patch to test AMW0 method on your machine.
> > 
> > For IdeaPad S205, this case is too special for acer machines, I still
> > thought that will be better support it in ideapad-laptop. But, we can
> > test on acer-wmi first.
> 
> To me it seems logical to solve the problem in ideapad-laptop and not in
> acer-wmi as the laptop is obviously of ideapad type :)
> I will be happily testing patches to solve the issue.
> 

Could you please help to test this patch? This is just a test patch, and
I didn't evaluation AWM0 in update rfkill state polling because I didn't
think evaluate AWM0 per second is a good idea.

Please probe acer-wmi driver then report rfkill state. That's see what
the situation, then we add AWM0 part in next patch.

PS:
Sorry for I didn't compiler and test this patch because I didn't take
acer netbook back to home.


Thank's
Joey Lee


>From 0e0602a099775fafa21b3428d50bcca2be58c3fb Mon Sep 17 00:00:00 2001
From: Lee, Chun-Yi <[email protected]>
Date: Sat, 18 Jun 2011 08:32:03 +0800
Subject: [PATCH] acer-wmi: support Lenovo S205

Just for testing. I didn't evaluate AMW0 in polling.

Signed-off-by: Lee, Chun-Yi <[email protected]>
---
 drivers/platform/x86/acer-wmi.c |   30 ++++++++++++++++++++++++++++--
 1 files changed, 28 insertions(+), 2 deletions(-)

diff --git a/drivers/platform/x86/acer-wmi.c b/drivers/platform/x86/acer-wmi.c
index 005417b..424b83e 100644
--- a/drivers/platform/x86/acer-wmi.c
+++ b/drivers/platform/x86/acer-wmi.c
@@ -304,6 +304,10 @@ static struct quirk_entry quirk_fujitsu_amilo_li_1718 = {
        .wireless = 2,
 };
 
+static struct quirk_entry quirk_lenovo_ideapad_s205 = {
+       .wireless = 3,
+};
+
 /* The Aspire One has a dummy ACPI-WMI interface - disable it */
 static struct dmi_system_id __devinitdata acer_blacklist[] = {
        {
@@ -450,6 +454,15 @@ static struct dmi_system_id acer_quirks[] = {
                },
                .driver_data = &quirk_medion_md_98300,
        },
+       {
+               .callback = dmi_matched,
+               .ident = "Lenovo Ideapad S205",
+               .matches = {
+                       DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
+                       DMI_MATCH(DMI_PRODUCT_NAME, "10382LG"),
+               },
+               .driver_data = &quirk_lenovo_ideapad_s205,
+       },
        {}
 };
 
@@ -542,6 +555,12 @@ struct wmi_interface *iface)
                                return AE_ERROR;
                        *value = result & 0x1;
                        return AE_OK;
+               case 3:
+                       err = ec_read(0x78, &result);
+                       if (err)
+                               return AE_ERROR;
+                       *value = result & 0x1;
+                       return AE_OK;
                default:
                        err = ec_read(0xA, &result);
                        if (err)
@@ -1266,8 +1285,15 @@ static void acer_rfkill_update(struct work_struct 
*ignored)
        acpi_status status;
 
        status = get_u32(&state, ACER_CAP_WIRELESS);
-       if (ACPI_SUCCESS(status))
-               rfkill_set_sw_state(wireless_rfkill, !state);
+       if (ACPI_SUCCESS(status)) {
+               if (quirks->wireless == 3) {
+                       pr_info("acer_rfkill_update state: %d", state);
+                       rfkill_set_hw_state(wireless_rfkill, !state);
+                       /* TODO: set AWM0? */
+               } else {
+                       rfkill_set_sw_state(wireless_rfkill, !state);
+               }
+       }
 
        if (has_cap(ACER_CAP_BLUETOOTH)) {
                status = get_u32(&state, ACER_CAP_BLUETOOTH);
-- 
1.6.0.2




--
To unsubscribe from this list: send the line "unsubscribe platform-driver-x86" 
in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to