Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 30 Sep 1999 23:36:00 -0400
From:      Ben Kelly <ben.kelly@ieee.org>
To:        freebsd-questions@freebsd.org
Subject:   esd and pcm sound driver
Message-ID:  <37F42C20.CC5F6E03@ieee.org>

next in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.
--------------691094EF901012D068723C7A
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Hi,

I just recently installed FreeBSD and I have run into a few problems
with my sound card.  I was hoping someone might be able to help.  First
of all my system looks like:

    Pentium III 450
    Adaptec 2940U2W SCSI controller
    ATI XPert98 graphics card
    Sound Blaster PCI128 sound card
    Linksys 10/100 ethernet card

I have the following line in my kernel config file:

        device pcm0

The kernel recognizes the card during boot up:

        es1: <AudioPCI ES1370> rev 0x01 int a irq 11 pci0.13.0

However, sndstat shows a different irq:

        # cat /dev/sndstat
        FreeBSD Audio Driver (981002) Sep 30 1999 22:30:35
        Installed devices:
        pcm1: <ENSONIQ AudioPCI> at 0xe800 irq 0 dma 0:0

I guess my main problem is that so far I haven't gotten a beep out of my
speakers.  In particular, I can't seem to get esd to run.  It seems to
hang on the initialization:

# esd
initializing...

When I truss'd it, I found the last call before the hand was an 'accept'
that returned EAGAIN.  I tried modifying the code to trap it, but gave
up after a few tries.  Any ideas on how to get my sound to work?  I'm
running gnome, so I would really like to get esd to work as well.  Any
advice would be greatly appreciated.  Thanks.

- Ben

P.S.  I've attached the output from 'truss esd'.  Also, I forgot to
mention that I did make the audio devices as described in man pcm.
Thanks again.

--------------691094EF901012D068723C7A
Content-Type: text/plain; charset=us-ascii;
 name="truss.log"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="truss.log"

syscall __sysctl(0xbfbfdb30,0x2,0x2805f18c,0xbfbfdb38,0x0,0x0)
	returns 0 (0x0)
syscall mmap(0x0,32768,0x3,0x1002,-1,0x0)
	returns 671481856 (0x28060000)
syscall geteuid()
	returns 0 (0x0)
syscall getuid()
	returns 0 (0x0)
syscall getegid()
	returns 0 (0x0)
syscall getgid()
	returns 0 (0x0)
syscall access("/usr/local/lib/libaudiofile.so.0",0)
	returns 0 (0x0)
syscall open("/usr/local/lib/libaudiofile.so.0",0,05001366514)
	returns 3 (0x3)
syscall read(0x3,0xbfbfcb60,0x1000)
	returns 4096 (0x1000)
syscall mmap(0x0,49152,0x5,0x2,3,0x0)
	returns 671514624 (0x28068000)
syscall mmap(0x28072000,8192,0x3,0x12,3,0x9000)
	returns 671555584 (0x28072000)
syscall close(3)
	returns 0 (0x0)
syscall access("/usr/local/lib/libm.so.2",0)
	errno 2 'No such file or directory'
syscall open("/var/run/ld-elf.so.hints",0,05001366514)
	returns 3 (0x3)
syscall read(0x3,0xbfbfdae4,0x80)
	returns 128 (0x80)
syscall lseek(3,0x80,0)
	returns 128 (0x80)
syscall read(0x3,0x28066000,0x52)
	returns 82 (0x52)
syscall close(3)
	returns 0 (0x0)
syscall access("/usr/lib/libm.so.2",0)
	returns 0 (0x0)
syscall open("/usr/lib/libm.so.2",0,05001366514)
	returns 3 (0x3)
syscall read(0x3,0xbfbfcb60,0x1000)
	returns 4096 (0x1000)
syscall mmap(0x0,110592,0x5,0x2,3,0x0)
	returns 671563776 (0x28074000)
syscall mmap(0x2808b000,16384,0x3,0x12,3,0x16000)
	returns 671657984 (0x2808b000)
syscall close(3)
	returns 0 (0x0)
syscall access("/usr/local/lib/libesd.so.1",0)
	returns 0 (0x0)
syscall open("/usr/local/lib/libesd.so.1",0,05001366514)
	returns 3 (0x3)
syscall read(0x3,0xbfbfcb60,0x1000)
	returns 4096 (0x1000)
syscall mmap(0x0,20480,0x5,0x2,3,0x0)
	returns 671674368 (0x2808f000)
syscall mmap(0x28093000,4096,0x3,0x12,3,0x3000)
	returns 671690752 (0x28093000)
syscall close(3)
	returns 0 (0x0)
syscall access("/usr/local/lib/libc.so.3",0)
	errno 2 'No such file or directory'
syscall access("/usr/lib/libc.so.3",0)
	returns 0 (0x0)
syscall open("/usr/lib/libc.so.3",0,05001366514)
	returns 3 (0x3)
syscall read(0x3,0xbfbfcb60,0x1000)
	returns 4096 (0x1000)
syscall mmap(0x0,528384,0x5,0x2,3,0x0)
	returns 671694848 (0x28094000)
syscall mmap(0x28101000,20480,0x3,0x12,3,0x6c000)
	returns 672141312 (0x28101000)
syscall mmap(0x28106000,61440,0x3,0x1012,-1,0x0)
	returns 672161792 (0x28106000)
syscall close(3)
	returns 0 (0x0)
syscall access("/usr/local/lib/libm.so.2",0)
	errno 2 'No such file or directory'
syscall access("/usr/lib/libm.so.2",0)
	returns 0 (0x0)
syscall access("/usr/local/lib/libaudiofile.so.0",0)
	returns 0 (0x0)
syscall access("/usr/local/lib/libm.so.2",0)
	errno 2 'No such file or directory'
syscall access("/usr/lib/libm.so.2",0)
	returns 0 (0x0)
syscall fstat(1,0xbfbfd848)
	returns 0 (0x0)
syscall readlink("/etc/malloc.conf",0xbfbfd844,63)
	errno 2 'No such file or directory'
syscall mmap(0x0,4096,0x3,0x1002,-1,0x0)
	returns 672223232 (0x28115000)
syscall break(0x8055000)
	returns 0 (0x0)
syscall break(0x8065000)
	returns 0 (0x0)
syscall ioctl(1,TIOCGETA,0xbfbfd884)
	returns 0 (0x0)
syscall write(1,0x8055000,16)
	returns 16 (0x10)
syscall open("/dev/dsp",1,00)
	returns 3 (0x3)
syscall ioctl(3,SNDCTL_DSP_SETFRAGMENT,0xbfbfdbb4)
	returns 0 (0x0)
syscall ioctl(3,SNDCTL_DSP_SETFMT,0xbfbfdbb4)
	returns 0 (0x0)
syscall ioctl(3,SNDCTL_DSP_GETFMTS,0xbfbfdbb4)
	returns 0 (0x0)
syscall ioctl(3,SNDCTL_DSP_STEREO,0xbfbfdbb4)
	returns 0 (0x0)
syscall ioctl(3,SNDCTL_DSP_SPEED,0xbfbfdbb4)
	returns 0 (0x0)
syscall break(0x8066000)
	returns 0 (0x0)
syscall socket(0x2,0x1,0x0)
	returns 4 (0x4)
syscall fcntl(0x4,0x4,0x4)
	returns 0 (0x0)
syscall setsockopt(0x4,0xffff,0x80,0xbfbfdb8c,0x8)
	returns 0 (0x0)
syscall setsockopt(0x4,0xffff,0x4,0xbfbfdb88,0x4)
	returns 0 (0x0)
syscall bind(0x4,0xbfbfdb94,0x10)
	returns 0 (0x0)
syscall listen(0x4,0x10)
	returns 0 (0x0)
syscall sigaction(0x2,0xbfbfdba4,0xbfbfdb98)
	returns 0 (0x0)
syscall sigaction(0xf,0xbfbfdb9c,0xbfbfdb90)
	returns 0 (0x0)
syscall sigaction(0xd,0xbfbfdb94,0xbfbfdb88)
	returns 0 (0x0)
syscall sigaction(0x1,0xbfbfdb8c,0xbfbfdb80)
	returns 0 (0x0)
syscall __sysctl(0xbfbfdb54,0x2,0x2808e844,0xbfbfdb5c,0x0,0x0)
	returns 0 (0x0)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall write(3,0x8065000,4096)
	returns 4096 (0x1000)
syscall ioctl(3,APMIO_NOTHALTCPU,0x0)
	errno 22 'Invalid argument'
syscall select(0x5,0xbfbfdb34,0x0,0x0,0xbfbfdb2c)
	returns 0 (0x0)
syscall fsync(0x3)
	returns 0 (0x0)
syscall ioctl(3,APMIO_NOTHALTCPU,0x0)
	errno 22 'Invalid argument'
syscall gettimeofday(0xbfbfdb10,0x0)
	returns 0 (0x0)
syscall accept(0x4,0xbfbfdba0,0xbfbfdb9c)
	errno 35 'Resource temporarily unavailable'

<============= HANGS HERE ==================>

SIGNAL 2
SIGNAL 2
SIGNAL 2
syscall select(0x5,0xbfbfdb34,0x0,0x0,0x0)
	errno 4 'Interrupted system call'
received signal 2: terminating...
syscall write(2,0xbfbfd354,34)
	returns 34 (0x22)
syscall close(3)
	returns 0 (0x0)
syscall close(4)
	returns 0 (0x0)
bye bye.
syscall write(2,0xbfbfd358,9)
	returns 9 (0x9)
syscall exit(0x0)
	process exit, rval = 0

--------------691094EF901012D068723C7A--



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




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