[ltp] Sound in FC3 (udev)
Jo Jo
linux-thinkpad@linux-thinkpad.org
Mon, 21 Feb 2005 12:15:32 -0500
Well, she's working now. Actually, all I had to was turn on the quick boot.
/dev/dsp then appeared, but I had to try a whole lot of things over and over
again until I got sound. However, even after I got sound I couldn't get
those volume bars in KDE's sound mixer to turn yellow. They are still gray.
What does one do about that? I'd also appreciate it if someone could tell me
how to supress that ear-splitting feedback that occurs around the time that
the harddrive parameters are being set.
>Jo Jo wrote:
>
>>I've run ps2.exe on the ThinkPad and all the settings it lists for the
>>audio are the same in your modprobe.conf. However, there are a few
>>settings in the conf that ps2.exe didn't give:
>>index=0: I take it this has nothing to do w/the sound board settings...
>>id=CARD_0: nor this.
>
>
>They do if you have more than one sound device. I also use a USB audio
>device and that gets index=1 and id=CARD_1. But with one card those
>entries can just be the default settings. So no, PS2 doesn't report those
>values, they are something you can set in the driver.
>
>>port=0x530: same
>
>
>This is the primary audio device port!
>
>>cport=0x538: There's an "ADDress : 538" in the AUDIOCTRL settings
>
>
>That's it
>
>>sb_port=0x220: same
>
>
>This is part of the sound device. If you have different settings in BIOS
>and driver then you won't be able to control parts of the sound device, if
>the driver loads at all.
>
>>fm_port=0x388: ps2.exe doesn't show this
>
>
>It's always 0x388. This is for the internal FM synth. But the driver
>doesn't know that so that's why it is on the options line.
>
>>irq=5: same
>
>
>This is the main sound device interrupt. If you don't have this right
>nothing will work!
>
>>dma1=1 and dma2=0: ps2.exe had "DMA : 0 1". does order matter?
>
>
>Most definitely it matters. But the order that PS2.EXE gives doesn't
>necessarily correspond to what the snd-cs4236 module wants, so if you think
>you have everything else right, try swapping the values of dma1 and dma2.
>
>>mpu_port=0x330: There's an "ADDress : 330" in the MIDIport settings
>>mpu_irq=9: There's an "IRQ : 9" in the MIDIport settings
>>The MIDIport settings also have "Disabled"
>
>
>Disabled is OK, if you don't want to use external MIDI. If you want MIDI
>you need a docking station in order to have the port available. But it's
>not needed for basic audio.
>
>>
>>But I feel that this has more to do with the driver and chipset. The error
>>I get on startup from insmod is that there is no such device. I guess I
>>don't blame it for thinking that since lspci also seems to think there's a
>>different model in there.
>
>
>No, it isn't doing any such "thinking" as the snd-cs4236 driver does not
>look at the output of lspci. The difficulty here is that until you get the
>settings right you will only get misleading error messages. The is no
>"almost", it has to be right or nothing happens. Do you also have
>"Quickboot" turned off? That is required in order for the BIOS to actually
>configure the sound hardware.
>
>Since you seem to doubt that this all does work, here follows the output
>from various commands on my 600E. You already have seen the sound device
>parts of my /etc/modules.conf (I'm running a 2.4.x kernel, but that doesn't
>make a difference here).
>
>lspci output. Yes, this shows a CS 4610/11, but forget about that, you
>can't use that driver the way the 600E is wired up. This is with my wi-fi
>card inserted.
>
>0000:00:00.0 Host bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX Host
>bridge (rev 03)
>0000:00:01.0 PCI bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge
>(rev 03)
>0000:00:02.0 CardBus bridge: Texas Instruments PCI1251A
>0000:00:02.1 CardBus bridge: Texas Instruments PCI1251A
>0000:00:06.0 Multimedia audio controller: Cirrus Logic CS 4610/11
>[CrystalClear SoundFusion Audio Accelerator] (rev 01)
>0000:00:07.0 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ISA (rev 02)
>0000:00:07.1 IDE interface: Intel Corp. 82371AB/EB/MB PIIX4 IDE (rev 01)
>0000:00:07.2 USB Controller: Intel Corp. 82371AB/EB/MB PIIX4 USB (rev 01)
>0000:00:07.3 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ACPI (rev 02)
>0000:01:00.0 VGA compatible controller: Neomagic Corporation NM2200
>[MagicGraph 256AV] (rev 12)
>0000:02:00.0 Ethernet controller: Atheros Communications, Inc. AR5212
>802.11abg NIC (rev 01)
>
>lsmod output. This also shows USB audio modules because I use them often
>and thus always have them loaded. ALL of the sound modules are
>automatically loaded with "modprobe snd-cs4236" followed by "modprobe
>snd-usb-audio", though I just have the two modules listed in /etc/modules
>so that the modprobes happen at boot time. This also shows wi-fi modules,
>the module for the modem, and USB modules. The madwifi modules for my
>atheros wi-fi card taints the kernel.
>
>Module Size Used by Tainted: P wlan_wep
>3744 1 (autoclean)
>mwave 32360 4
>ath_pci 40464 1
>ath_rate_onoe 3976 0 [ath_pci]
>wlan 85464 1 [wlan_wep ath_pci ath_rate_onoe]
>ath_hal 118992 1 [ath_pci]
>usb-uhci 24144 0 (unused)
>snd-usb-audio 43520 0 (unused)
>snd-usb-lib 8292 0 [snd-usb-audio]
>usbcore 65100 1 [usb-uhci snd-usb-audio snd-usb-lib]
>snd-cs4236 2272 0
>snd-cs4236-lib 11824 0 [snd-cs4236]
>snd-pcm-oss 38560 0 (unused)
>snd-mixer-oss 13528 0 [snd-pcm-oss]
>snd-opl3-lib 6692 0 [snd-cs4236]
>snd-hwdep 4640 0 [snd-opl3-lib]
>snd-cs4231-lib 17004 0 [snd-cs4236 snd-cs4236-lib]
>snd-pcm 62312 0 [snd-usb-audio snd-cs4236-lib snd-pcm-oss
>snd-cs4231-lib]
>snd-timer 15236 0 [snd-opl3-lib snd-cs4231-lib snd-pcm]
>snd-mpu401-uart 3792 0 [snd-cs4236]
>snd-rawmidi 13728 0 [snd-usb-lib snd-mpu401-uart]
>snd-seq-device 4164 0 [snd-opl3-lib snd-rawmidi]
>snd 34692 0 [snd-usb-audio snd-usb-lib snd-cs4236
>snd-cs4236-lib snd-pcm-oss snd-mixer-oss snd-opl3-lib snd-hwdep
>snd-cs4231-lib snd-pcm snd-timer snd-mpu401-uart snd-rawmidi
>snd-seq-device]
>snd-page-alloc 4968 0 [snd-usb-audio snd-mixer-oss snd-hwdep
>snd-cs4231-lib snd-pcm snd-timer snd-rawmidi snd-seq-device snd]
>
>
>cat /proc/interrupts
>See how the sound device interrupt 5 actually gets claimed by "CS4231",
>just to be confusing. Also interrupt 9 is claimed by the raw MIDI driver.
> CPU0 0: 75126 XT-PIC timer
> 1: 396 XT-PIC keyboard
> 2: 0 XT-PIC cascade
> 5: 0 XT-PIC CS4231
> 7: 1 XT-PIC parport0
> 8: 4 XT-PIC rtc
> 9: 0 XT-PIC MPU401 UART
>10: 7 XT-PIC mwave_3780i
>11: 1069 XT-PIC Texas Instruments PCI1251A, Texas
>Instruments PCI1251A (#2), usb-uhci, ath0
>12: 83 XT-PIC PS/2 Mouse
>14: 17283 XT-PIC ide0
>15: 5 XT-PIC ide1
>NMI: 0
>ERR: 0
>
>
>cat /proc/ioports Note how ALL of the ports I have in the options line
>(and then some) show up as belonging to some part of the sound hardware.
>
>0000-001f : dma1
>0020-003f : pic1
>0040-005f : timer
>0060-006f : keyboard
>0070-007f : rtc
>0080-008f : dma page reg
>00a0-00bf : pic2
>00c0-00df : dma2
>00f0-00ff : fpu
>0130-013f : mwave_3780i
>0170-0177 : ide1
>01f0-01f7 : ide0
>0220-022f : CS4236+ SB
>02f8-02ff : serial(set)
>0330-0331 : MPU401 UART
>0376-0376 : ide1
>0388-0389 : OPL2/3 (left)
>038a-038b : OPL2/3 (right)
>03bc-03be : parport0
>03c0-03df : vga+
>03f6-03f6 : ide0
>03f8-03ff : serial(set)
>0530-0533 : CS4231
>0538-053f : CS4232 Control
>07bc-07be : parport0
>0cf8-0cff : PCI conf1
>4000-40ff : PCI CardBus #02
>4400-44ff : PCI CardBus #02
>4800-48ff : PCI CardBus #05
>4c00-4cff : PCI CardBus #05
>8400-841f : Intel Corp. 82371AB/EB/MB PIIX4 USB
> 8400-841f : usb-uhci
>d000-dfff : PCI Bus #01
>ef00-ef3f : Intel Corp. 82371AB/EB/MB PIIX4 ACPI
>efa0-efbf : Intel Corp. 82371AB/EB/MB PIIX4 ACPI
>fcf0-fcff : Intel Corp. 82371AB/EB/MB PIIX4 IDE
> fcf0-fcf7 : ide0
> fcf8-fcff : ide1
>
>
>cat /proc/asound/cards (USB audio device not inserted at this time, so
>just CARD_0 appears)
>
>0 [CARD_0 ]: CS4239 - CS4239
> CS4239 at 0x530, irq 5, dma 1&0
>
>
>cat /proc/asound/devices These are your basic audio devices.
>
> 8: [0- 0]: raw midi
> 4: [0- 0]: hardware dependent
>16: [0- 0]: digital audio playback
>24: [0- 0]: digital audio capture
> 0: [0- 0]: ctl
>33: : timer
>
>
>cat /proc/asound/hwdep The FM synth.
>
>00-00: OPL3 FM
>
>
>cat /proc/asound/pcm The digital audio ins and outs. Again confusingly,
>CS4231 and CS4239 are showing, yet one gets this by modprobing the
>snd-cs4236 module!
>
>00-00: CS4231 : CS4239 : playback 1 : capture 1
>
>
>cat /proc/asound/version While this was built last week, I don't think
>I've had to touch the config since about version 1.03 or so, over a year
>ago.
>
>Advanced Linux Sound Architecture Driver Version 1.0.8.
>Compiled on Feb 10 2005 for kernel 2.4.28-lck15 with versioned symbols.
>
>
>Well there you have it, examples from a working 600E with everything
>related to sound configured and working. Sure, you might not care about
>MIDI or the FM synth, and those two are optional, but everything else is
>required to get the full use out of the sound device. Remember there is
>absolutely no auto probing going on here, you have to get the settings
>right or nothing happens! That's why getting sound working on a 600E and
>others with the same sound hardware is so difficult, there is no help from
>the software, you have to get the settings right yourself. Keep trying and
>good luck!
>
>wes
>--
>The linux-thinkpad mailing list home page is at:
>http://mailman.linux-thinkpad.org/mailman/listinfo/linux-thinkpad
_________________________________________________________________
Scan and help eliminate destructive viruses from your inbound and outbound
e-mail and attachments.
http://join.msn.com/?pgmarket=en-ca&page=byoa/prem&xAPID=1994&DI=1034&SU=http://hotmail.com/enca&HL=Market_MSNIS_Taglines
Start enjoying all the benefits of MSNŽ Premium right now and get the
first two months FREE*.