Bug 192891 - No audio from microphone (ALC3227)
Summary: No audio from microphone (ALC3227)
Status: RESOLVED OBSOLETE
Alias: None
Product: Drivers
Classification: Unclassified
Component: Sound(ALSA) (show other bugs)
Hardware: x86-64 Linux
: P1 blocking
Assignee: Jaroslav Kysela
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-01-18 09:59 UTC by Artem S. Tashkinov
Modified: 2018-12-18 01:11 UTC (History)
1 user (show)

See Also:
Kernel Version: 4.9.3 4.8.16 4.10.5
Subsystem:
Regression: Yes
Bisected commit-id:


Attachments
5 seconds of audio (112 bytes, application/x-bzip)
2017-01-18 09:59 UTC, Artem S. Tashkinov
Details
alsa-info (6.81 KB, application/x-bzip)
2017-01-18 10:04 UTC, Artem S. Tashkinov
Details

Description Artem S. Tashkinov 2017-01-18 09:59:49 UTC
Created attachment 252311 [details]
5 seconds of audio

I've got a laptop with 

[   15.257879] snd_hda_codec_realtek hdaudioC0D0: autoconfig for ALC3227: line_outs=1 (0x14/0x0/0x0/0x0/0x0) type:speaker
[   15.257881] snd_hda_codec_realtek hdaudioC0D0:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[   15.257882] snd_hda_codec_realtek hdaudioC0D0:    hp_outs=1 (0x21/0x0/0x0/0x0/0x0)
[   15.257883] snd_hda_codec_realtek hdaudioC0D0:    mono: mono_out=0x0
[   15.257884] snd_hda_codec_realtek hdaudioC0D0:    inputs:
[   15.257885] snd_hda_codec_realtek hdaudioC0D0:      Mic=0x19
[   15.257886] snd_hda_codec_realtek hdaudioC0D0:      Internal Mic=0x12
[   15.296600] input: HDA Intel PCH Mic as /devices/pci0000:00/0000:00:1f.3/sound/card0/input14
[   15.296734] input: HDA Intel PCH Headphone as /devices/pci0000:00/0000:00:1f.3/sound/card0/input15
[   15.296819] input: HDA Intel PCH HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input17
[   15.296902] input: HDA Intel PCH HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input18
[   15.296983] input: HDA Intel PCH HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input19

However since some kernel 4.8.x version I cannot record any sound - it records empty sound.

$ arecord -vv -fdat foo.wav
Recording WAVE 'foo.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
Plug PCM: Linear conversion PCM (S32_LE)
Its setup is:
  stream       : CAPTURE
  access       : RW_INTERLEAVED
  format       : S16_LE
  subformat    : STD
  channels     : 2
  rate         : 48000
  exact rate   : 48000 (48000/1)
  msbits       : 16
  buffer_size  : 16384
  period_size  : 1024
  period_time  : 21333
  tstamp_mode  : NONE
  tstamp_type  : MONOTONIC
  period_step  : 1
  avail_min    : 1024
  period_event : 0
  start_threshold  : 1
  stop_threshold   : 16384
  silence_threshold: 0
  silence_size : 0
  boundary     : 4611686018427387904
Slave: Soft volume PCM
Control: Digital Capture Volume
min_dB: -30
max_dB: 30
resolution: 121
Its setup is:
  stream       : CAPTURE
  access       : MMAP_INTERLEAVED
  format       : S32_LE
  subformat    : STD
  channels     : 2
  rate         : 48000
  exact rate   : 48000 (48000/1)
  msbits       : 32
  buffer_size  : 16384
  period_size  : 1024
  period_time  : 21333
  tstamp_mode  : NONE
  tstamp_type  : MONOTONIC
  period_step  : 1
  avail_min    : 1024
  period_event : 0
  start_threshold  : 1
  stop_threshold   : 16384
  silence_threshold: 0
  silence_size : 0
  boundary     : 4611686018427387904
Slave: Direct Snoop PCM
Its setup is:
  stream       : CAPTURE
  access       : MMAP_INTERLEAVED
  format       : S32_LE
  subformat    : STD
  channels     : 2
  rate         : 48000
  exact rate   : 48000 (48000/1)
  msbits       : 32
  buffer_size  : 16384
  period_size  : 1024
  period_time  : 21333
  tstamp_mode  : NONE
  tstamp_type  : MONOTONIC
  period_step  : 1
  avail_min    : 1024
  period_event : 0
  start_threshold  : 1
  stop_threshold   : 16384
  silence_threshold: 0
  silence_size : 0
  boundary     : 4611686018427387904
Hardware PCM card 0 'HDA Intel PCH' device 0 subdevice 0
Its setup is:
  stream       : CAPTURE
  access       : MMAP_INTERLEAVED
  format       : S32_LE
  subformat    : STD
  channels     : 2
  rate         : 48000
  exact rate   : 48000 (48000/1)
  msbits       : 32
  buffer_size  : 16384
  period_size  : 1024
  period_time  : 21333
  tstamp_mode  : ENABLE
  tstamp_type  : MONOTONIC
  period_step  : 1
  avail_min    : 1024
  period_event : 0
  start_threshold  : 1
  stop_threshold   : 4611686018427387904
  silence_threshold: 0
  silence_size : 0
  boundary     : 4611686018427387904
  appl_ptr     : 0
  hw_ptr       : 0

All controls are set to their maximum/enabled values.
Comment 1 Artem S. Tashkinov 2017-01-18 10:04:09 UTC
Created attachment 252321 [details]
alsa-info
Comment 2 Artem S. Tashkinov 2017-01-18 10:09:24 UTC
00:1f.3 Audio device [0403]: Intel Corporation Sunrise Point-LP HD Audio [8086:9d70] (rev 21)
	Subsystem: Hewlett-Packard Company Device [103c:80d1]
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 32, Cache Line Size: 64 bytes
	Interrupt: pin A routed to IRQ 295
	Region 0: Memory at a1628000 (64-bit, non-prefetchable) [size=16K]
	Region 4: Memory at a1610000 (64-bit, non-prefetchable) [size=64K]
	Capabilities: [50] Power Management version 3
		Flags: PMEClk- DSI- D1- D2- AuxCurrent=55mA PME(D0-,D1-,D2-,D3hot+,D3cold+)
		Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [60] MSI: Enable+ Count=1/1 Maskable- 64bit+
		Address: 00000000fee003b8  Data: 0000
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel, snd_soc_skl
Comment 3 Artem S. Tashkinov 2017-02-02 14:38:58 UTC
Any updates on this bug? Any information you might need from me? It's been two weeks since I filed it.
Comment 4 Artem S. Tashkinov 2017-02-15 10:53:58 UTC
Any updates on this bug? Any information you might need from me? It's been four weeks since I filed it.
Comment 5 Artem S. Tashkinov 2017-02-23 19:15:04 UTC
Another week with no microphone input.
Comment 6 Takashi Iwai 2017-02-28 16:26:50 UTC
Unfortunately, it's a thing only the hardware owner can figure out.  Just do trial-and-error of some more model options or apply the quirk line manually that may match with yours.  Pinging on the bugzilla won't help.
Comment 7 Artem S. Tashkinov 2017-02-28 16:43:58 UTC
(In reply to Takashi Iwai from comment #6)
> Unfortunately, it's a thing only the hardware owner can figure out.  Just do
> trial-and-error of some more model options or apply the quirk line manually
> that may match with yours.  Pinging on the bugzilla won't help.

Where's the list of these quirks? How can the be applied?
Comment 8 Takashi Iwai 2017-02-28 16:50:47 UTC
Take a look at sound/pci/hda/patch_realtek.c.  There are lots of quirks, matching with PCI SSID.
Comment 9 Artem S. Tashkinov 2017-03-23 08:27:43 UTC
patch_realtek.c weighs over 200KB and I don't think of myself as a programmer to understand how to work with this file to get the microphone back.

Is there an utility to configure the HDA codec parameters in real time without recompilation? I remember you had something like that in the past.
Comment 10 Artem S. Tashkinov 2017-08-18 20:26:23 UTC
The plot thickens.

I tried using PulseAudio for a change and it actually detected two inputs while `arecord -l` sees just one.

And one of those two inputs actually work just fine. However when I run plain ALSA there are no controls to switch between different inputs. It seems like PulseAudio sees (and manages to control) something other mixer applications (alsamixer/xfce4-mixer) don't see.

I'm utterly confused. Please tell me what I'm overlooking.
Comment 11 Artem S. Tashkinov 2018-12-18 01:11:40 UTC
I've fully switched to PA, so let's close this bug report as it's no longer relevant.

Note You need to log in before you can comment on or make changes to this bug.