[alsa-devel] HDA Intel ALC889A optical optical spdif in

René Rebe rene at exactcode.de
Sun May 21 15:00:22 CEST 2017


Hello again,

as it is Sunday I thought it is a good time to further play with this annoying optical in issue.
I plugged the fibre into a MacPro2,1 that we otherwise use as file server and such.
Unfortunately ALSA indicates the same Realtek codec is used on it:

	Chip: Realtek ALC889A 

And, no surprise, capturing something on it:

	arecord -D iec958 -f dat > rec.wav

yields nothing useful. Interestingly it yields not zeros, but another static pattern:

# hexdump -C rec.wav 
00000000  52 49 46 46 24 00 00 80  57 41 56 45 66 6d 74 20  |RIFF$...WAVEfmt |
00000010  10 00 00 00 01 00 02 00  80 bb 00 00 00 ee 02 00  |................|
00000020  04 00 10 00 64 61 74 61  00 00 00 80 1b 08 1b 91  |....data........|
00000030  1b 08 1b 91 1b 08 1b 91  1b 08 1b 91 1b 08 1b 91  |................|
*
00088020  1b 08 1b 91 1b 08 1b 91  1b 08 1b 91              |............|
0008802c

As I said before, according to the slightly mangled MacBook schematics the spdif
pin at least on those looks directly connected with the optical receiver module.

Any tip of to debug this in the Linux driver would be welcome!

Also, I powered up the G5, to my surprise the ALSA sound-by-layout module does
not even have spdif capture controls for that at all, (yes, the G5 also has optical
in and out) … :-/

So in total about everything I could find around me has non working optical input
with the ALSA drivers, …

	René

On Apr 22, 2017, at 0:04, René Rebe <rene at exactcode.de> wrote:

> Hi,
> On Apr 21, 2017, at 22:29, René Rebe <rene at exactcode.de> wrote:
> 
>> Hi,
>> 
>> On Apr 21, 2017, at 20:01, Takashi Iwai <tiwai at suse.de> wrote:
>> 
>>> On Fri, 21 Apr 2017 19:22:16 +0200,
>>> René Rebe wrote:
>>>> 
>>>> On Apr 21, 2017, at 18:37, René Rebe <rene at exactcode.de> wrote:
>>>> 
>>>>> Hello again,
>>>>> 
>>>>> so I checked the MacBook schematics and it looks like the optical input should be directly connected to pin 47 (GPIO3/SPDIFIN)
>>>>> 
>>>>> Maybe EAPD get’s accidentally / wrongly enabled? - Maybe someone can point me how to double check this in ALSA?
>>>> 
>>>> I the meantime I finally figured out how this debug verb setting should work via:
>>>> 
>>>> # hda-verb /dev/snd/hwC0D0 0x14 0x70C 0
>>>> nid = 0x14, verb = 0x70c, param = 0x0
>>>> value = 0x0
>>>> # hda-verb /dev/snd/hwC0D0 0x15 0x70C 0
>>>> nid = 0x15, verb = 0x70c, param = 0x0
>>>> value = 0x0
>>>> 
>>>> which made no difference either, and the ALC889 spec reads “when pin
>>>> widget  SPDIF-IN is not connected via the programming configuration
>>>> register.”
>>>> 
>>>> Could that be a missing bit?
>>>> 
>>>> Any pointer or verbs I should poke welcome :-/
>>> 
>>> Well, from the codec POV, the SPDIF in is straightly connected from
>>> the pin to the audio in widget, so there should be no special thing
>>> there.  The possibly missing setup is the vendor-specific things, and
>>> Apple has been implementing the stuff always in a wild manner,
>>> e.g. doing via VREF, GPIO or whatever.
>> 
>> Did you check anything in this proc file codec setup I posted?
>> 
>> As far as I can see on schematics for the MacBook (e.g.. google returned
>> a APPLE_M42C_FA522_Macbook.pdf) the optical module RX output
>> seems to be “directly" attached to the codec’s spdif-in pin.
>> 
>> Yet on both, the MacBook as well on the MacBook Pro
>> I found no way to get any digital input captured. The same setup
>> works when booted in macOS, as well as when I plug
>> in my digital audio source into my aging maudio delta 1010,
>> with Linux, which, however, I do not want to continuously use for
>> this setup, …
>> 
>> It’s a pity, I don’t think there are so many other laptops with
>> optical input :-/
> 
> For the MacBook Pro I googled the i/o board schematics
> (820-2273 LIO.pdf) - unfortunately some lines are crippled / strange
> rectangles. However, it most likely spdif-in is directly connected like in
> the MacBook. The schematic calls the codec a ALC885 instead of the
> ALC889A as indicated by ALSA, …  And the schematic labels the
> codec spdif innput pin SPDIFI/EAPD/MIDI-I/DMIC-R. However,
> the public ALC885 spec has a footnote “MIDI function is not
> supported as pins 46 and 48 are assigned as S/PDIF IO” and for the
> DMIC: “pin 47 can be configured to support a secondary digital mic
> input (DMIC-R). It is supported via a customized Realtek driver”
> 
> It is not getting better, …
> 
> 	:-/
> 
> -- 
> ExactCODE GmbH, Lietzenburger Str. 42, DE-10789 Berlin
> http://exactcode.com | http://exactscan.com | http://ocrkit.com | http://t2-project.org | http://rene.rebe.de
> 
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel at alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

-- 
 ExactCODE GmbH, Lietzenburger Str. 42, DE-10789 Berlin
 DE Legal: Amtsgericht Berlin (Charlottenburg) HRB 105123B, Tax-ID#: DE251602478
 Managing Director: René Rebe
 http://exactcode.com | http://exactscan.com | http://ocrkit.com | http://t2-project.org | http://rene.rebe.de



More information about the Alsa-devel mailing list