All of lore.kernel.org
 help / color / mirror / Atom feed
From: Oliver Freyermuth <o.freyermuth@googlemail.com>
To: Raymond Yau <superquad.vortex2@gmail.com>
Cc: ALSA Development Mailing List <alsa-devel@alsa-project.org>
Subject: Re: Digital Input on ALC3661 (from laptop HDMI IN) not working under Linux
Date: Mon, 02 Feb 2015 20:26:21 +0100	[thread overview]
Message-ID: <54CFCF5D.7050500@googlemail.com> (raw)
In-Reply-To: <CAN8cciZi-b-tSKZ0OkhKQtGPdfMTkGyKfrMxcnrDip1jSZPQUg@mail.gmail.com>

Am 02.02.2015 um 08:05 schrieb Raymond Yau:
> 
>>
>> >> I have an Alienware 17 laptop (sometimes called M17RX5) which has a
>> > Realtek ALC3661.
>> >>The problem I describe here should also be valid for the Alienware 18
>> > (all the late 2013 models, which are still the most current). At least
>> > some scattered forum reports suggest so.
>> >
>> >>The card works almost perfect in Linux, but one functionality is
>> > missing: The laptop features an HDMI input, and the Realtek card is
>> > supposed to take care of the incoming digital audio.
>> > This works fine in Windows, but in Linux, I only get the video and the
>> > audio stays missing.
>> >
>> >> Here you can find my alsa-info:
>>
>>http://www.alsa-project.org/db/?f=0a0502e49212a0436a30fde9d4ee56163bbc2ebc
> <http://www.alsa-project.org/db/?f=0a0502e49212a0436a30fde9d4ee56163bbc2ebc>
>> >
>> > The only digial input is node 0x0a
>> >
>> > Try hda-jack-retask to change node 0x1f  with pin default [Jack]
> digital In
>>
>> Thanks a lot for your suggestion!
>> I tried, 0x0a stays as "not present" but I can select it in alsa-mixer
>> as expected. Sadly, I can only record silence.
>> Also setting Jack Detection to "Present" in the advanced overrides of
>> hdajackretask did not help.
> 
> http://git.alsa-project.org/?p=alsa-tools.git;a=blob;f=hdajackretask/README;hb=HEAD
> 
> You have to select "show unconnected pin" and "advanced override"
> 
> Change the pin default of node 0x1f to 0x3c61130 [Jack] SPDIF In
> 
> Set as boot default and reboot
> 
> Digital capture device 1 will be created after you fix the pin default
> of node 0x1f
> 
> Turn on iec958 capture switch and try
> 
> arecord -D IEC958:CARD=PCH -f dat -v test.wav

Thanks a lot for your continued help!

Here's what I did - the sad news, I still record only silence:
1. use hdajackretask as you explained, apply as boot default.
2. I got the following files:

/etc/modprobe.d/hda-jack-retask.conf (below the automatic comment):
options snd-hda-intel
patch=hda-jack-retask.fw,hda-jack-retask.fw,hda-jack-retask.fw,hda-jack-retask.fw

/lib64/firmware/hda-jack-retask.fw:
[codec]
0x10ec0668 0x102805aa 0

[pincfg]
0x12 0x99a30140
0x14 0x90170110
0x15 0x0321101f
0x16 0x03211020
0x18 0x40030008
0x19 0x03a11030
0x1a 0x411111f0
0x1b 0x411111f0
0x1d 0x41000001
0x1e 0x411111f0
0x1f 0x03c61130

It contains exactly the line 0x1f 0x03c61130, so I hope I clicked
correctly in the GUI.

3. After reboot, I see in dmesg (I assume this means it worked):
[    6.021374] snd_hda_intel 0000:00:1b.0: Applying patch firmware
'hda-jack-retask.fw'
[    6.021468] snd_hda_intel 0000:01:00.1: Disabling MSI
[    6.021471] snd_hda_intel 0000:01:00.1: Applying patch firmware
'hda-jack-retask.fw'
[    6.022749] snd_hda_intel 0000:00:1b.0: irq 29 for MSI/MSI-X

4. I activate S/PDIF capture in alsamixer (IEC958 is not shown there,
but S/PDIF appeared new after the change).

5. arecord -L tells me at the end:
iec958:CARD=PCH,DEV=0
    HDA Intel PCH, ALC3661 Digital
    IEC958 (S/PDIF) Digital Audio Output

6. I run, as suggested:
arecord -D iec958:CARD=PCH -f dat -v test.wav
Recording WAVE 'test.wav' : Signed 16 bit Little Endian, Rate 48000 Hz,
Stereo
Hooks PCM
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  : 24000
  period_size  : 6000
  period_time  : 125000
  tstamp_mode  : NONE
  period_step  : 1
  avail_min    : 6000
  period_event : 0
  start_threshold  : 1
  stop_threshold   : 24000
  silence_threshold: 0
  silence_size : 0
  boundary     : 6755399441055744000
Slave: Hardware PCM card 1 'HDA Intel PCH' device 1 subdevice 0
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  : 24000
  period_size  : 6000
  period_time  : 125000
  tstamp_mode  : NONE
  period_step  : 1
  avail_min    : 6000
  period_event : 0
  start_threshold  : 1
  stop_threshold   : 24000
  silence_threshold: 0
  silence_size : 0
  boundary     : 6755399441055744000
  appl_ptr     : 0
  hw_ptr       : 0

But I get only silence, I tried to first attach the HDMI + switch to the
video and start recording when everything is connected (i.e. when I
would hear audio in Windows).
I also tried to just record with the HDMI-cable connected and audio
coming in (but not switched to video - in this case, I would hear
nothing in Windows, but the audio should still arrive).

Both cases, I record just silence.

Any further ideas?

Thanks a lot for your assistance!

> 
>> >
>> > Node 0x1f [Pin Complex] wcaps 0x400681: Stereo Digital
>> >   Pincap 0x00000020: IN
>> >   Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
>> >     Conn = 1/8, Color = Black
>> >     DefAssociation = 0xf, Sequence = 0x0
>> >     Misc = NO_PRESENCE
>> >   Pin-ctls: 0x20: IN
>> >   Unsolicited: tag=00, enabled=0
>> >   Power states:  D0 D1 D2 D3 EPSS
>> >
>> >>In Windows, I observe the HDMI-IN audio routing to the speakers is only
>> > done if the Realtek Audio Service is running. In Linux, I observe
>> > keypress-events when I either switch manually to the HDMI-in signal
> and also
>> > if a new signal is detected (something (the UEFI?) injects a keypress
>> > then).
>> > I assume the service in Windows catches these events and changes
>> > "something" in the Realtek Audio Settings. I see no special recording
>> > device in Windows, nor any explicit HDMI-input setting, nor any related
>> > setting in the driver. Dell links a standard Realtek driver in their
>> > support section.
>>
> 

      parent reply	other threads:[~2015-02-02 19:26 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CAN8ccia2tYdtR1-ECkC74UoiROAvf3faWSZ_Da09p2C24_9YnQ@mail.gmail.com>
     [not found] ` <CAN8ccibptPwFidyNM9TAHjqQg_-xiXEcw3oaaqZDetn-GPVZrg@mail.gmail.com>
     [not found]   ` <CAN8cciZWU6-CfKKK21L39nkOqMJtNJL3k06iHWpF_J7oq=DzCg@mail.gmail.com>
     [not found]     ` <CAN8cciZV2Z=6yck7RHpgLUK-o7rXY+i51usMgss+xH4wkZHDDA@mail.gmail.com>
2015-01-17 16:04       ` Digital Input on ALC3661 (from laptop HDMI IN) not working under Linux Oliver Freyermuth
     [not found]         ` <CAN8cciZi-b-tSKZ0OkhKQtGPdfMTkGyKfrMxcnrDip1jSZPQUg@mail.gmail.com>
2015-02-02 19:26           ` Oliver Freyermuth [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=54CFCF5D.7050500@googlemail.com \
    --to=o.freyermuth@googlemail.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=superquad.vortex2@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.