Skip to contentSkip to conversation

Sigmatel stac92hd71b7 low HP volume

PATCH In review Klaas De Craemer 2 participants 9 messages Oct 5, 2008 – Oct 8, 2008 1 message not in the archive Sound

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Sigmatel stac92hd71b7 low HP volume

Hello,

A few days ago, I posted a patch to the linux kernel list, but afterwards I realised that it is more appropriate for the alsa list. So I repost it here.

Below is my patch for an issue on Dell E6500 notebooks with the Sigmatel stac92hd71b7 codec. In the default snd-hda-intel configuration, the sound going to the headphone jack goes comes directly from the DAC, resulting in very low volume output. The patch changes the codec's widget connections so that the internal mixer is put in between and sets its input amplifiers to the maximum value. The output to the internal speaker port has been left untouched.
I have tested this and it gives a much better output.

Klaas De Craemer

diff -uNr linux-2.6.26.5/sound/pci/hda/patch_sigmatel.c linux-2.6.26.5.new/sound/pci/hda/patch_sigmatel.c

sound/pci/hda/patch_sigmatel.c +20 -0
@@ -624,6 +624,22 @@
 	{}
 };
 
+static struct hda_verb stac92hd71b7_core_init[] = {
+	/* set master volume and direct control */
+	{ 0x28, AC_VERB_SET_VOLUME_KNOB_CONTROL, 0xff},
+	/* connect headphone jack to mixer */
+	{ 0x0a, AC_VERB_SET_CONNECT_SEL, 0x02},
+	/* unmute right and left channels for nodes 0x0a, 0xd, 0x0f */
+	{ 0x0a, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(0)},
+	{ 0x0d, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(0)},
+	{ 0x0f, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(0)},
+
+	/* Increase mixer volume for the two dac's */
+	{ 0x17, 0x370, 0x7f },
+	{ 0x17, 0x371, 0x7f },
+	{}
+};
+
 static struct hda_verb stac92hd71bxx_core_init[] = {
 	/* set master volume and direct control */
 	{ 0x28, AC_VERB_SET_VOLUME_KNOB_CONTROL, 0xff},
@@ -3642,6 +3658,10 @@
 		spec->mixer = stac92hd71bxx_mixer;
 		spec->init = stac92hd71bxx_core_init;
 		break;
+	case 0x111d76b2: /* Dell E6500 stac92hd71b7 configuration */
+		spec->mixer = stac92hd71bxx_mixer;
+		spec->init = stac92hd71b7_core_init;
+		break;
 	default:
 		spec->mixer = stac92hd71bxx_analog_mixer;
 		spec->init = stac92hd71bxx_analog_core_init;
#1 lore raw

At Sun, 5 Oct 2008 22:10:46 +0200,

Quoted 6 lines · Klaas De Craemer

Hello,

A few days ago, I posted a patch to the linux kernel list, but afterwards I realised that it is more appropriate for the alsa list. So I repost it here.

Quoted 7 lines

Below is my patch for an issue on Dell E6500 notebooks with the Sigmatel stac92hd71b7 codec. In the default snd-hda-intel configuration, the sound going to the headphone jack goes comes directly from the DAC, resulting in very low volume output. The patch changes the codec's widget connections so that the internal mixer is put in between and sets its input amplifiers to the maximum value. The output to the internal speaker port has been left untouched.
I have tested this and it gives a much better output.

Thanks for the patch.

I wonder whether this really improves the quality. Basically what you does is to set the volume of the input mixer over 0dB, and this is usually bad when really high signals come in.

Just to be sure, is the output pin set to the headphone pin control? You can give alsa-info.sh output (run with --no-upload option) for further analysis. The script is found in
http://www.alsa-project.org/alsa-info.sh

thanks,

Takashi

A message that is not in the archive (sent off-list or not yet received): [email protected]

#3 lore raw

[please don't drop Cc to alsa-devel ML]

At Mon, 6 Oct 2008 12:48:43 +0200,

Quoted 8 lines · Klaas De Craemer

Hello,

I'm sure that the audioquality will degrade somewhat because of the additional amplification, but before, the HP-out was not usable at all. I had to use an external ampli just to use my headphones, even after turning all volume sliders to 100%. Then again, when removing the HP, the volume though the internal speakers was way too loud...

Quoted 7 lines

I'm not sure what you mean with the output pin and headphone control, but I have uploaded the output of the codegraph tool before and after my modification here:
http://users.vtk.be/~s0159120/codec_original.svg
http://users.vtk.be/~s0159120/codec_final.svg

Below is the output of alsa-info with the patched module Klaas

Thanks.

So, if I understand correctly, when the pin 0x0a is connected directly from DAC0 0x10, the output level is too low even if you set the all volumes maximal. In the alsa-info.sh output, I see the following:

Quoted 3 lines

Node 0x10 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out R/L
Amp-Out caps: N/A
Amp-Out vals: [0x5e 0x5e]

which means that you decrease the output level intentionally. Is the HP output still too low even if you set to the higher value?

Takashi

Quoted 779 lines

-----
upload=true&script=true&cardinfo=
!!################################
!!ALSA Information Script v 0.4.51
!!################################

!!Script ran on: Mon Oct 6 12:42:48 CEST 2008

!!Linux Distribution
!!------------------

Debian GNU/Linux lenny/sid \n \l

!!Kernel Information
!!------------------

Kernel release:    2.6.26-5.slh.6-sidux-686
Operating System:  GNU/Linux
Architecture:      i686
Processor:         unknown
SMP Enabled:       Yes

!!ALSA Version
!!------------

Driver version: 1.0.16
Library version:
Utilities version: 1.0.16

!!Loaded ALSA modules
!!-------------------

snd_hda_intel

!!Soundcards recognised by ALSA
!!-----------------------------

0 [Intel ]: HDA-Intel - HDA Intel

                      HDA Intel at 0xf6fdc000 irq 21

!!PCI Soundcards installed in the system
!!--------------------------------------

00:1b.0 Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 03)

!!Advanced information - PCI Vendor/Device/Susbsystem ID's !!--------------------------------------------------------

00:1b.0 0403: 8086:293e (rev 03)

	Subsystem: 1028:024f

!!Modprobe options (Sound related)
!!--------------------------------

snd-atiixp-modem: index=-2
snd-intel8x0m: index=-2
snd-via82xx-modem: index=-2
snd-pcsp: index=-2

!!Loaded sound module options
!!--------------------------

!!Module: snd_hda_intel
enable : Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y
enable_msi : 0
id :
<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL> index : -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
model :
<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL> position_fix : 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
power_save : 0
power_save_controller : Y
probe_mask : -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
single_cmd : N

!!HDA-Intel Codec information
!!---------------------------
--startcollapse--

Codec: IDT 92HD71B7X
Address: 0
Vendor Id: 0x111d76b2
Subsystem Id: 0x1028024f
Revision Id: 0x100302
No Modem Function Group found
Default PCM:

    rates [0x7e0]: 44100 48000 88200 96000 176400 192000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM

Default Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1 Default Amp-Out caps: ofs=0x7f, nsteps=0x7f, stepsize=0x02, mute=1
GPIO: io=8, o=0, i=0, unsolicited=1, wake=1
IO[0]: enable=1, dir=1, wake=0, sticky=0, data=1 IO[1]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[2]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[3]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[4]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[5]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[6]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[7]: enable=0, dir=0, wake=0, sticky=0, data=0
Node 0x0a [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x081c: OUT HP Detect
Pin Default 0x0421101f: [Jack] HP Out at Ext Right
Conn = 1/8, Color = Black
DefAssociation = 0x1, Sequence = 0xf
Pin-ctls: 0xc0: OUT HP
Unsolicited: tag=30, enabled=1
Connection: 3

     0x10 0x11 0x17*

Node 0x0b [Pin Complex] wcaps 0x400081: Stereo
Pincap 0x081724: IN Detect
Vref caps: HIZ 50 GRD 80
Pin Default 0x04a11221: [Jack] Mic at Ext Right
Conn = 1/8, Color = Black
DefAssociation = 0x2, Sequence = 0x1
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=00, enabled=0
Node 0x0c [Pin Complex] wcaps 0x400081: Stereo
Pincap 0x081724: IN Detect
Vref caps: HIZ 50 GRD 80
Pin Default 0x40f000f0: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00: VREF_HIZ
Unsolicited: tag=00, enabled=0
Node 0x0d [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x0814: OUT Detect
Pin Default 0x90170110: [Fixed] Speaker at Int N/A
Conn = Analog, Color = Unknown DefAssociation = 0x1, Sequence = 0x0 Misc = NO_PRESENCE
Pin-ctls: 0x00:
Unsolicited: tag=00, enabled=0
Connection: 3

     0x10* 0x11 0x17

Node 0x0e [Pin Complex] wcaps 0x400081: Stereo
Pincap 0x081724: IN Detect
Vref caps: HIZ 50 GRD 80
Pin Default 0x23a1902e: [Jack] Mic at Sep Left
Conn = 1/8, Color = Pink
DefAssociation = 0x2, Sequence = 0xe
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=00, enabled=0
Node 0x0f [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x0814: OUT Detect
Pin Default 0x23014250: [Jack] Line Out at Sep Left
Conn = 1/8, Color = Green
DefAssociation = 0x5, Sequence = 0x0
Pin-ctls: 0x00:
Unsolicited: tag=00, enabled=0
Connection: 3

     0x10* 0x11 0x17

Node 0x10 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out R/L
Amp-Out caps: N/A
Amp-Out vals: [0x5e 0x5e]
Converter: stream=5, channel=0
Power: setting=D0, actual=D0
Delay: 13 samples
Node 0x11 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out R/L
Amp-Out caps: N/A
Amp-Out vals: [0x3d 0x3d]
Converter: stream=5, channel=0
Power: setting=D0, actual=D0
Delay: 13 samples
Node 0x12 [Audio Input] wcaps 0x1d0541: Stereo
Converter: stream=0, channel=0
SDI-Select: 0
Power: setting=D0, actual=D0
Delay: 13 samples
Connection: 1

     0x1c

Processing caps: benign=0, ncoeff=0
Node 0x13 [Audio Input] wcaps 0x1d0541: Stereo
Converter: stream=0, channel=0
SDI-Select: 0
Power: setting=D0, actual=D0
Delay: 13 samples
Connection: 1

     0x1d

Processing caps: benign=0, ncoeff=0
Node 0x14 [Pin Complex] wcaps 0x400100: Mono
Pincap 0x0810: OUT
Pin Default 0x40f000f0: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Connection: 1

     0x16
Node 0x15 [Audio Selector] wcaps 0x300101: Stereo
  Connection: 3
     0x10* 0x11 0x17
Node 0x16 [Audio Mixer] wcaps 0x200100: Mono
  Connection: 1
     0x15

Node 0x17 [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x17, nsteps=0x1f, stepsize=0x05, mute=1 Amp-In vals: [0x1f 0x1f] [0x1f 0x1f] [0x97 0x97] [0x97 0x97] [0x97 0x97]
Connection: 5

     0x10 0x11 0x27 0x1a 0x1b

Node 0x18 [Pin Complex] wcaps 0x40000d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-Out vals: [0x00 0x00]
Pincap 0x0820: IN
Pin Default 0x90a000f0: [Fixed] Mic at Int N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x20: IN
Node 0x19 [Pin Complex] wcaps 0x40000d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-Out vals: [0x00 0x00]
Pincap 0x0820: IN
Pin Default 0x40f000f0: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x20: IN
Node 0x1a [Audio Selector] wcaps 0x30010d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-Out vals: [0x01 0x01]
Connection: 3

     0x0b* 0x0c 0x0e

Node 0x1b [Audio Selector] wcaps 0x30010d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-Out vals: [0x00 0x00]
Connection: 3

     0x0b* 0x0c 0x0e

Node 0x1c [Audio Selector] wcaps 0x30090d: Stereo Amp-Out R/L
Amp-Out caps: ofs=0x00, nsteps=0x0f, stepsize=0x05, mute=1 Amp-Out vals: [0x00 0x00]
Connection: 4

     0x1a* 0x17 0x18 0x19

Node 0x1d [Audio Selector] wcaps 0x30090d: Stereo Amp-Out R/L
Amp-Out caps: ofs=0x00, nsteps=0x0f, stepsize=0x05, mute=1 Amp-Out vals: [0x80 0x80]
Connection: 4

     0x1b* 0x17 0x18 0x19

Node 0x1e [Pin Complex] wcaps 0x400301: Stereo Digital
Pincap 0x0810: OUT
Pin Default 0x4f0000f0: [N/A] Line Out at Ext UNKNOWN
Conn = Unknown, Color = Unknown DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Connection: 1

     0x24

Node 0x1f [Pin Complex] wcaps 0x400701: Stereo Digital
Pincap 0x0810010: OUT EAPD
EAPD 0x0:
Pin Default 0x40f000f6: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown DefAssociation = 0xf, Sequence = 0x6
Pin-ctls: 0x00:
Power: setting=D0, actual=D0
Connection: 2

     0x24* 0x25

Node 0x20 [Pin Complex] wcaps 0x400301: Stereo Digital
Pincap 0x0810: OUT
Pin Default 0x40f000f7: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown DefAssociation = 0xf, Sequence = 0x7
Pin-ctls: 0x00:
Connection: 1

     0x25

Node 0x21 [Audio Output] wcaps 0x40211: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:

    rates [0x7e0]: 44100 48000 88200 96000 176400 192000
    bits [0xe]: 16 20 24
    formats [0x5]: PCM AC3

Delay: 4 samples
Node 0x22 [Audio Output] wcaps 0x40211: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:

    rates [0x7e0]: 44100 48000 88200 96000 176400 192000
    bits [0xe]: 16 20 24
    formats [0x5]: PCM AC3

Delay: 4 samples
Node 0x23 [Vendor Defined Widget] wcaps 0xf00000: Mono Node 0x24 [Audio Selector] wcaps 0x300101: Stereo
Connection: 3

     0x21* 0x1c 0x1d
Node 0x25 [Audio Selector] wcaps 0x300101: Stereo
  Connection: 3
     0x22* 0x1c 0x1d

Node 0x26 [Beep Generator Widget] wcaps 0x70000c: Mono Amp-Out
Amp-Out caps: ofs=0x03, nsteps=0x03, stepsize=0x17, mute=1 Amp-Out vals: [0x00]
Node 0x27 [Pin Complex] wcaps 0x400000: Mono
Pincap 0x0820: IN
Pin Default 0x40f000f0: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Node 0x28 [Volume Knob Widget] wcaps 0x600000: Mono
Volume-Knob: delta=1, steps=127, direct=1, val=127
Connection: 2

     0x10* 0x11

--endcollapse--

!!ALSA Device nodes
!!-----------------

crw-rw---- 1 root audio 116, 7 okt  6 12:40 /dev/snd/controlC0
crw-rw---- 1 root audio 116, 6 okt  6 12:40 /dev/snd/hwC0D0
crw-rw---- 1 root audio 116, 5 okt  6 12:40 /dev/snd/pcmC0D0c
crw-rw---- 1 root audio 116, 4 okt  6 12:41 /dev/snd/pcmC0D0p
crw-rw---- 1 root audio 116, 3 okt  6 11:41 /dev/snd/seq
crw-rw---- 1 root audio 116, 2 okt  6 11:41 /dev/snd/timer

!!Aplay/Arecord output
!!------------

APLAY

**** List of PLAYBACK Hardware Devices ****
card 0: Intel [HDA Intel], device 0: STAC92xx Analog [STAC92xx Analog]
Subdevices: 0/1
Subdevice #0: subdevice #0

ARECORD

**** List of CAPTURE Hardware Devices ****
card 0: Intel [HDA Intel], device 0: STAC92xx Analog [STAC92xx Analog]
Subdevices: 2/2
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1

!!Amixer output
!!-------------

!!-------Mixer controls for card 0 [Intel]

Card hw:0 'Intel'/'HDA Intel at 0xf6fdc000 irq 21'
Mixer name : 'IDT 92HD71B7X'
Components : 'HDA:111d76b2'
Controls : 19
Simple ctrls : 14
Simple mixer control 'Master',0
Capabilities: pvolume pvolume-joined pswitch pswitch-joined Playback channels: Mono
Limits: Playback 0 - 127
Mono: Playback 94 [74%] [-24.75dB] [on]
Simple mixer control 'Headphone',0
Capabilities: pvolume pswitch
Playback channels: Front Left - Front Right
Limits: Playback 0 - 127
Mono:
Front Left: Playback 127 [100%] [0.00dB] [on] Front Right: Playback 127 [100%] [0.00dB] [on]
Simple mixer control 'PCM',0
Capabilities: pvolume
Playback channels: Front Left - Front Right
Limits: Playback 0 - 255
Mono:
Front Left: Playback 255 [100%] [0.00dB]
Front Right: Playback 255 [100%] [0.00dB]
Simple mixer control 'Front',0
Capabilities: pvolume pswitch
Playback channels: Front Left - Front Right
Limits: Playback 0 - 127
Mono:
Front Left: Playback 127 [100%] [0.00dB] [on] Front Right: Playback 127 [100%] [0.00dB] [on]
Simple mixer control 'Capture',0
Capabilities: cvolume cswitch
Capture channels: Front Left - Front Right
Limits: Capture 0 - 15
Front Left: Capture 0 [0%] [0.00dB] [on]
Front Right: Capture 0 [0%] [0.00dB] [on]
Simple mixer control 'Capture Mux',0
Capabilities: volume
Playback channels: Front Left - Front Right Capture channels: Front Left - Front Right
Limits: 0 - 3
Front Left: 1 [33%] [10.00dB]
Front Right: 1 [33%] [10.00dB]
Simple mixer control 'Capture Mux',1
Capabilities: volume
Playback channels: Front Left - Front Right Capture channels: Front Left - Front Right
Limits: 0 - 3
Front Left: 0 [0%] [0.00dB]
Front Right: 0 [0%] [0.00dB]
Simple mixer control 'Capture',1
Capabilities: cvolume cswitch
Capture channels: Front Left - Front Right
Limits: Capture 0 - 15
Front Left: Capture 0 [0%] [0.00dB] [off]
Front Right: Capture 0 [0%] [0.00dB] [off]
Simple mixer control 'Analog Loopback',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Analog Loopback',1
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Digital Input Source',0
Capabilities: enum
Items: 'Analog Inputs' 'Digital Mic 1'
Item0: 'Analog Inputs'
Simple mixer control 'Digital Mic 1',0
Capabilities: cvolume
Capture channels: Front Left - Front Right
Limits: Capture 0 - 3
Front Left: Capture 0 [0%] [0.00dB]
Front Right: Capture 0 [0%] [0.00dB]
Simple mixer control 'Input Source',0
Capabilities: cenum
Items: 'Mic' 'Front Mic'
Item0: 'Mic'
Simple mixer control 'Input Source',1
Capabilities: cenum
Items: 'Mic' 'Front Mic'
Item0: 'Mic'

!!Alsactl output
!!-------------

--startcollapse--

state.Intel {
	control.1 {
		comment.access 'read write'
		comment.type ENUMERATED
		comment.count 1
		comment.item.0 Mic
		comment.item.1 'Front Mic'
		iface MIXER
		name 'Input Source'
		value Mic
	}
	control.2 {
		comment.access 'read write'
		comment.type ENUMERATED
		comment.count 1
		comment.item.0 Mic
		comment.item.1 'Front Mic'
		iface MIXER
		name 'Input Source'
		index 1
		value Mic
	}
	control.3 {
		comment.access 'read write'
		comment.type BOOLEAN
		comment.count 1
		iface MIXER
		name 'Analog Loopback'
		value false
	}
	control.4 {
		comment.access 'read write'
		comment.type BOOLEAN
		comment.count 1
		iface MIXER
		name 'Analog Loopback'
		index 1
		value false
	}
	control.5 {
		comment.access 'read write'
		comment.type INTEGER
		comment.count 2
		comment.range '0 - 15'
		comment.dbmin 0
		comment.dbmax 2250
		iface MIXER
		name 'Capture Volume'
		value.0 0
		value.1 0
	}
	control.6 {
		comment.access 'read write'
		comment.type BOOLEAN
		comment.count 2
		iface MIXER
		name 'Capture Switch'
		value.0 true
		value.1 true
	}
	control.7 {
		comment.access 'read write'
		comment.type INTEGER
		comment.count 2
		comment.range '0 - 3'
		comment.dbmin 0
		comment.dbmax 3000
		iface MIXER
		name 'Capture Mux Volume'
		value.0 1
		value.1 1
	}
	control.8 {
		comment.access 'read write'
		comment.type INTEGER
		comment.count 2
		comment.range '0 - 15'
		comment.dbmin 0
		comment.dbmax 2250
		iface MIXER
		name 'Capture Volume'
		index 1
		value.0 0
		value.1 0
	}
	control.9 {
		comment.access 'read write'
		comment.type BOOLEAN
		comment.count 2
		iface MIXER
		name 'Capture Switch'
		index 1
		value.0 false
		value.1 false
	}
	control.10 {
		comment.access 'read write'
		comment.type INTEGER
		comment.count 2
		comment.range '0 - 3'
		comment.dbmin 0
		comment.dbmax 3000
		iface MIXER
		name 'Capture Mux Volume'
		index 1
		value.0 0
		value.1 0
	}
	control.11 {
		comment.access 'read write'
		comment.type INTEGER
		comment.count 2
		comment.range '0 - 127'
		comment.dbmin -9525
		comment.dbmax 0
		iface MIXER
		name 'Front Playback Volume'
		value.0 127
		value.1 127
	}
	control.12 {
		comment.access 'read write'
		comment.type BOOLEAN
		comment.count 2
		iface MIXER
		name 'Front Playback Switch'
		value.0 true
		value.1 true
	}
	control.13 {
		comment.access 'read write'
		comment.type INTEGER
		comment.count 2
		comment.range '0 - 127'
		comment.dbmin -9525
		comment.dbmax 0
		iface MIXER
		name 'Headphone Playback Volume'
		value.0 127
		value.1 127
	}
	control.14 {
		comment.access 'read write'
		comment.type BOOLEAN
		comment.count 2
		iface MIXER
		name 'Headphone Playback Switch'
		value.0 true
		value.1 true
	}
	control.15 {
		comment.access 'read write'
		comment.type INTEGER
		comment.count 2
		comment.range '0 - 3'
		comment.dbmin 0
		comment.dbmax 3000
		iface MIXER
		name 'Digital Mic 1 Capture Volume'
		value.0 0
		value.1 0
	}
	control.16 {
		comment.access 'read write'
		comment.type ENUMERATED
		comment.count 1
		comment.item.0 'Analog Inputs'
		comment.item.1 'Digital Mic 1'
		iface MIXER
		name 'Digital Input Source'
		value 'Analog Inputs'
	}
	control.17 {
		comment.access 'read write'
		comment.type INTEGER
		comment.count 1
		comment.range '0 - 127'
		comment.dbmin -9525
		comment.dbmax 0
		iface MIXER
		name 'Master Playback Volume'
		value 94
	}
	control.18 {
		comment.access 'read write'
		comment.type BOOLEAN
		comment.count 1
		iface MIXER
		name 'Master Playback Switch'
		value true
	}
	control.19 {
		comment.access 'read write user'
		comment.type INTEGER
		comment.count 2
		comment.range '0 - 255'
		comment.tlv '0000000100000008ffffec1400000014'
		comment.dbmin -5100
		comment.dbmax 0
		iface MIXER
		name 'PCM Playback Volume'
		value.0 255
		value.1 255
	}
}

--endcollapse--

!!All Loaded Modules
!!------------------

Module
snd_hda_intel
snd_hwdep
nls_cp437
vfat
fat
loop
isofs
udf
nvidia
ppdev
lp
parport
acpi_cpufreq
cpufreq_performance
cpufreq_stats
cpufreq_ondemand
cpufreq_powersave
cpufreq_conservative
freq_table
ipv6
af_packet
hfsplus
nls_utf8
ntfs
nls_base
fuse
snd_pcm_oss
snd_pcm
snd_page_alloc
snd_mixer_oss
pcmcia
firmware_class
snd_seq_dummy
rtc_cmos
snd_seq_oss
rtc_core
rtc_lib
dcdbas
snd_seq_midi_event
snd_seq
snd_timer
snd_seq_device
serio_raw
psmouse
i2c_i801
snd
pcspkr
evdev
i2c_core
yenta_socket
rsrc_nonstatic
pcmcia_core
soundcore
video
output
wmi
ac
button
battery
intel_agp
ext3
jbd
mbcache
dm_mirror
dm_log
dm_snapshot
dm_mod
firewire_sbp2
sg
sr_mod
cdrom
sd_mod
usbhid
hid
ff_memless
ahci
libata
scsi_mod
dock
ricoh_mmc
sdhci
mmc_core
firewire_ohci
firewire_core
crc_itu_t
ehci_hcd
uhci_hcd
usbcore
e1000e
thermal
processor
fan

Quoted 33 lines · On Monday 06 October 2008 11:44:33 you wrote:

At Sun, 5 Oct 2008 22:10:46 +0200,

Quoted 6 lines · Klaas De Craemer

Hello,

A few days ago, I posted a patch to the linux kernel list, but afterwards I realised that it is more appropriate for the alsa list. So I repost it here.

Quoted 8 lines

Below is my patch for an issue on Dell E6500 notebooks with the Sigmatel stac92hd71b7 codec. In the default snd-hda-intel configuration, the sound going to the headphone jack goes comes directly from the DAC, resulting in very low volume output. The patch changes the codec's widget connections so that the internal mixer is put in between and sets its input amplifiers to the maximum value. The output to the internal speaker port has been left untouched.
I have tested this and it gives a much better output.

Thanks for the patch.

I wonder whether this really improves the quality. Basically what you does is to set the volume of the input mixer over 0dB, and this is usually bad when really high signals come in.

Just to be sure, is the output pin set to the headphone pin control? You can give alsa-info.sh output (run with --no-upload option) for further analysis. The script is found in
http://www.alsa-project.org/alsa-info.sh

thanks,

Takashi

#4 lore raw
Quoted 17 lines · Takashi Iwai

[please don't drop Cc to alsa-devel ML]

At Mon, 6 Oct 2008 12:48:43 +0200,

Quoted 13 lines · Klaas De Craemer

Hello,

I'm sure that the audioquality will degrade somewhat because of the additional amplification, but before, the HP-out was not usable at all. I had to use an external ampli just to use my headphones, even after turning all volume sliders to 100%. Then again, when removing the HP, the volume though the internal speakers was way too loud...

I'm not sure what you mean with the output pin and headphone control, but I have uploaded the output of the codegraph tool before and after my modification here:
http://users.vtk.be/~s0159120/codec_original.svg
http://users.vtk.be/~s0159120/codec_final.svg

Quoted 8 lines
Quoted 2 lines

Below is the output of alsa-info with the patched module Klaas

Thanks.

So, if I understand correctly, when the pin 0x0a is connected directly from DAC0 0x10, the output level is too low even if you set the all volumes maximal.

That is correct.

Quoted 7 lines

In the alsa-info.sh output, I see the following:

Quoted 3 lines

Node 0x10 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out R/L
Amp-Out caps: N/A
Amp-Out vals: [0x5e 0x5e]

which means that you decrease the output level intentionally. Is the HP output still too low even if you set to the higher value?

No, after the patch I don't need 100% anymore. The HP output is fine now, and I can tune it up and down a bit. Before using the mixer-amp, going from 90 to 100 resulted in going from no sound to little sound. Now the range is more useful.

Quoted 784 lines

Takashi

Quoted 779 lines

-----
upload=true&script=true&cardinfo=
!!################################
!!ALSA Information Script v 0.4.51
!!################################

!!Script ran on: Mon Oct 6 12:42:48 CEST 2008

!!Linux Distribution
!!------------------

Debian GNU/Linux lenny/sid \n \l

!!Kernel Information
!!------------------

Kernel release:    2.6.26-5.slh.6-sidux-686
Operating System:  GNU/Linux
Architecture:      i686
Processor:         unknown
SMP Enabled:       Yes

!!ALSA Version
!!------------

Driver version: 1.0.16
Library version:
Utilities version: 1.0.16

!!Loaded ALSA modules
!!-------------------

snd_hda_intel

!!Soundcards recognised by ALSA
!!-----------------------------

0 [Intel ]: HDA-Intel - HDA Intel

                      HDA Intel at 0xf6fdc000 irq 21

!!PCI Soundcards installed in the system
!!--------------------------------------

00:1b.0 Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 03)

!!Advanced information - PCI Vendor/Device/Susbsystem ID's !!--------------------------------------------------------

00:1b.0 0403: 8086:293e (rev 03)

      Subsystem: 1028:024f

!!Modprobe options (Sound related)
!!--------------------------------

snd-atiixp-modem: index=-2
snd-intel8x0m: index=-2
snd-via82xx-modem: index=-2
snd-pcsp: index=-2

!!Loaded sound module options
!!--------------------------

!!Module: snd_hda_intel
enable : Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y
enable_msi : 0
id :
<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL> index : -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
model :
<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL> position_fix : 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
power_save : 0
power_save_controller : Y
probe_mask : -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
single_cmd : N

!!HDA-Intel Codec information
!!---------------------------
--startcollapse--

Codec: IDT 92HD71B7X
Address: 0
Vendor Id: 0x111d76b2
Subsystem Id: 0x1028024f
Revision Id: 0x100302
No Modem Function Group found
Default PCM:

    rates [0x7e0]: 44100 48000 88200 96000 176400 192000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM

Default Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1 Default Amp-Out caps: ofs=0x7f, nsteps=0x7f, stepsize=0x02, mute=1
GPIO: io=8, o=0, i=0, unsolicited=1, wake=1
IO[0]: enable=1, dir=1, wake=0, sticky=0, data=1 IO[1]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[2]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[3]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[4]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[5]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[6]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[7]: enable=0, dir=0, wake=0, sticky=0, data=0
Node 0x0a [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x081c: OUT HP Detect
Pin Default 0x0421101f: [Jack] HP Out at Ext Right
Conn = 1/8, Color = Black
DefAssociation = 0x1, Sequence = 0xf
Pin-ctls: 0xc0: OUT HP
Unsolicited: tag=30, enabled=1
Connection: 3

     0x10 0x11 0x17*

Node 0x0b [Pin Complex] wcaps 0x400081: Stereo
Pincap 0x081724: IN Detect
Vref caps: HIZ 50 GRD 80
Pin Default 0x04a11221: [Jack] Mic at Ext Right
Conn = 1/8, Color = Black
DefAssociation = 0x2, Sequence = 0x1
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=00, enabled=0
Node 0x0c [Pin Complex] wcaps 0x400081: Stereo
Pincap 0x081724: IN Detect
Vref caps: HIZ 50 GRD 80
Pin Default 0x40f000f0: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00: VREF_HIZ
Unsolicited: tag=00, enabled=0
Node 0x0d [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x0814: OUT Detect
Pin Default 0x90170110: [Fixed] Speaker at Int N/A
Conn = Analog, Color = Unknown DefAssociation = 0x1, Sequence = 0x0 Misc = NO_PRESENCE
Pin-ctls: 0x00:
Unsolicited: tag=00, enabled=0
Connection: 3

     0x10* 0x11 0x17

Node 0x0e [Pin Complex] wcaps 0x400081: Stereo
Pincap 0x081724: IN Detect
Vref caps: HIZ 50 GRD 80
Pin Default 0x23a1902e: [Jack] Mic at Sep Left
Conn = 1/8, Color = Pink
DefAssociation = 0x2, Sequence = 0xe
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=00, enabled=0
Node 0x0f [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x0814: OUT Detect
Pin Default 0x23014250: [Jack] Line Out at Sep Left
Conn = 1/8, Color = Green
DefAssociation = 0x5, Sequence = 0x0
Pin-ctls: 0x00:
Unsolicited: tag=00, enabled=0
Connection: 3

     0x10* 0x11 0x17

Node 0x10 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out R/L
Amp-Out caps: N/A
Amp-Out vals: [0x5e 0x5e]
Converter: stream=5, channel=0
Power: setting=D0, actual=D0
Delay: 13 samples
Node 0x11 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out R/L
Amp-Out caps: N/A
Amp-Out vals: [0x3d 0x3d]
Converter: stream=5, channel=0
Power: setting=D0, actual=D0
Delay: 13 samples
Node 0x12 [Audio Input] wcaps 0x1d0541: Stereo
Converter: stream=0, channel=0
SDI-Select: 0
Power: setting=D0, actual=D0
Delay: 13 samples
Connection: 1

     0x1c

Processing caps: benign=0, ncoeff=0
Node 0x13 [Audio Input] wcaps 0x1d0541: Stereo
Converter: stream=0, channel=0
SDI-Select: 0
Power: setting=D0, actual=D0
Delay: 13 samples
Connection: 1

     0x1d

Processing caps: benign=0, ncoeff=0
Node 0x14 [Pin Complex] wcaps 0x400100: Mono
Pincap 0x0810: OUT
Pin Default 0x40f000f0: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Connection: 1

     0x16
Node 0x15 [Audio Selector] wcaps 0x300101: Stereo
  Connection: 3
     0x10* 0x11 0x17
Node 0x16 [Audio Mixer] wcaps 0x200100: Mono
  Connection: 1
     0x15

Node 0x17 [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x17, nsteps=0x1f, stepsize=0x05, mute=1 Amp-In vals: [0x1f 0x1f] [0x1f 0x1f] [0x97 0x97] [0x97 0x97] [0x97 0x97]
Connection: 5

     0x10 0x11 0x27 0x1a 0x1b

Node 0x18 [Pin Complex] wcaps 0x40000d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-Out vals: [0x00 0x00]
Pincap 0x0820: IN
Pin Default 0x90a000f0: [Fixed] Mic at Int N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x20: IN
Node 0x19 [Pin Complex] wcaps 0x40000d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-Out vals: [0x00 0x00]
Pincap 0x0820: IN
Pin Default 0x40f000f0: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x20: IN
Node 0x1a [Audio Selector] wcaps 0x30010d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-Out vals: [0x01 0x01]
Connection: 3

     0x0b* 0x0c 0x0e

Node 0x1b [Audio Selector] wcaps 0x30010d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-Out vals: [0x00 0x00]
Connection: 3

     0x0b* 0x0c 0x0e

Node 0x1c [Audio Selector] wcaps 0x30090d: Stereo Amp-Out R/L
Amp-Out caps: ofs=0x00, nsteps=0x0f, stepsize=0x05, mute=1 Amp-Out vals: [0x00 0x00]
Connection: 4

     0x1a* 0x17 0x18 0x19

Node 0x1d [Audio Selector] wcaps 0x30090d: Stereo Amp-Out R/L
Amp-Out caps: ofs=0x00, nsteps=0x0f, stepsize=0x05, mute=1 Amp-Out vals: [0x80 0x80]
Connection: 4

     0x1b* 0x17 0x18 0x19

Node 0x1e [Pin Complex] wcaps 0x400301: Stereo Digital
Pincap 0x0810: OUT
Pin Default 0x4f0000f0: [N/A] Line Out at Ext UNKNOWN
Conn = Unknown, Color = Unknown DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Connection: 1

     0x24

Node 0x1f [Pin Complex] wcaps 0x400701: Stereo Digital
Pincap 0x0810010: OUT EAPD
EAPD 0x0:
Pin Default 0x40f000f6: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown DefAssociation = 0xf, Sequence = 0x6
Pin-ctls: 0x00:
Power: setting=D0, actual=D0
Connection: 2

     0x24* 0x25

Node 0x20 [Pin Complex] wcaps 0x400301: Stereo Digital
Pincap 0x0810: OUT
Pin Default 0x40f000f7: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown DefAssociation = 0xf, Sequence = 0x7
Pin-ctls: 0x00:
Connection: 1

     0x25

Node 0x21 [Audio Output] wcaps 0x40211: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:

    rates [0x7e0]: 44100 48000 88200 96000 176400 192000
    bits [0xe]: 16 20 24
    formats [0x5]: PCM AC3

Delay: 4 samples
Node 0x22 [Audio Output] wcaps 0x40211: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:

    rates [0x7e0]: 44100 48000 88200 96000 176400 192000
    bits [0xe]: 16 20 24
    formats [0x5]: PCM AC3

Delay: 4 samples
Node 0x23 [Vendor Defined Widget] wcaps 0xf00000: Mono Node 0x24 [Audio Selector] wcaps 0x300101: Stereo
Connection: 3

     0x21* 0x1c 0x1d
Node 0x25 [Audio Selector] wcaps 0x300101: Stereo
  Connection: 3
     0x22* 0x1c 0x1d

Node 0x26 [Beep Generator Widget] wcaps 0x70000c: Mono Amp-Out
Amp-Out caps: ofs=0x03, nsteps=0x03, stepsize=0x17, mute=1 Amp-Out vals: [0x00]
Node 0x27 [Pin Complex] wcaps 0x400000: Mono
Pincap 0x0820: IN
Pin Default 0x40f000f0: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Node 0x28 [Volume Knob Widget] wcaps 0x600000: Mono
Volume-Knob: delta=1, steps=127, direct=1, val=127
Connection: 2

     0x10* 0x11

--endcollapse--

!!ALSA Device nodes
!!-----------------

crw-rw---- 1 root audio 116, 7 okt  6 12:40 /dev/snd/controlC0
crw-rw---- 1 root audio 116, 6 okt  6 12:40 /dev/snd/hwC0D0
crw-rw---- 1 root audio 116, 5 okt  6 12:40 /dev/snd/pcmC0D0c
crw-rw---- 1 root audio 116, 4 okt  6 12:41 /dev/snd/pcmC0D0p
crw-rw---- 1 root audio 116, 3 okt  6 11:41 /dev/snd/seq
crw-rw---- 1 root audio 116, 2 okt  6 11:41 /dev/snd/timer

!!Aplay/Arecord output
!!------------

APLAY

**** List of PLAYBACK Hardware Devices ****
card 0: Intel [HDA Intel], device 0: STAC92xx Analog [STAC92xx Analog]
Subdevices: 0/1
Subdevice #0: subdevice #0

ARECORD

**** List of CAPTURE Hardware Devices ****
card 0: Intel [HDA Intel], device 0: STAC92xx Analog [STAC92xx Analog]
Subdevices: 2/2
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1

!!Amixer output
!!-------------

!!-------Mixer controls for card 0 [Intel]

Card hw:0 'Intel'/'HDA Intel at 0xf6fdc000 irq 21'
Mixer name : 'IDT 92HD71B7X'
Components : 'HDA:111d76b2'
Controls : 19
Simple ctrls : 14
Simple mixer control 'Master',0
Capabilities: pvolume pvolume-joined pswitch pswitch-joined Playback channels: Mono
Limits: Playback 0 - 127
Mono: Playback 94 [74%] [-24.75dB] [on]
Simple mixer control 'Headphone',0
Capabilities: pvolume pswitch
Playback channels: Front Left - Front Right
Limits: Playback 0 - 127
Mono:
Front Left: Playback 127 [100%] [0.00dB] [on] Front Right: Playback 127 [100%] [0.00dB] [on]
Simple mixer control 'PCM',0
Capabilities: pvolume
Playback channels: Front Left - Front Right
Limits: Playback 0 - 255
Mono:
Front Left: Playback 255 [100%] [0.00dB]
Front Right: Playback 255 [100%] [0.00dB]
Simple mixer control 'Front',0
Capabilities: pvolume pswitch
Playback channels: Front Left - Front Right
Limits: Playback 0 - 127
Mono:
Front Left: Playback 127 [100%] [0.00dB] [on] Front Right: Playback 127 [100%] [0.00dB] [on]
Simple mixer control 'Capture',0
Capabilities: cvolume cswitch
Capture channels: Front Left - Front Right
Limits: Capture 0 - 15
Front Left: Capture 0 [0%] [0.00dB] [on]
Front Right: Capture 0 [0%] [0.00dB] [on]
Simple mixer control 'Capture Mux',0
Capabilities: volume
Playback channels: Front Left - Front Right Capture channels: Front Left - Front Right
Limits: 0 - 3
Front Left: 1 [33%] [10.00dB]
Front Right: 1 [33%] [10.00dB]
Simple mixer control 'Capture Mux',1
Capabilities: volume
Playback channels: Front Left - Front Right Capture channels: Front Left - Front Right
Limits: 0 - 3
Front Left: 0 [0%] [0.00dB]
Front Right: 0 [0%] [0.00dB]
Simple mixer control 'Capture',1
Capabilities: cvolume cswitch
Capture channels: Front Left - Front Right
Limits: Capture 0 - 15
Front Left: Capture 0 [0%] [0.00dB] [off]
Front Right: Capture 0 [0%] [0.00dB] [off]
Simple mixer control 'Analog Loopback',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Analog Loopback',1
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
Simple mixer control 'Digital Input Source',0
Capabilities: enum
Items: 'Analog Inputs' 'Digital Mic 1'
Item0: 'Analog Inputs'
Simple mixer control 'Digital Mic 1',0
Capabilities: cvolume
Capture channels: Front Left - Front Right
Limits: Capture 0 - 3
Front Left: Capture 0 [0%] [0.00dB]
Front Right: Capture 0 [0%] [0.00dB]
Simple mixer control 'Input Source',0
Capabilities: cenum
Items: 'Mic' 'Front Mic'
Item0: 'Mic'
Simple mixer control 'Input Source',1
Capabilities: cenum
Items: 'Mic' 'Front Mic'
Item0: 'Mic'

!!Alsactl output
!!-------------

--startcollapse--

state.Intel {
      control.1 {
              comment.access 'read write'
              comment.type ENUMERATED
              comment.count 1
              comment.item.0 Mic
              comment.item.1 'Front Mic'
              iface MIXER
              name 'Input Source'
              value Mic
      }
      control.2 {
              comment.access 'read write'
              comment.type ENUMERATED
              comment.count 1
              comment.item.0 Mic
              comment.item.1 'Front Mic'
              iface MIXER
              name 'Input Source'
              index 1
              value Mic
      }
      control.3 {
              comment.access 'read write'
              comment.type BOOLEAN
              comment.count 1
              iface MIXER
              name 'Analog Loopback'
              value false
      }
      control.4 {
              comment.access 'read write'
              comment.type BOOLEAN
              comment.count 1
              iface MIXER
              name 'Analog Loopback'
              index 1
              value false
      }
      control.5 {
              comment.access 'read write'
              comment.type INTEGER
              comment.count 2
              comment.range '0 - 15'
              comment.dbmin 0
              comment.dbmax 2250
              iface MIXER
              name 'Capture Volume'
              value.0 0
              value.1 0
      }
      control.6 {
              comment.access 'read write'
              comment.type BOOLEAN
              comment.count 2
              iface MIXER
              name 'Capture Switch'
              value.0 true
              value.1 true
      }
      control.7 {
              comment.access 'read write'
              comment.type INTEGER
              comment.count 2
              comment.range '0 - 3'
              comment.dbmin 0
              comment.dbmax 3000
              iface MIXER
              name 'Capture Mux Volume'
              value.0 1
              value.1 1
      }
      control.8 {
              comment.access 'read write'
              comment.type INTEGER
              comment.count 2
              comment.range '0 - 15'
              comment.dbmin 0
              comment.dbmax 2250
              iface MIXER
              name 'Capture Volume'
              index 1
              value.0 0
              value.1 0
      }
      control.9 {
              comment.access 'read write'
              comment.type BOOLEAN
              comment.count 2
              iface MIXER
              name 'Capture Switch'
              index 1
              value.0 false
              value.1 false
      }
      control.10 {
              comment.access 'read write'
              comment.type INTEGER
              comment.count 2
              comment.range '0 - 3'
              comment.dbmin 0
              comment.dbmax 3000
              iface MIXER
              name 'Capture Mux Volume'
              index 1
              value.0 0
              value.1 0
      }
      control.11 {
              comment.access 'read write'
              comment.type INTEGER
              comment.count 2
              comment.range '0 - 127'
              comment.dbmin -9525
              comment.dbmax 0
              iface MIXER
              name 'Front Playback Volume'
              value.0 127
              value.1 127
      }
      control.12 {
              comment.access 'read write'
              comment.type BOOLEAN
              comment.count 2
              iface MIXER
              name 'Front Playback Switch'
              value.0 true
              value.1 true
      }
      control.13 {
              comment.access 'read write'
              comment.type INTEGER
              comment.count 2
              comment.range '0 - 127'
              comment.dbmin -9525
              comment.dbmax 0
              iface MIXER
              name 'Headphone Playback Volume'
              value.0 127
              value.1 127
      }
      control.14 {
              comment.access 'read write'
              comment.type BOOLEAN
              comment.count 2
              iface MIXER
              name 'Headphone Playback Switch'
              value.0 true
              value.1 true
      }
      control.15 {
              comment.access 'read write'
              comment.type INTEGER
              comment.count 2
              comment.range '0 - 3'
              comment.dbmin 0
              comment.dbmax 3000
              iface MIXER
              name 'Digital Mic 1 Capture Volume'
              value.0 0
              value.1 0
      }
      control.16 {
              comment.access 'read write'
              comment.type ENUMERATED
              comment.count 1
              comment.item.0 'Analog Inputs'
              comment.item.1 'Digital Mic 1'
              iface MIXER
              name 'Digital Input Source'
              value 'Analog Inputs'
      }
      control.17 {
              comment.access 'read write'
              comment.type INTEGER
              comment.count 1
              comment.range '0 - 127'
              comment.dbmin -9525
              comment.dbmax 0
              iface MIXER
              name 'Master Playback Volume'
              value 94
      }
      control.18 {
              comment.access 'read write'
              comment.type BOOLEAN
              comment.count 1
              iface MIXER
              name 'Master Playback Switch'
              value true
      }
      control.19 {
              comment.access 'read write user'
              comment.type INTEGER
              comment.count 2
              comment.range '0 - 255'
              comment.tlv '0000000100000008ffffec1400000014'
              comment.dbmin -5100
              comment.dbmax 0
              iface MIXER
              name 'PCM Playback Volume'
              value.0 255
              value.1 255
      }
}

--endcollapse--

!!All Loaded Modules
!!------------------

Module
snd_hda_intel
snd_hwdep
nls_cp437
vfat
fat
loop
isofs
udf
nvidia
ppdev
lp
parport
acpi_cpufreq
cpufreq_performance
cpufreq_stats
cpufreq_ondemand
cpufreq_powersave
cpufreq_conservative
freq_table
ipv6
af_packet
hfsplus
nls_utf8
ntfs
nls_base
fuse
snd_pcm_oss
snd_pcm
snd_page_alloc
snd_mixer_oss
pcmcia
firmware_class
snd_seq_dummy
rtc_cmos
snd_seq_oss
rtc_core
rtc_lib
dcdbas
snd_seq_midi_event
snd_seq
snd_timer
snd_seq_device
serio_raw
psmouse
i2c_i801
snd
pcspkr
evdev
i2c_core
yenta_socket
rsrc_nonstatic
pcmcia_core
soundcore
video
output
wmi
ac
button
battery
intel_agp
ext3
jbd
mbcache
dm_mirror
dm_log
dm_snapshot
dm_mod
firewire_sbp2
sg
sr_mod
cdrom
sd_mod
usbhid
hid
ff_memless
ahci
libata
scsi_mod
dock
ricoh_mmc
sdhci
mmc_core
firewire_ohci
firewire_core
crc_itu_t
ehci_hcd
uhci_hcd
usbcore
e1000e
thermal
processor
fan

Quoted 33 lines · On Monday 06 October 2008 11:44:33 you wrote:

At Sun, 5 Oct 2008 22:10:46 +0200,

Quoted 6 lines · Klaas De Craemer

Hello,

A few days ago, I posted a patch to the linux kernel list, but afterwards I realised that it is more appropriate for the alsa list. So I repost it here.

Quoted 8 lines

Below is my patch for an issue on Dell E6500 notebooks with the Sigmatel stac92hd71b7 codec. In the default snd-hda-intel configuration, the sound going to the headphone jack goes comes directly from the DAC, resulting in very low volume output. The patch changes the codec's widget connections so that the internal mixer is put in between and sets its input amplifiers to the maximum value. The output to the internal speaker port has been left untouched.
I have tested this and it gives a much better output.

Thanks for the patch.

I wonder whether this really improves the quality. Basically what you does is to set the volume of the input mixer over 0dB, and this is usually bad when really high signals come in.

Just to be sure, is the output pin set to the headphone pin control? You can give alsa-info.sh output (run with --no-upload option) for further analysis. The script is found in
http://www.alsa-project.org/alsa-info.sh

thanks,

Takashi

#5 lore raw

At Mon, 6 Oct 2008 19:10:14 +0200,

Quoted 36 lines · Klaas De Craemer
Quoted 17 lines · Takashi Iwai

[please don't drop Cc to alsa-devel ML]

At Mon, 6 Oct 2008 12:48:43 +0200,

Quoted 13 lines · Klaas De Craemer

Hello,

I'm sure that the audioquality will degrade somewhat because of the additional amplification, but before, the HP-out was not usable at all. I had to use an external ampli just to use my headphones, even after turning all volume sliders to 100%. Then again, when removing the HP, the volume though the internal speakers was way too loud...

I'm not sure what you mean with the output pin and headphone control, but I have uploaded the output of the codegraph tool before and after my modification here:
http://users.vtk.be/~s0159120/codec_original.svg
http://users.vtk.be/~s0159120/codec_final.svg

Quoted 8 lines
Quoted 2 lines

Below is the output of alsa-info with the patched module Klaas

Thanks.

So, if I understand correctly, when the pin 0x0a is connected directly from DAC0 0x10, the output level is too low even if you set the all volumes maximal.

That is correct.

Quoted 5 lines

In the alsa-info.sh output, I see the following:

Quoted 3 lines

Node 0x10 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out R/L
Amp-Out caps: N/A
Amp-Out vals: [0x5e 0x5e]

Quoted 5 lines
Quoted 2 lines

which means that you decrease the output level intentionally. Is the HP output still too low even if you set to the higher value?

No, after the patch I don't need 100% anymore.

Of course not :)

Quoted 4 lines

The HP output is fine
now, and I can tune it up and down a bit. Before using the mixer-amp, going from 90 to 100 resulted in going from no sound to little sound. Now the range is more useful.

Could you check the raw value of the widget 0x10 without your patch? The percent doesn't tell you exactly what you changed.

Takashi

#6 lore raw
Quoted 51 lines · Takashi Iwai

At Mon, 6 Oct 2008 19:10:14 +0200,

Quoted 36 lines · Klaas De Craemer
Quoted 17 lines · Takashi Iwai

[please don't drop Cc to alsa-devel ML]

At Mon, 6 Oct 2008 12:48:43 +0200,

Quoted 13 lines · Klaas De Craemer

Hello,

I'm sure that the audioquality will degrade somewhat because of the additional amplification, but before, the HP-out was not usable at all. I had to use an external ampli just to use my headphones, even after turning all volume sliders to 100%. Then again, when removing the HP, the volume though the internal speakers was way too loud...

I'm not sure what you mean with the output pin and headphone control, but I have uploaded the output of the codegraph tool before and after my modification here:
http://users.vtk.be/~s0159120/codec_original.svg
http://users.vtk.be/~s0159120/codec_final.svg

Quoted 8 lines
Quoted 2 lines

Below is the output of alsa-info with the patched module Klaas

Thanks.

So, if I understand correctly, when the pin 0x0a is connected directly from DAC0 0x10, the output level is too low even if you set the all volumes maximal.

That is correct.

Quoted 5 lines

In the alsa-info.sh output, I see the following:

Quoted 3 lines

Node 0x10 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out R/L
Amp-Out caps: N/A
Amp-Out vals: [0x5e 0x5e]

Quoted 5 lines
Quoted 2 lines

which means that you decrease the output level intentionally. Is the HP output still too low even if you set to the higher value?

No, after the patch I don't need 100% anymore.

Of course not :)

Quoted 4 lines

The HP output is fine
now, and I can tune it up and down a bit. Before using the mixer-amp, going from 90 to 100 resulted in going from no sound to little sound. Now the range is more useful.

Quoted 6 lines

Could you check the raw value of the widget 0x10 without your patch? The percent doesn't tell you exactly what you changed.

Takashi

I have pasted the output of /proc/asound/card0/codec#0 below, without the patch. However, I'm not sure what you're exactly looking for? I'm quite new to all this stuff , but I'd be more than happy to help out more, so feel free to ask anything.

Also related, in windows (yeah i know), using the IDT drivers, the volume is extremely high :) So I went searching in the driver files and it seems that the widget configuration is specified there in an ini file. As far as I can see, the mixer is not configured, but an external amp is mentioned. Could it be that the external amp of 0x0A is not used in snd-hda-intel? Or maybe it refers to the "+3dBV output option on headphone capable ports" as mentioned in the datasheet... But I'm just guessing now.

Klaas

--------------- 92HDM4-1.INI --------------- [HKLM\SOFTWARE\IDT\Config\EventExpressions\JackPresensea] 110="if(JackState(10) == 1 || JackState(15) == 1,(BypassSystemEq(1)),(BypassSystemEq(0)))" 120="if(JackState(10) == 1 || JackState(15) == 1,(BypassSystemComp(1)),(BypassSystemComp(0)))" [HKLM\SOFTWARE\IDT\Config\EventExpressions\JackPresensef] 110="if(JackState(10) == 1 || JackState(15) == 1,(BypassSystemEq(1)),(BypassSystemEq(0)))" 120="if(JackState(10) == 1 || JackState(15) == 1,(BypassSystemComp(1)),(BypassSystemComp(0)))" [HKR]
CodecName = "92HD71B8x"
[HKR\Settings]
InitVerbs = hex:
TraceFlags = dword: 0x89B3
Biostype1 = hex: 1

EnablePcBeepAtCd                     = hex: 1
AllowHpOnNonSupportingPin            = hex: 0
CPL_SaveExtraPower                   = hex: 1
CPL_MaySwitchExtAmpPowerState        = hex: 1
CPL_SecondsAfter                     = dword: 30
EnableDLCDWA                         = hex: 1

PmEnabledWidget = hex: 0A,0B,0C,0D,0E,0F
ShareSystemMicJackAsLine = hex: 1
AfgPowerStatePolicy = hex: 2
CPL_ControlAfgPowerState = hex: 0x1
KeepAnalogLoopbackAlwaysOn = hex: 0
DelayInMsAfterPortDisabling = dword: 0x40
SAEN = dword: 0x08
[HKR\Settings\pin]
[HKR\Settings\Pin\0A]
CfgDflt = dword: 0x0421101F
Action = hex: 81,0D, 81,0F
ExtAmpCtrl = hex: 00,05,02
[HKR\Settings\Pin\0B]
[HKR\Settings\Pin\0C]
CfgDflt = dword: 0x400003F0
[HKR\Settings\Pin\0D]
CfgDflt = dword: 0x90170010
[HKR\Settings\Pin\0E]
[HKR\Settings\Pin\0F]
CfgDflt = dword: 0x2301401F
Action = hex: 81,0D
[HKR\Settings\Pin\14]
CfgDflt = dword: 0x400003F0
[HKR\Settings\Pin\18]
[HKR\Settings\Pin\19]
CfgDflt = dword: 0x400003F0
[HKR\Settings\Pin\1E]
[HKR\Settings\Pin\1F]
CfgDflt = dword: 0x400000F0
[HKR\Settings\Pin\20]
CfgDflt = dword: 0x400000F0
[HKR\Settings\Pin\27]
CfgDflt = dword: 0x90300022
[HKR\Settings\GPIO]
00 = hex: 82

--------------- codecoutput_nonpatched ---------------
Codec: IDT 92HD71B7X
Address: 0
Vendor Id: 0x111d76b2
Subsystem Id: 0x1028024f
Revision Id: 0x100302
No Modem Function Group found
Default PCM:

    rates [0x7e0]: 44100 48000 88200 96000 176400 192000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM

Default Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1 Default Amp-Out caps: ofs=0x7f, nsteps=0x7f, stepsize=0x02, mute=1
GPIO: io=8, o=0, i=0, unsolicited=1, wake=1
IO[0]: enable=1, dir=1, wake=0, sticky=0, data=1 IO[1]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[2]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[3]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[4]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[5]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[6]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[7]: enable=0, dir=0, wake=0, sticky=0, data=0
Node 0x0a [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x081c: OUT HP Detect
Pin Default 0x0421101f: [Jack] HP Out at Ext Right
Conn = 1/8, Color = Black
DefAssociation = 0x1, Sequence = 0xf
Pin-ctls: 0xc0: OUT HP
Unsolicited: tag=30, enabled=1
Connection: 3

     0x10 0x11* 0x17

Node 0x0b [Pin Complex] wcaps 0x400081: Stereo
Pincap 0x081724: IN Detect
Vref caps: HIZ 50 GRD 80
Pin Default 0x04a11221: [Jack] Mic at Ext Right
Conn = 1/8, Color = Black
DefAssociation = 0x2, Sequence = 0x1
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=00, enabled=0
Node 0x0c [Pin Complex] wcaps 0x400081: Stereo
Pincap 0x081724: IN Detect
Vref caps: HIZ 50 GRD 80
Pin Default 0x40f000f0: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00: VREF_HIZ
Unsolicited: tag=00, enabled=0
Node 0x0d [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x0814: OUT Detect
Pin Default 0x90170110: [Fixed] Speaker at Int N/A
Conn = Analog, Color = Unknown DefAssociation = 0x1, Sequence = 0x0 Misc = NO_PRESENCE
Pin-ctls: 0x00:
Unsolicited: tag=00, enabled=0
Connection: 3

     0x10 0x11 0x17*

Node 0x0e [Pin Complex] wcaps 0x400081: Stereo
Pincap 0x081724: IN Detect
Vref caps: HIZ 50 GRD 80
Pin Default 0x23a1902e: [Jack] Mic at Sep Left
Conn = 1/8, Color = Pink
DefAssociation = 0x2, Sequence = 0xe
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=00, enabled=0
Node 0x0f [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x0814: OUT Detect
Pin Default 0x23014250: [Jack] Line Out at Sep Left
Conn = 1/8, Color = Green
DefAssociation = 0x5, Sequence = 0x0
Pin-ctls: 0x00:
Unsolicited: tag=00, enabled=0
Connection: 3

     0x10 0x11 0x17*

Node 0x10 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out R/L
Amp-Out caps: N/A
Amp-Out vals: [0x72 0x72]
Converter: stream=5, channel=0
Power: setting=D0, actual=D0
Delay: 13 samples
Node 0x11 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out R/L
Amp-Out caps: N/A
Amp-Out vals: [0x65 0x65]
Converter: stream=5, channel=0
Power: setting=D0, actual=D0
Delay: 13 samples
Node 0x12 [Audio Input] wcaps 0x1d0541: Stereo
Converter: stream=0, channel=0
SDI-Select: 0
Power: setting=D0, actual=D0
Delay: 13 samples
Connection: 1

     0x1c

Processing caps: benign=0, ncoeff=0
Node 0x13 [Audio Input] wcaps 0x1d0541: Stereo
Converter: stream=0, channel=0
SDI-Select: 0
Power: setting=D0, actual=D0
Delay: 13 samples
Connection: 1

     0x1d

Processing caps: benign=0, ncoeff=0
Node 0x14 [Pin Complex] wcaps 0x400100: Mono
Pincap 0x0810: OUT
Pin Default 0x40f000f0: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Connection: 1

     0x16
Node 0x15 [Audio Selector] wcaps 0x300101: Stereo
  Connection: 3
     0x10* 0x11 0x17
Node 0x16 [Audio Mixer] wcaps 0x200100: Mono
  Connection: 1
     0x15

Node 0x17 [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x17, nsteps=0x1f, stepsize=0x05, mute=1 Amp-In vals: [0x1f 0x1f] [0x97 0x97] [0x97 0x97] [0x97 0x97] [0x97 0x97]
Connection: 5

     0x10 0x11 0x27 0x1a 0x1b

Node 0x18 [Pin Complex] wcaps 0x40000d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-Out vals: [0x00 0x00]
Pincap 0x0820: IN
Pin Default 0x90a000f0: [Fixed] Mic at Int N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x20: IN
Node 0x19 [Pin Complex] wcaps 0x40000d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-Out vals: [0x00 0x00]
Pincap 0x0820: IN
Pin Default 0x40f000f0: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x20: IN
Node 0x1a [Audio Selector] wcaps 0x30010d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-Out vals: [0x01 0x01]
Connection: 3

     0x0b* 0x0c 0x0e

Node 0x1b [Audio Selector] wcaps 0x30010d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-Out vals: [0x00 0x00]
Connection: 3

     0x0b* 0x0c 0x0e

Node 0x1c [Audio Selector] wcaps 0x30090d: Stereo Amp-Out R/L
Amp-Out caps: ofs=0x00, nsteps=0x0f, stepsize=0x05, mute=1 Amp-Out vals: [0x00 0x00]
Connection: 4

     0x1a* 0x17 0x18 0x19

Node 0x1d [Audio Selector] wcaps 0x30090d: Stereo Amp-Out R/L
Amp-Out caps: ofs=0x00, nsteps=0x0f, stepsize=0x05, mute=1 Amp-Out vals: [0x80 0x80]
Connection: 4

     0x1b* 0x17 0x18 0x19

Node 0x1e [Pin Complex] wcaps 0x400301: Stereo Digital
Pincap 0x0810: OUT
Pin Default 0x4f0000f0: [N/A] Line Out at Ext UNKNOWN
Conn = Unknown, Color = Unknown DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Connection: 1

     0x24

Node 0x1f [Pin Complex] wcaps 0x400701: Stereo Digital
Pincap 0x0810010: OUT EAPD
EAPD 0x0:
Pin Default 0x40f000f6: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown DefAssociation = 0xf, Sequence = 0x6
Pin-ctls: 0x00:
Power: setting=D0, actual=D0
Connection: 2

     0x24* 0x25

Node 0x20 [Pin Complex] wcaps 0x400301: Stereo Digital
Pincap 0x0810: OUT
Pin Default 0x40f000f7: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown DefAssociation = 0xf, Sequence = 0x7
Pin-ctls: 0x00:
Connection: 1

     0x25

Node 0x21 [Audio Output] wcaps 0x40211: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:

    rates [0x7e0]: 44100 48000 88200 96000 176400 192000
    bits [0xe]: 16 20 24
    formats [0x5]: PCM AC3

Delay: 4 samples
Node 0x22 [Audio Output] wcaps 0x40211: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:

    rates [0x7e0]: 44100 48000 88200 96000 176400 192000
    bits [0xe]: 16 20 24
    formats [0x5]: PCM AC3

Delay: 4 samples
Node 0x23 [Vendor Defined Widget] wcaps 0xf00000: Mono Node 0x24 [Audio Selector] wcaps 0x300101: Stereo
Connection: 3

     0x21* 0x1c 0x1d
Node 0x25 [Audio Selector] wcaps 0x300101: Stereo
  Connection: 3
     0x22* 0x1c 0x1d

Node 0x26 [Beep Generator Widget] wcaps 0x70000c: Mono Amp-Out
Amp-Out caps: ofs=0x03, nsteps=0x03, stepsize=0x17, mute=1 Amp-Out vals: [0x00]
Node 0x27 [Pin Complex] wcaps 0x400000: Mono
Pincap 0x0820: IN
Pin Default 0x40f000f0: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Node 0x28 [Volume Knob Widget] wcaps 0x600000: Mono
Volume-Knob: delta=1, steps=127, direct=1, val=127
Connection: 2

     0x10* 0x11
#7 lore raw

At Tue, 7 Oct 2008 11:46:58 +0200,

Quoted 57 lines · Klaas De Craemer
Quoted 55 lines · Takashi Iwai

At Mon, 6 Oct 2008 19:10:14 +0200,

Quoted 36 lines · Klaas De Craemer
Quoted 17 lines · Takashi Iwai

[please don't drop Cc to alsa-devel ML]

At Mon, 6 Oct 2008 12:48:43 +0200,

Quoted 13 lines · Klaas De Craemer

Hello,

I'm sure that the audioquality will degrade somewhat because of the additional amplification, but before, the HP-out was not usable at all. I had to use an external ampli just to use my headphones, even after turning all volume sliders to 100%. Then again, when removing the HP, the volume though the internal speakers was way too loud...

I'm not sure what you mean with the output pin and headphone control, but I have uploaded the output of the codegraph tool before and after my modification here:
http://users.vtk.be/~s0159120/codec_original.svg
http://users.vtk.be/~s0159120/codec_final.svg

Quoted 8 lines
Quoted 2 lines

Below is the output of alsa-info with the patched module Klaas

Thanks.

So, if I understand correctly, when the pin 0x0a is connected directly from DAC0 0x10, the output level is too low even if you set the all volumes maximal.

That is correct.

Quoted 5 lines

In the alsa-info.sh output, I see the following:

Quoted 3 lines

Node 0x10 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out R/L
Amp-Out caps: N/A
Amp-Out vals: [0x5e 0x5e]

Quoted 5 lines
Quoted 2 lines

which means that you decrease the output level intentionally. Is the HP output still too low even if you set to the higher value?

No, after the patch I don't need 100% anymore.

Of course not :)

Quoted 4 lines

The HP output is fine
now, and I can tune it up and down a bit. Before using the mixer-amp, going from 90 to 100 resulted in going from no sound to little sound. Now the range is more useful.

Could you check the raw value of the widget 0x10 without your patch? The percent doesn't tell you exactly what you changed.

Quoted 7 lines
Quoted 2 lines

Takashi

I have pasted the output of /proc/asound/card0/codec#0 below, without the patch. However, I'm not sure what you're exactly looking for? I'm quite new to all this stuff , but I'd be more than happy to help out more, so feel free to ask anything.

The mixer volume level in percentage might be different from the raw value of the NID 0x10 (or 0x11?) amps because of volume-knob stuff. I just wanted to make sure that a really high value is set to the amp.

OTOH, if it happens only with the headphone (I suppose the loud enough output from the speaker after unplugging the headphone), this isn't a matter of the DAC amp value.

Quoted 7 lines

Also related, in windows (yeah i know), using the IDT drivers, the volume is extremely high :) So I went searching in the driver files and it seems that the widget configuration is specified there in an ini file. As far as I can see, the mixer is not configured, but an external amp is mentioned. Could it be that the external amp of 0x0A is not used in snd-hda-intel? Or maybe it refers to the "+3dBV output option on headphone capable ports" as mentioned in the datasheet...

This seems to be the normal pin control bit 7 to me. And we already set it.

BTW, you can use hda-verb program to change the verb dynamically. Build the driver with CONFIG_SND_HDA_HWDEP=y, and you'll have the access to hwdep device, e.g. /dev/snd/hwC0D0. The device number depends on the codec slot.

    ftp://ftp.suse.com/pub/people/tiwai/misc/hda-verb-0.2.tar.bz2

thanks,

Takashi

Quoted 283 lines

Klaas

--------------- 92HDM4-1.INI --------------- [HKLM\SOFTWARE\IDT\Config\EventExpressions\JackPresensea] 110="if(JackState(10) == 1 || JackState(15) == 1,(BypassSystemEq(1)),(BypassSystemEq(0)))" 120="if(JackState(10) == 1 || JackState(15) == 1,(BypassSystemComp(1)),(BypassSystemComp(0)))" [HKLM\SOFTWARE\IDT\Config\EventExpressions\JackPresensef] 110="if(JackState(10) == 1 || JackState(15) == 1,(BypassSystemEq(1)),(BypassSystemEq(0)))" 120="if(JackState(10) == 1 || JackState(15) == 1,(BypassSystemComp(1)),(BypassSystemComp(0)))" [HKR]
CodecName = "92HD71B8x"
[HKR\Settings]
InitVerbs = hex:
TraceFlags = dword: 0x89B3
Biostype1 = hex: 1

EnablePcBeepAtCd                     = hex: 1
AllowHpOnNonSupportingPin            = hex: 0
CPL_SaveExtraPower                   = hex: 1
CPL_MaySwitchExtAmpPowerState        = hex: 1
CPL_SecondsAfter                     = dword: 30
EnableDLCDWA                         = hex: 1

PmEnabledWidget = hex: 0A,0B,0C,0D,0E,0F
ShareSystemMicJackAsLine = hex: 1
AfgPowerStatePolicy = hex: 2
CPL_ControlAfgPowerState = hex: 0x1
KeepAnalogLoopbackAlwaysOn = hex: 0
DelayInMsAfterPortDisabling = dword: 0x40
SAEN = dword: 0x08
[HKR\Settings\pin]
[HKR\Settings\Pin\0A]
CfgDflt = dword: 0x0421101F
Action = hex: 81,0D, 81,0F
ExtAmpCtrl = hex: 00,05,02
[HKR\Settings\Pin\0B]
[HKR\Settings\Pin\0C]
CfgDflt = dword: 0x400003F0
[HKR\Settings\Pin\0D]
CfgDflt = dword: 0x90170010
[HKR\Settings\Pin\0E]
[HKR\Settings\Pin\0F]
CfgDflt = dword: 0x2301401F
Action = hex: 81,0D
[HKR\Settings\Pin\14]
CfgDflt = dword: 0x400003F0
[HKR\Settings\Pin\18]
[HKR\Settings\Pin\19]
CfgDflt = dword: 0x400003F0
[HKR\Settings\Pin\1E]
[HKR\Settings\Pin\1F]
CfgDflt = dword: 0x400000F0
[HKR\Settings\Pin\20]
CfgDflt = dword: 0x400000F0
[HKR\Settings\Pin\27]
CfgDflt = dword: 0x90300022
[HKR\Settings\GPIO]
00 = hex: 82

--------------- codecoutput_nonpatched ---------------
Codec: IDT 92HD71B7X
Address: 0
Vendor Id: 0x111d76b2
Subsystem Id: 0x1028024f
Revision Id: 0x100302
No Modem Function Group found
Default PCM:

    rates [0x7e0]: 44100 48000 88200 96000 176400 192000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM

Default Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1 Default Amp-Out caps: ofs=0x7f, nsteps=0x7f, stepsize=0x02, mute=1
GPIO: io=8, o=0, i=0, unsolicited=1, wake=1
IO[0]: enable=1, dir=1, wake=0, sticky=0, data=1 IO[1]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[2]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[3]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[4]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[5]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[6]: enable=0, dir=0, wake=0, sticky=0, data=0 IO[7]: enable=0, dir=0, wake=0, sticky=0, data=0
Node 0x0a [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x081c: OUT HP Detect
Pin Default 0x0421101f: [Jack] HP Out at Ext Right
Conn = 1/8, Color = Black
DefAssociation = 0x1, Sequence = 0xf
Pin-ctls: 0xc0: OUT HP
Unsolicited: tag=30, enabled=1
Connection: 3

     0x10 0x11* 0x17

Node 0x0b [Pin Complex] wcaps 0x400081: Stereo
Pincap 0x081724: IN Detect
Vref caps: HIZ 50 GRD 80
Pin Default 0x04a11221: [Jack] Mic at Ext Right
Conn = 1/8, Color = Black
DefAssociation = 0x2, Sequence = 0x1
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=00, enabled=0
Node 0x0c [Pin Complex] wcaps 0x400081: Stereo
Pincap 0x081724: IN Detect
Vref caps: HIZ 50 GRD 80
Pin Default 0x40f000f0: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00: VREF_HIZ
Unsolicited: tag=00, enabled=0
Node 0x0d [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x0814: OUT Detect
Pin Default 0x90170110: [Fixed] Speaker at Int N/A
Conn = Analog, Color = Unknown DefAssociation = 0x1, Sequence = 0x0 Misc = NO_PRESENCE
Pin-ctls: 0x00:
Unsolicited: tag=00, enabled=0
Connection: 3

     0x10 0x11 0x17*

Node 0x0e [Pin Complex] wcaps 0x400081: Stereo
Pincap 0x081724: IN Detect
Vref caps: HIZ 50 GRD 80
Pin Default 0x23a1902e: [Jack] Mic at Sep Left
Conn = 1/8, Color = Pink
DefAssociation = 0x2, Sequence = 0xe
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=00, enabled=0
Node 0x0f [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x0814: OUT Detect
Pin Default 0x23014250: [Jack] Line Out at Sep Left
Conn = 1/8, Color = Green
DefAssociation = 0x5, Sequence = 0x0
Pin-ctls: 0x00:
Unsolicited: tag=00, enabled=0
Connection: 3

     0x10 0x11 0x17*

Node 0x10 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out R/L
Amp-Out caps: N/A
Amp-Out vals: [0x72 0x72]
Converter: stream=5, channel=0
Power: setting=D0, actual=D0
Delay: 13 samples
Node 0x11 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out R/L
Amp-Out caps: N/A
Amp-Out vals: [0x65 0x65]
Converter: stream=5, channel=0
Power: setting=D0, actual=D0
Delay: 13 samples
Node 0x12 [Audio Input] wcaps 0x1d0541: Stereo
Converter: stream=0, channel=0
SDI-Select: 0
Power: setting=D0, actual=D0
Delay: 13 samples
Connection: 1

     0x1c

Processing caps: benign=0, ncoeff=0
Node 0x13 [Audio Input] wcaps 0x1d0541: Stereo
Converter: stream=0, channel=0
SDI-Select: 0
Power: setting=D0, actual=D0
Delay: 13 samples
Connection: 1

     0x1d

Processing caps: benign=0, ncoeff=0
Node 0x14 [Pin Complex] wcaps 0x400100: Mono
Pincap 0x0810: OUT
Pin Default 0x40f000f0: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Connection: 1

     0x16
Node 0x15 [Audio Selector] wcaps 0x300101: Stereo
  Connection: 3
     0x10* 0x11 0x17
Node 0x16 [Audio Mixer] wcaps 0x200100: Mono
  Connection: 1
     0x15

Node 0x17 [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x17, nsteps=0x1f, stepsize=0x05, mute=1 Amp-In vals: [0x1f 0x1f] [0x97 0x97] [0x97 0x97] [0x97 0x97] [0x97 0x97]
Connection: 5

     0x10 0x11 0x27 0x1a 0x1b

Node 0x18 [Pin Complex] wcaps 0x40000d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-Out vals: [0x00 0x00]
Pincap 0x0820: IN
Pin Default 0x90a000f0: [Fixed] Mic at Int N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x20: IN
Node 0x19 [Pin Complex] wcaps 0x40000d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-Out vals: [0x00 0x00]
Pincap 0x0820: IN
Pin Default 0x40f000f0: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x20: IN
Node 0x1a [Audio Selector] wcaps 0x30010d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-Out vals: [0x01 0x01]
Connection: 3

     0x0b* 0x0c 0x0e

Node 0x1b [Audio Selector] wcaps 0x30010d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-Out vals: [0x00 0x00]
Connection: 3

     0x0b* 0x0c 0x0e

Node 0x1c [Audio Selector] wcaps 0x30090d: Stereo Amp-Out R/L
Amp-Out caps: ofs=0x00, nsteps=0x0f, stepsize=0x05, mute=1 Amp-Out vals: [0x00 0x00]
Connection: 4

     0x1a* 0x17 0x18 0x19

Node 0x1d [Audio Selector] wcaps 0x30090d: Stereo Amp-Out R/L
Amp-Out caps: ofs=0x00, nsteps=0x0f, stepsize=0x05, mute=1 Amp-Out vals: [0x80 0x80]
Connection: 4

     0x1b* 0x17 0x18 0x19

Node 0x1e [Pin Complex] wcaps 0x400301: Stereo Digital
Pincap 0x0810: OUT
Pin Default 0x4f0000f0: [N/A] Line Out at Ext UNKNOWN
Conn = Unknown, Color = Unknown DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Connection: 1

     0x24

Node 0x1f [Pin Complex] wcaps 0x400701: Stereo Digital
Pincap 0x0810010: OUT EAPD
EAPD 0x0:
Pin Default 0x40f000f6: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown DefAssociation = 0xf, Sequence = 0x6
Pin-ctls: 0x00:
Power: setting=D0, actual=D0
Connection: 2

     0x24* 0x25

Node 0x20 [Pin Complex] wcaps 0x400301: Stereo Digital
Pincap 0x0810: OUT
Pin Default 0x40f000f7: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown DefAssociation = 0xf, Sequence = 0x7
Pin-ctls: 0x00:
Connection: 1

     0x25

Node 0x21 [Audio Output] wcaps 0x40211: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:

    rates [0x7e0]: 44100 48000 88200 96000 176400 192000
    bits [0xe]: 16 20 24
    formats [0x5]: PCM AC3

Delay: 4 samples
Node 0x22 [Audio Output] wcaps 0x40211: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:

    rates [0x7e0]: 44100 48000 88200 96000 176400 192000
    bits [0xe]: 16 20 24
    formats [0x5]: PCM AC3

Delay: 4 samples
Node 0x23 [Vendor Defined Widget] wcaps 0xf00000: Mono Node 0x24 [Audio Selector] wcaps 0x300101: Stereo
Connection: 3

     0x21* 0x1c 0x1d
Node 0x25 [Audio Selector] wcaps 0x300101: Stereo
  Connection: 3
     0x22* 0x1c 0x1d

Node 0x26 [Beep Generator Widget] wcaps 0x70000c: Mono Amp-Out
Amp-Out caps: ofs=0x03, nsteps=0x03, stepsize=0x17, mute=1 Amp-Out vals: [0x00]
Node 0x27 [Pin Complex] wcaps 0x400000: Mono
Pincap 0x0820: IN
Pin Default 0x40f000f0: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Node 0x28 [Volume Knob Widget] wcaps 0x600000: Mono
Volume-Knob: delta=1, steps=127, direct=1, val=127
Connection: 2

     0x10* 0x11
#8 lore raw
Quoted 67 lines · Takashi Iwai

At Tue, 7 Oct 2008 11:46:58 +0200,

Quoted 57 lines · Klaas De Craemer
Quoted 55 lines · Takashi Iwai

At Mon, 6 Oct 2008 19:10:14 +0200,

Quoted 36 lines · Klaas De Craemer
Quoted 17 lines · Takashi Iwai

[please don't drop Cc to alsa-devel ML]

At Mon, 6 Oct 2008 12:48:43 +0200,

Quoted 13 lines · Klaas De Craemer

Hello,

I'm sure that the audioquality will degrade somewhat because of the additional amplification, but before, the HP-out was not usable at all. I had to use an external ampli just to use my headphones, even after turning all volume sliders to 100%. Then again, when removing the HP, the volume though the internal speakers was way too loud...

I'm not sure what you mean with the output pin and headphone control, but I have uploaded the output of the codegraph tool before and after my modification here:
http://users.vtk.be/~s0159120/codec_original.svg
http://users.vtk.be/~s0159120/codec_final.svg

Quoted 8 lines
Quoted 2 lines

Below is the output of alsa-info with the patched module Klaas

Thanks.

So, if I understand correctly, when the pin 0x0a is connected directly from DAC0 0x10, the output level is too low even if you set the all volumes maximal.

That is correct.

Quoted 5 lines

In the alsa-info.sh output, I see the following:

Quoted 3 lines

Node 0x10 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out R/L
Amp-Out caps: N/A
Amp-Out vals: [0x5e 0x5e]

Quoted 5 lines
Quoted 2 lines

which means that you decrease the output level intentionally. Is the HP output still too low even if you set to the higher value?

No, after the patch I don't need 100% anymore.

Of course not :)

Quoted 4 lines

The HP output is fine
now, and I can tune it up and down a bit. Before using the mixer-amp, going from 90 to 100 resulted in going from no sound to little sound. Now the range is more useful.

Could you check the raw value of the widget 0x10 without your patch? The percent doesn't tell you exactly what you changed.

Quoted 7 lines
Quoted 2 lines

Takashi

I have pasted the output of /proc/asound/card0/codec#0 below, without the patch. However, I'm not sure what you're exactly looking for? I'm quite new to all this stuff , but I'd be more than happy to help out more, so feel free to ask anything.

Quoted 8 lines

The mixer volume level in percentage might be different from the raw value of the NID 0x10 (or 0x11?) amps because of volume-knob stuff. I just wanted to make sure that a really high value is set to the amp.

OTOH, if it happens only with the headphone (I suppose the loud enough output from the speaker after unplugging the headphone), this isn't a matter of the DAC amp value.

But, with this information, can something be done about it in future releases? Maybe a model-option?

I also checked the output by connecting earplugs and by using the jack as lineout to my hifi, but it is again quite low-volume. So that rules out a "bad" headphone.

Klaas

ps: it also seems like most of this conversation is not listed in the alsa-devel list?

Quoted 24 lines
Quoted 7 lines

Also related, in windows (yeah i know), using the IDT drivers, the volume is extremely high :) So I went searching in the driver files and it seems that the widget configuration is specified there in an ini file. As far as I can see, the mixer is not configured, but an external amp is mentioned. Could it be that the external amp of 0x0A is not used in snd-hda-intel? Or maybe it refers to the "+3dBV output option on headphone capable ports" as mentioned in the datasheet...

This seems to be the normal pin control bit 7 to me. And we already set it.

BTW, you can use hda-verb program to change the verb dynamically. Build the driver with CONFIG_SND_HDA_HWDEP=y, and you'll have the access to hwdep device, e.g. /dev/snd/hwC0D0. The device number depends on the codec slot.
ftp://ftp.suse.com/pub/people/tiwai/misc/hda-verb-0.2.tar.bz2

thanks,

Takashi

Quoted 2 lines

Klaas

#9 lore raw

At Wed, 8 Oct 2008 00:41:27 +0200,

Quoted 74 lines · Klaas De Craemer
Quoted 72 lines · Takashi Iwai

At Tue, 7 Oct 2008 11:46:58 +0200,

Quoted 57 lines · Klaas De Craemer
Quoted 55 lines · Takashi Iwai

At Mon, 6 Oct 2008 19:10:14 +0200,

Quoted 36 lines · Klaas De Craemer
Quoted 17 lines · Takashi Iwai

[please don't drop Cc to alsa-devel ML]

At Mon, 6 Oct 2008 12:48:43 +0200,

Quoted 13 lines · Klaas De Craemer

Hello,

I'm sure that the audioquality will degrade somewhat because of the additional amplification, but before, the HP-out was not usable at all. I had to use an external ampli just to use my headphones, even after turning all volume sliders to 100%. Then again, when removing the HP, the volume though the internal speakers was way too loud...

I'm not sure what you mean with the output pin and headphone control, but I have uploaded the output of the codegraph tool before and after my modification here:
http://users.vtk.be/~s0159120/codec_original.svg
http://users.vtk.be/~s0159120/codec_final.svg

Quoted 8 lines
Quoted 2 lines

Below is the output of alsa-info with the patched module Klaas

Thanks.

So, if I understand correctly, when the pin 0x0a is connected directly from DAC0 0x10, the output level is too low even if you set the all volumes maximal.

That is correct.

Quoted 5 lines

In the alsa-info.sh output, I see the following:

Quoted 3 lines

Node 0x10 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out R/L
Amp-Out caps: N/A
Amp-Out vals: [0x5e 0x5e]

Quoted 5 lines
Quoted 2 lines

which means that you decrease the output level intentionally. Is the HP output still too low even if you set to the higher value?

No, after the patch I don't need 100% anymore.

Of course not :)

Quoted 4 lines

The HP output is fine
now, and I can tune it up and down a bit. Before using the mixer-amp, going from 90 to 100 resulted in going from no sound to little sound. Now the range is more useful.

Could you check the raw value of the widget 0x10 without your patch? The percent doesn't tell you exactly what you changed.

Quoted 7 lines
Quoted 2 lines

Takashi

I have pasted the output of /proc/asound/card0/codec#0 below, without the patch. However, I'm not sure what you're exactly looking for? I'm quite new to all this stuff , but I'd be more than happy to help out more, so feel free to ask anything.

The mixer volume level in percentage might be different from the raw value of the NID 0x10 (or 0x11?) amps because of volume-knob stuff. I just wanted to make sure that a really high value is set to the amp.

Quoted 7 lines
Quoted 3 lines

OTOH, if it happens only with the headphone (I suppose the loud enough output from the speaker after unplugging the headphone), this isn't a matter of the DAC amp value.

But, with this information, can something be done about it in future releases? Maybe a model-option?

Possibly. Or, it's a generic problem regarding volume-knob. It's not ruled out yet.

Quoted 3 lines

I also checked the output by connecting earplugs and by using the jack as lineout to my hifi, but it is again quite low-volume. So that rules out a "bad" headphone.

I didn't doubt it. My question was "what is the raw value". I don't trust the mixer percentage values you showed. They are important in the end result, but not for analyzing the problem. Instead, the raw values the driver sends to the codec are really raw and more understandable. (And, for checking this, you can use hda-verb program, too.)

So, if you try to analyze the problem, always check the values in codec proc. At best, check the values directly by yourself via hda-verb program.

Quoted 4 lines

Klaas

ps: it also seems like most of this conversation is not listed in the alsa-devel list?

The posts from non-subscribers have to be approved manually. Just subscribe to the list first to reduce the latency.

thanks,

Takashi