Re: acer-wmi: rfkill and bluetooth enabling doesn't work as in 2.6.37

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



My yesterday's e-mail probably didn't pass through the spam checks of mail 
server. If anybody needs to look at the missing attachments, I've placed them 
at 

  http://others-misc.oldium.net/attachments.tar.gz

Cheers,
OldÅich.

On Thursday 24 March 2011 22:34:03 OldÅich JedliÄka wrote:
> Hi Joey Lee,
> 
> I've done some experiments, here are the results.
> 
> On Thursday 24 March 2011 14:13:29 Joey Lee wrote:
> > Hi OldÅich,
> > 
> > Sorry bother you again, but after discuss with Johannes, he remind me
> > one import thing: maybe your BT HW key emit scancode and wmi event at
> > the same time.
> > 
> > æ åï2011-03-24 æ 09:36 +0100ïJohannes Berg æåï
> > 
> > > Hi OldÅich,
> > > 
> > > > > Ah. So I guess when hci0 gets registered, the acer rfkill state
> > > > > hasn't been updated yet, hence registering hci0 as blocked.
> > > > 
> > > > No, that is not the case. I can play with `rfkill list` immediately
> > > > after I press the HW bluetooth switch and show that hci0 is not there
> > > > (still unregistered) while acer-bluetooth is already "unblocked" -
> > > > I've tried to run `rfkill list` repeatedly manually from console
> > > > immediately after I pressed the HW BT switch and acer-bluetooth was
> > > > "unblocked" several runs while the hci0 wasn't there. When hci0
> > > > appeared, it was "blocked".
> > > > 
> > > > As I wrote, I didn't find anything changing the global state, which
> > > > is actually used to "block" the newly appearing hci0 (in the
> > > > rfkill_sync_work method). It looks like the global state is just
> > > > "blocked" forever - and it is "blocked" as a side-effect of the call
> > > > to rfkill_init_sw_state (changes permanent=true) and then call to
> > > > rfkill_register from the acer-wmi driver. I can verify this in the
> > > > following days (that the global state stays the same all the time).
> > > 
> > > Well the global state would be changed by the KEY_BLUETOOTH input
> > > event.
> > > 
> > > But like I said, it's tricky in this case because multiple events come
> > > from the same event source and race against each other.
> > > 
> > > johannes
> > 
> > My Acer TravelMate 8572 is commercial notebook, it only emit wmi event
> > when press wifi key. But, as I remember, there have some acer consumer
> > notebook emit both scancode and wmi event.
> > 
> > New acer-wmi driver will transfer wmi event to keycode (e.g.
> > KEY_BLUETOOTH), if EC also emit KEY_BLUETOOTH, the rfkill-input will
> > 
> > receive the key events twice, that means:
> > 	global BT block (when system boot) -> BT unblock (from EC scancode) ->
> > 	BT
> > 
> > block (from acer-wmi)
> > 
> > Could you please help me to check?
> > 
> > 	- If your distro still have HAL, please run:
> > 		+ lshal -l -m
> > 		+ press BT HW key 1 time
> > 		then check does HAL receive KEY_BLUETOOTH twice?
> 
> I didn't uninstall hal yet, so the output of `lshal -l -m` (only the
> monitoring part) when I press once BT HW key is attached. I've also patched
> the kernel to have more debug logging (see the attached diff and log) and
> the result is that the handler method from rfkill/input.c is not called,
> the global state is once set to "blocked" and it keeps like that. I don't
> know why the rfkill_event isn't called when I press the HW BT switch, it
> could be part of my investigations in the following days.
> 
> I've attached .config too, if you want to check that I missed something
> that is needed by Acer WMI.
> 
> Cheers,
> OldÅich.
> 
> > 	- Or, please try the following patch, it removed
> > 	
> > 	  KEY_BLUETOOTH support in acer-wmi. If removed it but the BT killswitch
> > 	  still can reserve when you press BT HW key, that means not just
> > 
> > 	  acer-wmi emit KEY_BLUETOOTH:
> > Thank's a lot!
> > Joey Lee
> > 
> > >From 20b3b8ba26cb37c8a44d11645c2d8d1f5344cfd7 Mon Sep 17 00:00:00 2001
> > 
> > From: Lee, Chun-Yi <jlee@xxxxxxxxxx>
> > Date: Thu, 24 Mar 2011 21:07:43 +0800
> > Subject: [PATCH] remove KEY_BLUETOOTH for testing
> > 
> > 
> > Signed-off-by: Lee, Chun-Yi <jlee@xxxxxxxxxx>
> > ---
> > 
> >  drivers/platform/x86/acer-wmi.c |    1 -
> >  1 files changed, 0 insertions(+), 1 deletions(-)
> > 
> > diff --git a/drivers/platform/x86/acer-wmi.c
> > b/drivers/platform/x86/acer-wmi.c index c978470..554ee12 100644
> > --- a/drivers/platform/x86/acer-wmi.c
> > +++ b/drivers/platform/x86/acer-wmi.c
> > @@ -102,7 +102,6 @@ enum acer_wmi_event_ids {
> > 
> >  static const struct key_entry acer_wmi_keymap[] = {
> >  
> >  	{KE_KEY, 0x01, {KEY_WLAN} },     /* WiFi */
> > 
> > -	{KE_KEY, 0x12, {KEY_BLUETOOTH} },	/* BT */
> > 
> >  	{KE_KEY, 0x21, {KEY_PROG1} },    /* Backup */
> >  	{KE_KEY, 0x22, {KEY_PROG2} },    /* Arcade */
> >  	{KE_KEY, 0x23, {KEY_PROG3} },    /* P_Key */
--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux