Lenovo S205 internal microphone doesn't work

Bug #884652 reported by Aldini
44
This bug affects 6 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Fix Released
Medium
David Henningsson

Bug Description

On my Lenovo S205 with Kernel 3.0.0-13-generic x86_64 the internal microphone doent work.
A external microphne does work correct.

$ sudo lspci -v
00:00.0 Host bridge: Advanced Micro Devices [AMD] Family 14h Processor Root Complex
        Subsystem: Lenovo Device 397b
        Flags: bus master, 66MHz, medium devsel, latency 64

00:01.0 VGA compatible controller: ATI Technologies Inc AMD Radeon HD 6310 GraphicsATI (prog-if 00 [VGA controller])
        Subsystem: Lenovo Device 397b
        Flags: bus master, fast devsel, latency 0, IRQ 44
        Memory at e0000000 (32-bit, prefetchable) [size=256M]
        I/O ports at 2000 [size=256]
        Memory at f0200000 (32-bit, non-prefetchable) [size=256K]
        Expansion ROM at <unassigned> [disabled]
        Capabilities: [50] Power Management version 3
        Capabilities: [58] Express Root Complex Integrated Endpoint, MSI 00
        Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
        Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
        Kernel driver in use: fglrx_pci
        Kernel modules: fglrx, radeon

00:01.1 Audio device: ATI Technologies Inc Wrestler HDMI Audio [Radeon HD 6250/6310]
        Subsystem: Lenovo Device 397b
        Flags: bus master, fast devsel, latency 0, IRQ 43
        Memory at f0244000 (32-bit, non-prefetchable) [size=16K]
        Capabilities: [50] Power Management version 3
        Capabilities: [58] Express Root Complex Integrated Endpoint, MSI 00
        Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
        Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
        Kernel driver in use: HDA Intel
        Kernel modules: snd-hda-intel

00:11.0 SATA controller: ATI Technologies Inc SB7x0/SB8x0/SB9x0 SATA Controller [AHCI mode] (prog-if 01 [AHCI 1.0])
        Subsystem: Lenovo Device 397b
        Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 19
        I/O ports at 2118 [size=8]
        I/O ports at 2124 [size=4]
        I/O ports at 2110 [size=8]
        I/O ports at 2120 [size=4]
        I/O ports at 2100 [size=16]
        Memory at f024a000 (32-bit, non-prefetchable) [size=1K]
        Capabilities: [70] SATA HBA v1.0
        Capabilities: [a4] PCI Advanced Features
        Kernel driver in use: ahci
        Kernel modules: ahci

00:12.0 USB Controller: ATI Technologies Inc SB7x0/SB8x0/SB9x0 USB OHCI0 Controller (prog-if 10 [OHCI])
        Subsystem: Lenovo Device 397b
        Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 18
        Memory at f0249000 (32-bit, non-prefetchable) [size=4K]
        Kernel driver in use: ohci_hcd

00:12.2 USB Controller: ATI Technologies Inc SB7x0/SB8x0/SB9x0 USB EHCI Controller (prog-if 20 [EHCI])
        Subsystem: Lenovo Device 397b
        Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 17
        Memory at f024a500 (32-bit, non-prefetchable) [size=256]
        Capabilities: [c0] Power Management version 2
        Capabilities: [e4] Debug port: BAR=1 offset=00e0
        Kernel driver in use: ehci_hcd

00:13.0 USB Controller: ATI Technologies Inc SB7x0/SB8x0/SB9x0 USB OHCI0 Controller (prog-if 10 [OHCI])
        Subsystem: Lenovo Device 397b
        Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 18
        Memory at f0248000 (32-bit, non-prefetchable) [size=4K]
        Kernel driver in use: ohci_hcd

00:13.2 USB Controller: ATI Technologies Inc SB7x0/SB8x0/SB9x0 USB EHCI Controller (prog-if 20 [EHCI])
        Subsystem: Lenovo Device 397b
        Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 17
        Memory at f024a400 (32-bit, non-prefetchable) [size=256]
        Capabilities: [c0] Power Management version 2
        Capabilities: [e4] Debug port: BAR=1 offset=00e0
        Kernel driver in use: ehci_hcd

00:14.0 SMBus: ATI Technologies Inc SBx00 SMBus Controller (rev 42)
        Subsystem: Lenovo Device 397b
        Flags: 66MHz, medium devsel
        Kernel driver in use: piix4_smbus
        Kernel modules: sp5100_tco, i2c-piix4

00:14.2 Audio device: ATI Technologies Inc SBx00 Azalia (Intel HDA) (rev 40)
        Subsystem: Lenovo Device 397b
        Flags: bus master, slow devsel, latency 64, IRQ 16
        Memory at f0240000 (64-bit, non-prefetchable) [size=16K]
        Capabilities: [50] Power Management version 2
        Kernel driver in use: HDA Intel
        Kernel modules: snd-hda-intel

00:14.3 ISA bridge: ATI Technologies Inc SB7x0/SB8x0/SB9x0 LPC host controller (rev 40)
        Subsystem: Lenovo Device 397b
        Flags: bus master, 66MHz, medium devsel, latency 0

00:14.4 PCI bridge: ATI Technologies Inc SBx00 PCI to PCI Bridge (rev 40) (prog-if 01 [Subtractive decode])
        Flags: bus master, 66MHz, medium devsel, latency 64
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=64

00:15.0 PCI bridge: ATI Technologies Inc SB700/SB800/SB900 PCI to PCI bridge (PCIE port 0) (prog-if 00 [Normal decode])
        Flags: bus master, fast devsel, latency 0
        Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
        I/O behind bridge: 00001000-00001fff
        Prefetchable memory behind bridge: 00000000f0000000-00000000f00fffff
        Capabilities: [50] Power Management version 3
        Capabilities: [58] Express Root Port (Slot-), MSI 00
        Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
        Capabilities: [b0] Subsystem: ATI Technologies Inc Device 0000
        Capabilities: [b8] HyperTransport: MSI Mapping Enable+ Fixed+
        Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
        Kernel driver in use: pcieport
        Kernel modules: shpchp

00:15.2 PCI bridge: ATI Technologies Inc SB900 PCI to PCI bridge (PCIE port 2) (prog-if 00 [Normal decode])
        Flags: bus master, fast devsel, latency 0
        Bus: primary=00, secondary=03, subordinate=03, sec-latency=0
        Memory behind bridge: f0100000-f01fffff
        Capabilities: [50] Power Management version 3
        Capabilities: [58] Express Root Port (Slot-), MSI 00
        Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
        Capabilities: [b0] Subsystem: ATI Technologies Inc Device 0000
        Capabilities: [b8] HyperTransport: MSI Mapping Enable+ Fixed+
        Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
        Kernel driver in use: pcieport
        Kernel modules: shpchp

00:18.0 Host bridge: Advanced Micro Devices [AMD] Family 12h/14h Processor Function 0 (rev 43)
        Flags: fast devsel

00:18.1 Host bridge: Advanced Micro Devices [AMD] Family 12h/14h Processor Function 1
        Flags: fast devsel

00:18.2 Host bridge: Advanced Micro Devices [AMD] Family 12h/14h Processor Function 2
        Flags: fast devsel

00:18.3 Host bridge: Advanced Micro Devices [AMD] Family 12h/14h Processor Function 3
        Flags: fast devsel
        Capabilities: [f0] Secure device <?>
        Kernel driver in use: k10temp
        Kernel modules: k10temp

00:18.4 Host bridge: Advanced Micro Devices [AMD] Family 12h/14h Processor Function 4
        Flags: fast devsel

00:18.5 Host bridge: Advanced Micro Devices [AMD] Family 12h/14h Processor Function 6
        Flags: fast devsel

00:18.6 Host bridge: Advanced Micro Devices [AMD] Family 12h/14h Processor Function 5
        Flags: fast devsel

00:18.7 Host bridge: Advanced Micro Devices [AMD] Family 12h/14h Processor Function 7
        Flags: fast devsel

02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E/RTL8102E PCI Express Fast Ethernet controller (rev 05)
        Subsystem: Lenovo Device 397b
        Flags: bus master, fast devsel, latency 0, IRQ 42
        I/O ports at 1000 [size=256]
        Memory at f0004000 (64-bit, prefetchable) [size=4K]
        Memory at f0000000 (64-bit, prefetchable) [size=16K]
        Capabilities: [40] Power Management version 3
        Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit+
        Capabilities: [70] Express Endpoint, MSI 01
        Capabilities: [b0] MSI-X: Enable- Count=4 Masked-
        Capabilities: [d0] Vital Product Data
        Capabilities: [100] Advanced Error Reporting
        Capabilities: [140] Virtual Channel
        Capabilities: [160] Device Serial Number 14-00-00-00-36-4c-e0-00
        Kernel driver in use: r8169
        Kernel modules: r8169

03:00.0 Network controller: Ralink corp. RT3090 Wireless 802.11n 1T/1R PCIe
        Subsystem: Lenovo Device f101
        Flags: bus master, fast devsel, latency 0, IRQ 18
        Memory at f0100000 (32-bit, non-prefetchable) [size=64K]
        Capabilities: [40] Power Management version 3
        Capabilities: [50] MSI: Enable- Count=1/32 Maskable- 64bit+
        Capabilities: [70] Express Endpoint, MSI 00
        Capabilities: [100] Advanced Error Reporting
        Capabilities: [140] Device Serial Number 00-00-37-70-3f-f9-59-38
        Kernel driver in use: rt2800pci
        Kernel modules: rt2800pci

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in ubuntu:
status: New → Confirmed
Phil. V (philip.v)
affects: ubuntu → alsa-driver (Ubuntu)
Revision history for this message
Aldini (peter-kreinhoefer) wrote :

I tried a test with arecord. I was able to record audo from external end internal microphone as well. If I plugged or unplugged the external microphone when arecord was recording, with short <knack> it did still record my voice. The level indicator from arecord did also display the correct working of the int./ext. microphones. When I used the pulseaudio mixture instead, only the external microphone does produce a indication at the pulseaudio level meter.

Revision history for this message
Aldini (peter-kreinhoefer) wrote :

I was a bit nosy and did a Ubuntu Oneiric (Gnome & Kernel Kernel 3.0.0-12-generic x86_64) install from scratch.
But unfortunately it was happen the same. On the nice sound level meter at the gnome mixer, I could only see a audio input
from external microphone, the internal microphone is still silent, same as in Kubuntu.

Revision history for this message
Aldini (peter-kreinhoefer) wrote :

I made a test with Gnome AudioRecorder and the internal microphone and .... it did work fine.
The sound level meter ot the gnome mixer didn't indicate the audio level but the
sound level meter from AudioRecorder did it.
It was only this one application, I found that handled this bug.
For me it's curios what's happen between the internal and external mircrophone on my S205.
On Kubuntu, my favorite OS, I didn't found any application what did work with the internal microphone.

Revision history for this message
Aldini (peter-kreinhoefer) wrote :

after update to kernel 3.0.0-14-generic #23-Ubuntu SMP x86_64 x86_64 x86_64 GNU/Linux the microphone problem is still remaining.

Revision history for this message
Aldini (peter-kreinhoefer) wrote :

after update to kernel 3.0.0-15-generic #24-Ubuntu SMP Mon Dec 12 15:23:55 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux
the microphone problem is still remaining.

Revision history for this message
Aldini (peter-kreinhoefer) wrote :

I found a workaround for the problem with the internal micro.
The workaround are for a acer aspire notebooks and works also
for the lenovo s205.

http://wiki.ubuntuusers.de/skype#Soundeingabe-funktioniert-im-Audio-Recorder-aber-nicht-in-Skype

Revision history for this message
Ivo Anjo (knuckles) wrote :

I can confirm that the workaround in comment #7 works.
The fix is basically install 'pavucontrol', then start it and go to the "Input Devices" tab, unlock the channels (by clicking on the padlock on the right), and set "Front Right" to Silence.

Unfortunately when used with the google talk plugin the dynamic volume adjustment keeps bringing the "Front Right" up, but on apps that do not do that it works.

Revision history for this message
Doki (lkishalmi) wrote :

Confirmed #7 works as well. Can't we just reconfigure underlying alsa in a way to skip and silence front-right channel entirely?

Revision history for this message
Gary M (garym) wrote :

To assist fixing this bug, please follow the instructions in bug 1002978, then set the status of this bug back to Confirmed.

Changed in alsa-driver (Ubuntu):
status: Confirmed → Incomplete
Changed in alsa-driver (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Ivo Anjo (knuckles) wrote :
Revision history for this message
David Henningsson (diwic) wrote : [PATCH] ALSA: HDA: Add inverted internal mic quirk for Lenovo S205

The Lenovo Ideapad S205 has an internal mic where the right channel
is phase inverted.

BugLink: https://bugs.launchpad.net/bugs/884652
Signed-off-by: David Henningsson <email address hidden>
---
 sound/pci/hda/patch_conexant.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/sound/pci/hda/patch_conexant.c b/sound/pci/hda/patch_conexant.c
index 172370b..2af0868 100644
--- a/sound/pci/hda/patch_conexant.c
+++ b/sound/pci/hda/patch_conexant.c
@@ -4466,6 +4466,7 @@ static const struct snd_pci_quirk cxt5066_fixups[] = {
  SND_PCI_QUIRK(0x17aa, 0x21ce, "Lenovo T420", CXT_PINCFG_LENOVO_TP410),
  SND_PCI_QUIRK(0x17aa, 0x21cf, "Lenovo T520", CXT_PINCFG_LENOVO_TP410),
  SND_PCI_QUIRK(0x17aa, 0x3975, "Lenovo U300s", CXT_FIXUP_STEREO_DMIC),
+ SND_PCI_QUIRK(0x17aa, 0x397b, "Lenovo S205", CXT_FIXUP_STEREO_DMIC),
  {}
 };

--
1.7.9.5

affects: alsa-driver (Ubuntu) → linux (Ubuntu)
Changed in linux (Ubuntu):
assignee: nobody → David Henningsson (diwic)
status: Confirmed → In Progress
Changed in linux (Ubuntu):
importance: Undecided → Medium
Changed in linux (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
Ivo Anjo (knuckles) wrote :

A testing package has been attached to bug 1002978. You just have to install it and report back if it works correctly now.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux - 3.5.0-3.3

---------------
linux (3.5.0-3.3) quantal-proposed; urgency=low

  [ Andy Whitcroft ]

  * [Config] enable CONFIG_MEMTEST=y
    - LP: #1004535
  * [Config] config-check: add support for a cut operation
  * [Config] enforcer -- switch to cut where appropriate

  [ Leann Ogasawara ]

  * Rebase to v3.5-rc5
  * [Config] Updateconfigs after rebase to v3.5-rc5

  [ Luis Henriques ]

  * SAUCE: ocfs2: Fix NULL pointer dereferrence in
    __ocfs2_change_file_space
    - LP: #1006012

  [ Seth Forshee ]

  * SAUCE: (drop after 3.5) drm/i915: ignore pipe select bit when checking
    for LVDS register initialization
    - LP: #1012800

  [ Upstream Kernel Changes ]

  * rebase to v3.5-rc5
    - LP: #1013183
    - LP: #1017017
    - LP: #884652
 -- Leann Ogasawara <email address hidden> Mon, 02 Jul 2012 06:41:58 -0700

Changed in linux (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Ivo Anjo (knuckles) wrote :

Would it be possible to get this fixed backported to precise?
Not having this on the LTS release would really suck.

Revision history for this message
David Henningsson (diwic) wrote :

Since the U300s has been requested as SRU already - if that is done, this one would just be an added quirk, so should be trivially SRUable.
So I'm optimistic about it, but let's wait for the U300s to be SRUed first.

Revision history for this message
Herton R. Krzesinski (herton) wrote :

The commit for this issue came in via a stable upstream release (linux 3.2.32). As such it is not subject to the standard bug verification process.

tags: added: verification-done-precise
Revision history for this message
Adam Conrad (adconrad) wrote : Update Released

The verification of this Stable Release Update has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regresssions.

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.