Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
No more LFE with intel-hda and kernels 2.6.23-xxx [SOLVED]
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
VinzC
Watchman
Watchman


Joined: 17 Apr 2004
Posts: 5098
Location: Dark side of the mood

PostPosted: Fri Dec 21, 2007 9:46 am    Post subject: No more LFE with intel-hda and kernels 2.6.23-xxx [SOLVED] Reply with quote

Hi.

I didn't notice earlier but LFE slider has gone (once more) in ALSA settings. I've switched a couple of weeks ago to Gentoo Sources 2.6.23. LFE is also absent in Kamikaze sources 2.6.23-5. I'm sure I still had it with previous Gentoo Sources.

What's going on again with Intel HDA? Or is it my settings?

equery l alsa:
[I--] [  ] media-libs/alsa-lib-1.0.14a-r1 (0)
[I--] [  ] media-sound/alsa-headers-1.0.14 (0)
[I--] [  ] media-sound/alsa-utils-1.0.14 (0.9)

_________________
Gentoo addict: tomorrow I quit, I promise!... Just one more emerge...
1739!


Last edited by VinzC on Sat Dec 22, 2007 7:45 am; edited 3 times in total
Back to top
View user's profile Send private message
Exil
Apprentice
Apprentice


Joined: 10 Oct 2005
Posts: 251
Location: Nibylandia

PostPosted: Fri Dec 21, 2007 1:19 pm    Post subject: Reply with quote

there is something wrong in your config.
Read
Code:
/usr/src/linux/Documentation/sound/alsa/ALSA-Configuration.txt
and try to add correct option to /etc/modules.d/alsa
Code:
options snd-hda-intel model=6stack-dig
That works for me (not as I want, but I'm happy with it)
Back to top
View user's profile Send private message
VinzC
Watchman
Watchman


Joined: 17 Apr 2004
Posts: 5098
Location: Dark side of the mood

PostPosted: Fri Dec 21, 2007 5:33 pm    Post subject: Reply with quote

The options have always been the same
/etc/modules.d/snd-hda-intel:
options position_fix=1 model=ref

Now I have edited the file
/etc/modules.d/snd-hda-intel:
options snd-hda-intel position_fix=1 model=ref
and also tried
/etc/modules.d/snd-hda-intel:
options snd-hda-intel position_fix=1 model=dell-m27

but it doesn't change anything. Still no LFE slider in alsamixer... I've even run update-modules -f and rebooted, no change... :(

My chipset is a STAC9200 (Dell Inspiron 9400). How can I make sure the options were passed to the module and the subwoofer was detected?

EDIT: Of course, now that I've rebooted with a 2.6.22-gentoo-r8 kernel, the problem still persists...
_________________
Gentoo addict: tomorrow I quit, I promise!... Just one more emerge...
1739!
Back to top
View user's profile Send private message
VinzC
Watchman
Watchman


Joined: 17 Apr 2004
Posts: 5098
Location: Dark side of the mood

PostPosted: Fri Dec 21, 2007 7:23 pm    Post subject: Reply with quote

It looks like a bug in Alsa kernel module, which has some incorrect/missing pins setup for STAC9200 on some Dell models... Hmmm...
_________________
Gentoo addict: tomorrow I quit, I promise!... Just one more emerge...
1739!
Back to top
View user's profile Send private message
VinzC
Watchman
Watchman


Joined: 17 Apr 2004
Posts: 5098
Location: Dark side of the mood

PostPosted: Fri Dec 21, 2007 8:59 pm    Post subject: Reply with quote

I have fixed the bug after reading this thread (it's Ubuntu but applies here too). Here's the full patch - note that you'll have to change the patch header as follows to patch your kernel sources directly:
dell-lfe-alsa-1.0.14.patch:
--- linux.old/sound/pci/hda/patch_sigmatel.c   2007-06-04 09:28:54.000000000 +0200
+++ linux.new/sound/pci/hda/patch_sigmatel.c   2007-08-20 00:58:09.000000000 +0200
@@ -39,6 +39,7 @@
 
 enum {
    STAC_REF,
+   STAC_DELL,
    STAC_9200_MODELS
 };
 
@@ -452,12 +453,19 @@
    0x02a19020, 0x01a19021, 0x90100140, 0x01813122,
 };
 
+static unsigned int dell_pin_configs[8] = {
+    0x40c003fa, 0x01441340, 0x0421421f, 0x90170310,
+    0x408003fb, 0x04a1102e, 0x90170311, 0x403003fc,
+};
+
 static unsigned int *stac9200_brd_tbl[STAC_9200_MODELS] = {
    [STAC_REF] = ref9200_pin_configs,
+   [STAC_DELL] = dell_pin_configs,
 };
 
 static const char *stac9200_models[STAC_9200_MODELS] = {
    [STAC_REF] = "ref",
+   [STAC_DELL] = "dell",
 };
 
 static struct snd_pci_quirk stac9200_cfg_tbl[] = {
@@ -474,11 +482,11 @@
    SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x01cc,
             "Dell Latitude D820", STAC_REF),
    SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x01cd,
-            "Dell Inspiron E1705/9400", STAC_REF),
+            "Dell Inspiron E1705/9400", STAC_DELL),
    SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x01ce,
-            "Dell XPS M1710", STAC_REF),
+            "Dell XPS M1710", STAC_DELL),
    SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x01cf,
-            "Dell Precision M90", STAC_REF),
+            "Dell Precision M90", STAC_DELL),
    SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x01d6,
             "unknown Dell", STAC_REF),
    SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x01d8,

To patch your kernel, run the following commands:
Code:
cd /usr/src/linux
patch -p1 < /path/to/dell-lfe-alsa-1.0.14.patch

Then I've had to change /etc/modules.d/snd-hda-intel parameter model=ref into model=dell-m27. Finally I've also had to upgrade alsa-libs, alsa-utils and alsa-headers all three to version 1.0.15 (currently ~masked) to get rid of the wierd debug message "XXX write TLV" after /etc/init.d/alsasound restores sound mixer levels.
_________________
Gentoo addict: tomorrow I quit, I promise!... Just one more emerge...
1739!
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum