Thinkpad SL510 Mute button not working

Bug #595896 reported by Gumminase
120
This bug affects 21 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Won't Fix
Medium
James M. Leddy
Nominated for Oneiric by James M. Leddy
Natty
Invalid
Medium
Unassigned
Precise
Won't Fix
Undecided
Alex Hung

Bug Description

The mute button of my Thinkpad SL510 is no longer working in Maverick with Kernel 2.6.35.

In Lucid it didn't produce an "XF86AudioMute" signal either but at least it muted the notebook's speakers (not the headphones) and illuminated it's led when pressed. Now with Maverick it doesn't work at all.

Also the brightness controls don't work properly. Ubuntu's indicator OSD already is at it's left end when medium brightness is set. If i lower the brightness any further it starts over at it's right end. So from highest to lowest brightness, the OSD runs through twice.
---
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.23.
Architecture: amd64
ArecordDevices:
 **** List of CAPTURE Hardware Devices ****
 card 0: Intel [HDA Intel], device 0: ALC269 Analog [ALC269 Analog]
   Subdevices: 1/1
   Subdevice #0: subdevice #0
AudioDevicesInUse:
 Cannot stat file /proc/4233/fd/36: Stale NFS file handle
                      USER PID ACCESS COMMAND
 /dev/snd/controlC0: ubuntu 2900 F.... pulseaudio
CRDA: Error: [Errno 2] No such file or directory
Card0.Amixer.info:
 Card hw:0 'Intel'/'HDA Intel at 0xf2a00000 irq 50'
   Mixer name : 'Intel Cantiga HDMI'
   Components : 'HDA:10ec0269,17aa212c,00100004 HDA:80862802,80860101,00100000'
   Controls : 15
   Simple ctrls : 8
Card29.Amixer.info:
 Card hw:29 'ThinkPadEC'/'ThinkPad Console Audio Control at EC reg 0x30, fw 6JHT61WW-1.181000'
   Mixer name : 'ThinkPad EC 6JHT61WW-1.181000'
   Components : ''
   Controls : 1
   Simple ctrls : 1
Card29.Amixer.values:
 Simple mixer control 'Console',0
   Capabilities: pswitch pswitch-joined penum
   Playback channels: Mono
   Mono: Playback [on]
DistroRelease: Ubuntu 10.10
LiveMediaBuild: Ubuntu 10.10 "Maverick Meerkat" - Alpha amd64 (20100710)
MachineType: LENOVO 28477MG
Package: linux (not installed)
ProcCmdLine: BOOT_IMAGE=/casper/vmlinuz noprompt cdrom-detect/try-usb=true file=/cdrom/preseed/hostname.seed boot=casper initrd=/casper/initrd.lz quiet splash -- maybe-ubiquity
ProcEnviron:
 LANG=de_DE.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.35-7.12-generic 2.6.35-rc4
Regression: Yes
RelatedPackageVersions: linux-firmware 1.37
Reproducible: Yes
Tags: maverick kconfig regression-potential needs-upstream-testing
Uname: Linux 2.6.35-7-generic x86_64
UserGroups: adm admin cdrom dialout lpadmin plugdev sambashare
dmi.bios.date: 05/14/2010
dmi.bios.vendor: LENOVO
dmi.bios.version: 6JET79WW (1.37 )
dmi.board.name: 28477MG
dmi.board.vendor: LENOVO
dmi.board.version: Not Available
dmi.chassis.asset.tag: No Asset Information
dmi.chassis.type: 10
dmi.chassis.vendor: LENOVO
dmi.chassis.version: Not Available
dmi.modalias: dmi:bvnLENOVO:bvr6JET79WW(1.37):bd05/14/2010:svnLENOVO:pn28477MG:pvrThinkPadSL510:rvnLENOVO:rn28477MG:rvrNotAvailable:cvnLENOVO:ct10:cvrNotAvailable:
dmi.product.name: 28477MG
dmi.product.version: ThinkPad SL510
dmi.sys.vendor: LENOVO

Revision history for this message
Leo Arias (elopio) wrote :

Hello Gumminase,

Thanks for taking your time to report this issue and help us making ubuntu better.

Hotkey handling, such as volume and suspend keys, involves multiple packages. Please take a look at https://wiki.ubuntu.com/Hotkeys/Troubleshooting
There is a section called "Step-by-step Troubleshooting". Please follow the steps and report back the results you get as comments. And in case of doubt, don't hesitate to ask here.

Please also add as separate attachments all the files requested in the section "Useful Information to Collect in Reports".

pura vida.

Revision history for this message
Gumminase (mail-ulliweber) wrote :

There is no Keypress Event for the Mute Button but with acpi_listen it says "ibm/hotkey HKEY 00000080 00001017" when pressed.

The brightness buttons are working, but they are not synchronous to the indicator. Maybe this should be reported as a separate bug?

Revision history for this message
Gumminase (mail-ulliweber) wrote :
Revision history for this message
Gumminase (mail-ulliweber) wrote :
Revision history for this message
Gumminase (mail-ulliweber) wrote :
Revision history for this message
Gumminase (mail-ulliweber) wrote :

What I also noticed: All other hotkeys generate two events of the same kind in xev while the brightness buttons generate four of them. Example output for one button pressed each:

keycode 160 = (keysym 0x1008ff2d, XF86ScreenSaver), state = 0x10
keycode 160 = (keysym 0x1008ff2d, XF86ScreenSaver), state = 0x10
keycode 122 = (keysym 0x1008ff11, XF86AudioLowerVolume), state = 0x10
keycode 122 = (keysym 0x1008ff11, XF86AudioLowerVolume), state = 0x10
keycode 123 = (keysym 0x1008ff13, XF86AudioRaiseVolume), state = 0x10
keycode 123 = (keysym 0x1008ff13, XF86AudioRaiseVolume), state = 0x10
keycode 232 = (keysym 0x1008ff03, XF86MonBrightnessDown), state = 0x10
keycode 232 = (keysym 0x1008ff03, XF86MonBrightnessDown), state = 0x10
keycode 232 = (keysym 0x1008ff03, XF86MonBrightnessDown), state = 0x10
keycode 232 = (keysym 0x1008ff03, XF86MonBrightnessDown), state = 0x10
keycode 233 = (keysym 0x1008ff02, XF86MonBrightnessUp), state = 0x10
keycode 233 = (keysym 0x1008ff02, XF86MonBrightnessUp), state = 0x10
keycode 233 = (keysym 0x1008ff02, XF86MonBrightnessUp), state = 0x10
keycode 233 = (keysym 0x1008ff02, XF86MonBrightnessUp), state = 0x10

Revision history for this message
Gumminase (mail-ulliweber) wrote :

If I press either the volume up or the volume down button directly after I pressed the mute button, it actually generates the following event

keycode 121 = (keysym 0x1008ff12, XF86AudioMute), state = 0x0
keycode 121 = (keysym 0x1008ff12, XF86AudioMute), state = 0x0

and mutes the audio. The LED within the mute button on the other hand is still not working at all.

Revision history for this message
Gumminase (mail-ulliweber) wrote :

Sorry for leaving seven replies instead of just one big one, I hope this is the last one until someone gives me new feedback:

The brightness buttons also generate the following events in acpi_listen, brightness up gives me

ibm/hotkey HKEY 00000080 00001010
video DD03 00000086 00000000

brightness down gives me

ibm/hotkey HKEY 00000080 00001011
video DD03 00000087 00000000

Also this Thinkpad has a microphone mute button. It generates the event "ibm/hotkey HKEY 00000080 0000101b" but doesn't do anything else anywhere.

Revision history for this message
Leo Arias (elopio) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better. This bug did not have a package associated with it, which is important for ensuring that it gets looked at by the proper developers. You can learn more about finding the right package at https://wiki.ubuntu.com/Bugs/FindRightPackage. I have classified this bug as a bug in linux.

When reporting bugs in the future please use apport, either via the appropriate application's "Help -> Report a Problem" menu or using 'ubuntu-bug' and the name of the package affected. You can learn more about this functionality at https://wiki.ubuntu.com/ReportingBugs.

affects: ubuntu → linux (Ubuntu)
Revision history for this message
Leo Arias (elopio) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better. Unfortunately, we can't fix it without more information.

Please run the following command which will attach necessary information:

apport-collect 595896

For your reference, the full description of procedures for kernel related bug reports is available at https://wiki.ubuntu.com/KernelTeam/KernelTeamBugPolicies. Thanks in advance!

Changed in linux (Ubuntu):
status: New → Incomplete
Leo Arias (elopio)
tags: added: needs-kernel-logs
Revision history for this message
Gumminase (mail-ulliweber) wrote : AlsaDevices.txt

apport information

tags: added: apport-collected
description: updated
Revision history for this message
Gumminase (mail-ulliweber) wrote : AplayDevices.txt

apport information

Revision history for this message
Gumminase (mail-ulliweber) wrote : BootDmesg.txt

apport information

Revision history for this message
Gumminase (mail-ulliweber) wrote : Card0.Amixer.values.txt

apport information

Revision history for this message
Gumminase (mail-ulliweber) wrote : Card0.Codecs.codec.0.txt

apport information

Revision history for this message
Gumminase (mail-ulliweber) wrote : Card0.Codecs.codec.3.txt

apport information

Revision history for this message
Gumminase (mail-ulliweber) wrote : CurrentDmesg.txt

apport information

Revision history for this message
Gumminase (mail-ulliweber) wrote : IwConfig.txt

apport information

Revision history for this message
Gumminase (mail-ulliweber) wrote : Lspci.txt

apport information

Revision history for this message
Gumminase (mail-ulliweber) wrote : Lsusb.txt

apport information

Revision history for this message
Gumminase (mail-ulliweber) wrote : PciMultimedia.txt

apport information

Revision history for this message
Gumminase (mail-ulliweber) wrote : ProcCpuinfo.txt

apport information

Revision history for this message
Gumminase (mail-ulliweber) wrote : ProcInterrupts.txt

apport information

Revision history for this message
Gumminase (mail-ulliweber) wrote : ProcModules.txt

apport information

Revision history for this message
Gumminase (mail-ulliweber) wrote : RfKill.txt

apport information

Revision history for this message
Gumminase (mail-ulliweber) wrote : UdevDb.txt

apport information

Revision history for this message
Gumminase (mail-ulliweber) wrote : UdevLog.txt

apport information

Revision history for this message
Gumminase (mail-ulliweber) wrote : WifiSyslog.txt

apport information

Revision history for this message
Leo Arias (elopio) wrote :

Thanks for taking the time to report his bug and comment on it. However, I've noticed that this bug has been Confirmed although there is not clear indication as to how to recreate this bug [ or version of software affected ]. Subsequently, I'm setting its status to Incomplete until that information is provided. You can learn more about bug statuses at http://wiki.ubuntu.com/Bugs/Status. Thanks for taking the time to make Ubuntu better!

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
tags: added: kernel-input
removed: needs-kernel-logs
Revision history for this message
Gumminase (mail-ulliweber) wrote :

How can i help to provide this information? To recreate this bug... well i press the buttons and see nothing happening, but that doesn't really help, does it?

Revision history for this message
Leo Arias (elopio) wrote :

Sorry Gumminase, I rechecked your issue and since this bug has enough information provided for a developer to begin work, I'm going to mark it as confirmed and let them handle it from here. Thanks for taking the time to make Ubuntu better!

Sorry for the mistake.

Revision history for this message
Chris Webb (chwebb) wrote :

I have a ThinkPad SL410, running 10.10, and these issues also affects this model.

Revision history for this message
Cheer Xiao (xiaqqaix) wrote :

I have an SL 510 running 10.10 and have this problem too.

According to thinkwiki.com(http://www.thinkwiki.org/wiki/Category:SL_Series), SL series notebooks have Ideapad firmware, which may be a good clue for this bug. It also suggests a general solution for Thinkpad(http://www.thinkwiki.org/wiki/Mute_button) but that doesn't work on my SL 510 most likely due to the firmware problem.

However I remember 10.4 didn't have the bug. I suggest that 10.10 be marked as Milestone.

To Chris Webb:
"SL 410" is not really the model name. 410 just stands for a 14.1in screen. The model number is printed on the back of your notebook, like "TYPE 2847-63C".

Revision history for this message
LM (l-moeller1) wrote :

I've also an SL510 by Lenovo running 10.10 and I can confirm this problem.

If you're pressing the mute-button and afterwards the volume-up or volume-down-button, the sound gets muted.
But the light don't flashs like in Ubuntu 10.04.
If you are only pressing the mute-button, nothing happens.

Changed in linux (Ubuntu):
assignee: nobody → Lukas Möller (l-moeller1)
LM (l-moeller1)
Changed in linux (Ubuntu):
assignee: LM (l-moeller1) → nobody
Revision history for this message
Tyler (tyler.h) wrote :

Bandaid solution for those needing to output to headphones only:
Sound Preferences -> Output Tab -> Connector
-> "Analog Headphones" outputs only to headphones
-> "Analog Speakers" outputs to both

Revision history for this message
Gumminase (mail-ulliweber) wrote :

@Tyler:
I think you are talking about the missing headphone jack sense, which is another bug (#580006) on this notebook. This can be fixed by typing

sudo echo "options snd_hda_intel model=quanta" >> /etc/modprobe.d/alsa-base.conf

in a Terminal.

Revision history for this message
LM (l-moeller1) wrote :

@Gumminase:
If you do so, you aren't able anymore to record via the intern microphone.

Revision history for this message
Timo Tomasini (kanocx) wrote :

I've also a Lenovo ThinkPad SL510 with Ubuntu 10.10. I've got exactly the same problems.

With the Ubuntu upgrade from 10.04, hibernate-to-ram doesn't work anymore as good as in karmic. Everytime when I close the screen or want to go into standby, the display shows "(process XXX): GLib_Warning **: getpwuid_r(): failed due to unknown user id (0)" (XXX is a changing number).

Revision history for this message
Timo Tomasini (kanocx) wrote :

Sometimes the Laptop hibernate, sometimes not.

Sorry for double-posting, but I don't know how to edit.

Revision history for this message
grigori (gexi-deactivatedaccount) wrote :

i can confirm all of the above for my sl510 on maverick:

- mute button doesn't work (though it did work in lucid for the speakers, not the headphone/output jack)
- headphone jack sense doesn't work (neighter did in lucid)
- brightness osd isn't adjusted right in the way mentioned above (it was adjusted in lucid)
- hibernate fails very often (didn't do so in lucid)

Revision history for this message
Tommy_CZ (t-kijas) wrote :

I can confirm it (mute issue) on Lenovo IdeaPad Y550P

Revision history for this message
MillenniumBug (millenniumbug) wrote :

@the_king4:

Does applying this bug fix
https://bugs.launchpad.net/ubuntu/+source/plymouth/+bug/649917
solve the problem?

If you still have the problem, please open a new bug report, since this one is about muting.

Revision history for this message
Chris Webb (chwebb) wrote :

To my post earlier, my machine type is: 2842-F7U. All of the bugs here affect my notebook, such as the mute button not working in 10.10, the brightness indicator being asynchronus to the actual brightness, and headphone autosense not working.

Revision history for this message
Froggy (thrabalek) wrote :

The problem is also affecting me on ThinkPad SL510 after upgrade to 10.10.

Revision history for this message
Keng-Yu Lin (lexical) wrote :

As someone mentioned that it worked in 10.04, could it be confirmed that thinkpad-acpi module is loaded in 10.04? or dmesg just shows "thinkpad_acpi: Not yet suported ThinkPad detected!"

Changed in linux (Ubuntu):
importance: Undecided → Low
Revision history for this message
Gumminase (mail-ulliweber) wrote :

"dmesg | grep -i thinkpad_acpi" gives me:

[ 15.860889] thinkpad_acpi: ThinkPad ACPI Extras v0.24
[ 15.860892] thinkpad_acpi: http://ibm-acpi.sf.net/
[ 15.860895] thinkpad_acpi: ThinkPad BIOS 6JET79WW (1.37 ), EC 6JHT61WW-1.181000
[ 15.860897] thinkpad_acpi: Lenovo ThinkPad SL510, model 28477MG
[ 15.870521] thinkpad_acpi: detected a 8-level brightness capable ThinkPad
[ 15.880055] thinkpad_acpi: radio switch found; radios are enabled
[ 15.880105] thinkpad_acpi: possible tablet mode switch found; ThinkPad in laptop mode
[ 15.882471] thinkpad_acpi: asked for hotkey mask 0x078dffff, but firmware forced it to 0x008dffff
[ 15.911897] thinkpad_acpi: rfkill switch tpacpi_bluetooth_sw: radio is unblocked
[ 15.948747] thinkpad_acpi: Console audio control enabled, mode: monitor (read only)
[ 15.954317] input: ThinkPad Extra Buttons as /devices/platform/thinkpad_acpi/input/input7

Revision history for this message
Gumminase (mail-ulliweber) wrote :

Oh but sorry, this was on 10.10 - does it help anyway?

Revision history for this message
Cheer Xiao (xiaqqaix) wrote : Re: [Bug 595896] Re: Thinkpad SL510 Mute button not working

Hi Lin,
I have downgraded my system to 10.4 and was able to confirm that it doesn't
work perfectly either, though in a somehow "better" way. "dmesg | grep
think" gives the line you just mentioned. In 10.4 the behavior is:

headphone / mute button / sound

not plugged in / off / speaker
not plugged in / on / none
plugged in / off / both headphone and speaker
plugged in / on / headphone only

Another observation that may be useful: There is a light under the mute
button indicating state of muting. In 10.4 the light goes on and off as
muting gets turned on and off. However in 10.10 the light gets locked to the
state before Ubuntu boots; but even muting was on before Ubuntu boots
(therefore the light is always on within Ubuntu), muting still has no
effect.

On Dec 23, 2010 4:41 PM, "Keng-Yü Lin" <email address hidden> wrote:
>
> As someone mentioned that it worked in 10.04, could it be confirmed that
> thinkpad-acpi module is loaded in 10.04? or dmesg just shows
> "thinkpad_acpi: Not yet suported ThinkPad detected!"
>
> ** Changed in: linux (Ubuntu)
> Importance: Undecided => Low
>
> --
> You received this bug notification because you are a direct subscriber
> of the bug.
> https://bugs.launchpad.net/bugs/595896
>
> Title:
> Thinkpad SL510 Mute button not working

Revision history for this message
Cheer Xiao (xiaqqaix) wrote :

Yeah, I think the situation should be clear now, given different results of
dmesg on 10.4 and 10.10. In 10.4 thinkpad_acpi doesn't work at all, which
leads to mute button behaving in its default way (works, but only affects
the speaker); in 10.10 thinkpad_acpi gets loaded and take over the mute
button but unfortunately makes it unusable.
On Dec 23, 2010 5:16 PM, "Gumminase" <email address hidden> wrote:
> "dmesg | grep -i thinkpad_acpi" gives me:
>
> [ 15.860889] thinkpad_acpi: ThinkPad ACPI Extras v0.24
> [ 15.860892] thinkpad_acpi: http://ibm-acpi.sf.net/
> [ 15.860895] thinkpad_acpi: ThinkPad BIOS 6JET79WW (1.37 ), EC
6JHT61WW-1.181000
> [ 15.860897] thinkpad_acpi: Lenovo ThinkPad SL510, model 28477MG
> [ 15.870521] thinkpad_acpi: detected a 8-level brightness capable ThinkPad
> [ 15.880055] thinkpad_acpi: radio switch found; radios are enabled
> [ 15.880105] thinkpad_acpi: possible tablet mode switch found; ThinkPad in
laptop mode
> [ 15.882471] thinkpad_acpi: asked for hotkey mask 0x078dffff, but firmware
forced it to 0x008dffff
> [ 15.911897] thinkpad_acpi: rfkill switch tpacpi_bluetooth_sw: radio is
unblocked
> [ 15.948747] thinkpad_acpi: Console audio control enabled, mode: monitor
(read only)
> [ 15.954317] input: ThinkPad Extra Buttons as
/devices/platform/thinkpad_acpi/input/input7
>
> --
> You received this bug notification because you are a direct subscriber
> of the bug.
> https://bugs.launchpad.net/bugs/595896
>
> Title:
> Thinkpad SL510 Mute button not working

Revision history for this message
Keng-Yu Lin (lexical) wrote :

@xiaq

  Ok, from your description we can confirm that in 10.04, thinkpad_acpi driver is not loaded, so the hardware is behaving in its "default" way. This could be programmed in the firmware.

  thinkpad_acpi driver also controls many other things, such as brighness adjustment, radio (wifi/bt/wan) toggling, and possibly the external video switch and fan control.

  Does anyone facing any malfunction of above in 10.04 since in that version the driver is not loaded by default.

Revision history for this message
Keng-Yu Lin (lexical) wrote :

Also FYI, there are some BIOS updates available at http://www-307.ibm.com/pc/support/site.wss/MIGR-73435.html.

Revision history for this message
Alain ANDERLINI (alain-anderlini) wrote :

I hereby confirm the following regressions on a Lenovo SL510 laptop since maverick (10.10) upgrade:
- The sound-mute button and the sound-mute LED no longer work. They both used to work in 10.04 but for internal speakers only, and were ineffective for the external jack.
- The mic-mute button does not work in 10.10, and did not work either in 10.04. Also, the front mic are always disabled by default at boot time, and one needs to activate the front mic with Alsa mixer to get it work. I was unable to get front-mic working at all in 10.04, so some little improvement here.
- Brightness control through <Fn> keys is cycling twice through the brightness indication bar in order to reach full brightness settings. It used to work correctly in 10.04.
- Brightness settings are lost when laptop enter some screen saving mode: one has to restore them by means of <Fn> key. This (rather annoying) malfunctionning was already present in 10.04.
- Standby mode does not work in 10.10, and did not work either in 10.04: the led keeps on flashing and fans keep on running without the laptop entering true standby; unable to wake up; need hard power off by pressing the power button for 5 seconds. This is a SEVERE restriction as standby mode is very helpful for a laptop, and need fix asap. Don't know if that bug is related to acpi module, but it is an hardware issue for sure.

FYI, the BIOS laptop has been upgraded to 1.41. The BIOS upgrade did not improve anything so far: same behaviour as before the upgrade.

We URGENTLY need prompt and effective support from Lenovo and/or acpi expert people to get acpi correctly tuned for that SL510 laptop model as those issues are pending for a too long time now (more than a year).

Regards

Revision history for this message
Keng-Yu Lin (lexical) wrote :

Does "echo 0 > /sys/module/video/parameters/brightness_switch_enabled" work around the brightness bug?

You need to `sudo su` first to get root permission before doing that.

Revision history for this message
Keng-Yu Lin (lexical) wrote :

Could anyone make the kernel module in http://people.ubuntu.com/~lexical/archive/lp595896/thinkpad_acpi2/ and test if it makes the mute key work.

Download both Makefile & thinkpad_acpi.c and perform steps like this:

 make
 sudo rmmod thinkpad_acpi
 sudo insmod ./thinkpad_acpi.ko

Revision history for this message
Alain ANDERLINI (alain-anderlini) wrote :

"echo 0 > /sys/module/video/parameters/brightness_switch_enabled" fully disables brightness control, I mean you can no longer change the brightness settings via the <Fn> keys. "echo 1 > /sys/module/video/parameters/brightness_switch_enabled" restore brightness control, yet with the aforementioned bug (cycling twice through the brightness indication bar).

Revision history for this message
Gumminase (mail-ulliweber) wrote :

Thank you very much for your suggestios, I tried them both. Here's what I observed:

The brightness workaround kind of does the trick, but it simply "switches off" the lower half of the brightness steps, i.e. without the workaround I could dim the display even darker. I think one should rather adjust the OSD instead of cutting out half of the functionality.

Sadly the mute key still does not work at all.

Revision history for this message
Alain ANDERLINI (alain-anderlini) wrote :

I've also tested your new acpi module. Same outcome as Gumminase: still unable to get the mute button work.

Thanks for tackling those issues Lin.

Revision history for this message
Froggy (thrabalek) wrote :

After "rmmod thinkpad_acpi" is called, mute button starts to work well like in 10.04. Also brightness status is well synchronized. The only problem found is with "wireless" button (Fn+F5).
Is there any possibility to set the system to not use thinkpad_acpi for ThinkPad SL510 permanently?

Revision history for this message
Keng-Yu Lin (lexical) wrote :

The line in dmesg interests me:

[ 15.882471] thinkpad_acpi: asked for hotkey mask 0x078dffff, but firmware forced it to 0x008dffff

what does it do if you `echo 0x078dffff > /sys/devices/platform/thinkpad_acpi/hotkey_mask`

"0x0700-0000" is not really documented in the thinkpad_acpi source code, so I wonder what these bits are and if they makes any changes to the behaviour.

or

`echo 0x00fdffff > /sys/devices/platform/thinkpad_acpi/hotkey_mask`

This flips the hotkey bit mask for mute/vol-up/vol-down keys.

I think it will also be great if one with the hardware can post the content of /sys/devices/platform/thinkpad_acpi/hotkey*. There are several files, but good for debugging reference.

Revision history for this message
Keng-Yu Lin (lexical) wrote :

I added some printk()s in several possible places to check: http://people.canonical.com/~lexical/archive/lp595896/thinkpad_acpi/

Could anyone help test in the same way as in #54 and report back the debug messages shown in the console/dmesg?

Revision history for this message
Gumminase (mail-ulliweber) wrote :

~$ ls /sys/devices/platform/thinkpad_acpi/hotkey* gives back:

/sys/devices/platform/thinkpad_acpi/hotkey_all_mask
/sys/devices/platform/thinkpad_acpi/hotkey_bios_enabled
/sys/devices/platform/thinkpad_acpi/hotkey_bios_mask
/sys/devices/platform/thinkpad_acpi/hotkey_enable
/sys/devices/platform/thinkpad_acpi/hotkey_mask
/sys/devices/platform/thinkpad_acpi/hotkey_poll_freq
/sys/devices/platform/thinkpad_acpi/hotkey_radio_sw
/sys/devices/platform/thinkpad_acpi/hotkey_recommended_mask
/sys/devices/platform/thinkpad_acpi/hotkey_report_mode
/sys/devices/platform/thinkpad_acpi/hotkey_source_mask
/sys/devices/platform/thinkpad_acpi/hotkey_tablet_mode

Applying your latest fix, pushing the mute button and running dmesg gives back:
[ 843.806915] hda-intel: spurious response 0x0:0x0, last cmd=0x1439000
[ 843.807336] /home/gumminase/Desktop/mute/thinkpad_acpi.c 2286 mask=8dffff
[ 843.807340] /home/gumminase/Desktop/mute/thinkpad_acpi.c 8523
[ 843.807344] /home/gumminase/Desktop/mute/thinkpad_acpi.c 8503 4119
[ 843.807348] /home/gumminase/Desktop/mute/thinkpad_acpi.c 6750

Revision history for this message
Alain ANDERLINI (alain-anderlini) wrote :

a bit more info:

'echo 0x078dffff > /sys/devices/platform/thinkpad_acpi/hotkey_mask' or 'echo 0x00fdffff > /sys/devices/platform/thinkpad_acpi/hotkey_mask' does not change anything to the mute button behaviour: volume up/down keys keep on working, and the mute button does not mute anything.

Here is a dump of all hotkey* files as they are initially before the echo commands are issued:

> more hotkey*
::::::::::::::
hotkey_all_mask
::::::::::::::
0x07ffffff
::::::::::::::
hotkey_bios_enabled
::::::::::::::
0
::::::::::::::
hotkey_bios_mask
::::::::::::::
0x0000080c
::::::::::::::
hotkey_enable
::::::::::::::
1
::::::::::::::
hotkey_mask
::::::::::::::
0x008dffff
::::::::::::::
hotkey_poll_freq
::::::::::::::
10
::::::::::::::
hotkey_radio_sw
::::::::::::::
1
::::::::::::::
hotkey_recommended_mask
::::::::::::::
0x078dffff
::::::::::::::
hotkey_report_mode
::::::::::::::
1
::::::::::::::
hotkey_source_mask
::::::::::::::
0x00000000
::::::::::::::
hotkey_tablet_mode
::::::::::::::
0

Revision history for this message
Keng-Yu Lin (lexical) wrote :

Given the fact that the mute key works good without thinkpad-acpi, it could be interesting to investigate the sound configuration in detail:

Please download alsa-info.sh from http://www.alsa-project.org/alsa-info.sh.
Execute it with and without thinkpad-acpi loaded, after a while, the result will be logged as some file in /tmp. Its file name will be shown, so easy to copy it to somewhere else.

Attach both resulted logs here to further analysis.

Thanks for the help.

Revision history for this message
Cheer Xiao (xiaqqaix) wrote :

Running alsa-info.sh on Lucid (without thinkpad-acpi) generates the attached log.

Revision history for this message
Keng-Yu Lin (lexical) wrote :

@xiaq,

  Here we are trying to solve the mute issue for Maverick & later version. Could you try to collect the alsa-info on Maverick *with* and *without* thinkpad-acpi driver loaded.

  I am wondering if `modprobe thinkpad_acpi enable=0` works, this parameter prevents the alsa mixer from being initialised.

  Since I have no hardware in hand, I am just doing the source-level investigation. It seems that some initialisation steps of thinkpad-acpi is affecting the behaviour of the mute function. But it is difficult to track since this driver has almost 10000 lines.

  My last attempt to change the hotkey_mask is also based on this assumption.

  I hope we are lucky enough to narrow down the possible hotspots. As it is hardware-related and it is not really observable, it is also possible to occur somewhere obscure.

Revision history for this message
Cheer Xiao (xiaqqaix) wrote :

@Keng-Yü Lin,
I'd love to test on Maverick but unfortunately I have downgraded to lucid. I do have a Natty(alpha 1) installation though. I'll post the test results on Natty sometime later. Hope that would help.

Revision history for this message
Alain ANDERLINI (alain-anderlini) wrote :

The requested alsa info with and without thinkpad_acpi module loaded (FYI, I unload the thinkpad_acpi module with 'sudo rmmod thinkpad_acpi' and then './alsa-info.sh') are herewith enclosed.

Regards
Alain

Revision history for this message
Alain ANDERLINI (alain-anderlini) wrote :
Revision history for this message
Keng-Yu Lin (lexical) wrote :

@Alain

  Thank you very much. Could you also test if `modprobe thinkpad_acpi enable=0` fixes?

Revision history for this message
Alain ANDERLINI (alain-anderlini) wrote :

'modprobe thinkpad_acpi enable=0' command issued on a terminal after SL510 laptop booted (and thinkpad_acpi module was loaded) does not fix the mute button issue.

2 additional pieces of info:
- whenever the mute button is pressed with or without the thinkpad_acpi module loaded, I got the following event in Klog: [184824.193753] hda-intel: spurious response 0x0:0x0, last cmd=0x23900f
- without the thinkpad_acpi module loaded, the mute button is effective for the internal speakers ONLY, but is ineffective for the audio external jack: the external speakers keep on outputting the sound.

Revision history for this message
Alain ANDERLINI (alain-anderlini) wrote :

@Lin

I carried out a new test starting with the thinkpad_acpi module unloaded first: the mute button works when the thinkpad_acpi module is loaded with the option enable=0 (but for the internal speakers only as without the thinkpad_acpi module unloaded).

These are the command sequence I've typed at the terminal:

> sudo rmmod thinkpad_acpi
> sudo modprobe thinkpad_acpi enable=0
> lsmod | grep think
thinkpad_acpi 67659 0
nvram 6342 1 thinkpad_acpi
snd 49006 14 thinkpad_acpi,snd_hda_codec_realtek,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm,snd_rawmidi,snd_seq,snd_timer,snd_seq_device
led_class 2633 2 thinkpad_acpi,sdhci

, and next I test the button with the hereabove outcome (successfull).

Regards
Alain

Keng-Yu Lin (lexical)
Changed in linux (Ubuntu):
assignee: nobody → Keng-Yü Lin (lexical)
status: Confirmed → In Progress
Revision history for this message
Keng-Yu Lin (lexical) wrote :

@Alain

  Yes, it is always required to rmmod first.

  Am I correct to suppose that with the option "enable=0", the mute key works for the internal speaker. Does the key always mute or it un-mute on second pressing?

  With a headphone plugged, does the key also mute the headphone volume?

Revision history for this message
Alain ANDERLINI (alain-anderlini) wrote :

You are correct Lin: with the option "enable=0", the mute button mutes and un-mutes the internal speakers correctly, and the mute LED is correctly switched on and off respectively. Yet, nothing happens on the audio jack output (the green one to be used with a headphone for instance, or to connect to a Hifi sound system) and the sound keeps on being output, i.e. the mute button mutes the internal speakers only without any effect on the audio output jack. Hope this clarifies.

Revision history for this message
Keng-Yu Lin (lexical) wrote :

@Alain
  Can you test if the quirking work: http://people.canonical.com/~lexical/bugs/lp595896/ ?

  Follow the steps:

  make
  sudo rmmod thinkpad_acpi
  sudo insmod ./thinkpad_acpi.ko

Revision history for this message
Alain ANDERLINI (alain-anderlini) wrote :

@Lin

I got the following error when loading your thinkpad_acpi module (I blacklisted the thinkpad_acpi module so no need to unload it first):

$ make
make -C /lib/modules/`uname -r`/build M=`pwd` modules
make[1]: entrant dans le répertoire « /usr/src/linux-headers-2.6.35-23-generic »
  CC [M] /home/marie/Technique/LP595896/thinkpad_acpi/thinkpad_acpi.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC /home/marie/Technique/LP595896/thinkpad_acpi/thinkpad_acpi.mod.o
  LD [M] /home/marie/Technique/LP595896/thinkpad_acpi/thinkpad_acpi.ko
make[1]: quittant le répertoire « /usr/src/linux-headers-2.6.35-23-generic »
ls -al
total 576
drwxr-xr-x 3 marie marie 4096 2011-01-29 13:37 .
drwxr-xr-x 3 marie marie 4096 2011-01-29 13:30 ..
-rw-r--r-- 1 marie marie 340 2011-01-29 13:32 Makefile
-rw-r--r-- 1 marie marie 69 2011-01-29 13:37 modules.order
-rw-r--r-- 1 marie marie 0 2011-01-29 13:37 Module.symvers
-rw-r--r-- 1 marie marie 237164 2011-01-29 13:32 thinkpad_acpi.c
-rw-r--r-- 1 marie marie 126195 2011-01-29 13:37 thinkpad_acpi.ko
-rw-r--r-- 1 marie marie 359 2011-01-29 13:37 .thinkpad_acpi.ko.cmd
-rw-r--r-- 1 marie marie 5198 2011-01-29 13:37 thinkpad_acpi.mod.c
-rw-r--r-- 1 marie marie 9740 2011-01-29 13:37 thinkpad_acpi.mod.o
-rw-r--r-- 1 marie marie 24437 2011-01-29 13:37 .thinkpad_acpi.mod.o.cmd
-rw-r--r-- 1 marie marie 117094 2011-01-29 13:37 thinkpad_acpi.o
-rw-r--r-- 1 marie marie 33899 2011-01-29 13:37 .thinkpad_acpi.o.cmd
drwxr-xr-x 2 marie marie 4096 2011-01-29 13:37 .tmp_versions
$ sudo insmod ./thinkpad_acpi.ko
insmod: error inserting './thinkpad_acpi.ko': -1 Unknown symbol in module

Revision history for this message
Alain ANDERLINI (alain-anderlini) wrote :

@Lin

No feedback since my last post (January 29): are you still actively investigating this bug?

Alain

Revision history for this message
Keng-Yu Lin (lexical) wrote :

@Alain:

  Yes, I am. sorry for the delay because of Chinese New Year vacation.

  I tested the compile & insmod on my Thinkpad X200 (I have no SL hardware). It uses the same driver. It seems to work:

$ make
make -C /lib/modules/`uname -r`/build M=`pwd` modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.35-23-generic'
  CC [M] /home/lexical/tar/sutton/lp595896/thinkpad_acpi.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC /home/lexical/tar/sutton/lp595896/thinkpad_acpi.mod.o
  LD [M] /home/lexical/tar/sutton/lp595896/thinkpad_acpi.ko
make[1]: Leaving directory `/usr/src/linux-headers-2.6.35-23-generic'

$ sudo rmmod thinkpad_acpi
$ sudo insmod ./*.ko

(insmod successfully here, so no further message)

Can you make sure that you rmmod the module before insmod?

Or you can also try

  sudo cp ./thinkpad_acpi.ko /lib/modules/`uname -r`/updates
  sudo depmod -a

and then reboot. See if the new driver is being used and if the quirking works.

Revision history for this message
Gumminase (mail-ulliweber) wrote :

I tried your quirking. I was able to compile it without an error. After loading the module, the behaviour was pretty much like described by Alain in #73: LED works, internal speakers muted but no effect on headphones or external speakers and no XF86AudioMute signal.

Revision history for this message
Gumminase (mail-ulliweber) wrote :

Wait.... Do i have to reboot before this takes effect?? Because after a reboot everything is back to "normal" i.e. no mute button reaction at all.

Revision history for this message
Keng-Yu Lin (lexical) wrote :

@Gumminase

If you did the following steps:
  sudo cp ./thinkpad_acpi.ko /lib/modules/`uname -r`/updates
  sudo depmod -a

then the modified driver will be used instead of the original one after reboot. Without the copy to /lib/modules/*/update, the original (not-working) driver is used.

Let me make sure with you that in #78, you insmod without any parameter, right?

If so, I think the quirking works.

Revision history for this message
Keng-Yu Lin (lexical) wrote :

It is a bigger issue that the mute key has effect only on the internal speaker, not on the headphone and generates no keycode (this makes no OSD show).

It needs to consider other Thinkpad types, too. Like my X200 (using the same driver), the mute key only mutes the internal speaker, too.

To change this behaviour we need to makes sure it does not break the mute functionality of other Thinkpad types (from very old to latest ones).

This could take more time and discussion upstream.

If it makes sense, I would like to make sure that my fix here works on SL510/410 and get it upstream asap so that it will be included in Natty. At least this makes the mute key/LED works at the degree as other Thinkpads.

Revision history for this message
swoody (swoody) wrote :

I am using an SL510 and unfortunately your mod isn't working for me. I downloaded your changes, followed your instructions, copied the new module, rebooted, and the actions are just the same as before. After rebooting, mute does not work on either headphones or speakers. After "rmmod thinkpad_acpi" mute functionality and LED works on speakers only. After "modprobe thinkpad_acpi enable=0" mute and LED work on speakers, but again not headphones. At this point lsmod shows thinkpad_acpi as being loaded.

Please let me know if I can attach any files or logs to help this progress further. I would really like to see this issue resolved :)

Chris Van Hoof (vanhoof)
tags: added: hwe-blocker
Revision history for this message
Keng-Yu Lin (lexical) wrote :

@swoody,
  Can you attach the dmesg (/var/log/dmesg)?

Revision history for this message
swoody (swoody) wrote :

Here is my current /var/log/dmesg

Revision history for this message
Keng-Yu Lin (lexical) wrote :

@swoody
  What my driver in #74 is going to do is do what the parameter "enable=0" does when detecting a SL410/510 hardware (EC version).

  What I expect is that one can insmod *without* the need to add the "enable=0" parameter and the mute key for the internal speaker and the led works.

  I do not expect my driver in #74 to make the mute key work on the headphone.

  Hope this makes it more clear. And I hope one can report how the mute key/led works by following the instruction in #74 (note: no "enable=0" parameter).

Revision history for this message
Gumminase (mail-ulliweber) wrote :

As I pointed out in #78, I think it does exactly what you intended.

Revision history for this message
Keng-Yu Lin (lexical) wrote :

@Gumminase

  Thanks for the feedback.

Revision history for this message
sebaw (sebabestellt) wrote :

I found something which seems to be related:
http://sourceforge.net/mailarchive/message.php?msg_id=26842466
especially the last comment ( http://sourceforge.net/mailarchive/message.php?msg_id=26867989 ), if I understand it correctly the headphone - mute problem is solved by a new sound driver?

Revision history for this message
Jeremy Foshee (jeremyfoshee) wrote :

Keng-Yü Lin,
     Does it look like this will land in time for natty-updates? I'd like to milestone this appropriately for the release team.

Thanks!

~JFo

Changed in linux (Ubuntu Natty):
milestone: none → natty-updates
Keng-Yu Lin (lexical)
Changed in linux (Ubuntu Natty):
status: In Progress → Triaged
Changed in linux (Ubuntu):
status: In Progress → Triaged
Ayan George (ayan)
tags: added: blocks-hwcert-enablement
Keng-Yu Lin (lexical)
Changed in linux (Ubuntu Natty):
assignee: Keng-Yü Lin (lexical) → nobody
Changed in linux (Ubuntu):
status: Triaged → In Progress
milestone: natty-updates → oneiric-updates
Revision history for this message
Keng-Yu Lin (lexical) wrote :

patches sent upstream for review.

Revision history for this message
Froggy (thrabalek) wrote :

Will this problem get ever fixed?

Changed in linux (Ubuntu):
milestone: oneiric-updates → precise-updates
Keng-Yu Lin (lexical)
Changed in linux (Ubuntu):
assignee: Keng-Yu Lin (lexical) → James M. Leddy (jm-leddy)
Ara Pulido (ara)
Changed in linux (Ubuntu Natty):
importance: Low → Medium
Changed in linux (Ubuntu):
importance: Low → Medium
Keng-Yu Lin (lexical)
Changed in linux (Ubuntu Precise):
assignee: nobody → Alex Hung (alexhung)
Revision history for this message
James M. Leddy (jm-leddy) wrote :
Revision history for this message
Joseph Salisbury (jsalisbury) wrote : Unsupported series, setting status to "Won't Fix".

This bug was filed against a series that is no longer supported and so is being marked as Won't Fix. If this issue still exists in a supported series, please file a new bug.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: In Progress → Won't Fix
Po-Hsu Lin (cypressyew)
tags: added: 201011-6830
Revision history for this message
Julian Wiedmann (jwiedmann) wrote :

This release has reached end-of-life [0].

[0] https://wiki.ubuntu.com/Releases

Changed in linux (Ubuntu Natty):
status: Triaged → Invalid
Alex Hung (alexhung)
Changed in linux (Ubuntu Precise):
status: New → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.