Thread (38 messages) 38 messages, 8 authors, 2017-02-16

Re: [PATCH v2 0/6] Move dell-led to drivers/platform/x86

From: Alex Hung <hidden>
Date: 2017-02-16 10:35:28
Also in: alsa-devel, lkml, platform-driver-x86

On Thu, Feb 16, 2017 at 5:27 PM, Michał Kępień [off-list ref] wrote:
quoted
On Wed, Feb 15, 2017 at 9:54 PM, Michał Kępień [off-list ref] wrote:
quoted
Alex,
quoted
I tested the patches with the following setup. Please note I tested
the microphone mute led by GUI, as the hotkey does not work on this
system.
Thank you for taking the time to test this series, it is appreciated.  I
would not expect the switching method (GUI/hotkey) to matter here, as
long as we can compare behavior of two kernel versions by consistently
using one of them.
quoted
1. Downloaded the below patches from patchwork

9518737 Awaiting Upstream [v2,1/6] dell-led: remove GUID check from
dell_micmute_led_set()
9518761 Awaiting Upstream [v2,2/6] ALSA: hda - use
dell_micmute_led_set() instead of dell_app_wmi_led_set()
9518741 Awaiting Upstream [v2,3/6] ALSA: hda - rename
dell_led_set_func to dell_micmute_led_set_func
9518725 Awaiting Upstream [v2,4/6] platform/x86: dell-laptop: import
dell_micmute_led_set() from drivers/leds/dell-led.c
9518727 Awaiting Upstream [v2,5/6] dell-led: remove code related to mic mute LED
9518735 Awaiting Upstream [v2,6/6] dell-led: move driver to
drivers/platform/x86/dell-wmi-led.c
9520053 Awaiting Upstream [v2,6+/6] platform/x86: dell-wmi-led: fix
coding style issues

2. Installed Ubuntu 16.10 (Linux kernel 4.8) on Dell Latitude 7180
Just to be sure, I assume you meant 7280?
This is a typo, and it should be 7480, which should be the same as 7280.
quoted
quoted
  -> Microphone mute led works as expected

3. Applied downloaded patches to kernel 4.8 without any conflicts, but
kernel will not compile successfully.
I am confused.  This patch series should apply cleanly to 4.9 and its
surroundings.  Between 4.8 and 4.9, commit 4875a5f72180 ("ALSA: hda -
Fix a failure of micmute led when having multi adcs") happened.   This
makes it impossible to apply this patch series cleanly on top of 4.8
without reducing context to one line.

Moreover, I applied this patch series (with reduced context) to 4.8 and
successfully compiled the kernel.  Could you shed some light on where
exactly did your build crash?
The error messages such as below, so it is probably not "fails to
compile". Since 4.9 works better, I probably will focus on 4.9 & 4.10,
though.
I agree as I see no reason for this patch series to be backported.
quoted
find /home/alexhung/src/kernel/ubuntu-yakkety/debian/build/build-generic/
-name \*.ko | \
    sed -e 's/.*\/\([^\/]*\)\.ko/\1/' | sort >
/home/alexhung/src/kernel/ubuntu-yakkety/debian.master/abi/4.8.0-37.39/amd64/generic.modules
II: Checking modules for generic...
   reading new modules...read 4821 modules.
   reading old modules...
      MISS: dell-led
      NEW : dell-wmi-led
      read 4821 modules : new(1)  missing(1)
EE: Missing modules (start begging for mercy)
debian/rules.d/4-checks.mk:12: recipe for target 'module-check-generic' failed
make: *** [module-check-generic] Error 1
Ah, okay, so you are using the Debian/Ubuntu build method.  The messages
it spits out are correct as the purpose of this series is to remove
dell-led and create dell-wmi-led.  However, I have never compiled a
kernel using the Debian/Ubuntu way, so I am unable to give you any tips
for getting rid of the "Missing modules" error message.
quoted
quoted
quoted
4. Installed Ubuntu Zesty kernel (Linux kernel 4.9)

  -> Microphone mute led works as expected

5. Applied and compiled downloaded patches to kernel 4.9

  -> Microphone mute led does not work
Any chance of a git bisect?
Certainly. Give me some time.
Sure, no rush, though before you start bisecting, please check whether
CONFIG_DELL_LAPTOP is enabled in your kernel configuration for 4.9.
The led stops working after 4th patch "platform/x86: dell-laptop:
import dell_micmute_led_set() from drivers/leds/dell-led.c", and the
.config is with CONFIG_DELL_LAPTOP=m

However, I found dell-laptop is not loaded on Latitude 7480 as its
chassis type is Notebook (10), instead of 8 (Portable) or 9 (Laptop).
That's also what I see for newer Dell laptops.

After I added the below entry into dell-laptop, the led works fine.
This is not in kernel 4.10 rc8 either, and I will submit a patch for
it.

        {
                .matches = {
                        DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
                        DMI_MATCH(DMI_CHASSIS_TYPE, "10"), /*Notebook*/
                },
        },

quoted
quoted
quoted
6. Compiled and installed Linux kernel 4.10 rc8

  -> Microphone mute led does not work
This is even more confusing.  Between 4.9, which you claim works fine,
and 4.10-rc8, which you claim does not work, I can see no changes to
either drivers/leds/dell-led.c or sound/pci/hda/dell_wmi_helper.c.
Kernel configuration issue?
I was surprised too, and I compiled it twice and installed on both
Ubuntu 16.04 and 16.10.

I would guess it is config too. On 4.9, it was using Ubuntu default.
On 4.10rc8, I am pretty much using the instruction on
https://wiki.ubuntu.com/KernelTeam/GitKernelBuild. The .config is
available @ http://paste.ubuntu.com/24001113/
CONFIG_DELL_SMBIOS is not set in that .config.  That prevents you from
enabling CONFIG_LEDS_DELL_NETBOOKS, which is required for the microphone
mute LED to work without this patch series applied.
quoted
quoted
quoted
7. Applied and compiled downloaded patches to kernel 4.10 rc8

  -> Microphone mute led does not work
No surprises here if it really does not work with 4.10-rc8.
My remark regarding CONFIG_DELL_LAPTOP also applies to 4.10-rc8 with
this patch series applied.

Thanks again for your work on this,

--
Best regards,
Michał Kępień


-- 
Cheers,
Alex Hung
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help