Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 27 Aug 2002 03:45:45 -0400
From:      Andy Sparrow <spadger@best.com>
To:        Ross Finlayson <finlayson@live.com>
Cc:        freebsd-multimedia@FreeBSD.ORG, "M. Warner Losh" <imp@village.org>
Subject:   Re: Configuring for the Compaq Presario 7360 audio device? 
Message-ID:  <20020827074545.2602C4D6@CRWdog.demon.co.uk>
In-Reply-To: Message from Ross Finlayson <finlayson@live.com>  of "Mon, 26 Aug 2002 23:44:35 PDT." <4.3.1.1.20020826232157.00baa220@laptop-localhost> 

next in thread | previous in thread | raw e-mail | index | archive | help
--==_Exmh_764799123P
Content-Type: text/plain; charset=us-ascii


> I already had
>          hw.pcic.ignore_function_1=1

Weird, I only just saw this earlier tonight in my sysctl output - I've 
got /no/ idea what it does...

> in "/boot/loader.conf" in order to get my PCI<->PCMCIA adaptor (with a "wi" 
> device) to work.  (This was advice from Warner Losh.)  But I didn't have 
> "hw.pcic.intr_path" or "hw.pcic.irq" set, because they didn't seem to be 
> needed before.
> 
> >I /think/ that in that case you might need:
> >
> >hw.pcic.intr_path=1
> >hw.pcic.irq=0
> 
> The good news:
> - when I added those two lines (to "/boot/loader.conf"), I was able to also add
>          snd_maestro3_load="YES"
>    to load the PCM device:
>    pcm0: <ESS Technology Allegro-1> port 0x1000-0x10ff irq 5 at device 13.0 
> on pci0
>    without the kernel hanging during booting.

Cool. Now we're getting somewhere...

> The bad news:
> - when I added these two lines (to "/boot/loader.conf"), my "wi" (Orinoco 
> wireless LAN) device no longer initializes properly:
> 
>          wi0 at port 0x240-0x27f irq 13 slot 0 on pccard0
>          pcic0: Hardware does not support irq 13.
>          wi0: bus_setup_intr() failed! (22)
>          device_probe_and_attach: wi0 attach returned 22

Hmm. What irq was allocated to the pcic device when you got this?

You /could/ try redefining the available IRQ's in /etc/pccard.conf 
(copy'n'paste from the /etc/defaults/pccard.conf, then edit/trim to 
suit). Bounce pccardd and try it out..

You should probably also remove '5' as an interrupt from that list (as 
your sound card wants it, and they can't generally be persuaded 
otherwise), as well as anything else being used by "standard" devices, 
e.g. 3 (if you really want to use the second built-in serial device, 
sio1, you have configured), and 12 (if you want to use a PS/2 mouse), 
and 7 (if you want to use the parallel port).

Mine has a line like this (dunno if it's empirically correct but it 
works for my laptop with flash disks, wi cards, PCCARD modems, NICs and 
modular 2nd HDD/DVDs etc - all in addition to the built-in devices):

irq     3 10 11 15

Main reason I trimmed it IIRC, was that my New Media LiveWire would 
simply refuse to work on a lot of IRQ's that were apparently valid for 
it... The list above constitutes AFAIK, the only IRQ's the damn thing 
would work on. However, I don't use it much anymore, as my present 
laptop (which inherited the disk & hence a lot of configuration 
files/settings) has a built-in mini-PCI NIC/modem.

> beforehand, the "wi" device would initialize (correctly) as follows:
> 
>          wi0 at port 0x240-0x27f irq 3 slot 0 on pccard0
> 
> This "pcic" stuff is a black art to me.

You're not alone...

>  Any idea what I can do (e.g., in 
> "/boot/loader.conf") so that (i) my "wi" device initializes correctly, and 
> (ii) I can load the ESS Allegro audio device?  (I've cc'd Warner on this 
> msg, although he's probably sick of answering questions about "pcic" :-)

Naw, he loves it, that's why he keeps messing with it ;-) *waves*

I think that you'll need to bludgeon the 'wi' device onto an interrupt 
it can use, whilst keeping the rest of the system in a state that will 
work.

I really think that Warner is the best person to comment here, it's 
entirely possible that there's some combination of sysctl settings 
that'll allow it to work.

I'm not too familar with your machine, there may even be a BIOS option 
that has some affect on IRQ allocation.

However, I started guessing some time ago.. :-)

> ps. Another (possibly) dumb question: Assuming I can get the PCM device 
> loaded correctly (without messing up my "wi"), how do I then create the 
> /dev/pcm device?  I.e., what arguments do I give to "mknod"?  ("pcm" is not 
> mentioned at all in "/dev/MAKEDEV")

Yup, that's correct. The full complement of audio devices is:

andy@tureg[238]-> ls -lrt /dev/* | grep '30,'
crw-rw-rw-   1 root   wheel      30,   2 Aug 13 00:57 /dev/midi0
crw-rw-rw-   1 root   wheel      30,   0 Aug 13 00:57 /dev/mixer0
crw-rw-rw-   1 root   wheel      30,   8 Aug 13 00:57 /dev/music0
crw-rw-rw-   1 root   wheel      30, 0x00030004 Aug 13 00:57 
/dev/audio0.3
crw-rw-rw-   1 root   wheel      30, 0x00020004 Aug 13 00:57 
/dev/audio0.2
crw-rw-rw-   1 root   wheel      30, 0x00010004 Aug 13 00:57 
/dev/audio0.1
crw-rw-rw-   1 root   wheel      30,   4 Aug 13 00:57 /dev/audio0.0
crw-rw-rw-   1 root   wheel      30,   9 Aug 13 00:57 /dev/pss0
crw-rw-rw-   1 root   wheel      30,   6 Aug 13 00:57 /dev/sndstat
crw-rw-rw-   1 root   wheel      30, 0x00010003 Aug 13 00:57 /dev/dsp0.1
crw-rw-rw-   1 root   wheel      30, 0x00020003 Aug 13 00:57 /dev/dsp0.2
crw-rw-rw-   1 root   wheel      30, 0x00030003 Aug 13 00:57 /dev/dsp0.3
crw-rw-rw-   1 root   wheel      30,   5 Aug 13 00:57 /dev/dspW0.0
crw-rw-rw-   1 root   wheel      30, 0x00010005 Aug 13 00:57 /dev/dspW0.1
crw-rw-rw-   1 root   wheel      30, 0x00020005 Aug 13 00:57 /dev/dspW0.2
crw-rw-rw-   1 root   wheel      30, 0x00030005 Aug 13 00:57 /dev/dspW0.3
crw-rw-rw-   1 root   wheel      30,   1 Aug 13 00:57 /dev/sequencer0
crw-rw-rw-   1 root   wheel      30,   3 Aug 27 03:08 /dev/dsp0.0

As you can see, there's no device node for 'pcm' itself - I think 
because you only interact with the audio device from user space via the 
defined interfaces (mixer, audio, dsp etc.).

Kinda like how ethernet devices don't have nodes in '/dev' either - 
because you can only send/receive packets via the TCP/IP stack (which 
you can't reach from userland itself), thus there's no need for a device 
node.

Cheers,

AS




--==_Exmh_764799123P
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.7 (FreeBSD)
Comment: Exmh version 2.5 07/13/2001

iD8DBQE9ay4oPHh895bDXeQRAmxGAJwMGKOsIpa1jfRfq0gw1xxiNRtlBACff/nY
m+s6Zf+DElv6q2bosGl6Bew=
=uTG0
-----END PGP SIGNATURE-----

--==_Exmh_764799123P--

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




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