From: "Pali Rohár" <pali.rohar@gmail.com>
To: Andy Lutomirski <luto@amacapital.net>,
Darren Hart <dvhart@infradead.org>
Cc: Jon Eyolfson <jon@eyl.io>,
platform-driver-x86@vger.kernel.org,
Mario Limonciello <mario_limonciello@dell.com>,
Matthew Garrett <mjg59@srcf.ucam.org>
Subject: Re: [PATCH v5 5/5] dell-rbtn: Add a comment about the XPS 13 9350
Date: Thu, 25 Feb 2016 11:45:28 +0100 [thread overview]
Message-ID: <20160225104528.GT4606@pali> (raw)
In-Reply-To: <CALCETrU98nEhLQSr7M+DsvD2Fgk5K0GFPFBoLE8_k-_ZRg72mA@mail.gmail.com>
On Tuesday 23 February 2016 09:35:47 Andy Lutomirski wrote:
> On Feb 23, 2016 4:01 AM, "Pali Rohár" <pali.rohar@gmail.com> wrote:
> >
> > On Wednesday 17 February 2016 07:07:28 Mario Limonciello wrote:
> > >
> > >
> > > On 02/17/2016 05:16 AM, Pali Rohár wrote:
> > > > On Monday 15 February 2016 08:32:37 Andy Lutomirski wrote:
> > > >> On the XPS 13 9350, the dell-rbtn mechanism has a new device id, and
> > > >> the DSDT turns it off if a new enough _OSI is supported. Add a
> > > >> comment about why we don't bother supporting it.
> > > >>
> > > >> Signed-off-by: Andy Lutomirski <luto@kernel.org>
> > > >> ---
> > > >> drivers/platform/x86/dell-rbtn.c | 15 +++++++++++++++
> > > >> 1 file changed, 15 insertions(+)
> > > >>
> > > >> diff --git a/drivers/platform/x86/dell-rbtn.c b/drivers/platform/x86/dell-rbtn.c
> > > >> index cd410e392550..b51a2008d782 100644
> > > >> --- a/drivers/platform/x86/dell-rbtn.c
> > > >> +++ b/drivers/platform/x86/dell-rbtn.c
> > > >> @@ -217,6 +217,21 @@ static void rbtn_notify(struct acpi_device *device, u32 event);
> > > >> static const struct acpi_device_id rbtn_ids[] = {
> > > >> { "DELRBTN", 0 },
> > > >> { "DELLABCE", 0 },
> > > >> +
> > > >> + /*
> > > >> + * This driver can also handle the "DELLABC6" device that
> > > >> + * appears on the XPS 13 9350, but that device is disabled
> > > >> + * by the DSDT unless booted with acpi_osi="!Windows 2012"
> > > >> + * acpi_osi="!Windows 2013". Even if we boot that and bind
> > > >> + * the driver, we seem to have inconsistent behavior in
> > > >> + * which NetworkManager can get out of sync with the rfkill
> > > >> + * state.
> > > > Do you know reason for such behaviour? It is because event is send
> > > > duplicated (by dell-rbtn and also by intel-hid)?
> > > DELLABC6 is a custom interface that was created solely to have airplane
> > > mode support for Windows 7.
> > > For Windows 10 the proper interface is to use that which is handled by
> > > intel-hid. A OEM airplane mode driver is not used.
> > >
> > > Since the kernel doesn't identify as Windows 7 it would be incorrect to
> > > do attempt to use that interface.
> >
> > Ok, I understand. But what user can is to tell linux kernel to identify
> > as Windows 7.
> >
> > And I would like to know reason for that inconsistent behaviour. It is
> > because of bug in NetworkManager or because of some hidden bug in
> > dell-rbnt.c or in rfkill kernel subsystem? If it is in kernel there is
> > really big change that it can occur also on other machines which uses
> > dell-rbtn and so we should fix it.
> >
> > Andy, can you look at it and try identify where is the problem?
>
> I think it's straightforward. If we identify as Windows 7 and enable
> this driver then, when we press the wireless button, dell-rbtn
> switches its state *and* NetworkManager gets KEY_RFKILL from intel-hid
> and changes its state. Then you can tell NetworkManager to turn wifi
> on using the menu, at which point dell-rbtn is off but NM's software
> state is on. Then you press the button again, turning on dell-rbtn
> but turning NM off again. The result is that the last button press
> direct work as expected.
>
> I haven't verified that this is actually what happens, but it's
> certainly the case that a button that triggers a state toggle should
> only change the state by *one* mechanism.
>
> Presumably this works on Windows 7 because either there is no
> equivalent of intel-hid or because the DSDT turns it off -- I haven't
> checked which is the case.
>
> --Andy
Understood, this is just big API mess in Dell APCI/EC/firmware and also
our kernel implementation in (dell-(laptop|wmi|rbtn)|intel-hid) drivers
is not ideal and clean...
Darren, add my Acked-by also for this patch (if you already have not
done it).
--
Pali Rohár
pali.rohar@gmail.com
next prev parent reply other threads:[~2016-02-25 10:45 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-15 16:32 [PATCH v5 0/5] dell fixes and Skylake updates Andy Lutomirski
2016-02-15 16:32 ` [PATCH v5 1/5] dell-wmi: Stop storing pointers to DMI tables Andy Lutomirski
2016-02-17 6:37 ` Darren Hart
2016-02-17 7:04 ` Darren Hart
2016-02-15 16:32 ` [PATCH v5 2/5] dell-wmi, dell-laptop: select DMI Andy Lutomirski
2016-02-17 6:39 ` Darren Hart
2016-02-17 20:32 ` Andy Lutomirski
2016-02-15 16:32 ` [PATCH v5 3/5] dell-wmi: Clean up hotkey table size check Andy Lutomirski
2016-02-17 6:46 ` Darren Hart
2016-02-15 16:32 ` [PATCH v5 4/5] dell-wmi: Support new hotkeys on the XPS 13 9350 (Skylake) Andy Lutomirski
2016-02-15 17:20 ` Pali Rohár
2016-02-15 17:26 ` Mario Limonciello
2016-02-15 17:37 ` Pali Rohár
2016-02-17 7:29 ` Darren Hart
2016-02-17 11:19 ` Pali Rohár
2016-02-15 16:32 ` [PATCH v5 5/5] dell-rbtn: Add a comment about the XPS 13 9350 Andy Lutomirski
2016-02-17 11:16 ` Pali Rohár
2016-02-17 13:07 ` Mario Limonciello
2016-02-23 12:01 ` Pali Rohár
2016-02-23 17:35 ` Andy Lutomirski
2016-02-23 17:42 ` Mario Limonciello
2016-02-25 10:45 ` Pali Rohár [this message]
2016-02-26 20:13 ` Darren Hart
2016-02-17 7:00 ` [PATCH v5 0/5] dell fixes and Skylake updates Darren Hart
2016-02-17 20:33 ` Andy Lutomirski
2016-02-18 5:03 ` Darren Hart
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=20160225104528.GT4606@pali \
--to=pali.rohar@gmail.com \
--cc=dvhart@infradead.org \
--cc=jon@eyl.io \
--cc=luto@amacapital.net \
--cc=mario_limonciello@dell.com \
--cc=mjg59@srcf.ucam.org \
--cc=platform-driver-x86@vger.kernel.org \
/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