Re: [PATCH] Add a quirk for the Dell XPS 13 (2015) when in PS/2 mode.

From: Benjamin Tissoires
Date: Mon Mar 16 2015 - 10:40:37 EST


On Mon, Mar 16, 2015 at 10:29 AM, Mario Limonciello
<mario_limonciello@xxxxxxxx> wrote:
>
> On 03/14/2015 02:17 PM, Benjamin Tissoires wrote:
>>
>> [top posting, sorry]
>>
>> Jason made some interesting progress today:
>> with the patch in https://lkml.org/lkml/2015/3/12/149, the sound card
>> is not switched in the I2S mode and works while the touchpad keeps
>> using I2C.
>> It looks like suspend/resume is also fixed by that :)
>>
>> I thought it was worth mentioning to the people in this thread.
>>
>> Cheers,
>> Benjamin
>
> Benjamin,
>
> Thanks for reporting the progress to me.
>
> Jason,
>
> Are you sure upon the particulars of what's happening here? That patch only
> modifies the behavior of how the EC is configured.
> I'm not aware of any suspend/resume issues, especially related to the EC, so
> that really surprises me. My initial suspicion is a suspend/resume issue
> you encountered was rare enough that you just haven't hit it yet even with
> that patch applied. Maybe something in the out of kernel Broadcom wireless
> driver if you are still using the Broadcom card with it.
>
> I believe you are incorrect in the audio being put in HDA mode. It's more
> likely that it's operating closer to properly in I2S mode. Here's some
> background around what that patch is doing.

Regarding the I2S/HDA problem, I guess I must have interpreted too
much what Jason said. All he said was that the patch made his sound
card working.

[Adding Matthew to the thread, I am sure he will find it interesting]

Cheers,
Benjamin

> When this platform started development the Linux kernel didn't yet respond
> true to Windows 2013. All our validation for Linux happened on kernel 3.13.
>
> _OSI of Windows 2009 is supposed to set it for PS2 mouse, HDA device in ACPI
> and configure the EC to set up the Realtek codec for HDA mode. Linux was
> planned to mirror this behavior during development.
> _OSI of Windows 2013 is supposed to set it up for I2C mouse, I2S audio in
> ACPI and configure the EC to set up the Realtek codec for I2S mode.
>
> From when the platform was in development a _REV check was put in for
> Windows 2013 to make sure that in case the kernel started to respond to
> Windows 2013 we would still have it running in the intended modes for Linux.
> There was a mistake in this _REV check though that caused the I2S ACPI
> device but to misconfigure the EC. The reason _REV = 2 and _OSI = Windows
> 2013 you are getting working audio is the rt286 driver is starting to be
> used. You can validate this by looking at dmesg for lines about rt286.
> Realtek recently submitted some patches for this at Dell's request. There
> are still a variety of issues with the I2S driver including jack detection
> and some other microphone issues. Pulseaudio will possibly need some
> patches to work properly with this device too. Ideally we don't want
> customers to use I2S mode on Linux until it's solid.
>
> I don't believe this was in Linus' tree yet, so if you don't have it you can
> apply it and it should fix at least one microphone issue when in I2S mode.
> http://mailman.alsa-project.org/pipermail/alsa-devel/2015-March/088724.html
>
> Whether or not that _REV patch gets applied to the kernel we are fixing this
> incorrect behavior for Windows 2013 _OSI and Linux in upcoming BIOS A02.
> In BIOS A02 there will still be a _REV check but it will do this:
> Windows 2013 _OSI, _REV 5: I2C mouse, HDA device in ACPI, configure EC for
> HDA mode.
> Windows 2013 _OSI, _REV 2: I2C mouse, I2S device in ACPI, configure EC for
> I2S mode.
>
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/