$ dmesg [schnipp] ACPI: PCI Interrupt 0000:00:1b.0[A] -> GSI 22 (level, low) -> IRQ 21 PCI: Enabling bus mastering for device 0000:00:1b.0 PCI: Setting latency timer of device 0000:00:1b.0 to 64 hda_codec: STAC922x, Apple subsys_id=106b0200 ACPI: PCI interrupt for device 0000:00:1b.0 disabled HDA Intel: probe of 0000:00:1b.0 failed with error -16 [schnipp] -
Please bisect this (the alsa merge happened just short time ago) Which kernel did work? Best regards, Maxim Levitsky -
At Wed, 17 Oct 2007 00:18:42 +0200, It's EBUSY, so something conflict. Try to build with CONFIG_SND_DEBUG=y (and CONFIG_SND_DEBUG_DETECT=y). thanks, Takashi -
ACPI: PCI Interrupt 0000:00:1b.0[A] -> GSI 22 (level, low) -> IRQ 21 PCI: Enabling bus mastering for device 0000:00:1b.0 PCI: Setting latency timer of device 0000:00:1b.0 to 64 ALSA sound/pci/hda/hda_intel.c:727: codec_mask = 0x1 ALSA sound/pci/hda/hda_codec.c:2163: hda_codec: model 'intel-mac-v3' is selected for config 8384:7680 (Mac Mini) hda_codec: STAC922x, Apple subsys_id=106b0200 ALSA sound/pci/hda/patch_sigmatel.c:1283: hda_codec: pin nid 0a pin config 0121e21f ALSA sound/pci/hda/patch_sigmatel.c:1283: hda_codec: pin nid 0b pin config 90a7012e ALSA sound/pci/hda/patch_sigmatel.c:1283: hda_codec: pin nid 0c pin config 9017e110 ALSA sound/pci/hda/patch_sigmatel.c:1283: hda_codec: pin nid 0d pin config 400000fd ALSA sound/pci/hda/patch_sigmatel.c:1283: hda_codec: pin nid 0e pin config 400000fe ALSA sound/pci/hda/patch_sigmatel.c:1283: hda_codec: pin nid 0f pin config 0181e020 ALSA sound/pci/hda/patch_sigmatel.c:1283: hda_codec: pin nid 10 pin config 1145e230 ALSA sound/pci/hda/patch_sigmatel.c:1283: hda_codec: pin nid 11 pin config 11c5e240 usb 2-2: new full speed USB device using uhci_hcd and address 2 ALSA sound/pci/hda/patch_sigmatel.c:1283: hda_codec: pin nid 15 pin config 400000fc ALSA sound/pci/hda/patch_sigmatel.c:1283: hda_codec: pin nid 1b pin config 400000fb Clocksource tsc unstable (delta = -101396678 ns) ALSA sound/pci/hda/hda_codec.c:2757: autoconfig: line_outs=1 (0xc/0x0/0x0/0x0/0x0) ALSA sound/pci/hda/hda_codec.c:2761: speaker_outs=0 (0x0/0x0/0x0/0x0/0x0) ALSA sound/pci/hda/hda_codec.c:2765: hp_outs=1 (0xa/0x0/0x0/0x0/0x0) ALSA sound/pci/hda/hda_codec.c:2773: inputs: mic=0xb, fmic=0x0, line=0xf, fline=0x0, cd=0x0, aux=0x0 ALSA sound/pci/hda/patch_sigmatel.c:1656: stac92xx_add_dyn_out_pins: total dac count=4 ALSA sound/pci/hda/patch_sigmatel.c:1779: dac_nids=3 (0x3/0x5/0x4/0x0/0x0) usb 2-2: configuration #1 chosen from 1 choice ALSA sound/core/control.c:331: control 2:0:0:Master Playback Volume:0 is already present ACPI: PCI interrupt for ...
Hi, I understand why this happens. Your sound card has a single "headphone" output, and since it is single, it is called "Master" the stac you have also has a real master volume control, that controls all the DACs, not just the headphones. I added support for it, thus two controls collided. The following patch will rename the "Master" output to "Headphone" Note that on the stac 9205/9204, the only one that has no master volume (the volume knob) but has a "Master Volume" amplifier widget, this will probably rename the "Master Volume" to Headphones. This chip is quite different, thus I think this should be handled in its patch function. I see what I can do later. Meanwhile the rename from "Master" to Headphones" is the only regression. Best regards, Maxim Levitsky PS: I reply to this mail with the patch. -
From 0824b077b75c19253b45c5a455775c331acd54ee Mon Sep 17 00:00:00 2001
From: Maxim Levitsky <maximlevitsky@gmail.com>
Date: Thu, 18 Oct 2007 03:35:37 +0200
Subject: [PATCH] [HDA] [STAC] Since there is now a master volume control,
don't call the headphone output "Master", it isn't strictly correct anyway
Signed-off-by: Maxim Levitsky <maximlevitsky@gmail.com>
---
pci/hda/patch_sigmatel.c | 7 +------
1 files changed, 1 insertions(+), 6 deletions(-)
diff --git a/pci/hda/patch_sigmatel.c b/pci/hda/patch_sigmatel.c
index 6dffa54..7f157a6 100644
--- a/pci/hda/patch_sigmatel.c
+++ b/pci/hda/patch_sigmatel.c
@@ -1907,12 +1907,7 @@ static int stac92xx_auto_create_hp_ctls(struct hda_codec *codec,
return err;
}
if (spec->multiout.hp_nid) {
- const char *pfx;
- if (old_num_dacs == spec->multiout.num_dacs)
- pfx = "Master";
- else
- pfx = "Headphone";
- err = create_controls(spec, pfx, spec->multiout.hp_nid, 3);
+ err = create_controls(spec, "Headphone", spec->multiout.hp_nid, 3);
if (err < 0)
return err;
}
--
1.5.3.4
-
At Thu, 18 Oct 2007 03:53:08 +0200, I thought stac925x has no volume knob, so "Master" should be still applied for this codec? -
Yes, you are right, but stac925x has only one DAC, and thus if it is connected to any line-out, it will be 'Front', but if it is connected to 'headphones' only, then why not to call it 'Headphone' STAC 9200 has no volumeknob too, but it is handled seperartly STAC 9202 and 9250 has no volumeknob too, but as I said they have just one DAC again Best regards, -
At Thu, 18 Oct 2007 16:21:59 +0200,
The point is that apps usually require a "Master" volume. If it's the
Yes, 9200 doesn't call stac92xx_auto_create_hp_ctls(), so it's not
Both are handled as patch_stac925x. That's what I meant. With your
patch, there will be no master any more.
So, how about the patch below?
Takashi
diff -r fb9512ce24e0 pci/hda/patch_sigmatel.c
--- a/pci/hda/patch_sigmatel.c Thu Oct 18 10:48:43 2007 +0200
+++ b/pci/hda/patch_sigmatel.c Thu Oct 18 16:36:35 2007 +0200
@@ -111,6 +111,7 @@ struct sigmatel_spec {
unsigned int alt_switch: 1;
unsigned int hp_detect: 1;
unsigned int gpio_mute: 1;
+ unsigned int no_vol_knob :1;
unsigned int gpio_mask, gpio_data;
@@ -1930,7 +1931,8 @@ static int stac92xx_auto_create_hp_ctls(
}
if (spec->multiout.hp_nid) {
const char *pfx;
- if (old_num_dacs == spec->multiout.num_dacs)
+ if (old_num_dacs == spec->multiout.num_dacs &&
+ spec->no_vol_knob)
pfx = "Master";
else
pfx = "Headphone";
@@ -2487,6 +2489,7 @@ static int patch_stac9200(struct hda_cod
codec->spec = spec;
spec->num_pins = ARRAY_SIZE(stac9200_pin_nids);
spec->pin_nids = stac9200_pin_nids;
+ spec->no_vol_knob = 1;
spec->board_config = snd_hda_check_board_config(codec, STAC_9200_MODELS,
stac9200_models,
stac9200_cfg_tbl);
@@ -2541,6 +2544,7 @@ static int patch_stac925x(struct hda_cod
codec->spec = spec;
spec->num_pins = ARRAY_SIZE(stac925x_pin_nids);
spec->pin_nids = stac925x_pin_nids;
+ spec->no_vol_knob = 1;
spec->board_config = snd_hda_check_board_config(codec, STAC_925x_MODELS,
stac925x_models,
-
Perfect. This will ensure the same behavior, as was without the volumeknob. Best regards, Maxim Levitsky -
At Thu, 18 Oct 2007 17:24:46 +0200, OK, now I committed to ALSA tree. Takashi -
Thanks. Soundcard is back and my "multimedia" keys for configuring the master volume are working again with alsa 1.0.15 and above patch. mfg thomas -
My sound ability similarly disappeared an upstream kernel <24 hours old (includes the ALSA merge). [jgarzik@core ~]$ lsmod | grep -i snd snd_hda_intel 367396 2 snd_pcm_oss 42080 0 snd_mixer_oss 16640 2 snd_pcm_oss snd_pcm 79624 2 snd_hda_intel,snd_pcm_oss snd_page_alloc 9040 2 snd_hda_intel,snd_pcm [jgarzik@core ~]$ lspci | grep -i audio 00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 01) [jgarzik@core ~]$ dmesg | egrep -i 'snd|hda' [jgarzik@core ~]$ mplayer says AO: [alsa] 48000Hz 2ch s16le (2 bytes per sample) but no sound is emitted. Earlier kernels been working fine since hda_intel was introduced. Jeff -
What sound codec do you have? cat /proc/asound/Intel/codec* You probably have different issue, since your card is probed correctly Regards, Maxim Levitsky -
Attached. Agreed (though I was surprised that a correct probe did not yield a single printk). Jeff
Thanks. Probably everything is fine. I added a new mixer control called "Master Volume" it is a VolumeKnob. It is a hardware control, that was unused in the driver before. It affects the volume of all DACs check if it is enabled, and set to maximum value. This control affects the volume quite a lot, for example on my system if I set it to middle, I almost hear no sound. Maybe something else unrelated to my patches broke your sound too. Regards, Maxim Levitsky -
'alsamixergui' shows it enabled, and near the maximum. I'll bisect this no-audio regression when I have time, but that will be after I'm finished with the current libata explosions :( In the meantime, feel free to ask for more diagnostic output. Jeff -
At Wed, 17 Oct 2007 23:38:06 -0400, Looks like that the volume are full but muted (0x80 is set). Ditto for surround and CLFE volumes. Could you double-check? Also, please attach the generated file via alsactl -f somefile store This will contain the mixer status, so we can check more details. thanks, Takashi -
I've also no sound. Had it working using the alsa.git tree _before_ the last
merge (>48h). Needed to use model=asus for this fujitsu v5505 here.
Now it doesn't work, even with other model-options (fujitsu, laptop).
legolas:/proc/asound # cat cards
0 [Intel ]: HDA-Intel - HDA Intel
HDA Intel at 0xfc400000 irq 22
legolas:/proc/asound # cat pcm
00-01: Conexant Digital : Conexant Digital : playback 1
00-00: CONEXANT Analog : CONEXANT Analog : playback 1 : capture 1
legolas:/proc/asound # cat hwdep
00-00: HDA Codec 0
legolas:/proc/asound # cat devices
2: : timer
3: [ 0- 1]: digital audio playback
4: [ 0- 0]: digital audio playback
5: [ 0- 0]: digital audio capture
6: [ 0- 0]: hardware dependent
7: [ 0] : control
8: : sequencer
legolas:/proc/asound # cat card0/codec#0
Codec: Conexant CX20549 (Venice)
Address: 0
Vendor Id: 0x14f15045
Subsystem Id: 0x1734110e
Revision Id: 0x100100
No Modem Function Group found
Default PCM:
rates [0x140]: 48000 96000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Default Amp-In caps: N/A
Default Amp-Out caps: N/A
Node 0x10 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
Amp-Out caps: ofs=0x2b, nsteps=0x2b, stepsize=0x05, mute=1
Amp-Out vals: [0x2b 0x2b]
Pincap 0x0810014: OUT EAPD Detect
Pin Default 0x92170110: [Fixed] Speaker at Int Front
Conn = Analog, Color = Unknown
Pin-ctls: 0x40: OUT
Power: 0x0
Connection: 2
0x19 0x17*
Node 0x11 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
Amp-Out caps: ofs=0x2b, nsteps=0x2b, stepsize=0x05, mute=1
Amp-Out vals: [0x2b 0x2b]
Pincap 0x08113c: IN OUT HP Detect
Pin Default 0x0121401f: [Jack] HP Out at Ext Rear
Conn = 1/8, Color = Green
Pin-ctls: 0xc0: OUT HP
Power: 0x0
Connection: 2
0x19 0x17*
Node 0x12 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
Amp-Out caps: ofs=0x2b, nsteps=0x2b, stepsize=0x05, mute=1
Amp-Out vals: [0x2b 0x2b]
Pincap 0x08113c: IN OUT HP Detect
Pin ...At Thu, 18 Oct 2007 10:49:48 +0200, Well, it's not called as "working". You did some workaround There is no recent change regarding Conexant codecs over months in ALSA tree. So, the problem has to be there for long time. I guess you didn't take ALSA codes from alsa.git properly? alsa.git master is as same as Linus tree. The latest ALSA code is hold in mm branch. thanks, -
Aaah ;) switched to -mm and just compiling ... Greets Jan-Simon -
Hi ! I compiled some different kernel and tried - no success without module, module=fujitsu, module=laptop, model=asus. I went through the alsa doc and found the section about Conexant 5047. I tried it and got some sound when using module=laptop-hp. So I suppose some pins are different here. So let's summarize: I get sound on a 2.6.23 with module=laptop-hp. Laptop is a fujitsu-siemens v5505 as mentioned. Best regards Jan-Simon -
At Thu, 18 Oct 2007 17:05:17 +0200,
No, it's Conexant 5045. Slightly but fatally different from 5047.
Could you check whether the patch below fixes the problem?
Don't forget to adjust mixers after the patch. You'll have PCM
and other volumes. Unmute and raise them appropriately.
You may still have a weak mic input, though, but it's another
problem...
thanks,
Takashi
diff -r fb9512ce24e0 pci/hda/patch_conexant.c
--- a/pci/hda/patch_conexant.c Thu Oct 18 10:48:43 2007 +0200
+++ b/pci/hda/patch_conexant.c Thu Oct 18 17:26:58 2007 +0200
@@ -554,10 +554,16 @@ static struct snd_kcontrol_new cxt5045_m
.get = conexant_mux_enum_get,
.put = conexant_mux_enum_put
},
- HDA_CODEC_VOLUME("Int Mic Volume", 0x1a, 0x01, HDA_INPUT),
- HDA_CODEC_MUTE("Int Mic Switch", 0x1a, 0x01, HDA_INPUT),
- HDA_CODEC_VOLUME("Ext Mic Volume", 0x1a, 0x02, HDA_INPUT),
- HDA_CODEC_MUTE("Ext Mic Switch", 0x1a, 0x02, HDA_INPUT),
+ HDA_CODEC_VOLUME("Int Mic Capture Volume", 0x1a, 0x01, HDA_INPUT),
+ HDA_CODEC_MUTE("Int Mic Capture Switch", 0x1a, 0x01, HDA_INPUT),
+ HDA_CODEC_VOLUME("Ext Mic Capture Volume", 0x1a, 0x02, HDA_INPUT),
+ HDA_CODEC_MUTE("Ext Mic Capture Switch", 0x1a, 0x02, HDA_INPUT),
+ HDA_CODEC_VOLUME("PCM Playback Volume", 0x17, 0x0, HDA_INPUT),
+ HDA_CODEC_MUTE("PCM Playback Switch", 0x17, 0x0, HDA_INPUT),
+ HDA_CODEC_VOLUME("Int Mic Playback Volume", 0x17, 0x1, HDA_INPUT),
+ HDA_CODEC_MUTE("Int Mic Playback Switch", 0x17, 0x1, HDA_INPUT),
+ HDA_CODEC_VOLUME("Ext Mic Playback Volume", 0x17, 0x2, HDA_INPUT),
+ HDA_CODEC_MUTE("Ext Mic Playback Switch", 0x17, 0x2, HDA_INPUT),
HDA_BIND_VOL("Master Playback Volume", &cxt5045_hp_bind_master_vol),
{
.iface = SNDRV_CTL_ELEM_IFACE_MIXER,
@@ -576,16 +582,15 @@ static struct hda_verb cxt5045_init_verb
{0x12, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN },
{0x14, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN|AC_PINCTL_VREF_80 },
/* HP, Amp */
- {0x11, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_HP },
- {0x17, ...Tried you patch. Now the card works even without any model selected. Also the speakers sound "better" now :D . Bass is nearly too loud. Tnx for looking into this! Just on question: is it possible to mute the main speakers when headphones get plugged in ? Atm the internal speakers stay on. Best regards Jan-Simon -
At Thu, 18 Oct 2007 18:19:25 +0200, Try model=fujitsu or model=laptop. This will activate the auto-muting. If it works, let me know the PCI SSID (from the output of lspci -vv). thanks, Takashi -
I did already, here's the copy:
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio
Controller (rev 03)
Subsystem: Fujitsu Siemens Computer GmbH Unknown device 110e
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 22
Region 0: Memory at fc400000 (64-bit, non-prefetchable) [size=16K]
Capabilities: [50] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=55mA
PME(D0+,D1-,D2-,D3hot+,D3cold+)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [60] Message Signalled Interrupts: Mask- 64bit+
Queue=0/0 Enable-
Address: 0000000000000000 Data: 0000
Capabilities: [70] Express Unknown type IRQ 0
Device: Supported: MaxPayload 128 bytes, PhantFunc 0, ExtTag-
Device: Latency L0s <64ns, L1 <1us
Device: Errors: Correctable- Non-Fatal- Fatal- Unsupported-
Device: RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop+
Device: MaxPayload 128 bytes, MaxReadReq 128 bytes
Link: Supported Speed unknown, Width x0, ASPM unknown, Port 0
Link: Latency L0s <64ns, L1 <1us
Link: ASPM Disabled CommClk- ExtSynch-
Link: Speed unknown, Width x0
Capabilities: [100] Virtual Channel
Capabilities: [130] Unknown (5)
Model name is FSC Esprimo Mobile Edition9 V5505 T7300, details here:
http://www.notebookzentrale.de/eshop.php?action=article_detail&s_supplier_aid=1366...
Thanks again, great work! I patched my 10.3 default kernel and it works
also :D . Linux is great - have phun !
Best regards
Jan-Simon Möller
-
At Fri, 19 Oct 2007 12:46:34 +0200,
Thanks. With the patch below, the driver should work without option.
Give it a try.
Takashi
diff -r 7cf5e23f804e sound/pci/hda/patch_conexant.c
--- a/sound/pci/hda/patch_conexant.c Fri Oct 19 08:23:00 2007 +0200
+++ b/sound/pci/hda/patch_conexant.c Fri Oct 19 12:56:13 2007 +0200
@@ -765,6 +765,7 @@ static struct snd_pci_quirk cxt5045_cfg_
SND_PCI_QUIRK(0x103c, 0x30d9, "HP Spartan", CXT5045_LAPTOP),
SND_PCI_QUIRK(0x1734, 0x10ad, "Fujitsu Si1520", CXT5045_FUJITSU),
SND_PCI_QUIRK(0x1734, 0x10cb, "Fujitsu Si3515", CXT5045_LAPTOP),
+ SND_PCI_QUIRK(0x1734, 0x110e, "Fujitsu V5505", CXT5045_LAPTOP),
SND_PCI_QUIRK(0x8086, 0x2111, "Conexant Reference board", CXT5045_LAPTOP),
{}
};
-
| Greg KH | Og dreams of kernels |
| Jens Axboe | [PATCH 31/33] Fusion: sg chaining support |
| Arnd Bergmann | Re: finding your own dead "CONFIG_" variables |
| Mark Brown | [PATCH 2/2] Subject: natsemi: Allow users to disable workaround for DspCfg reset |
| Tony Breeds | [LGUEST] Look in object dir for .config |
git: | |
| Brian Downing | Re: Git in a Nutshell guide |
| John Benes | Re: master has some toys |
| Matthias Lederhofer | [PATCH 4/7] introduce GIT_WORK_TREE to specify the work tree |
| Alexander Sulfrian | [RFC/PATCH] RE: git calls SSH_ASKPASS even if DISPLAY is not set |
| Junio C Hamano | Re: Rss produced by git is not valid xml? |
| Linux Kernel Mailing List | iSeries: fix section mismatch in iseries_veth |
| Linux Kernel Mailing List | ixbge: remove TX lock and redo TX accounting. |
| Linux Kernel Mailing List | ixgbe: fix several counter register errata |
| Linux Kernel Mailing List | b43: fix build with CONFIG_SSB_PCIHOST=n |
