From: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
To: Mattia Dongili <malattia@linux.it>
Cc: "linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>,
Norbert Preining <preining@logic.at>,
Johannes Berg <johannes@sipsolutions.net>,
"Almer S. Tigelaar" <almer@gnome.org>,
Matthias Welwarsky <matze@welwarsky.de>
Subject: [PATCH] sony-laptop: check for rfkill hard block at load time
Date: Thu, 24 Sep 2009 20:15:24 +0100 [thread overview]
Message-ID: <4ABBC54C.5010103@tuffmail.co.uk> (raw)
In-Reply-To: <1253813371.3868.313.camel@johannes.local>
"I recently (on a flight) I found out that when I boot with the hard-switch
activated, so turning off all wireless activity on my laptop, the state
is not correctly announced in /dev/rfkill (reading it with rfkill command,
or my own gnome applet)...
After turning off and on again the hard-switch the events were right."
We can fix this by querying the firmware at load time and calling
rfkill_set_hw_state().
Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
Tested-by: Norbert Preining <preining@logic.at>
---
drivers/platform/x86/sony-laptop.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/drivers/platform/x86/sony-laptop.c b/drivers/platform/x86/sony-laptop.c
index dafaa4a..a234a9d 100644
--- a/drivers/platform/x86/sony-laptop.c
+++ b/drivers/platform/x86/sony-laptop.c
@@ -1081,6 +1081,8 @@ static int sony_nc_setup_rfkill(struct acpi_device *device,
struct rfkill *rfk;
enum rfkill_type type;
const char *name;
+ int result;
+ bool hwblock;
switch (nc_type) {
case SONY_WIFI:
@@ -1108,6 +1110,10 @@ static int sony_nc_setup_rfkill(struct acpi_device *device,
if (!rfk)
return -ENOMEM;
+ sony_call_snc_handle(0x124, 0x200, &result);
+ hwblock = !(result & 0x1);
+ rfkill_set_hw_state(rfk, hwblock);
+
err = rfkill_register(rfk);
if (err) {
rfkill_destroy(rfk);
--
1.6.3.2
next prev parent reply other threads:[~2009-09-24 19:15 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-09-24 13:02 rfkill hard state after booting Norbert Preining
2009-09-24 14:07 ` Johannes Berg
2009-09-24 15:01 ` Alan Jenkins
2009-09-24 15:05 ` Johannes Berg
2009-09-24 15:12 ` Alan Jenkins
2009-09-24 17:29 ` Johannes Berg
2009-09-24 19:15 ` Alan Jenkins [this message]
2009-09-24 19:24 ` [PATCH] sony-laptop: check for rfkill hard block at load time Gábor Stefanik
2009-09-24 20:11 ` Alan Jenkins
2009-09-24 23:04 ` Mattia Dongili
2009-09-24 19:27 ` Johannes Berg
2009-09-24 22:38 ` Mattia Dongili
2009-09-25 9:13 ` Alan Jenkins
2009-09-24 16:19 ` rfkill hard state after booting Norbert Preining
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4ABBC54C.5010103@tuffmail.co.uk \
--to=alan-jenkins@tuffmail.co.uk \
--cc=almer@gnome.org \
--cc=johannes@sipsolutions.net \
--cc=linux-wireless@vger.kernel.org \
--cc=malattia@linux.it \
--cc=matze@welwarsky.de \
--cc=preining@logic.at \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).