Buzzing snd_emu10kx enabled card with r206173

Mark Stapper stark at
Wed May 26 19:05:45 UTC 2010

On 25/05/2010 20:05, Garrett Cooper wrote:
> On Tue, May 25, 2010 at 3:06 AM, Mark Stapper <stark at> wrote:
>> On 18/05/2010 08:14, Mark Stapper wrote:
>>> On 18/05/2010 00:22, Garrett Cooper wrote:
>>>> On Mon, May 17, 2010 at 11:21 AM, Mark Stapper <stark at> wrote:
>>>>> On 12/04/2010 16:29, Garrett Cooper wrote:
>>>>>> On Tue, Apr 6, 2010 at 3:39 AM, Garrett Cooper <yanefbsd at> wrote:
>>>>>>> On Mon, Apr 5, 2010 at 12:26 PM, Garrett Cooper <yanefbsd at> wrote:
>>>>>>>> On Mon, Apr 5, 2010 at 11:22 AM, Garrett Cooper <yanefbsd at> wrote:
>>>>>>>>> Hi,
>>>>>>>>>    When I first installed FreeBSD on this machine, I had a heck of a
>>>>>>>>> time getting the soundcard's PCM channel to function properly. It
>>>>>>>>> would buzz incessantly when I played any audio on it; I disabled the
>>>>>>>>> onboard snd_hda enabled audio and things magically worked, until
>>>>>>>>> today. After a kernel upgrade and a few warm boots, I'm back to where
>>>>>>>>> I started from -- the PCM channel buzzes whenever I play audio;
>>>>>>>>> line-in works perfectly fine however. I'm not seeing anything out of
>>>>>>>>> the ordinary in commits over the past couple of weeks for the pcm
>>>>>>>>> pieces (the last successful kernel I used was 2~3 weeks old).
>>>>>>>>>    Are there any device_printf's I should add or a debug procedure
>>>>>>>>> that you recommend I do to triage the situation?
>>>>>>>>> Thanks,
>>>>>>>>> -Garrett
>>>>>>>>> # uname -a
>>>>>>>>> FreeBSD bayonetta.local 9.0-CURRENT FreeBSD 9.0-CURRENT #1 r206173M:
>>>>>>>>> Sun Apr  4 19:54:22 PDT 2010
>>>>>>>>> root at bayonetta.local:/usr/obj/usr/src/sys/BAYONETTA  amd64
>>>>>>>>> # pciconf -lv | grep -A 4 emu
>>>>>>>>> emu10kx0 at pci0:8:0:0:    class=0x040100 card=0x10211102 chip=0x00081102
>>>>>>>>> rev=0x00 hdr=0x00
>>>>>>>>>    vendor     = 'Creative Technology LTD.'
>>>>>>>>>    device     = 'sound blaster Audigy 2 (ca0108)'
>>>>>>>>>    class      = multimedia
>>>>>>>>>    subclass   = audio
>>>>>>>>> # dmesg | grep 'irq 16'
>>>>>>>>> uhci0: <Intel 82801JI (ICH10) USB controller USB-D> port 0xa800-0xa81f
>>>>>>>>> irq 16 at device 26.0 on pci0
>>>>>>>>> pcib7: <ACPI PCI-PCI bridge> irq 16 at device 28.1 on pci0
>>>>>>>>> emu10kx0: <Creative Audigy 4 [SB0610]> port 0xec00-0xec3f irq 16 at
>>>>>>>>> device 0.0 on pci8
>>>>>>>>> # dmesg | grep 'pcm'
>>>>>>>>> pcm0: <EMU10Kx DSP front PCM interface> on emu10kx0
>>>>>>>>> pcm0: <SigmaTel STAC9750/51 AC97 Codec>
>>>>>>>>> pcm1: <EMU10Kx DSP rear PCM interface> on emu10kx0
>>>>>>>>> pcm2: <EMU10Kx DSP center PCM interface> on emu10kx0
>>>>>>>>> pcm3: <EMU10Kx DSP subwoofer PCM interface> on emu10kx0
>>>>>>>>> pcm4: <EMU10Kx DSP side PCM interface> on emu10kx0
>>>>>>>> Some more information:
>>>>>>>> 1. snd_emu10kx and sound are both modules loaded on boot, along with
>>>>>>>> if_re, linux, and nvidia.
>>>>>>>> 2. Disabling nvidia -> no change.
>>>>>>>> 3. Disabling acpi -> unbootable system because many drivers can't map
>>>>>>>> interrupts without it (can't test unless I isolate the drivers and
>>>>>>>> enable them one by one -- something I'll try later on).
>>>>>>>> I'm at a loss right now... my hunch is that it's potentially a bad
>>>>>>>> interaction between the snd_emu10kx driver and another driver on the
>>>>>>>> same PCI bus (which is just the ACPI and uhci drivers), but I can't
>>>>>>>> test these claims. There are other funky things about my system that
>>>>>>>> have changed over the past couple of kernel versions, like front USB
>>>>>>>> ports could charge my iPhone, and now they don't... and the fact that
>>>>>>>> ACPI blanking via nvidia now works again... so something may have
>>>>>>>> changed on the backend, but I'm not 100% sure on what I should isolate
>>>>>>>> as the root cause, yet.
>>>>>>> Grr... it's `healed' itself again. I'll watch out for potential
>>>>>>> catalysts to the issue in the future.
>>>>>>     Ok. Damn issue came back and here's what happened. Rebooted
>>>>>> several times with the same kernel and slight modifications, loading
>>>>>> and unloading snd_emu10kx and sound, testing out snd_emu10k1, and no
>>>>>> dice. The buzz was bad and it was driving me insane. Again, line-in
>>>>>> functioned just fine, so I didn't know what the heck was going. I was
>>>>>> getting desperate, so I finally broke down and booted the Gentoo Linux
>>>>>> livecd. PCM worked just fine. Then I got irritated enough and finally
>>>>>> just built the module and the sound support directly into the kernel
>>>>>> and everything is hunky dorey again. Does anyone have a stab in the
>>>>>> dark as to what's going on? Is it a potential bus or interrupt
>>>>>> conflict / race condition that gets alleviated when support is nailed
>>>>>> into the kernel? Or are other folks as stumped as I am, s.t. I should
>>>>>> just try emailing current@ instead to see if someone maybe knows
>>>>>> what's going on there :(...?
>>>>>> Thanks,
>>>>>> -Garrett
>>>>> I have the same problem.
>>>>> I'll try compiling the driver in the kernel.
>>>>     FWIW I've compiled the driver into the kernel for several
>>>> iterations now and it works like a champ, so there's something with
>>>> the sound subsystem that isn't jiving properly when loading from
>>>> modules...
>>>> HTH,
>>>> -Garrett
>>> Thanks for the info.
>>> I've noticed that when I load the kernel module at startup (by adding it
>>> to loader.conf) chances of it working improve.
>>> If I load it afterwards, the nice huff puff sounds come out of my
>>> speaker again.
>>> Compiling the new and improved kernel today.
>>> Thanks for your help.
>>> Greetz,
>>> Mark
>> I compiled the emu10kx driver into the kernel.
>> That seemed to work, but now the hissing and buzzing is back.
>> I really don't know what is going on anymore..
>> Any thoughts?
> What modules have you compiled and loaded?
> Thanks,
> -Garrett
> _______________________________________________
> freebsd-stable at mailing list
> To unsubscribe, send any mail to "freebsd-stable-unsubscribe at"
Kernel config and kldstat output pasted below

Id Refs Address            Size     Name
 1   37 0xffffffff80100000 8f1a28   kernel
 2    1 0xffffffff809f3000 d45a98   nvidia.ko
 3    3 0xffffffff81739000 412b0    linux.ko
 4    3 0xffffffff8177b000 426a8    vboxdrv.ko
 5    1 0xffffffff81822000 fbd05    zfs.ko
 6    1 0xffffffff8191e000 1996     opensolaris.ko
 7    1 0xffffffff81920000 3983     linprocfs.ko
 8    2 0xffffffff81924000 26ce     vboxnetflt.ko
 9    2 0xffffffff81927000 8d2c     netgraph.ko
10    1 0xffffffff81930000 14a6     ng_ether.ko
11    1 0xffffffff81932000 d2c      vboxnetadp.ko
12    1 0xffffffff81933000 a8ca     fuse.ko

ident           MARIO
cpu             HAMMER

#makeoptions    DEBUG=-g                # Build kernel with gdb(1) debug

options         SCHED_ULE               # ULE scheduler
options         PREEMPTION              # Enable kernel thread preemption
options         INET                    # InterNETworking
#options        INET6                   # IPv6 communications protocols
options         SCTP                    # Stream Control Transmission
options         FFS                     # Berkeley Fast Filesystem
options         SOFTUPDATES             # Enable FFS soft updates support
options         UFS_ACL                 # Support for access control lists
options         UFS_DIRHASH             # Improve performance on big
options         UFS_GJOURNAL            # Enable gjournal-based UFS
options         MD_ROOT                 # MD is a potential root device
options         NFSCLIENT               # Network Filesystem Client
options         NFSSERVER               # Network Filesystem Server
options         NFSLOCKD                # Network Lock Manager
options         NFS_ROOT                # NFS usable as /, requires
options         MSDOSFS                 # MSDOS Filesystem
options         CD9660                  # ISO 9660 Filesystem
options         PROCFS                  # Process filesystem (requires
options         PSEUDOFS                # Pseudo-filesystem framework
options         GEOM_PART_GPT           # GUID Partition Tables.
options         GEOM_LABEL              # Provides labelization
options         COMPAT_43TTY            # BSD 4.3 TTY compat (sgtty)
options         COMPAT_FREEBSD32        # Compatible with i386 binaries
options         COMPAT_FREEBSD4         # Compatible with FreeBSD4
options         COMPAT_FREEBSD5         # Compatible with FreeBSD5
options         COMPAT_FREEBSD6         # Compatible with FreeBSD6
options         COMPAT_FREEBSD7         # Compatible with FreeBSD7
options         SCSI_DELAY=5000         # Delay (in ms) before probing SCSI
options         KTRACE                  # ktrace(1) support
options         STACK                   # stack(9) support
options         SYSVSHM                 # SYSV-style shared memory
options         SYSVMSG                 # SYSV-style message queues
options         SYSVSEM                 # SYSV-style semaphores
options         P1003_1B_SEMAPHORES     # POSIX-style semaphores
options         _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time
options         PRINTF_BUFR_SIZE=128    # Prevent printf output being
options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
options         HWPMC_HOOKS             # Necessary kernel hooks for
options         AUDIT                   # Security event auditing
options         MAC                     # TrustedBSD MAC Framework
options         FLOWTABLE               # per-cpu routing cache
#options        KDTRACE_FRAME           # Ensure frames are compiled in
#options        KDTRACE_HOOKS           # Kernel DTrace hooks
options         INCLUDE_CONFIG_FILE     # Include this file in kernel

# Make an SMP-capable kernel by default
options         SMP                     # Symmetric MultiProcessor Kernel

# CPU frequency control
device          cpufreq

# Bus support.
device          acpi
device          pci

# Floppy drives
device          fdc

# ATA and ATAPI devices
device          ata
device          atadisk         # ATA disk drives
device          ataraid         # ATA RAID drives
device          atapicd         # ATAPI CDROM drives
options         ATA_STATIC_ID   # Static device numbering

# SCSI peripherals
device          scbus           # SCSI bus (required for SCSI)
device          ch              # SCSI media changers
device          da              # Direct Access (disks)
device          sa              # Sequential Access (tape etc)
device          cd              # CD
device          pass            # Passthrough device (direct SCSI access)
device          ses             # SCSI Environmental Services (and SAF-TE)

# atkbdc0 controls both the keyboard and the PS/2 mouse
device          atkbdc          # AT keyboard controller
device          atkbd           # AT keyboard
device          psm             # PS/2 mouse

device          kbdmux          # keyboard multiplexer

device          vga             # VGA video card driver

device          splash          # Splash screen and screen saver support

# syscons is the default console driver, resembling an SCO console
device          sc

device          agp             # support several AGP chipsets

# Serial (COM) ports
device          uart            # Generic UART driver

# PCI Ethernet NICs.
device          em              # Intel PRO/1000 Gigabit Ethernet Family

# PCI Ethernet NICs that use the common MII bus controller code.
# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
device          miibus          # MII bus support
device          nfe             # nVidia nForce MCP on-board Ethernet
#device         nve             # nVidia nForce MCP on-board Ethernet
device          lagg

# Pseudo devices.
device          loop            # Network loopback
device          random          # Entropy device
device          ether           # Ethernet support
device          vlan            # 802.1Q VLAN support
device          tun             # Packet tunnel.
device          pty             # BSD-style compatibility pseudo ttys
device          md              # Memory "disks"
device          gif             # IPv6 and IPv4 tunneling
device          faith           # IPv6-to-IPv4 relaying (translation)
device          firmware        # firmware assist module

# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
# Note that 'bpf' is required for DHCP.
device          bpf             # Berkeley packet filter

# USB support
options         USB_DEBUG       # enable debug msgs
device          uhci            # UHCI PCI->USB interface
device          ohci            # OHCI PCI->USB interface
device          ehci            # EHCI PCI->USB interface (USB 2.0)
device          usb             # USB Bus (required)
#device         udbp            # USB Double Bulk Pipe devices
device          uhid            # "Human Interface Devices"
device          ukbd            # Keyboard
device          ulpt            # Printer
device          umass           # Disks/Mass storage - Requires scbus and da
device          ums             # Mouse

# FireWire support
device          firewire        # FireWire bus code
#device         sbp             # SCSI over FireWire (Requires scbus and da)
device          fwe             # Ethernet over FireWire (non-standard!)
device          fwip            # IP over FireWire (RFC 2734,3146)
device          dcons           # Dumb console driver
device          dcons_crom      # Configuration ROM for dcons

device sound
device snd_emu10kx
##higher resolution VGA console support
options VESA
device dpms

device drm
device amdtemp
# CPU control pseudo-device. Provides access to MSRs, CPUID info and
# microcode update feature.
device          cpuctl

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 260 bytes
Desc: OpenPGP digital signature
Url :

More information about the freebsd-multimedia mailing list