Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 16 Sep 2000 15:18:06 +0400 (MSD)
From:      Alex Kapranoff <alex@kapran.bitmcnit.bryansk.su>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   kern/21308: Sound Blaster 16 (using pcm) and new DEVFS
Message-ID:  <200009161118.e8GBI6d02189@kapran.bitmcnit.bryansk.su>

next in thread | raw e-mail | index | archive | help

>Number:         21308
>Category:       kern
>Synopsis:       Sound Blaster 16 (using pcm) and new DEVFS
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sat Sep 16 04:30:01 PDT 2000
>Closed-Date:
>Last-Modified:
>Originator:     Alex Kapranoff
>Release:        FreeBSD 5.0-CURRENT i386
>Organization:
>Environment:

I have a pretty old Sound Blaster 16 card from Vibra.  It's a good old
NON-PNP ISA card. It works just fine except for the need to manually
configure symlinks inside /dev and to ignore some strange diagnostics
on boot while using new DEVFS. Here's a dmesg extract:

=========
FreeBSD 5.0-CURRENT #0: Fri Sep 15 23:15:00 MSD 2000
    root@kapran.bitmcnit.bryansk.su:/usr/obj/usr/src/sys/KAPRAN
CPU: Pentium/P55C (167.05-MHz 586-class CPU)
  Origin = "GenuineIntel"  Id = 0x543  Stepping = 3
  Features=0x8001bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX>
real memory  = 25165824 (24576K bytes)
avail memory = 20697088 (20212K bytes)
Preloaded elf kernel "kernel.ko" at 0xc03d3000.
WARNING: Driver mistake: repeat make_dev("sequencer0")
WARNING: Driver mistake: repeat make_dev("sequencer1")
WARNING: Driver mistake: repeat make_dev("sequencer2")
WARNING: Driver mistake: repeat make_dev("sequencer3")
WARNING: Driver mistake: repeat make_dev("sequencer4")
WARNING: Driver mistake: repeat make_dev("sequencer5")
WARNING: Driver mistake: repeat make_dev("sequencer6")
WARNING: Driver mistake: repeat make_dev("sequencer7")
WARNING: Driver mistake: repeat make_dev("sequencer8")
WARNING: Driver mistake: repeat make_dev("sequencer9")
WARNING: Driver mistake: repeat make_dev("sequencer10")
WARNING: Driver mistake: repeat make_dev("sequencer11")
WARNING: Driver mistake: repeat make_dev("sequencer12")
WARNING: Driver mistake: repeat make_dev("sequencer13")
WARNING: Driver mistake: repeat make_dev("sequencer14")
WARNING: Driver mistake: repeat make_dev("sequencer15")
WARNING: Driver mistake: repeat make_dev("sequencer0")
WARNING: Driver mistake: repeat make_dev("sequencer1")
WARNING: Driver mistake: repeat make_dev("sequencer2")
WARNING: Driver mistake: repeat make_dev("sequencer3")
WARNING: Driver mistake: repeat make_dev("sequencer4")
WARNING: Driver mistake: repeat make_dev("sequencer5")
WARNING: Driver mistake: repeat make_dev("sequencer6")
WARNING: Driver mistake: repeat make_dev("sequencer7")
WARNING: Driver mistake: repeat make_dev("sequencer8")
WARNING: Driver mistake: repeat make_dev("sequencer9")
WARNING: Driver mistake: repeat make_dev("sequencer10")
WARNING: Driver mistake: repeat make_dev("sequencer11")
WARNING: Driver mistake: repeat make_dev("sequencer12")
WARNING: Driver mistake: repeat make_dev("sequencer13")
WARNING: Driver mistake: repeat make_dev("sequencer14")
WARNING: Driver mistake: repeat make_dev("sequencer15")
WARNING: Driver mistake: repeat make_dev("sequencer0")
WARNING: Driver mistake: repeat make_dev("sequencer1")
WARNING: Driver mistake: repeat make_dev("sequencer2")
WARNING: Driver mistake: repeat make_dev("sequencer3")
WARNING: Driver mistake: repeat make_dev("sequencer4")
WARNING: Driver mistake: repeat make_dev("sequencer5")
WARNING: Driver mistake: repeat make_dev("sequencer6")
WARNING: Driver mistake: repeat make_dev("sequencer7")
WARNING: Driver mistake: repeat make_dev("sequencer8")
WARNING: Driver mistake: repeat make_dev("sequencer9")
WARNING: Driver mistake: repeat make_dev("sequencer10")
WARNING: Driver mistake: repeat make_dev("sequencer11")
WARNING: Driver mistake: repeat make_dev("sequencer12")
WARNING: Driver mistake: repeat make_dev("sequencer13")
WARNING: Driver mistake: repeat make_dev("sequencer14")
WARNING: Driver mistake: repeat make_dev("sequencer15")
seq0-63: Midi sequencers.
sbc0: <Soundblaster 16> at port 0x220-0x22f irq 5 drq 1 flags 0x15 on isa0
pcm1: <SB DSP 4.13> on sbc0
midi0: <SB Midi Interface> on sbc0
midi1: <SB OPL FM Synthesizer> on sbc0
device_probe_and_attach: midi1 attach returned 6
pca0 at port 0x40 on isa0
unknown: <PNP0303> can't assign resources
pca1: <AT-style speaker sound> at port 0x61 on isa0
WARNING: Driver mistake: repeat make_dev("pcaudio")
WARNING: Driver mistake: repeat make_dev("pcaudioctl")
unknown: <PNP0501> can't assign resources
unknown: <PNP0700> can't assign resources
unknown: <PNP0400> can't assign resources
unknown: <PNP0501> can't assign resources
=========

And this is `ls -l /dev` extract:
=========
lrw-r---w-  1 root  wheel            0 16 ÓÅÎ 14:45 audio -> /dev/audio1.0
crw-rw-rw-  1 root  wheel      30,  20  1 ÑÎ×  1970 audio1.0
crw-rw-rw-  1 root  wheel      30, 0x00010014  1 ÑÎ×  1970 audio1.1
lrw-r---w-  1 root  wheel            0 16 ÓÅÎ 14:45 dsp -> /dev/dsp1.0
crw-rw-rw-  1 root  wheel      30,  19  1 ÑÎ×  1970 dsp1.0
crw-rw-rw-  1 root  wheel      30, 0x00010013  1 ÑÎ×  1970 dsp1.1
crw-rw-rw-  1 root  wheel      30,  21  1 ÑÎ×  1970 dspW1.0
crw-rw-rw-  1 root  wheel      30, 0x00010015  1 ÑÎ×  1970 dspW1.1
lrw-r---w-  1 root  wheel            0 16 ÓÅÎ 14:45 mixer -> /dev/mixer1
crw-rw-rw-  1 root  wheel      30,  16  1 ÑÎ×  1970 mixer1
crw-rw-rw-  1 root  wheel      30,   1  1 ÑÎ×  1970 sequencer0
crw-rw-rw-  1 root  wheel      30,  17  1 ÑÎ×  1970 sequencer1
crw-rw-rw-  1 root  wheel      30, 161  1 ÑÎ×  1970 sequencer10
crw-rw-rw-  1 root  wheel      30, 177  1 ÑÎ×  1970 sequencer11
crw-rw-rw-  1 root  wheel      30, 193  1 ÑÎ×  1970 sequencer12
crw-rw-rw-  1 root  wheel      30, 209  1 ÑÎ×  1970 sequencer13
crw-rw-rw-  1 root  wheel      30, 225  1 ÑÎ×  1970 sequencer14
crw-rw-rw-  1 root  wheel      30, 241  1 ÑÎ×  1970 sequencer15
crw-rw-rw-  1 root  wheel      30,  33  1 ÑÎ×  1970 sequencer2
crw-rw-rw-  1 root  wheel      30,  49  1 ÑÎ×  1970 sequencer3
crw-rw-rw-  1 root  wheel      30,  65  1 ÑÎ×  1970 sequencer4
crw-rw-rw-  1 root  wheel      30,  81  1 ÑÎ×  1970 sequencer5
crw-rw-rw-  1 root  wheel      30,  97  1 ÑÎ×  1970 sequencer6
crw-rw-rw-  1 root  wheel      30, 113  1 ÑÎ×  1970 sequencer7
crw-rw-rw-  1 root  wheel      30, 129  1 ÑÎ×  1970 sequencer8
crw-rw-rw-  1 root  wheel      30, 145  1 ÑÎ×  1970 sequencer9
cr--r--r--  1 root  wheel      30,   6  1 ÑÎ×  1970 sndstat
crw-------  1 root  wheel      26,   0  1 ÑÎ×  1970 speaker
=========

Those symlinks audio, dsp & mixer are configured to be created at boot-time
in rc.devfs (by me).

And that's a kernel config extract:
=========

#----------------------------------------------------------------------
machine		i386
hints		"KAPRAN.hints"

cpu		I586_CPU

options 	DEVFS

#----------------------------------------------------------------------
device		pcm
device		sbc
device		pca

device		midi
device		seq
#----------------------------------------------------------------------

And the hints:

hint.pcm.0.at="isa"
hint.pcm.0.irq="5"
hint.pcm.0.drq="1"
hint.pcm.0.flags="0x15"
hint.sbc.0.at="isa"
hint.sbc.0.port="0x220"
hint.sbc.0.irq="5"
hint.sbc.0.drq="1"
hint.sbc.0.flags="0x15"
hint.pca.0.at="isa"
hint.pca.0.port="0x040"
=========

>Description:

All those sequencer devices are just weird both by spoiling /dev and
highlighting at boot time.

/dev/audio, /dev/dsp & /dev/mixer must be created manually.

>How-To-Repeat:
>Fix:

Create symlinks. Don't care about sequencers, unknown <PNP_ID> and
other error messages in dmesg.

Or dig /sys/dev/sound in an unknown to me direction. 

>Release-Note:
>Audit-Trail:
>Unformatted:


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




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