pcm device numbering

Alejandro Pulver alejandro at varnet.biz
Mon Mar 28 09:30:51 PST 2005


I have two sound cards:

SiS 7012 (C-Media Electronics CMI9739 AC97 Codec) - 'snd_ich'
Genius Sound Maker Value 5.1 (CMedia CMI8738)     - 'snd_cmi'

The first is integrated in the motherboard, and it is detected first and
used as the default output device (pcm0). The second it detected after
the first, so it is used as the second output device (pcm1).

I want to use my second sound card as the default output device. I tried
using the loader.conf variables "*_after" and "*_before", but they
always load them before booting the kernel, so the integrated card is
detected first and assigned to the default output device (pcm0). So I
have the drivers as modules, and load the driver for the second card
when booting the kernel, and then from the command line I load the
driver for the integrated card.

Is there a (clean, if possible) way to do this (with 'device.hints', or
rc scripts)?

Here is the relevant output of 'pciconf -vl' (after loading the
drivers in the desired order):

pcm1 at pci0:2:7:  class=0x040100 card=0x70121849 chip=0x70121039 rev=0xa0
hdr=0x00    vendor   = 'Silicon Integrated Systems (SiS)'
    device   = 'SiS7012 PCI Audio Accelerator'
    class    = multimedia
    subclass = audio

pcm0 at pci0:9:0:  class=0x040100 card=0x011113f6 chip=0x011113f6 rev=0x10
hdr=0x00    vendor   = 'C-Media Electronics Inc.'
    device   = 'CMI8738/PCI C3DX PCI Audio Chip中国'
    class    = multimedia
    subclass = audio

I am posting this question again because I did not get a response. If I
should ask this question somewhere else please inform me.

Thanks and Best Regards,

More information about the freebsd-questions mailing list