[FreeBSD] SB Vibra 16C

Zahemszky Gabor zgabor at CoDe.hu
1999. Okt. 6., Sze, 16:23:15 CEST


Hello!

> Nos a pontos környezet.

Egyet kihagytal: OS-verzio, mert pl a konfig fajl ezen mulik.

> A kernel konfigja igy nézett ki.
> 
> CONTROLLER snd0
> DEVICE sb0
> DEVIVE sbxvi0
> DEVICE sbmidi0

Remelem a parametereket is beleirtad, mert a nelkul ketlem, hogy mukodne.
De ha veletlenul pnp, akkor e melle kell a controller pnp0 _is_.  Meg az irq
es tarsai.

> Sajnos nem volt sikeres.(Ezek szerint nem SB a kártyám)

Ez nem biztos a fentiek szerint.

> A második változat
> DEVICE pcm0 on isa? port 0x220 tty irq 5 drq 1 flag 0x15
> 
> vagy valami ilyesmi, doksiból néztem. PNP nélkül.
> Az eredmény: pcm0 not found.

Ha pnp, akkor _talan_ jogos, hogy igy nem latja.

> Harmadik változat:
> CONTROLLER pnp0
> Hurkalé, azaz semmit nem talál.

Na ez erdekes, azert valamit kene latnia - legalabb annyit, hogy hogy van ott
egy pnp eszkoz.

> Negyedik változat:
> 
> CONTROLLER pnp0
> DEVICE pcm0
> 
> a válasz:
> 
> > > This is a SB16 but LDN  0 is disabled.

Tehat megis SB16.  Csak eppen kene neki a pnp inicializalasa, ugyanis az LDN
(tan Logical Device Number) pnp sajatossag.

> A bootkor a pnpscan nem találja meg.

Nem bootkor gondoltam, hanem elo rendszerben.  Az irodai SB16-ra pl. ezt modja
(bocs kicsit hosszu lesz)
# pnpinfo
Checking for Plug-n-Play devices...

Card assigned CSN #1
Vendor ID CTL0070 (0x70008c0e), Serial Number 0xffffffff
PnP Version 1.0, Vendor Version 16
Device Description: Creative ViBRA16C PnP

/* He!  Vibra16C ----------------^  Hogy mik ki nem derulnek! */

Logical Device ID: CTL0001 0x01008c0e #0
Device Description: Audio
TAG Start DF
Good Configuration
    IRQ: 5  - only one type (true/edge)
    DMA: channel(s) 1 
	8-bit, not a bus master, count by byte, , Compatibility mode
    DMA: channel(s) 5 
	16-bit, not a bus master, , count by word, Compatibility mode
    I/O Range 0x220 .. 0x220, alignment 0x1, len 0x10
	[16-bit addr]
    I/O Range 0x330 .. 0x330, alignment 0x1, len 0x2
	[16-bit addr]
    I/O Range 0x388 .. 0x388, alignment 0x1, len 0x4
	[16-bit addr]
TAG Start DF
Acceptable Configuration
    IRQ: 5 7 9 10  - only one type (true/edge)
    DMA: channel(s) 1 3 
	8-bit, not a bus master, count by byte, , Compatibility mode
    DMA: channel(s) 5 7 
	16-bit, not a bus master, , count by word, Compatibility mode
    I/O Range 0x220 .. 0x280, alignment 0x20, len 0x10
	[16-bit addr]
    I/O Range 0x300 .. 0x330, alignment 0x30, len 0x2
	[16-bit addr]
    I/O Range 0x388 .. 0x388, alignment 0x1, len 0x4
	[16-bit addr]
TAG Start DF
Acceptable Configuration
    IRQ: 5 7 9 10  - only one type (true/edge)
    DMA: channel(s) 1 3 
	8-bit, not a bus master, count by byte, , Compatibility mode
    DMA: channel(s) 5 7 
	16-bit, not a bus master, , count by word, Compatibility mode
    I/O Range 0x220 .. 0x280, alignment 0x20, len 0x10
	[16-bit addr]
    I/O Range 0x300 .. 0x330, alignment 0x30, len 0x2
	[16-bit addr]
TAG Start DF
Sub-optimal Configuration
    IRQ: 5 7 9 10  - only one type (true/edge)
    DMA: channel(s) 1 3 
	8-bit, not a bus master, count by byte, , Compatibility mode
    DMA: channel(s) 5 7 
	16-bit, not a bus master, , count by word, Compatibility mode
    I/O Range 0x220 .. 0x280, alignment 0x20, len 0x10
	[16-bit addr]
TAG Start DF
Sub-optimal Configuration
    IRQ: 5 7 9 10  - only one type (true/edge)
    DMA: channel(s) 1 3 
	8-bit, not a bus master, count by byte, , Compatibility mode
    I/O Range 0x220 .. 0x280, alignment 0x20, len 0x10
	[16-bit addr]
    I/O Range 0x300 .. 0x330, alignment 0x30, len 0x2
	[16-bit addr]
    I/O Range 0x388 .. 0x388, alignment 0x1, len 0x4
	[16-bit addr]
TAG Start DF
Sub-optimal Configuration
    IRQ: 5 7 9 10  - only one type (true/edge)
    DMA: channel(s) 1 3 
	8-bit, not a bus master, count by byte, , Compatibility mode
    I/O Range 0x220 .. 0x280, alignment 0x20, len 0x10
	[16-bit addr]
TAG End DF

Logical Device ID: CTL7001 0x01708c0e #1
Compatible Device ID: PNPb02f (2fb0d041)
Device Description: Game
    I/O Range 0x200 .. 0x200, alignment 0x1, len 0x8
	[16-bit addr]
End Tag

Successfully got 44 resources, 2 logical fdevs
-- card select # 0x0001

CSN CTL0070 (0x70008c0e), Serial Number 0xffffffff

Logical device #0
IO:  0x0220 0x0330 0x0388 0x0000 0x0000 0x0000 0x0000 0x0000
IRQ 5 0
DMA 1 5
IO range check 0x00 activate 0x01

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

#

No idaig.  Bocsanat ha hosszu voltam.  Mindehhez nekem az aktualis kernel fajel-
ban a kovetkezok vannak:

controller      snd0
device sb0      at isa? port 0x220 irq 5 drq 1 vector sbintr
device sbxvi0   at isa? port 0xffff drq 5
device sbmidi0  at isa? port 0x330
device awe0     at isa? disable port 0x620
device opl0     at isa? port 0x388

Ebbol az awe neked nem kell, nekem is csak azert van benne, mert egy ideig volt
itt bent az awe bovitokartyam.  Az sbxvi0 port 0xffff-je meg azert (ez ugyanis
nem igy van a LINT-ben), mert ekkor nem kajabal, hogy utkozik a port az apm-mel.
Es amugy a kartya gyonyoruen uzemel.

> Csak manuálisan lehet elindítani,
> 
> tehát:
> unload
>  boot kernel -c
> pnp 1 0 os enable port0 0x220 irq0 5 drq0 1 drq1 5
> 
> Ez viszont nem szeretném minden bootkor beirni, mert ennyit elvárhat az ember egy géptõl.
> A /boot/kernel.conf ba nem tudom milyen kulcsszavak irhatók.

Uj oprendszer verzio eseten pontosan ezt a pnp 1 0 ... sort ugy ahogy van.
De ezt ha pontos OS-verziot mondasz, akkor majd megirom, en ugyanis azt az
awe bovitokartyat hasznalom ugyanigy, hogy bootkor inicializalom.

> Csóváljam meg és dobjam el jó messzire ,vagy valamit elB tam.

Tartsd meg.  Ha mar megvan, akkor jo.  Persze ha kell jobb kartya, dobd el,
de olyat keress amirol valaki megirta hogy mukodik.  Ez mukodik, tehat
egyelore kiserletezz.

> Lehet hogy egy kicsit hosszúra sikeredett.

A valasz is.

ZGabor at CoDe dot HU

-- 
#!/bin/ksh
Z='21N16I25C25E30, 40M30E33E25T15U!' ;IFS=' ABCDEFGHIJKLMNOPQRSTUVWXYZ ';set $Z ;for i { [[ $i = ? ]]&&print $i&&break;[[ $i = ??? ]]&&j=$i&&i=${i%?};typeset -i40 i=8#$i;print -n ${i#???};[[ "$j" = ??? ]]&&print -n "${j#??} "&&j=;typeset +i i;};IFS=' 0123456789 ';set $Z;X=;for i { [[ $i = , ]]&&i=2;[[ $i = ?? ]]||typeset -l i;X="$X $i";typeset +l i;};print "$X"



További információk a(z) BSD levelezőlistáról