At Mon, 16 Feb 2009 11:48:24 +0100, I wrote:
At Sat, 14 Feb 2009 17:13:55 -0200, Herton Ronaldo Krzesinski wrote:
On Saturday 14 February 2009 08:24:15 Takashi Iwai wrote:
At Fri, 13 Feb 2009 14:22:00 -0500, Tim Barnette wrote:
..And it worked! I now have sound! Can you tell me what I actually did here?
The problem was that your BIOS didn't set the correct default pin configuration. The driver doesn't know which pin should be used for the speaker output, as a consequence, it's set as INPUT. Now you set it OUTPUT manually by hda-verb, and (fortunately) the route to that pin was alive even though it wasn't declared, you get the speaker output now.
The next step is to implement a proper pin-config to override by the driver. This won't be much work, but hey, wait for a while.
(Or, did Herton already work on that?)
I had added before pin configs for which source came from *.ini files of IDT windows drivers provided by HP. But I don't know if they are at all necessary, may be just setting config of 0x0d pin should suffice for all hp-dv5 models, as all of them have speaker on 0x0d from all reports and also looking at the *.ini files.
I have three patches, you can choose one of them :), see attached. The first one is my previous pin configs work "let's set for all cases the pin configs based on *.ini files", the others are same smaller change/less intrusive that instead just deals with this hp dv4 case.
I took the last, the smallest one. It's not too bad to define all models, but at this stage, I'd like rather to slim the code down.
And now I cleaned up the quirk entries.
Takashi
=== From 2ae466f8cc522843fa9a456e46007dd98b052b13 Mon Sep 17 00:00:00 2001 From: Takashi Iwai tiwai@suse.de Date: Mon, 16 Feb 2009 14:16:36 +0100 Subject: [PATCH] ALSA: hda - Cleanup IDT92HD7x HP quirks
Clean up IDT92HD7x quirks for HP laptops with SND_PCI_QUIRK_MASK().
Signed-off-by: Takashi Iwai tiwai@suse.de --- sound/pci/hda/patch_sigmatel.c | 20 +++++--------------- 1 files changed, 5 insertions(+), 15 deletions(-)
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c index 7320059..d00a211 100644 --- a/sound/pci/hda/patch_sigmatel.c +++ b/sound/pci/hda/patch_sigmatel.c @@ -1817,22 +1817,12 @@ static struct snd_pci_quirk stac92hd71bxx_cfg_tbl[] = { "DFI LanParty", STAC_92HD71BXX_REF), SND_PCI_QUIRK(PCI_VENDOR_ID_DFI, 0x3101, "DFI LanParty", STAC_92HD71BXX_REF), - SND_PCI_QUIRK(PCI_VENDOR_ID_HP, 0x30f2, - "HP dv5", STAC_HP_M4), - SND_PCI_QUIRK(PCI_VENDOR_ID_HP, 0x30f4, - "HP dv7", STAC_HP_DV5), - SND_PCI_QUIRK(PCI_VENDOR_ID_HP, 0x30f7, - "HP dv4", STAC_HP_DV5), - SND_PCI_QUIRK(PCI_VENDOR_ID_HP, 0x30fb, - "HP dv7", STAC_HP_DV5), - SND_PCI_QUIRK(PCI_VENDOR_ID_HP, 0x30fc, - "HP dv7", STAC_HP_M4), - SND_PCI_QUIRK(PCI_VENDOR_ID_HP, 0x3600, - "HP dv5", STAC_HP_DV5), - SND_PCI_QUIRK(PCI_VENDOR_ID_HP, 0x3603, - "HP dv5", STAC_HP_DV5), + SND_PCI_QUIRK_MASK(PCI_VENDOR_ID_HP, 0xfff0, 0x30f0, + "HP dv4-7", STAC_HP_DV5), + SND_PCI_QUIRK_MASK(PCI_VENDOR_ID_HP, 0xfff0, 0x3600, + "HP dv4-7", STAC_HP_DV5), SND_PCI_QUIRK(PCI_VENDOR_ID_HP, 0x361a, - "unknown HP", STAC_HP_M4), + "HP mini 1000", STAC_HP_M4), SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x0233, "unknown Dell", STAC_DELL_M4_1), SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x0234,