* trident.o module in kernel 2.4.1
@ 2001-02-19 22:26 Seok H. Lee
0 siblings, 0 replies; only message in thread
From: Seok H. Lee @ 2001-02-19 22:26 UTC (permalink / raw)
To: Linux Kernel Mailing List
[-- Attachment #1: Type: text/plain, Size: 2743 bytes --]
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
I'm having some troubles with a Trident 4DWave NX sound card
(specifically the Hoontech Digital-NX model). I loaded the modules
soundcore.o, ac97_codec.o, and trident.o, in that order, and when I
try to use the devices /dev/dsp and /dev/audio, I *don't* get a "No
such device" error. But nevertheless, there is no sound coming out
from the speakers. What I hear instead, if I turn up the volume
control on the speakers all the way up, is a faint pulsing noise,
somewhat like a barely audible heartbeat. I've reproduced this
pulsing
noise using three methods:
1. By running "cat blah.wav > /dev/[audio|dsp]"
2. By running "play blah.wav" (using the program 'play' from the sox
package)
3. By playing an mp3 with XMMS in X-Windows
Using Windows 98 installed on the same machine, I've verified that
there is nothing wrong with either the sound card or the wave file.
In
fact, the PCI code in the linux kernel (2.4.1 in Debian potato w/
proposed updates and security updates installed) detects the same
memory address, I/O address, and IRQ that Windows 98 uses. You can
see
from the attached 'lspci -vvx' and 'dmesg' outputs that the card is
indeed initialized by the BIOS and detected by the kernel as well as
the trident module. I've tried adjusting the sound card's mixer
settings with a console program called 'aumix,' but turning the
volume
up on all the devices didn't help. Neither did fidgeting with the
volume control knob on my speakers. Yes, the speaker is plugged into
a
power outlet, and yes, it is turned on. Same goes for my computer. :P
During the last three days, I've been searching for a documentation
of
a similar problem and, more generally, any documentation I could find
on the trident driver. But it seems that the driver is relatively
new,
and not much has been written about it. I see nothing wrong with the
hardware or the kernel's detection of it, and after trying everything
from compiling a new kernel to upgrading my BIOS, I have come to the
conclusion that the problem must be in the module. I've tried to read
the source code in trident.c, and although I know C/C++ syntax pretty
well, I haven't written any programs dealing with hardware
interfacing
and therefore could not understand what was going on. If you are
knowledgeable in this area, please help. Otherwise, kindly ignore my
message.
Oh, and one last thing. Please CC any replies to my e-mail address,
slee0002@home.com. I am not subscribed to the mailing list and will
not see your reply otherwise. Thank you.
Regards,
Seok Lee
-----BEGIN PGP SIGNATURE-----
Version: PGP 6.5i
iQA/AwUBOpGdvC5tHmNGNoW0EQLoUgCg4nPoUeWxLewKWV0kLyV+FXr7ENMAn36c
yhu87t9DZfLPysYne1mOVBk+
=3Wcz
-----END PGP SIGNATURE-----
[-- Attachment #2: DMESG --]
[-- Type: application/octet-stream, Size: 5761 bytes --]
****************************************************************************************************************
The output from the trident.o and ac97_codec.o modules are the last four lines of this listing. I've included
the output in its entirety in case the other information might prove useful in diagnosing the problem.
****************************************************************************************************************
Linux version 2.4.1 (root@blip) (gcc version 2.95.2 20000220 (Debian GNU/Linux)) #1 Mon Feb 19 07:45:42 CST 2001
BIOS-provided physical RAM map:
BIOS-e820: 00000000000a0000 @ 0000000000000000 (usable)
BIOS-e820: 0000000000010000 @ 00000000000f0000 (reserved)
BIOS-e820: 0000000003efd000 @ 0000000000100000 (usable)
BIOS-e820: 0000000000002000 @ 0000000003ffd000 (ACPI data)
BIOS-e820: 0000000000001000 @ 0000000003fff000 (ACPI NVS)
BIOS-e820: 0000000000010000 @ 00000000ffff0000 (reserved)
Scan SMP from c0000000 for 1024 bytes.
Scan SMP from c009fc00 for 1024 bytes.
Scan SMP from c00f0000 for 65536 bytes.
Scan SMP from c0000000 for 4096 bytes.
On node 0 totalpages: 16381
zone(0): 4096 pages.
zone(1): 12285 pages.
zone(2): 0 pages.
mapped APIC to ffffe000 (01112000)
Kernel command line: auto BOOT_IMAGE=Linux ro root=301 BOOT_FILE=/vmlinuz
Initializing CPU#0
Detected 300.686 MHz processor.
Console: colour VGA+ 80x25
Calibrating delay loop... 599.65 BogoMIPS
Memory: 62180k/65524k available (1018k kernel code, 2960k reserved, 439k data, 188k init, 0k highmem)
Dentry-cache hash table entries: 8192 (order: 4, 65536 bytes)
Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes)
Page-cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 4096 (order: 3, 32768 bytes)
CPU: Before vendor init, caps: 0080f9ff 00000000 00000000, vendor = 0
CPU: L1 I cache: 16K, L1 D cache: 16K
CPU: L2 cache: 512K
Intel machine check architecture supported.
Intel machine check reporting enabled on CPU#0.
CPU: After vendor init, caps: 0080f9ff 00000000 00000000 00000000
CPU: After generic, caps: 0080f9ff 00000000 00000000 00000000
CPU: Common caps: 0080f9ff 00000000 00000000 00000000
CPU: Intel Pentium II (Klamath) stepping 04
Checking 'hlt' instruction... OK.
POSIX conformance testing by UNIFIX
mtrr: v1.37 (20001109) Richard Gooch (rgooch@atnf.csiro.au)
mtrr: detected mtrr type: Intel
PCI: PCI BIOS revision 2.10 entry at 0xf0720, last bus=1
PCI: Using configuration type 1
PCI: Probing PCI hardware
Unknown bridge resource 0: assuming transparent
PCI: Using IRQ router PIIX [8086/7110] at 00:04.0
Limiting direct PCI/PCI transfers.
isapnp: Scanning for Pnp cards...
isapnp: Card 'U.S. Robotics 56K FAX INT'
isapnp: 1 Plug & Play card detected total
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
DMI 2.0 present.
31 structures occupying 1021 bytes.
DMI table at 0x000F591A.
BIOS Vendor: Award Software, Inc.
BIOS Version: ASUS P2B ACPI BIOS Revision 1012
BIOS Release: 03/03/00
System Vendor: System Manufacturer.
Product Name: System Name.
Version System Version.
Serial Number SYS-1234567890.
Board Vendor: ASUSTeK Computer INC..
Board Name: P2B.
Board Version: REV 1.xx.
Asset Tag: Asset-1234567890.
Starting kswapd v1.8
Detected PS/2 Mouse Port.
block: queued sectors max/low 41253kB/13751kB, 128 slots per queue
Uniform Multi-Platform E-IDE driver Revision: 6.31
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
PIIX4: IDE controller on PCI bus 00 dev 21
PIIX4: chipset revision 1
PIIX4: not 100% native mode: will probe irqs later
ide0: BM-DMA at 0xd800-0xd807, BIOS settings: hda:DMA, hdb:DMA
ide1: BM-DMA at 0xd808-0xd80f, BIOS settings: hdc:DMA, hdd:pio
hda: IBM-DHEA-36481, ATA DISK drive
hdb: Pioneer CD-ROM ATAPI Model DR-744 0102, ATAPI CD/DVD-ROM drive
hdc: PLEXTOR CD-R PX-W8432T, ATAPI CD/DVD-ROM drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
ide1 at 0x170-0x177,0x376 on irq 15
hda: 12692736 sectors (6499 MB) w/472KiB Cache, CHS=790/255/63, UDMA(33)
hdb: ATAPI 32X CD-ROM drive, 128kB Cache, DMA
Uniform CD-ROM driver Revision: 3.12
hdc: ATAPI 32X CD-ROM CD-R/RW drive, 4096kB Cache, DMA
Partition check:
hda: hda1 hda2 hda3 hda4 < hda5 >
Floppy drive(s): fd0 is 1.44M
FDC 0 is a post-1991 82077
SLIP: version 0.8.4-NET3.019-NEWTTY (dynamic channels, max=256).
Serial driver version 5.02 (2000-08-09) with MANY_PORTS SHARE_IRQ SERIAL_PCI ISAPNP enabled
ttyS00 at 0x03f8 (irq = 4) is a 16550A
ttyS01 at port 0x02f8 (irq = 5) is a 16550A
Linux agpgart interface v0.99 (c) Jeff Hartmann
agpgart: Maximum main memory to use for agp memory: 27M
agpgart: Detected Intel 440BX chipset
agpgart: AGP aperture is 64M @ 0xe4000000
[drm] AGP 0.99 on Intel 440BX @ 0xe4000000 64MB
[drm] Initialized tdfx 1.0.0 20000928 on minor 63
[drm] AGP 0.99 on Intel 440BX @ 0xe4000000 64MB
[drm] Initialized radeon 1.0.0 20010105 on minor 62
SCSI subsystem driver Revision: 1.00
scsi0 : SCSI host adapter emulation for IDE ATAPI devices
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 4096 bind 4096)
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
VFS: Mounted root (ext2 filesystem) readonly.
Freeing unused kernel memory: 188k freed
Adding Swap: 96384k swap-space (priority -1)
Trident 4DWave/SiS 7018/ALi 5451 PCI Audio, version 0.14.6, 07:58:53 Feb 19 2001
PCI: Found IRQ 12 for device 00:0b.0
trident: Trident 4DWave NX found at IO 0xb800, IRQ 12
ac97_codec: AC97 Audio codec, id: 0x8384:0x7608 (SigmaTel STAC9708)
[-- Attachment #3: interrupts --]
[-- Type: application/octet-stream, Size: 348 bytes --]
This is from /proc/interrupts.
CPU0
0: 49992 XT-PIC timer
1: 2956 XT-PIC keyboard
2: 0 XT-PIC cascade
12: 0 XT-PIC Trident 4DWave NX
14: 955 XT-PIC ide0
15: 4 XT-PIC ide1
NMI: 0
ERR: 0
[-- Attachment #4: IOMEM --]
[-- Type: application/octet-stream, Size: 699 bytes --]
This is from /proc/iomem.
00000000-0009ffff : System RAM
000a0000-000bffff : Video RAM area
000c0000-000c7fff : Video ROM
000f0000-000fffff : System ROM
00100000-03ffcfff : System RAM
00100000-001feb87 : Kernel code
001feb88-0026c877 : Kernel data
03ffd000-03ffefff : ACPI Tables
03fff000-03ffffff : ACPI Non-volatile Storage
e0800000-e0800fff : Trident Microsystems 4DWave NX
e1000000-e2bfffff : PCI Bus #01
e1000000-e1ffffff : NVidia / SGS Thomson (Joint Venture) Riva128
e2c00000-e3ffffff : PCI Bus #01
e3000000-e3ffffff : NVidia / SGS Thomson (Joint Venture) Riva128
e4000000-e7ffffff : Intel Corporation 440BX/ZX - 82443BX/ZX Host bridge
ffff0000-ffffffff : reserved
[-- Attachment #5: IOPORTS --]
[-- Type: application/octet-stream, Size: 775 bytes --]
This is from /proc/ioports.
0000-001f : dma1
0020-003f : pic1
0040-005f : timer
0060-006f : keyboard
0080-008f : dma page reg
00a0-00bf : pic2
00c0-00df : dma2
00f0-00ff : fpu
0170-0177 : ide1
01f0-01f7 : ide0
0213-0213 : isapnp read
02f8-02ff : serial(auto)
0376-0376 : ide1
03c0-03df : vga+
03f6-03f6 : ide0
03f8-03ff : serial(set)
0a79-0a79 : isapnp write
0cf8-0cff : PCI conf1
b800-b8ff : Trident Microsystems 4DWave NX
b800-b8ff : Trident 4DWave NX
d000-d01f : Realtek Semiconductor Co., Ltd. RTL-8029(AS)
d400-d41f : Intel Corporation 82371AB PIIX4 USB
d800-d80f : Intel Corporation 82371AB PIIX4 IDE
d800-d807 : ide0
d808-d80f : ide1
e400-e43f : Intel Corporation 82371AB PIIX4 ACPI
e800-e81f : Intel Corporation 82371AB PIIX4 ACPI
[-- Attachment #6: LSMOD --]
[-- Type: application/octet-stream, Size: 164 bytes --]
This is from running 'lsmod'.
trident 21528 0 (unused)
ac97_codec 7556 0 [trident]
soundcore 3812 2 [trident]
[-- Attachment #7: LSPCI --]
[-- Type: application/octet-stream, Size: 5967 bytes --]
This output is from the command 'lspci -vvx'.
00:00.0 Host bridge: Intel Corporation 440BX/ZX - 82443BX/ZX Host bridge (rev 02)
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR- <PERR-
Latency: 64 set
Region 0: Memory at e4000000 (32-bit, prefetchable) [size=64M]
Capabilities: [a0] AGP version 1.0
Status: RQ=31 SBA+ 64bit- FW- Rate=21
Command: RQ=0 SBA- AGP- 64bit- FW- Rate=
00: 86 80 90 71 06 01 10 22 02 00 00 06 00 40 00 00
10: 08 00 00 e4 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 a0 00 00 00 00 00 00 00 00 00 00 00
00:01.0 PCI bridge: Intel Corporation 440BX/ZX - 82443BX/ZX AGP bridge (rev 02) (prog-if 00 [Normal decode])
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR+ FastB2B-
Status: Cap- 66Mhz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 64 set
Bus: primary=00, secondary=01, subordinate=01, sec-latency=64
Memory behind bridge: e1000000-e2bfffff
Prefetchable memory behind bridge: e2c00000-e3ffffff
BridgeCtl: Parity- SERR- NoISA- VGA+ MAbort- >Reset- FastB2B+
00: 86 80 91 71 17 01 20 02 02 00 04 06 00 40 01 00
10: 00 00 00 00 00 00 00 00 00 01 01 40 e0 d0 a0 22
20: 00 e1 b0 e2 c0 e2 f0 e3 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 88 00
00:04.0 ISA bridge: Intel Corporation 82371AB PIIX4 ISA (rev 02)
Control: I/O+ Mem+ BusMaster+ SpecCycle+ MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 0 set
00: 86 80 10 71 0f 00 80 02 02 00 01 06 00 00 80 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00:04.1 IDE interface: Intel Corporation 82371AB PIIX4 IDE (rev 01) (prog-if 80 [Master])
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 32 set
Region 4: I/O ports at d800 [size=16]
00: 86 80 11 71 05 00 80 02 01 80 01 01 00 20 00 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 01 d8 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00:04.2 USB Controller: Intel Corporation 82371AB PIIX4 USB (rev 01) (prog-if 00 [UHCI])
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 32 set
Interrupt: pin D routed to IRQ 3
Region 4: I/O ports at d400 [size=32]
00: 86 80 12 71 05 00 80 02 01 00 03 0c 00 20 00 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 01 d4 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 03 04 00 00
00:04.3 Bridge: Intel Corporation 82371AB PIIX4 ACPI (rev 02)
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
00: 86 80 13 71 03 00 80 02 02 00 80 06 00 00 00 00
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00:09.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RT8029(AS)
Subsystem: Standard Microsystems Corp [SMC] EZ-Card
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Interrupt: pin A routed to IRQ 3
Region 0: I/O ports at d000 [size=32]
00: ec 10 29 80 03 00 00 02 00 00 00 02 00 00 00 00
10: 01 d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 b8 10 11 20
30: 00 00 00 00 00 00 00 00 00 00 00 00 03 01 00 00
00:0b.0 Multimedia audio controller: Trident Microsystems 4DWave NX (rev 02)
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 2 min, 5 max, 32 set
Interrupt: pin A routed to IRQ 12
Region 0: I/O ports at b800 [size=256]
Region 1: Memory at e0800000 (32-bit, non-prefetchable) [size=4K]
Capabilities: [48] Power Management version 1
Flags: PMEClk- AuxPwr- DSI- D1+ D2+ PME-
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
00: 23 10 01 20 07 00 10 02 02 00 01 04 00 20 00 00
10: 01 b8 00 00 00 00 80 e0 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 48 00 00 00 00 00 00 00 0c 01 02 05
01:00.0 VGA compatible controller: NVidia / SGS Thomson (Joint Venture) Riva128 (rev 10) (prog-if 00 [VGA])
Subsystem: Diamond Multimedia Systems Viper V330
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap+ 66Mhz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 3 min, 1 max, 64 set
Interrupt: pin A routed to IRQ 10
Region 0: Memory at e1000000 (32-bit, non-prefetchable) [size=16M]
Region 1: Memory at e3000000 (32-bit, prefetchable) [size=16M]
Expansion ROM at e2c00000 [disabled] [size=4M]
Capabilities: [44] AGP version 1.0
Status: RQ=4 SBA- 64bit- FW- Rate=1
Command: RQ=0 SBA- AGP- 64bit- FW- Rate=
00: d2 12 18 00 07 00 b0 02 10 00 00 03 00 40 00 00
10: 00 00 00 e1 08 00 00 e3 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 92 10 92 10
30: 00 00 c0 e2 44 00 00 00 00 00 00 00 0a 01 03 01
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2001-02-19 22:24 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2001-02-19 22:26 trident.o module in kernel 2.4.1 Seok H. Lee
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox