lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 22 Nov 2018 14:43:58 +0100
From:   Takashi Iwai <tiwai@...e.de>
To:     Pavel Machek <pavel@....cz>
Cc:     Andy Shevchenko <andy.shevchenko@...il.com>,
        Ayman Bagabas <ayman.bagabas@...il.com>,
        ALSA Development Mailing List <alsa-devel@...a-project.org>,
        Hui Wang <hui.wang@...onical.com>,
        Andy Shevchenko <andy@...radead.org>,
        Darren Hart <dvhart@...radead.org>,
        Jaroslav Kysela <perex@...ex.cz>,
        Kailang Yang <kailang@...ltek.com>,
        Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
        Platform Driver <platform-driver-x86@...r.kernel.org>
Subject: Re: [PATCH v3 3/3] ALSA: hda: add support for Huawei WMI micmute LED

On Thu, 22 Nov 2018 14:18:02 +0100,
Pavel Machek wrote:
> 
> On Thu 2018-11-22 13:36:43, Andy Shevchenko wrote:
> > On Tue, Nov 20, 2018 at 2:19 PM Takashi Iwai <tiwai@...e.de> wrote:
> > >
> > > On Tue, 20 Nov 2018 12:51:59 +0100,
> > > Pavel Machek wrote:
> > > >
> > > > Hi!
> > > >
> > > > > > You have general-purpose LED, yet you are treating it as "something
> > > > > > special". That means ugly code (quoted above) and lack of flexibility.
> > > > > >
> > > > > > For example, if my notebook lacks HDD LED, I can use scrollock LED for
> > > > > > that instead. Or, in reverse way, maybe "mic mute" LED is not useful
> > > > > > for me, and I'd like to use it for notifications instead.
> > > > >
> > > > > I'm not against adding the LEDs device implementation for any exotic
> > > > > usage.
> > > > >
> > > > > But for the audio mute LED features, you'll need really lots of other
> > > > > works if it were implemented via leds device.  That's the hardest
> > > > > part, and a few lines of hooks solves it easily in the kernel side.
> > > > > That's all about it.
> > > > >
> > > > > If you are ready for submitting the real solutions in user-space side
> > > > > (patching PulseAudio and whatever all existing sound daemons, and
> > > > > creating yet another daemon for non-PA systems (another footprint,
> > > > > lovely), and so on), we can happily delete such in-kernel hooks :)
> > > >
> > > > I'm not saying we should move it to the userspace.
> > > >
> > > > I'm saying this should be "normal" led. drivers/leds/led-huawei-acpi.c,
> > > > or something. Perhaps this acpi stuff is so similar you don't really
> > > > need .c code.
> > > >
> > > > And then there should be a "mic muted" trigger. Similar to
> > > > drivers/leds/trigger/ledtrig-disk.c.
> > >
> > > And who will trigger this, e.g. when the mixer is muted?
> > 
> > Is this settled? I'm encouraged to promote this series to our for-next branch.
> 
> I'd prefer this to be normal LED and "mic muted" to become normal
> trigger.

But how would you solve the existing problem?

As already mentioned, you'll need to hook the LED trigger and the
actual mixer value change.  This is the biggest missing piece, and
it's the very reason we have the exported symbol from the platform
driver side.

So, if you prefer in that way, please implement that for the existing
driver (thinkpad_acpi and dell-laptop) at first.  I'll be really happy
to get rid of the present ugly solution!  But it's been there just
because it's not so trivial at all.  FWIW, this must be all done
inside the kernel; otherwise you'll hit a regression.

If the path via leds class can't be achieved quickly, I'd prefer
taking the current approach at first.  Once after it's done for those
above, we can apply the same for huawei-wmi later, too.


thanks,

Takashi

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ