[alsa-devel] 2 speakers are assigned to the same DAC, this can't support 4.0/2.1 channles

Raymond Yau superquad.vortex2 at gmail.com
Tue Jun 9 13:50:30 CEST 2015


2015-6-9 下午5:39 於 "hwang4" <hui.wang at canonical.com> 寫道:
>
> I am trying to enable the subwoofer speaker on a HP laptop, on this
> machine, there are two speakers and one headphone, but the BIOS verb
> only enabled one speaker(nid 0xd) and one headphone(nid 0xb), I need
> to use quirk in the kernel driver to configure the second speaker
> (subwoofer speaker, nid 0x10). Under current alsa driver, the
> headphone will be assigned a dac (nid 0x13) and the 2 speakers will
> be assigned a dac (nid 0x14), this assignment is not good since 2
> speakers share the same dac, this means 2 speakers can't work
> at the same time to support 4.0/2.1 channels.
>
> On another Dell machine with realtek codec, there are also 2 speakers,
> 1 headphone and 2 dacs, on this machine, 1 speaker and 1 headphone are
assigned
> 1 dac, and the other speaker is assigned another dac, so there is no
> problem for this machine to support 4.0/2.1 channels.
>
> Through debugging, I found on Dell machine, the speaker nid only has
> one connection to dac (hardwired), so when driver assign dac to it, the
> map_single() can successfully assign the each dac to the 2 speakers
respectively.
> But on that HP machine, the speaker has multiple connections for dac, the
> map_single() can't work for this machine.
>
>
> The alsa-info.txt for that HP machine is at
http://pastebin.ubuntu.com/11667947/

Refer to 92HD91, you don't need 4 channel when there is band pass filter
for the subwoofer at the mono pin

2.2. Mono Output
The Mono Out port source selection, power state, and mute characteristics
are all independently
controlled by the mono output port controls. EQ does not apply to this
path. An internal 2nd order band-pass filter is provided to restrict the
output frequencies when using mono out to drive an exter-
nal amplified sub-woofer

> The alsa-info.txt for that Dell machine is at
http://pastebin.ubuntu.com/11667982/

The subwoofer is also at mono pin complex, are  there any low pass filter
for the subwoofer or vendor coeff need to be set ?

>
> To fix this problem, I can use the quirk in the driver to make the
speaker have
> only one connection for dac or do some change in the hda_generic.c like
below, in
> your opinion, which one is better or probably you have a different idea
to fix this problem?
>


More information about the Alsa-devel mailing list