Low audio output / missing subwoofer on Vostro 5460/5470 (with Ubuntu pre-loaded)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
alsa-driver (Ubuntu) |
Fix Released
|
Undecided
|
David Henningsson |
Bug Description
I have been using a Dell Vostro 5460 for a while. It came pre-loaded with Ubuntu 12.04. Also, I could find some customizations in the same.
And there's an issue of low audio output that I am facing. I have been using the 12.10 and 13.04 versions currently and the issue affects them too.
Also, reportedly Windows users are facing no such issues.
Some discussion regarding the same can be found at:
http://
http://
Raymond (superquad-vortex2) wrote : | #1 |
Changed in alsa-driver (Ubuntu): | |
status: | New → Incomplete |
Aditya2204 (aditya2204) wrote : | #2 |
Here's it:
Aditya2204 (aditya2204) wrote : | #3 |
David Henningsson (diwic) wrote : | #4 |
Hi Aditya2204,
The audio customisation done on this platform (on the preload install) is to add a daily DKMS package - see https:/
I can also confirm that we never enabled the subwoofer on Ubuntu for this machine. Whether this is the entire cause for the low speaker output I don't know for sure.
Raymond (superquad-vortex2) wrote : | #5 |
try hda-jack-retask to fix the pin default of node 0x17 to [fixed] speaker at int if this node is the subwoofer
Node 0x17 [Pin Complex] wcaps 0x40050c: Mono Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80]
Pincap 0x00000010: OUT
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x00:
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Connection: 1
0x0f
Aditya2204 (aditya2204) wrote : | #6 |
Hey..!
Thanks for the prompt reply guys..!
diwic:
I tested the playback with the dkms package for my 13.04 installation. Seemingly, the audio output has increased but only slightly.
Also, from what I could gather from other sources, this laptop shall provide adequate audio output from its speakers itself ( without the sub-woofers i.e.) which is not the case.
Raymond:
Well, I could locate an appropriate package for raring, but don't know what to manipulate in the mentioned application.
On selecting 'Show unconnected pins', I see an entry for 0x17 and on it, it says 'Not connected'.
Selecting 'Override' gives me options for 'Line out' and 'Internal speaker'. Help me proceed with the same.
Thanks again guys..!
Raymond (superquad-vortex2) wrote : | #7 |
if your headphone Jack, Mic jack, spreaker and internal Mic are working
the subwofer will be one of the remainIng pin complex which pin cap support OUT
what you need is to connect one of those candidate to audio output , set pin ctls to OUT and unmute the amp in those audio mixer or selector from pin complex to audio output by hda-analyser
sys/class/
0x12 0x400a0000
0x13 0x411111f0
0x14 0x90170110
0x15 0x0321101f
0x16 0x411111f0
0x17 0x411111f0
0x18 0x411111f0
0x19 0x90a70120
0x1a 0x03a1102e
0x1b 0x411111f0
0x1d 0x4056832d
0x1e 0x411111f0
Raymond (superquad-vortex2) wrote : | #8 |
seem only need to test node 0x16, 0x17, 0x18 and 0x1b
Node 0x0f [Audio Mixer] wcaps 0x20010a: Mono Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x80] [0x00]
Connection: 2
0x02 0x03
Node 0x17 [Pin Complex] wcaps 0x40050c: Mono Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80]
Pincap 0x00000010: OUT
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x00:
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Connection: 1
0x0f
Raymond (superquad-vortex2) wrote : | #9 |
ChanGE amp-out vale from 0x80 to 0x00 and pin-ctls from 0x00 to 0x40 OUT
Node 0x17 [Pin Complex] wcaps 0x40050c: Mono Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80]
Pincap 0x00000010: OUT
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x00:
similar to your speak node 0x14 but with sequence 1 in pin default
Node 0x14 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
Control: name="Speaker Playback Switch", index=0, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Control: name="Speaker Phantom Jack", index=0, device=0
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x00010010: OUT EAPD
EAPD 0x2: EAPD
Pin Default 0x90170110: [Fixed] Speaker at Int N/A
Conn = Analog, Color = Unknown
DefAssociation = 0x1, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Unsolicited: tag=00, enabled=0
Power states: D0 D1 D2 D3 EPSS
Power: setting=D0, actual=D0
Connection: 2
0x0c 0x0d*
Shunjie (sj-jake) wrote : | #10 |
Hi, I am having the same setup.
I am running dell vostro 5460 with ubuntu 12.04.3 with kernel 3.2.0-52-generic and GNOME 3.4.2.
I am sorry for not being exactly clear on how to use the script that you have written.
Do I paste into certain files to test it out? If test is needed, please do let me know.
Thank you.
Raymond (superquad-vortex2) wrote : | #11 |
the easy way is to use hda-jack-retask
or
early patching
Shunjie (sj-jake) wrote : | #12 |
yes, I have just used hda-jack-retask and the subwoofer is finally giving out very clear sound. and it is very loud too.
thank you so much. =)
Raymond (superquad-vortex2) wrote : | #13 |
which node is the subwoofer ?
can you post the output of alsa-info.sh when the subwoofer is working ?
Shunjie (sj-jake) wrote : | #14 |
~$ alsa-info.sh
alsa-info.sh: command not found
I have no idea why but I guess i do not have this ppa.
anyway, here's what i have amended:
Pin ID: 0x17
Connectivity: internal
Location: Rear
Device: Speaker
Jack: Unknown
Color: Black
Jack detection: Not present
Channel group: 1
Channel (in group) : Front
I hope this helps as this certainly transformed my sound experience.
Raymond (superquad-vortex2) wrote : | #15 |
Shunjie (sj-jake) wrote : | #16 |
!!#####
!!ALSA Information Script v 0.4.62
!!#####
!!Script ran on: Thu Sep 5 13:32:28 UTC 2013
!!Linux Distribution
!!-----
Ubuntu 12.04.3 LTS \n \l DISTRIB_ID=Ubuntu DISTRIB_
!!DMI Information
!!---------------
Manufacturer: Dell Inc.
Product Name: Vostro 5460
Product Version:
Firmware Version: A05
!!Kernel Information
!!-----
Kernel release: 3.2.0-52-generic
Operating System: GNU/Linux
Architecture: x86_64
Processor: x86_64
SMP Enabled: Yes
!!ALSA Version
!!------------
Driver version: 1.0.24
Library version: 1.0.25
Utilities version: 1.0.25
!!Loaded ALSA modules
!!-----
snd_hda_intel
!!Sound Servers on this system
!!-----
Pulseaudio:
Installed - Yes (/usr/bin/
Running - Yes
!!Soundcards recognised by ALSA
!!-----
0 [PCH ]: HDA-Intel - HDA Intel PCH
!!PCI Soundcards installed in the system
!!-----
00:1b.0 Audio device: Intel Corporation 7 Series/C210 Series Chipset Family High Definition Audio Controller (rev 04)
!!Advanced information - PCI Vendor/
!!-----
00:1b.0 0403: 8086:1e20 (rev 04)
Subsystem: 1028:05da
!!Modprobe options (Sound related)
!!-----
snd-atiixp-modem: index=-2
snd-intel8x0m: index=-2
snd-via82xx-modem: index=-2
snd-usb-audio: index=-2
snd-usb-caiaq: index=-2
snd-usb-ua101: index=-2
snd-usb-us122l: index=-2
snd-usb-usx2y: index=-2
snd-cmipci: mpu_port=0x330 fm_port=0x388
snd-pcsp: index=-2
snd-usb-audio: index=-2
snd-hda-intel: patch=hda-
!!Loaded sound module options
!!-----
!!Module: snd_hda_intel
align_buffer_size : -1
bdl_pos_adj : 1,-1,-1,
beep_mode : N,N,N,N,
enable : Y,Y,Y,Y,
enable_msi : -1
id : (null),
index : -1,-1,-
jackpoll_ms : 0,0,0,0,
model : (null),
patch : hda-jack-
Raymond (superquad-vortex2) wrote : | #17 |
you may need patch similar to
static struct snd_pci_quirk alc269_fixup_tbl[] = {
SND_PCI_
SND_PCI_
+ SND_PCI_
SND_PCI_
SND_PCI_
{}
};
or you define a new fixup ALC290_
Raymond (superquad-vortex2) wrote : | #18 |
SND_PCI_
Shunjie (sj-jake) wrote : | #19 |
Sorry that I do not understand the meaning of patching similar to the link.
Raymond (superquad-vortex2) wrote : | #20 |
+ [ALC269_
+ .pins = (const struct alc_pincfg[]) {
+ { 0x17, 0x99130111 }, /* subwoofer */
+ { }
+ }
+ },
the objective is to fixup the pin default of pin complex node 0x17 when BIOS did not set it properly
Shunjie (sj-jake) wrote : | #21 |
okay, i understand the objective now. i have 2 issues:
1) i know the objective but i do not know how to fix it. i do not understand the meaning and how i can use the lines you have input.
2) now that i have fixed the sound clarity with hda-jack-retask, is it still necessary to do the patching?
VincentTham (thamvmk) wrote : | #22 |
Yes, I've installed the hda-jack-retask and able to have the subwoofer working. Thanks.
Shunjie (sj-jake) wrote : | #23 |
i have just discovered the sound quality of the speaker jacks is being affected from the hda-jack-retask.
The sound quality is not clear.
Raymond (superquad-vortex2) wrote : | #24 |
can you use hda-analyzer to mute amp in of either connection to node 2 or node 3 ?
Node 0x0f [Audio Mixer] wcaps 0x20010a: Mono
Amp-In Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00] [0x00]
Connection: 2
0x02 0x03
Shunjie (sj-jake) wrote : | #25 |
i cannot use hda-analyzer.
it keeps prompting me to try using as the root user even after i have log into root user. =(
Raymond (superquad-vortex2) wrote : | #26 |
using hda-emu with the patched alsa-info
send: NID=0xf, VERB=0xf00(
receive: 0x80000000
send: NID=0xf, VERB=0xb20(
receive: 0x0
send: NID=0xf, VERB=0xb00(
receive: 0x0
send: NID=0xf, VERB=0xb20(
receive: 0x0
send: NID=0xf, VERB=0xb00(
receive: 0x0
the driver muted the connection from node 0x02
send: NID=0xf, VERB=0x360(
send: NID=0xf, VERB=0x350(
and unmuted the connection from node 0x03
send: NID=0xf, VERB=0x361(
send: NID=0xf, VERB=0x351(
you can use hda-verb to mute the connection 0x02 at node 0x0f
Raymond (superquad-vortex2) wrote : | #27 |
you need to find out when the connection from node 0x02 at node 0x0f is unmuted
Raymond (superquad-vortex2) wrote : | #28 |
need root privige to acces the /dev/snd/hwC*
sudo hda-verb
hda-verb
~~~~~~~~
hda-verb is a tiny program that allows you to access the HD-audio
codec directly. You can execute a raw HD-audio codec verb with this.
This program accesses the hwdep device, thus you need to enable the
kernel config `CONFIG_
The hda-verb program takes four arguments: the hwdep device file, the
widget NID, the verb and the parameter. When you access to the codec
on the slot 2 of the card 0, pass /dev/snd/hwC0D2 to the first
argument, typically. (However, the real path name depends on the
system.)
The second parameter is the widget number-id to access. The third
parameter can be either a hex/digit number or a string corresponding
to a verb. Similarly, the last parameter is the value to write, or
can be a string for the parameter type.
Shunjie (sj-jake) wrote : | #29 |
Finally i can go to root and i am able to use hda-analyzer.
However;
hda-verb: command not found
Node 0x17 [Pin Complex] wcaps 0x40050c: Mono Amp-Out
Control: name="Bass Speaker Playback Switch", index=0, device=0
ControlAmp: chs=3, dir=1, idx=0, ofs=0
Control: iface="card", name="Speaker Surround Phantom Jack", index=0, device=0
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: 0x00
Pincap 0x00000010: OUT
Pin Default 0x81101110: [Fixed] Speaker at Ext Rear
Conn = Unknown, Color = Black
DefAssociation = 0x1, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Power: setting=D0, actual=D0
Connection: 1
0x0f
Launchpad Janitor (janitor) wrote : | #30 |
[Expired for alsa-driver (Ubuntu) because there has been no activity for 60 days.]
Changed in alsa-driver (Ubuntu): | |
status: | Incomplete → Expired |
extraymond@gmail.com (extraymond) wrote : | #31 |
Any news for this one?
David Henningsson (diwic) wrote : | #32 |
Attaching alsa-info from Dell Vostro 5470. It is also missing the subwoofer, which is at pin 0x17.
In addition, DAC node 0x03 is mono for some reason. Probably it is expected to run both headphones and front speakers through DAC node 0x02 and the sub speaker through 0x03.
summary: |
- Low audio output on Vostro 5460 (with Ubuntu pre-loaded) + Low audio output / missing subwoofer on Vostro 5460/5470 (with Ubuntu + pre-loaded) |
David Henningsson (diwic) wrote : | #33 |
Changed in alsa-driver (Ubuntu): | |
status: | Expired → Triaged |
David Henningsson (diwic) wrote : | #34 |
So the 5460 (PCI SSID 1028:05da) and the 5470 is actually slightly different. Both 5460 and 5470 suffer from the mono DAC node at 0x03 problem. The difference is that the 5470 needs the headset mode patch set as well, whereas 5460 has independent detection for headphone and mic (i e, can distinguish a headset from a headphone).
For the surround 2.1 mode to show up in PulseAudio you also need to add this section to the relevant file:
[Mapping analog-surround-21]
device-strings = surround21:%f surround40:%f
channel-map = front-left,
paths-output = analog-output analog-
priority = 8
direction = output
Raymond (superquad-vortex2) wrote : | #35 |
as node 0x12 is mono pin complex, is node 0x0f a downmix wiget ?
why do the driver use 4 channels since both DAC 0x02 and 0x03 and use the same channel tag ?
are the low pass filter ?
Raymond (superquad-vortex2) wrote : | #36 |
autoconfig: line_outs=2 (0x14/0x17/
speaker_outs=0 (0x0/0x0/
hp_outs=1 (0x15/0x0/
mono: mono_out=0x0
inputs:
Internal Mic=0x19
Mic=0x1a
but the current driver won't use DAC 0x2 for headphone and speaker , 0x03 for subwoofer in any of the trials
==> lo_type=1, wired=1, mio=1, badness=0x112
multi_outs = 14/17/0/0 : 2/3/0/0 (type SP)
out path: depth=3 :02:0c:14
out path: depth=3 :03:0f:17
hp_outs = 15/0/0/0 : 2/0/0/0
hp path: depth=3 :02:0c:15
==> lo_type=1, wired=1, mio=0, badness=0x112
multi_outs = 14/17/0/0 : 2/3/0/0 (type SP)
out path: depth=3 :02:0c:14
out path: depth=3 :03:0f:17
hp_outs = 15/0/0/0 : 2/0/0/0
hp path: depth=3 :02:0c:15
==> lo_type=1, wired=0, mio=1, badness=0x112
multi_outs = 14/17/0/0 : 2/3/0/0 (type SP)
out path: depth=3 :02:0c:14
out path: depth=3 :03:0f:17
hp_outs = 15/0/0/0 : 2/0/0/0
hp path: depth=3 :02:0c:15
==> lo_type=1, wired=0, mio=0, badness=0x112
multi_outs = 14/17/0/0 : 2/3/0/0 (type SP)
out path: depth=3 :02:0c:14
out path: depth=3 :03:0f:17
hp_outs = 15/0/0/0 : 2/0/0/0
hp path: depth=3 :02:0c:15
==> lo_type=2, wired=1, mio=1, badness=0x20
multi_outs = 15/0/0/0 : 2/0/0/0 (type HP)
out path: depth=3 :02:0c:15
spk_outs = 14/17/0/0 : 3/3/0/0
spk path: depth=3 :03:0d:14
spk path: depth=3 :03:0f:17
==> lo_type=2, wired=1, mio=0, badness=0x20
multi_outs = 15/0/0/0 : 2/0/0/0 (type HP)
out path: depth=3 :02:0c:15
spk_outs = 14/17/0/0 : 3/3/0/0
spk path: depth=3 :03:0d:14
spk path: depth=3 :03:0f:17
==> lo_type=2, wired=0, mio=1, badness=0x20
multi_outs = 15/0/0/0 : 2/0/0/0 (type HP)
out path: depth=3 :02:0c:15
spk_outs = 14/17/0/0 : 3/3/0/0
spk path: depth=3 :03:0d:14
spk path: depth=3 :03:0f:17
==> lo_type=2, wired=0, mio=0, badness=0x20
multi_outs = 15/0/0/0 : 2/0/0/0 (type HP)
out path: depth=3 :02:0c:15
spk_outs = 14/17/0/0 : 3/3/0/0
spk path: depth=3 :03:0d:14
spk path: depth=3 :03:0f:17
==> restoring best_cfg
==> Best config: lo_type=2, wired=1, mio=1
multi_outs = 15/0/0/0 : 2/0/0/0 (type HP)
out path: depth=3 :02:0c:15
spk_outs = 14/17/0/0 : 3/3/0/0
spk path: depth=3 :03:0d:14
spk path: depth=3 :03:0f:17
Raymond (superquad-vortex2) wrote : | #37 |
do you mean driver should select this as best config
==> lo_type=1, wired=0, mio=0, badness=0x112
multi_outs = 14/17/0/0 : 2/3/0/0 (type SP)
out path: depth=3 :02:0c:14
out path: depth=3 :03:0f:17
hp_outs = 15/0/0/0 : 2/0/0/0
hp path: depth=3 :02:0c:15
Raymond (superquad-vortex2) wrote : | #38 |
- add no_subwoofer_volume_badness for notebook with subwoofer Edit (598 bytes, text/plain)
does pulseaudio really like headphone and speaker share same volume control ???
autoconfig: line_outs=2 (0x14/0x17/
speaker_outs=0 (0x0/0x0/
hp_outs=1 (0x15/0x0/
mono: mono_out=0x0
inputs:
Internal Mic=0x19
Mic=0x1a
==> restoring best_cfg
==> Best config: lo_type=1, wired=1, mio=1
multi_outs = 14/17/0/0 : 2/3/0/0 (type SP)
out path: depth=3 :02:0c:14
out path: depth=3 :03:0f:17
hp_outs = 15/0/0/0 : 2/0/0/0
hp path: depth=3 :02:0c:15
CTRL: add: Front Playback Volume:0
CTRL: add: Speaker Playback Switch:0
CTRL: add: Bass Speaker Playback Volume:0
CTRL: add: Bass Speaker Playback Switch:0
CTRL: add: Headphone Playback Switch:0
Node 0x0c [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x00 0x00]
Connection: 2
0x02 0x0b
Node 0x0d [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x00 0x00]
Connection: 2
0x03 0x0b
Node 0x0f [Audio Mixer] wcaps 0x20010a: Mono Amp-In
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x80] [0x00]
Connection: 2
0x02 0x03
Node 0x14 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
Control: name="Speaker Playback Switch", index=0, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Control: name="Speaker Front Phantom Jack", index=0, device=0
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x00010010: OUT EAPD
EAPD 0x2: EAPD
Pin Default 0x90170110: [Fixed] Speaker at Int N/A
Conn = Analog, Color = Unknown
DefAssociation = 0x1, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Unsolicited: tag=00, enabled=0
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Connection: 2
0x0c* 0x0d
Node 0x15 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
Control: name="Headphone Playback Switch", index=0, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Control: name="Headphone Jack", index=0, device=0
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x0001001c: OUT HP EAPD Detect
EAPD 0x2: EAPD
Pin Default 0x0321101f: [Jack] HP Out at Ext Left
Conn = 1/8, Color = Black
DefAssociation = 0x1, Sequence = 0xf
Pin-ctls: 0xc0: OUT HP
Unsolicited: tag=01, enabled=1
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Connection: 2
0x0c* 0x0d
Node 0x17 [Pin Complex] wcaps 0x40050c: Mono Amp-Out
Control: name="Bass Speaker Playback Switch", index=0, device=0
ControlAmp: chs=1, dir=Out, idx=0, ofs=0
Control: name="Speaker Surround Phantom Jack", index=0, device=0
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80]
Pincap 0x00000010: OUT
Pin Default 0x90170151: [Fixed] Speaker at Int N/A
Conn = Analog, Color = Unknown
DefAssociation = 0x5, Sequence = 0x1
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
Power states: D0 D1 D2 D3
Power: setting=D0, actual=D0
Connection: 1
0x0f
Ubuntu Foundations Team Bug Bot (crichton) wrote : | #39 |
The attachment "add no_subwoofer_
[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issues please contact him.]
tags: | added: patch |
David Henningsson (diwic) wrote : [PATCH] ALSA: hda - Enable subwoofer on Dell Vostro 5460/5470 | #40 |
In this case, there are two DACs, and DAC 0x03 is mono. In order
to make headphones and front speaker use DAC 0x02, and subwoofer use
DAC 0x03, we artificially cut the connection from nodes 0x14 and 0x15
to node 0x03, so they can only use DAC 0x02.
In addition, the 5460 and 5470 differs in the sense that 5470 also
needs a headset mic patch, whereas 5460 has individual detection for
headphone and headset mic.
BugLink: https:/
Signed-off-by: David Henningsson <email address hidden>
---
I'm adding Kailang to cc on this one; hopefully he'll scream if this patch
is doing anything dangerous, such as if there's a risk to blow up the subwoofer.
sound/
1 file changed, 37 insertions(+), 6 deletions(-)
diff --git a/sound/
index dfe4080..16c0caa 100644
--- a/sound/
+++ b/sound/
@@ -3770,10 +3770,14 @@ static void alc282_
static void alc290_
const struct hda_fixup *fix, int action)
{
- if (action == HDA_FIXUP_
- /* Remove DAC node 0x03, as it seems to be
- giving mono output */
- snd_hda_
+ if (action == HDA_FIXUP_
+ /* DAC node 0x03 is giving mono output. We therefore want to
+ make sure 0x14 (front speaker) and 0x15 (headphones) use the
+ stereo DAC, while leaving 0x17 (bass speaker) for node 0x03. */
+ hda_nid_t conn1[2] = { 0x0c };
+ snd_hda_
+ snd_hda_
+ }
}
#if IS_ENABLED(
@@ -3913,6 +3917,9 @@ enum {
ALC282_
ALC283_
ALC290_
+ ALC290_
+ ALC290_
+ ALC290_
ALC269_
ALC255_
ALC255_
@@ -4235,9 +4242,31 @@ static const struct hda_fixup alc269_fixups[] = {
.chained = true,
.chain_id = ALC269_
},
+ [ALC290_
+ .type = HDA_FIXUP_PINS,
+ .v.pins = (const struct hda_pintbl[]) {
+ { 0x17, 0x90170112 }, /* subwoofer */
+ { }
+ },
+ .chained = true,
+ .chain_id = ALC290_
+ },
+ [ALC290_
+ .type = HDA_FIXUP_PINS,
+ .v.pins = (const struct hda_pintbl[]) {
+ { 0x17, 0x90170112 }, /* subwoofer */
+ { }
+ },
+ .chained = true,
+ .chain_id = ALC290_
+ },
[ALC290_
.type = HDA_FIXUP_FUNC,
.v.func = alc290_
+ },
+ [ALC290_
+ .type = HDA_FIXUP_FUNC,
+ .v.func = alc290_
.chained = true,
.chain_id = ALC269_
},
@@ -4282,6 +4311,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
SND_PCI_
SND_PCI_
Changed in alsa-driver (Ubuntu): | |
status: | Triaged → In Progress |
assignee: | nobody → David Henningsson (diwic) |
Takashi Iwai (tiwai) wrote : | #41 |
At Fri, 20 Dec 2013 16:08:13 +0100,
David Henningsson wrote:
>
> In this case, there are two DACs, and DAC 0x03 is mono. In order
> to make headphones and front speaker use DAC 0x02, and subwoofer use
> DAC 0x03, we artificially cut the connection from nodes 0x14 and 0x15
> to node 0x03, so they can only use DAC 0x02.
>
> In addition, the 5460 and 5470 differs in the sense that 5470 also
> needs a headset mic patch, whereas 5460 has individual detection for
> headphone and headset mic.
>
> BugLink: https:/
> Signed-off-by: David Henningsson <email address hidden>
> ---
>
> I'm adding Kailang to cc on this one; hopefully he'll scream if this patch
> is doing anything dangerous, such as if there's a risk to blow up the subwoofer.
OK, I applied it now to for-next branch. Let me know if this is to be
removed.
thanks,
Takashi
>
> sound/pci/
> 1 file changed, 37 insertions(+), 6 deletions(-)
>
> diff --git a/sound/
> index dfe4080..16c0caa 100644
> --- a/sound/
> +++ b/sound/
> @@ -3770,10 +3770,14 @@ static void alc282_
> static void alc290_
> const struct hda_fixup *fix, int action)
> {
> - if (action == HDA_FIXUP_
> - /* Remove DAC node 0x03, as it seems to be
> - giving mono output */
> - snd_hda_
> + if (action == HDA_FIXUP_
> + /* DAC node 0x03 is giving mono output. We therefore want to
> + make sure 0x14 (front speaker) and 0x15 (headphones) use the
> + stereo DAC, while leaving 0x17 (bass speaker) for node 0x03. */
> + hda_nid_t conn1[2] = { 0x0c };
> + snd_hda_
> + snd_hda_
> + }
> }
>
> #if IS_ENABLED(
> @@ -3913,6 +3917,9 @@ enum {
> ALC282_
> ALC283_
> ALC290_
> + ALC290_
> + ALC290_
> + ALC290_
> ALC269_
> ALC255_
> ALC255_
> @@ -4235,9 +4242,31 @@ static const struct hda_fixup alc269_fixups[] = {
> .chained = true,
> .chain_id = ALC269_
> },
> + [ALC290_
> + .type = HDA_FIXUP_PINS,
> + .v.pins = (const struct hda_pintbl[]) {
> + { 0x17, 0x90170112 }, /* subwoofer */
> + { }
> + },
> + .chained = true,
> + .chain_id = ALC290_
> + },
> + [ALC290_
> + .type = HDA_FIXUP_PINS,
> + .v.pins = (const struct hda_pintbl[]) {
> + { 0x17, 0x90170112 }, /* subwoofer */
> + { }
> + },
> + .chained = true,
> + .chain_id = ALC290_
> + },
> [ALC290_
> .type = HDA_FIXUP_FUNC,
> .v.func = alc290_
> + },
> + [ALC290_
> + .type = HDA_...
Changed in alsa-driver (Ubuntu): | |
status: | In Progress → Fix Committed |
Vitor Morato Almeida (vitor-morato-almeida) wrote : | #42 |
how do I apply this patch on PC?
David Henningsson (diwic) wrote : | #43 |
> how do I apply this patch on PC?
Changed in alsa-driver (Ubuntu): | |
status: | Fix Committed → Fix Released |
Aditya2204 (aditya2204) wrote : | #44 |
When shall I see the relevant update on my system? Will it be available in the current Ubuntu release (14.04)? Or in some other kernel version?
David Henningsson (diwic) wrote : | #45 |
> When shall I see the relevant update on my system? Will it be available in the current Ubuntu release (14.04)?
> Or in some other kernel version?
It is fixed in 14.10, or in 14.04 with upgraded hwe stack. Both will take some time before release, so until then, if you want to try, use this method:
http:// git.kernel. org/cgit/ linux/kernel/ git/tiwai/ sound.git/ commit/ ?id=f5a246eab9a 268f51ba8189ea5 b098a1bfff200e
http:// git.kernel. org/cgit/ linux/kernel/ git/tiwai/ sound.git/ commit/ ?id=7ff34ad80b7 080fafaac8efa9e f0061708eddd51
post the output of alsa-info.sh
support of alc290 was added in Oct 2012 and merged into kernel 3.7