Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 10 Jan 2002 17:42:21 -0700
From:      soralx@cydem.zp.ua
To:        freebsd-hardware@FreeBSD.ORG
Subject:   Crystal CS4232 internal soundcard
Message-ID:  <722434019.20020110174221@cydem.zp.ua>

next in thread | raw e-mail | index | archive | help
There is a problem with CS4232-based soundcard [on HP Pavilion 7170,
3D Spatializer snd; the card looks like stupid - half internal|half
ISA(MPU module?), but PnP]: after rebooting FreeBSD 4.4-RELEASE I
launch mpg123 first time, and it works not too bad, but when I quit
mpg123 by <Control-C> and launch it again, I get message 'pcm0: play
interrupt timeout, channel dead'; looks like the card needs
reinitializiation. I determined by loading Windoze98 from another HD
(the scard is PnP, so Windozen configured it, and it worked just fine)
that when I disable 'Crystal PnP audio system, MPU-401 compatible'
(port 0x330 irq 09), and reboot, WinAmp doesn't even play it first
time, and it probably has a similar problem (oh, sure, it doesn't write 'PCM
interrupt timeout', but I guess coz the MPU in FreeBSD can't
initialize, see dmesg out).

Disabling 'pcm' in kernel, loading it as a module, then restarting the
module doesn't help - after restarting, the module says:

==========================================
isa_dma_acquire: channel 1 already in use
isa_dma_acquire: channel 0 already in use
pcm: setmap 8000, 1000; 0xc5f25000 -> 8000
pcm: setmap 9000, 1000; 0xc5f26000 -> 9000
==========================================

kernel: only 'device pcm' added
PnP in BIOS is set to "manual cfg":
   just 'IRQ 9' is set to 'Used by ISA card' in the PnP config
(also I tried to turn PnP off)

see dmesg output below

======================================================
Soundcard configuration in mustdie98:

'Crystal PnP audiosystem, MPU-401 compatible'
   mpu0 at isa? port 0x330 irq 09

'Crystal PnP audiosystem Codec'
   pcm0 at isa? port 0x608,0x388,0x220 irq 05 drq 01,00

'Crystal PnP audiosystem control registers'
   [???] at isa? port 0xf00
(disabling 'control registers' didn't change anything)
======================================================

The 'snd' driver doesn't work either.


==================dmesg verbose==================
Copyright (c) 1992-2001 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD 4.4-RELEASE #65: Mon Jan  7 23:34:51 MST 2002
    root@home:/usr/src/sys/compile/HOME
Calibrating clock(s) ... TSC clock: 166193478 Hz, i8254 clock: 1193186 Hz
CLK_USE_I8254_CALIBRATION not specified - using default frequency
Timecounter "i8254"  frequency 1193182 Hz
CLK_USE_TSC_CALIBRATION not specified - using old calibration method
CPU: Pentium/P54C (166.19-MHz 586-class CPU)
  Origin = "GenuineIntel"  Id = 0x52c  Stepping = 12
  Features=0x1bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8>
real memory  = 67108864 (65536K bytes)
Physical memory chunk(s):
0x00001000 - 0x0009efff, 647168 bytes (158 pages)
0x00399000 - 0x03ff7fff, 63303680 bytes (15455 pages)
avail memory = 61849600 (60400K bytes)
bios32: Found BIOS32 Service Directory header at 0xc00fcbb0
bios32: Entry = 0xfcbc0 (c00fcbc0)  Rev = 0  Len = 1
pcibios: PCI BIOS entry at 0xcbe1
pnpbios: Found PnP BIOS data at 0xc00fa160
pnpbios: Entry = f0000:a260  Rev = 1.0
Other BIOS signatures found:
ACPI: 00000000
Preloaded elf kernel "kernel" at 0xc0373000.
Intel Pentium detected, installing workaround for F00F bug
netsmb_dev: loaded
pci_open(1):    mode 1 addr port (0x0cf8) is 0x80009810
pci_open(1a):   mode1res=0x80000000 (0x80000000)
pci_cfgcheck:   device 0 [class=060000] [hdr=00] is there (id=122d8086)
apm0: <APM BIOS> on motherboard
apm: found APM BIOS v1.1, connected at v1.1
npx0: <math processor> on motherboard
npx0: INT 16 interface
i586_bzero() bandwidth = 105418511 bytes/sec
bzero() bandwidth = 112536574 bytes/sec
pcib0: <Host to PCI bridge> on motherboard
found-> vendor=0x8086, dev=0x122d, revid=0x02
        class=06-00-00, hdrtype=0x00, mfdev=0
        subordinatebus=0        secondarybus=0
found-> vendor=0x8086, dev=0x122e, revid=0x02
        class=06-01-00, hdrtype=0x00, mfdev=0
        subordinatebus=0        secondarybus=0
found-> vendor=0x5333, dev=0x8811, revid=0x53
        class=03-00-00, hdrtype=0x00, mfdev=0
        subordinatebus=0        secondarybus=0
        intpin=a, irq=11
        map[10]: type 1, range 32, base f8000000, size 26
found-> vendor=0x10b7, dev=0x9200, revid=0x78
        class=02-00-00, hdrtype=0x00, mfdev=0
        subordinatebus=0        secondarybus=0
        intpin=a, irq=11
        map[10]: type 1, range 32, base 0000fc80, size  7
        map[14]: type 1, range 32, base fffbfc00, size  7
pci0: <PCI bus> on pcib0
        CPU Inactivity timer: 2 clocks
        Peer Concurrency: enabled
        CPU-to-PCI Write Bursting: enabled
        PCI Streaming: enabled
        Bus Concurrency: enabled
        Cache: 256K asynchronous secondary; L1 enabled
        DRAM: no memory hole, 66 MHz refresh
        Read burst timing: x-2-2-2/x-3-3-3
        Write burst timing: x-3-3-3
        RAS-CAS delay: 3 clocks
isab0: <Intel 82371FB PCI to ISA bridge> at device 7.0 on pci0
        I/O Recovery Timing: 8-bit 1 clocks, 16-bit 1 clocks
        Extended BIOS: disabled
        Lower BIOS: enabled
        Coprocessor IRQ13: enabled
        Mouse IRQ12: disabled
        Interrupt Routing: A: disabled, B: IRQ11, C: disabled, D: IRQ11
                MB0: IRQ15, MB1: disabled
isa0: <ISA bus> on isab0
pci0: <S3 Trio graphics accelerator> (vendor=0x5333, dev=0x8811) at 8.0 irq 11
xl0: <3Com 3c905C-TX Fast Etherlink XL> port 0xfc80-0xfcff mem 0xfffbfc00-0xfffbfc7f irq 11 at device 19.0 on pci0
xl0: Ethernet address: 00:01:03:ce:4c:9c
xl0: media options word: a
xl0: found MII/AUTO
miibus0: <MII bus> on xl0
ukphy0: <Generic IEEE 802.3u media interface> on miibus0
ukphy0: OUI 0x00105a, model 0x0000, rev. 0
ukphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
bpf: xl0 attached
Trying Read_Port at 203
Trying Read_Port at 243
MOT15f0: start dependant
MOT15f0: adding io range 0x3e8-0x3ef, size=0x8, align=0x8
MOT15f0: adding irq mask 0x9ea0
MOT15f0: start dependant
MOT15f0: adding io range 0x2e8-0x2ef, size=0x8, align=0x8
MOT15f0: adding irq mask 0x9ea0
MOT15f0: start dependant
MOT15f0: adding io range 0x3f8-0x3ff, size=0x8, align=0x8
MOT15f0: adding irq mask 0x10
MOT15f0: start dependant
MOT15f0: adding io range 0x2f8-0x2ff, size=0x8, align=0x8
MOT15f0: adding irq mask 00x8
MOT15f0: start dependant
MOT15f0: adding io range 0x3f8-0x3ff, size=0x8, align=0x8
MOT15f0: adding irq mask 0x9ea0
MOT15f0: start dependant
MOT15f0: adding io range 0x2f8-0x2ff, size=0x8, align=0x8
MOT15f0: adding irq mask 0x9ea0
MOT15f0: start dependant
MOT15f0: adding io range 0x3e8-0x3ef, size=0x8, align=0x8
MOT15f0: adding irq mask 0x9ea0
MOT15f0: start dependant
isa0: too many dependant configs (8)
CSC0000: start dependant
CSC0000: adding irq mask 0x2a0
CSC0000: adding dma mask 0xa
CSC0000: adding dma mask 0xb
CSC0000: adding io range 0x534-0x60b, size=0x4, align=0xd4
CSC0000: adding fixed io range 0x388-0x38b, size=0x4, align=0x1
CSC0000: adding io range 0x220-0x24f, size=0x10, align=0x20
CSC0000: start dependant
CSC0000: adding irq mask 0x9aa0
CSC0000: adding dma mask 0xb
CSC0000: adding io range 0x534-0x60b, size=0x4, align=0xd4
CSC0000: adding fixed io range 0x388-0x38b, size=0x4, align=0x1
CSC0000: adding io range 0x210-0x26f, size=0x10, align=0x10
CSC0000: end dependant
CSC0001: adding fixed io range 0x200-0x207, size=0x8, align=0x1
CSC0002: adding io range 0xf00-0xfff, size=0x8, align=0x8
CSC0003: adding irq mask 0x200
CSC0003: adding fixed io range 0x330-0x331, size=0x2, align=0x1
isa0: if_ep: <3Com 3C509-TPO EtherLink III> at port 0x320-0x330 irq 10
isa_probe_children: disabling PnP devices
isa_probe_children: probing non-PnP devices
vt0 on isa0
vt0: unkown s3, 80 col, color, 8 scr, unknown kbd, [R3.20-b24]
vt0: driver is using old-style compatability shims
orm0: <Option ROMs> at iomem 0xc0000-0xc7fff,0xc8000-0xc87ff,0xed000-0xedfff on isa0
ep0: <3Com 3C509-TPO EtherLink III> at port 0x320-0x32f irq 10 on isa0
ep0: Ethernet address 00:a0:24:00:b5:9f
bpf: ep0 attached
fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0
fdc0: FIFO enabled, 8 bytes threshold
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
ata0: iobase=0x01f0 altiobase=0x03f6 bmaddr=0x0000
ata0: mask=03 status0=50 status1=00
ata0: mask=03 ostat0=50 ostat2=00
ata0-master: ATAPI probe a=00 b=00
ata0-slave: ATAPI probe a=00 b=00
ata0: mask=03 status0=50 status1=00
ata0-master: ATA probe a=01 b=a5
ata0: devices=01
ata0 at port 0x1f0-0x1f7,0x3f6 irq 14 on isa0
ata1: iobase=0x0170 altiobase=0x0376 bmaddr=0x0000
ata1: mask=03 status0=51 status1=50
ata1: mask=03 ostat0=51 ostat2=50
ata1-master: ATAPI probe a=14 b=eb
ata1-slave: ATAPI probe a=00 b=00
ata1: mask=03 status0=00 status1=50
ata1-slave: ATA probe a=01 b=a5
ata1: devices=06
ata1 at port 0x170-0x177,0x376 irq 15 on isa0
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
atkbd: the current kbd controller command byte 0065
atkbd: keyboard ID 0x41ab (2)
kbd0 at atkbd0
kbd0: atkbd0, AT 101/102 (2), config:0x0, flags:0x3d0000
psm0: current command byte:0065
psm0: failed to reset the aux device.
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
fb0: vga0, vga, type:VGA (5), flags:0x7007f
fb0: port:0x3c0-0x3df, crtc:0x3d4, mem:0xa0000 0x20000
fb0: init mode:24, bios mode:3, current mode:24
fb0: window:0xc00b8000 size:32k gran:32k, buf:0 size:32k
VGA parameters upon power-up
50 18 10 00 00 00 03 00 02 67 5f 4f 50 82 55 81 
bf 1f 00 4f 0d 0e 00 00 05 50 9c 8e 8f 28 1f 96 
b9 a3 ff 00 01 02 03 04 05 14 07 38 39 3a 3b 3c 
3d 3e 3f 0c 00 0f 08 00 00 00 00 00 10 0e 00 ff 
VGA parameters in BIOS for mode 24
50 18 10 00 10 00 03 00 02 67 5f 4f 50 82 55 81 
bf 1f 00 4f 0d 0e 00 00 00 00 9c 8e 8f 28 1f 96 
b9 a3 ff 00 01 02 03 04 05 14 07 38 39 3a 3b 3c 
3d 3e 3f 0c 00 0f 08 00 00 00 00 00 10 0e 00 ff 
EGA/VGA parameters to be used for mode 24
50 18 10 00 10 00 03 00 02 67 5f 4f 50 82 55 81 
bf 1f 00 4f 0d 0e 00 00 00 00 9c 8e 8f 28 1f 96 
b9 a3 ff 00 01 02 03 04 05 14 07 38 39 3a 3b 3c 
3d 3e 3f 0c 00 0f 08 00 00 00 00 00 10 0e 00 ff 
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
sc0: fb0, kbd0, terminal emulator: sc (syscons terminal)
sio0: irq maps: 0x61 0x71 0x61 0x61
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio1: irq maps: 0x61 0x69 0x61 0x61
sio1 at port 0x2f8-0x2ff irq 3 on isa0
sio1: type 16550A
ppc0: parallel port found at 0x378
ppc0: using extended I/O port range
ppc0: SPP
ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0
ppc0: Generic chipset (NIBBLE-only) in COMPATIBLE mode
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven port
ppi0: <Parallel I/O> on ppbus0
isa_probe_children: probing PnP devices
sio2: irq maps: 0x41 0x61 0x41 0x41
sio2: <Motorola VoiceSURFR 56K Modem> at port 0x3e8-0x3ef irq 5 on isa0
sio2: type 16550A
unknown: <WSS/SB> failed to probe at port 0x534-0x537,0x388-0x38b,0x220-0x22f irq 9 drq 1,0 on isa0
unknown: <Game> failed to probe at port 0x200-0x207 on isa0
unknown: <Ctrl> failed to probe at port 0xf00-0xf07 on isa0
unknown: <MPU> can't assign resources
unknown: <MPU> at port 0x330-0x331 irq 9 on isa0
BIOS Geometries:
 0:03fd3f3f 0..1021=1022 cylinders, 0..63=64 heads, 1..63=63 sectors
 1:03db0e38 0..987=988 cylinders, 0..14=15 heads, 1..56=56 sectors
 2:03ffff00 0..1023=1024 cylinders, 0..255=256 heads, 1..0=0 sectors
 0 accounted for
Device configuration finished.
bpf: lo0 attached
bpf: ppp0 attached
new masks: bio 68c040, tty 6300ba, net 670cba
IP packet filtering initialized, divert enabled, rule-based forwarding enabled, default to accept, logging limited to 100 packets/entry by default
IPsec: Initialized Security Association Processing.
IP Filter: v3.4.20 initialized.  Default = pass all, Logging = enabled
Creating DISK ad0
ad0: <ST32140A/08.08.01> ATA-0 disk at ata0-master
ad0: 2015MB (4127760 sectors), 4095 cyls, 16 heads, 63 S/T, 512 B/S
ad0: 1 secs/int, 1 depth queue, BIOSPIO
ad0: piomode=4 dmamode=2 udmamode=-1 cblid=0
ad0: 2015MB <ST32140A> [4095/16/63] at ata0-master BIOSPIO
Creating DISK ad3
ad3: <WDC AC2420F/06.16K25> ATA-0 disk at ata1-slave
ad3: 405MB (830760 sectors), 989 cyls, 15 heads, 56 S/T, 512 B/S
ad3: 1 secs/int, 1 depth queue, BIOSPIO
ad3: piomode=3 dmamode=1 udmamode=-1 cblid=0
ad3: 405MB <WDC AC2420F> [989/15/56] at ata1-slave BIOSPIO
ata1-master: piomode=3 dmamode=1 udmamode=-1 dmaflag=1
acd0: <FX600S/P01> CDROM drive at ata1 as master
acd0: read 1033KB/s (8503KB/s), 256KB buffer, BIOSPIO
acd0: Reads:
acd0: Audio: play, 255 volume levels
acd0: Mechanism: ejectable tray
acd0: Medium: no/blank disc inside, unlocked
Mounting root from ufs:/dev/ad0s1a
ad0s1: type 0xa5, start 63, end = 4124735, size 4124673 : OK
start_init: trying /sbin/init
splash: image decoder found: green_saver
bpf: tun0 attached
pcm0: <CS423x> at port 0x534-0x537,0x388-0x38b,0x220-0x22f irq 9 drq 1,0 on isa0
pcm: setmap 6000, 1000; 0xc5f1f000 -> 6000
pcm: setmap 7000, 1000; 0xc5f20000 -> 7000
pcm0: play interrupt timeout, channel dead
pcm0: detached
pcm0: <CS423x> at port 0x534-0x537,0x388-0x38b,0x220-0x22f irq 9 drq 1,0 on isa0
isa_dma_acquire: channel 1 already in use
isa_dma_acquire: channel 0 already in use
pcm: setmap 8000, 1000; 0xc5f25000 -> 8000
pcm: setmap 9000, 1000; 0xc5f26000 -> 9000
=================================================


=====================pnpinfo=====================
Checking for Plug-n-Play devices...

Card assigned CSN #1
Vendor ID MOT15f0 (0xf015f435), Serial Number 0x0562b9d9
PnP Version 1.0, Vendor Version 0
Device Description: Motorola VoiceSURFR 56K Modem  

Logical Device ID: MOT15f0 0xf015f435 #0
        Device supports I/O Range Check
Compatible Device ID: MOT15f0 (f015f435)
TAG Start DF
    I/O Range 0x3e8 .. 0x3e8, alignment 0x8, len 0x8
        [16-bit addr]
    IRQ: 5 7 9 10 11 12 15  - only one type (true/edge)
TAG Start DF
    I/O Range 0x2e8 .. 0x2e8, alignment 0x8, len 0x8
        [16-bit addr]
    IRQ: 5 7 9 10 11 12 15  - only one type (true/edge)
TAG Start DF
    I/O Range 0x3f8 .. 0x3f8, alignment 0x8, len 0x8
        [16-bit addr]
    IRQ: 4  - only one type (true/edge)
TAG Start DF
    I/O Range 0x2f8 .. 0x2f8, alignment 0x8, len 0x8
        [16-bit addr]
    IRQ: 3  - only one type (true/edge)
TAG Start DF
    I/O Range 0x3f8 .. 0x3f8, alignment 0x8, len 0x8
        [16-bit addr]
    IRQ: 5 7 9 10 11 12 15  - only one type (true/edge)
TAG Start DF
    I/O Range 0x2f8 .. 0x2f8, alignment 0x8, len 0x8
        [16-bit addr]
    IRQ: 5 7 9 10 11 12 15  - only one type (true/edge)
TAG Start DF
    I/O Range 0x3e8 .. 0x3e8, alignment 0x8, len 0x8
        [16-bit addr]
    IRQ: 5 7 9 10 11 12 15  - only one type (true/edge)
TAG Start DF
    I/O Range 0x2e8 .. 0x2e8, alignment 0x8, len 0x8
        [16-bit addr]
    IRQ: 5 7 9 10 11 12 15  - only one type (true/edge)
TAG Start DF
    I/O Range 0x100 .. 0xfff8, alignment 0x8, len 0x8
        [16-bit addr]
    IRQ: 3 4 5 7 9 10 11 12 15  - only one type (true/edge)
TAG End DF
End Tag

Successfully got 32 resources, 1 logical fdevs
-- card select # 0x0001

CSN MOT15f0 (0xf015f435), Serial Number 0x0562b9d9

Logical device #0
IO:  0x03e8 0x03e8 0x03e8 0x03e8 0x03e8 0x03e8 0x03e8 0x03e8
IRQ 5 0
DMA 4 0
IO range check 0x00 activate 0x01

Card assigned CSN #2
Vendor ID CSC4232 (0x3242630e), Serial Number 0x01000000
PnP Version 1.0, Vendor Version 1
Device Description: CS4232

Logical Device ID: CSC0000 0x0000630e #0
Device Description: WSS/SB
TAG Start DF
Good Configuration
    IRQ: 5 7 9  - only one type (true/edge)
    DMA: channel(s) 1 3 
        8-bit, not a bus master, count by byte, , Type A
    DMA: channel(s) 0 1 3 
        8-bit, not a bus master, count by byte, , Type A
    I/O Range 0x534 .. 0x608, alignment 0xd4, len 0x4
        [16-bit addr]
    FIXED I/O base address 0x388 length 0x4
    I/O Range 0x220 .. 0x240, alignment 0x20, len 0x10
        [not 16-bit addr]
TAG Start DF
Acceptable Configuration
    IRQ: 5 7 9 11 12 15  - only one type (true/edge)
    DMA: channel(s) 0 1 3 
        8-bit, not a bus master, count by byte, , Type A
    I/O Range 0x534 .. 0x608, alignment 0xd4, len 0x4
        [16-bit addr]
    FIXED I/O base address 0x388 length 0x4
    I/O Range 0x210 .. 0x260, alignment 0x10, len 0x10
        [not 16-bit addr]
TAG End DF
Compatible Device ID: PNPb007 (07b0d041)
Compatible Device ID: PNPb020 (20b0d041)
Compatible Device ID: PNPb002 (02b0d041)

Logical Device ID: CSC0001 0x0100630e #1
Device Description: Game
    FIXED I/O base address 0x200 length 0x8
Compatible Device ID: PNPb02f (2fb0d041)

Logical Device ID: CSC0002 0x0200630e #2
Device Description: Ctrl
    I/O Range 0xf00 .. 0xff8, alignment 0x8, len 0x8
        [16-bit addr]

Logical Device ID: CSC0003 0x0300630e #3
Device Description: MPU
    IRQ: 9  - only one type (true/edge)
    FIXED I/O base address 0x330 length 0x2
Compatible Device ID: PNPb006 (06b0d041)
End Tag

Successfully got 33 resources, 4 logical fdevs
-- card select # 0x0002

CSN CSC4232 (0x3242630e), Serial Number 0x01000000

Logical device #0
IO:  0x0534 0x0534 0x0534 0x0534 0x0534 0x0534 0x0534 0x0534
IRQ 9 0
DMA 1 0
IO range check 0x00 activate 0x01

Logical device #1
IO:  0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000
IRQ 0 0
DMA 4 4
IO range check 0x00 activate 0x01

Logical device #2
IO:  0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000
IRQ 0 0
DMA 4 4
IO range check 0x00 activate 0x01

Logical device #3
IO:  0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000
IRQ 0 0
DMA 4 4
IO range check 0x00 activate 0x00
=================================================

08.01.2002, 23:51:38
[SorAlx]   http://cydem.zp.ua/



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hardware" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?722434019.20020110174221>