Ver tema anterior :: Ver siguiente tema |
Autor |
Mensaje |
phoe n00b
Registrado: 26 Nov 2004 Mensajes: 14 Ubicaci�n: canada
|
Publicado: Mie Jun 07, 2006 9:43 pm T�tulo del mensaje: snd-hda-intel, headphone only sound SOLVED!!!! |
|
|
Got my new laptop last week - an LG S1 Express Dual.
Lots of problems with drivers - installation without network drivers, etc. The downside of getting a new shiny toy.
Most vexing and concerning has been audio, as I couldnt get it started. Modules would install on start, appear ok, but no noise. Moved to external alsa-driver package rather than kernel, and managed to get audio out of the headphones only...
Audio card is:
Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02)
Im assuming you are using the alsa-driver package rather than in-kernel support, although you could probably do the same thing as in here...
SO, solved this by :
1)downloading a copy of the alsa-driver-1.0.11.tar.bz2 - it might be sitting in /usr/portage/distfiles, otherwise running emerge -f alsa-driver will get it for you to the aforementioned location.
2)moved this file to somewhere to work - extract with tar xjf alsa-driver-1.0.11.tar.bz2
3)cd into alsa-driver-1.0.11/alsa-kernel/pci/hda
4)Tracked down some information on my card - by first doing an lspci : my card looked like
00:1b.0 Class 0403: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02)
5) then i did a lspci -nv and used that starting number on the previous line to track down:
00:1b.0 0403: 8086:27d8 (rev 02)
Subsystem: 1854:0067
Flags: bus master, fast devsel, latency 0, IRQ 22
Memory at d8500000 (64-bit, non-prefetchable) [size=16K]
Capabilities: [50] Power Management version 2
Capabilities: [60] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable-
Capabilities: [70] Express Unknown type IRQ 0
Capabilities: [100] Virtual Channel
Capabilities: [130] Unknown (5)
from here, we are interested in the Subsystem numbers.
6) since this card is actually a realtek, we now open up the patch_realtek.c in the alsa-driver-1.0.11/alsa-kernel/pci/hda directory.
Lo and behold, there is code in here for the LG M1 laptop!!! Reasoning that its pretty darn similar, I tracked down the lookup table, looks something like :
{ .modelname = "lg", .config = ALC880_LG },
{ .pci_subvendor = 0x1854, .pci_subdevice = 0x003b, .config = ALC880_LG },
and just copied a new line in like this:
/*this is the card on my S1*/
{ .pci_subvendor = 0x1854, .pci_subdevice = 0x0067, .config = ALC880_LG },
youll notice the subvendor and subdevice numbers correspond to the subsystem number in #5 - thats where they came from. Conceivably if you have a similar but newer card from some other variant, this whole approach might work.
6)back to earth, save the file, cd ../../../
then run make
7) once its done, ran a cp pci/hda/*.ko /lib/modules/your-kernel/alsa-driver/
where your-kernel is the name of your kernel, ie 2.6.16 or whatever.
8)now, do an /etc/init.d/alsasound restart, open up alsamixer and unmute anything you can, raise up the volume and viola!
hopefully, this will help someone else out too, as it took me a little while to sort out. I have emailed the suse.de developer about this tiny fix but I suspect it might be a little before this gets fixed, so perhaps this can help other people with a similar problem. Cheers, |
|
Volver arriba |
|
|
jivher n00b
Registrado: 10 Ago 2005 Mensajes: 4
|
Publicado: Jue Jun 08, 2006 10:55 am T�tulo del mensaje: many thanks |
|
|
after modified my alsa-driver as you suggested my microphone input works perfect.
many many thanks; I spent 3 days to solve this problem; my card is
localhost ~ # lspci -nv
00:02.0 0300: 8086:2592 (rev 03)
Subsystem: 1028:01c9
Flags: bus master, fast devsel, latency 0, IRQ 16
Memory at dff00000 (32-bit, non-prefetchable) [size=512K]
I/O ports at eff8 [size=8]
Memory at c0000000 (32-bit, prefetchable) [size=256M]
Memory at dfec0000 (32-bit, non-prefetchable) [size=256K]
Capabilities: [d0] Power Management version 2
cheers,
Mihai |
|
Volver arriba |
|
|
firsttry n00b
Registrado: 08 Mar 2006 Mensajes: 37
|
Publicado: Vie Jun 16, 2006 11:17 am T�tulo del mensaje: |
|
|
Finally had time to work on the ALSA issue again, after a LONG time!
phoe:
Just tried your suggestion, i.e. ran emerge -f alsa-driver, then ran lspci:
C�digo: |
00:1b.0 Class 0403: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (rev 04) |
Which gave me 001:b.0. lspci -nv gave
C�digo: |
00:1b.0 0403: 8086:2668 (rev 04)
Subsystem: 1043:1173
Flags: bus master, fast devsel, latency 0, IRQ 11
Memory at febf8000 (64-bit, non-prefetchable) [size=16K]
Capabilities: [50] Power Management version 2
Capabilities: [60] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable-
Capabilities: [70] Express Unknown type IRQ 0
Capabilities: [100] Virtual Channel
Capabilities: [130] Unknown (5) |
After extracting the alsa-driver file (ver 1.0.11), I edited the ./alsa-kernel/pci/hda/patch_realtek.c (just wondering, how did you work out that it's a realtek card?), adding the line
C�digo: | { .pci_subvendor = 0x1043, .pci_subdevice = 0x1173, .config = ALC880_ASUS }, |
at the end of the section beginning with
C�digo: | { .modelname = "asus", .config = ALC880_ASUS }, |
I then went back to the root alsa-driver directory and ran ./configure, followed by make (had to remove any ALSA support from the kernel to get ./configure to work).
Made the alsa-driver directory under /lib/modules/2.6.16.16 (I'm using the vanilla sources), copied the *.ko files from pci/hda/ and ran /etc/init.d/alsasound restart... which worked fine, though I'm still stuck with the same problem - still no sound coming out of my line-out!
Actually just searched for my subsystem (1173), and realised that it was already included in the same subsection, so it was to no avail. Oh well, thanks for your help anyway, I'll have to try something else. |
|
Volver arriba |
|
|
silverfish27 n00b
Registrado: 25 Jun 2006 Mensajes: 1
|
Publicado: Dom Jun 25, 2006 6:17 pm T�tulo del mensaje: Much easier than this!!! |
|
|
You can get the same results in a (much) easier way!! I mean for the LG P1 laptop (what a wonderfull machine)
You just have to write this in /etc/modules.d/alsa
C�digo: | options snd-hda-intel model=lg position_fix=1 |
then it will look like:
C�digo: | # ALSA portion
alias char-major-116 snd
# OSS/Free portion
alias char-major-14 soundcore
##
## IMPORTANT:
## You need to customise this section for your specific sound card(s)
## and then run `update-modules' command.
## Read alsa-driver's INSTALL file in /usr/share/doc for more info.
##
## ALSA portion
alias snd-card-0 snd_hda_intel
## OSS/Free portion
alias sound-slot-0 snd-card-0
# OSS/Free portion - card #1
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
alias /dev/mixer snd-mixer-oss
alias /dev/dsp snd-pcm-oss
alias /dev/midi snd-seq-oss
# Set this to the correct number of cards.
options snd cards_limit=1
# fix scrappy sound and set lg model
options snd-hda-intel model=lg position_fix=1
|
Then run as root:
C�digo: |
spectra ~ # modules-update
spectra ~ # /etc/init.d/alsasound restart
|
And if you havent done it before:
C�digo: |
spectra ~ # rc-update add alsasound default
|
Then run alsamixer as normal user to unmute your sound card
C�digo: |
dangar@spectra ~ $ alsamixer
|
Note that I am using =media-sound/alsa-driver-1.0.11 (not the drivers included in the kernel)
And remember to add "oss" USE to /etc/make.conf to have /dev/mixer and this oss stuff... |
|
Volver arriba |
|
|
otakuj462 n00b
Registrado: 26 Jun 2006 Mensajes: 29
|
Publicado: Dom Jul 02, 2006 11:04 am T�tulo del mensaje: Board? |
|
|
Hi all, could someone please tell me how you know what modelname and config one is supposed to choose? I'm using a Dell Inspiron 1300, with a Sigmatel9200 card, but I don't see Dell listed anywhere like with Asus and LG. Any suggestions?
Thanks.
-Jake |
|
Volver arriba |
|
|
phoe n00b
Registrado: 26 Nov 2004 Mensajes: 14 Ubicaci�n: canada
|
Publicado: Mar Jul 04, 2006 7:58 pm T�tulo del mensaje: options snd-hda-intel model=lg position_fix=1 |
|
|
interesting you point this out - I had communicated with the developer as well, and he had suggested that just putting model=lg would work. However, didnt work on my LG S1, and i played with various position_fix values until i got complicated as I outlined above. Interestingly enough, I noticed he added detection values for the S1 that I passed along in the last update to the alsa-drivers, so Im happy |
|
Volver arriba |
|
|
|
|
No puede crear mensajes No puede responder temas No puede editar sus mensajes No puede borrar sus mensajes No puede votar en encuestas
|
|