Mar 28, 2016 Read about 'Cirrus Logic Audio Card on Raspberry Pi 3 B' on element14.com. UPDATE: If you are new to the Cirrus Logic Audio Card, you should know the installation instructions in the manual as well as the Cirrus Logic wiki on. Cirrus Logic Audio Card offers an unprecedented level of features and performance for avid audiophiles who want to use their Raspberry Pi for audio applications. Dec 18, 2020 Download CIRRUS LOGIC Sound Card drivers. I had the latest drivers with Boot Camp 3. Proposed as answer by Coffeebyte Thursday, July 22, Search for drivers by ID or device name Known devices: Dispositivo de High Definition Audio. Jul 2, 7: May 17, 1: A little extra help would be appreciated! Posted on Apr 27.
Home page | EN-US English | RU Russian | Other projects (EN-US English)
Overview
Key features :
- The main IDEA of the project was taken from standard XP/2003 VGA.SYS display driver with generic VESA BIOS Extensions (VBE) 1.02/2.00/3.00+ support.
- VBEMP.DRV is a standard Windows 9x™ Video Display Driver.
- It supports ALL of MS Windows 9x™ Family (Windows 95, Windows 98, Windows 98SE, Windows Me)
- It supports a wide range of videocards emulated via virtualization software: Bochs, QEMU, VMware, Innotek VirtualBox, Microsoft VirtualPC.
- For proper operation my driver expects that your video card's BIOS is 100%-compatible with VESA Video BIOS extensions specification. Nowadays there are many video cards that don't fully supports INT10 interface, which is provided by VESA/VBE standard (See VBE FAQ below for details).
- Supports VBE 2.00+ compliant PCI/AGP/PCI-E video cards with linear frame buffer.
- Partially supports VBE 1.x compliant ISA/EISA/MCA/VLB/PCI video cards with linear frame buffer (only Cirrus Logic chips).
- 256color(8bit), 16bit, 24bit, 32bit true color modes support.
- 320x200, 320x240, 320x400, 400x300, 512x384, 640x350, 640x400, 640x480, 720x400, 720x480, 720x576, 800x480, 800x600, 832x624, 1024x600, 1024x768, 1152x864, 1280x600, 1280x720, 1280x768, 1280x800, 1280x960, 1280x1024, 1360x768, 1366x768, 1400x1050, 1440x900, 1600x900, 1600x1200, 1680x1050, 1792x1344, 1856x1392, 1920x1080, 1920x1440, 1920x1200, 2048x1536, 2560x1440, 2560x1600 if these resolutions are supported by your video card's BIOS. *
- Advanced Power Management (APM) and Monitor Detection support are provided by Windows itself.
Planned features :
- VBE 3.0 support (switching refresh rates)
- Uncached Speculative Write Combining (USWC)
- Feature to install the driver without reboot
- VBE 1.02 Support (Banked FB > 64Kb)
- DirectDraw Support
- Hardware Video Overlay Support
- More than one device for output (display, video out device, flat panel)
- 2-bit (mono) and 4-bit (16 colors) support for testing purposes only
- Old adapters support like EGA, CGA, Hercules etc. for testing purposes only :)
Download drivers
This driver is intended for using in case when your have some new or unknown video card(s) and you don't have drivers for it. It's really better to contact manufacturer of your video card or search THE WEB for the drivers. ONLY if you finally cannot find driver for your video card I recommend you to use mine (vbemp.drv). My driver does not provide any kind of 3D hardware acceleration (DirectX & OpenGL). For this purpose third-party libraries can be used.
My driver does NOT support multiple video cards connected simultaneously and this feature is NOT planned.
Before installing VBEMP.DRV I recommend removing any display drivers installed and switching to the standard VGA mode 640x480x16colors.
- Windows 95 - latest Service Pack is recommended
- Windows 98 - latest Service Pack is recommended
- Windows Me - latest Service Pack is recommended
OS | Version | Description | Link |
Windows 9x clones - ALL of them | Release version beta | Universal VBE20 version. * | [?],[?],[?] |
Windows 9x clones - ALL of them | Release version beta | Universal VBE20 version. * | [?],[?],[?] |
Windows 9x clones - ALL of them | Release, debug version pre-beta | Universal VBE20 version. * | [?],[?],[?] |
Windows 9x clones - ALL of them | Release, debug version pre-beta | Universal VBE20 version. * | [?],[?],[?] |
Windows 9x clones - ALL of them | Release version pre-beta | Universal/Manual VBE20 version. * | [?],[?],[?] |
Windows 9x clones - ALL of them | Original source code | FRAMEBUF sample from Windows 9x DDK. Compile it with MASM 6.x. |
* If universal version does not work with your card, you may try Manual version. To get it you should contact me by e-mail & send me report generated by INFOVBE.EXE, so I could send you personal driver for your video card by e-mail.
Installation note 0: Current driver unsolved problems:
- Slow driver operation when user scroll, move or resize a window.
- Locking and garbage problems when entering DOS WDM or console session.
- Garbage problems when displaying text with some screen fonts.
Installation note 1: If you are experiencing problems while installing my driver read article below. Details here: MSKB: How to install or change a video driver (Q131806)
Installation note 2: If your card is working slowly and screen is flickering with VBEMP installed, especially when moving large windows and scrolling texts you may improve it: go to Control Panel -> Display -> Settings tab -> Advanced button -> Troubleshooting tab and move Hardware acceleration slider to the left position (None). Details here: MSKB: How to Change the Graphics Hardware Acceleration Setting in Windows (Q263391)
Installation note 3: Starting from version dated 2008.03.16, vbemp9x.zip contains these variants of VBEMP driver:
'UNIVERSAL':- VBE9xBASE16 - version (VBE 2.0+) for ANY cards, 8/16 bit color ONLY
- VBE9xUNI - version (VBE 2.0+) for ANY cards
- VBE9xATI - version (VBE 2.0+) for ATI, 3dfx, Cirrus Logic, Intel740, TSENG Labs cards ONLY
- VBE9xNV - version (VBE 2.0+) for nVidia, Riva128, Intel (845+), Trident, Matrox, S3 cards ONLY
- VBE9xINTEL - version (VBE 2.0+) for Intel (845+) cards ONLY (experimental version)
- VBE9xBOCHS - version (VBE 2.0+) for BochsVBE card ONLY
- VBE9xVIRTUALBOX - version (VBE 2.0+) for VirtualBoxVBE card ONLY
- VBE9xVMWAREII - version (VBE 2.0+) for VMWare II SVGA card ONLY
- VBE9xCL54 - version (VBE 1.02) for Cirrus Logic CL-GD54xx cards ONLY
Installation note 3: Version dated 2014.01.31 and later, 140131.zip contains these variants of VBEMP driver:
'UNIVERSAL':- 128MB - version (VBE 2.0+) for ANY cards, VRAM memory limited to 128 Mb.
- 064MB - version (VBE 2.0+) for ANY cards, VRAM memory limited to 64 Mb.
- 032MB - version (VBE 2.0+) for ANY cards, VRAM memory limited to 32 Mb.
- ATOMBIOS - version (VBE 2.0+) for AMD/ATI cards with ATOMBIOS - mostly HD series and later.
- LOGGED - debug version, produces c:vbelog.txt, see Driver troubleshooting section below.
Special folders:
- NOVESA - VXD driver, which prevent access to VESA modes in DOS session
- PATCH - contains GETBIOS tool, which can save binary VBIOS from memory into file, mostly named c000.rom, for modifying.
- PATCH - contains INTELDMP patcher, it can add new video modes into resident Video BIOS for some chips.
First of all, you must figure out and select what BIOS file is for your video card (it can be either EXE or DAT file), or you can use binary file, dumped by GETBIOS tool.
In example, provided below we use ALV_1411.EXE - it is for Intel 91xG (Moble).
How to use it:
- Run: INTELDMP ALV_1411.EXE, it prints actual mode table from BIOS file, find one, that you can safely replace with custom mode. Remember which mode to replace and convert mode number to decimal.
- Run: INTELDMP ALV_1411.EXE ALV.EXE 48 1024 600, to create a new BIOS file (ALV.EXE) from old (ALV_1411.EXE) with new mode. Note that 48 is a decimal mode number, in p.p. 1 it will be shown as 0x30 (hex).
- PATCH - contains RAMBIOS tools, which can load and activate binary VBIOS file into memory, replacing default one: rambios.com /i vbios.bin or rambios.exe vbios.bin.
- PATCHVBIOS - contains INTEL VBIOS collection, see below:
Installation note 3: By default any Plug'N'Play video cards will be detected CORRECTLY by 9x version of my driver. But if you wish, you MAY add your video card's PCI VENDOR/DEVICE ID in vbemp.inf so your card will named as it is or you can select the driver manually when Windows firstly find an unknown device. This is an optional operation!
Sample:
To create this string you may use Craig Hart's PCI.EXE tool mentioned below, here is a sample listing:
Installation note 4: If you trying to use VBEMP driver with ISA/MCA/VLB card in most cases you must play with the following BIOS Setup options:
- 'ISA LFB Base Address'
- 'ISA Linear Frame Buffer'
- 'ISA VGA Frame Buffer Size'
- 'Memory Hole At 15M-16M'
Screenshots. VBEMP 9x Project in work :)
- Windows 95 4.00.1111 (4.00.950 C) [?],[?],[?]
- Windows 98 Second Edition 4.10.2222 [?],[?],[?]
- Windows Millennium Edition 4.90.3000 [?],[?],[?]
Instruction: Complete VBEMP driver removal from Win9x system
- In %WINDOWS_DIR%SYSTEM.INI modify or add this line in [boot] section:
- Remove files:
- Delete your card from Device Manager or clean Registry hives:
Additional information
Official VESA BIOS Extensions 2.0 standard information - http://www.vesa.org/public/vbe/vbe20.pdf.
Official VESA BIOS Extensions 3.0 standard information - http://www.vesa.org/public/vbe/vbe3.pdf.
Official VESA BIOS Extensions 3.0 standard information - http://www.vesa.org/public/vbe/vbecore3.pdf.
Official VESA BIOS AF Extensions standard information - http://www.vesa.org/public/vbe/VBE-AF07.pdf.
Official VESA BIOS DDC Extensions 1.1 standard information - http://www.vesa.org/public/vbe/VBEDDC11.pdf.
THE VESA GENERALIZED TIMING FORMULA (GTF) Excel™ spreadsheet - http://www.vesa.org/Public/GTF/GTF_V1R1.xls.
VESA COORDINATED VIDEO TIMING (CVT) GENERATOR Revision 1.1 Excel™ spreadsheet - http://www.vesa.org/Public/CVT/CVTd6r1.xls.
SciTech Software Inc released commercial version of a similar driver (SciTech SNAP Graphics changelog) for Windows, OS/2, QNX & Linux. These versions are 21-day trial.
- Download Windows 2000/XP Version 3.1.4 DPVL beta2 [dpvlbeta2.zip].
- Download Windows NT 4.0 Version 3.1.1 [snap-winnt-3.1.1.exe]. Supported hardware.
- Download Windows NT 4.0 Version 3.1.3 beta 1284 [snap-winnt-3.1.3-1284.exe].
- Download DOS Version 3.1.1 [snap-dos-3.1.1.exe]. Supported hardware.
- Download IBM OS/2 (eCS) Version 3.1.8 [snap-os2-3.1.8.exe]. Supported hardware.
A more recent Personal (6-month trial) version you may get after FREE registering at http://my.scitechsoft.com/navigate.php.
Here you can find some tests and benchmarks which I use to test performance of my driver - Benches ([?],[?],[?])
Here are the list of third party software, which is compatible with VBEMP driver and provides limited support of 3D acceleration.Name | Owner | API | Compatibilty | Notes |
Reference Rasterizer (DitectX SDK) | Microsoft | DX8, DX9 | Same as DirectX, x86/x64 | Supports shaders, Slow |
RGB Rasterizer (DitectX SDK) | Microsoft | DX8, DX9 | Same as DirectX, x86/x64 | No shaders support, Faster than reference |
Pixomatic | RAD Game Tools | DX8, DX9 | Windows9x/NT4 and later | Supports SMP. No shaders support, Faster than MS RGB Rasterizer |
SwiftShader 2.0/3.0 | TransGaming | DX8, DX9 | Windows 2000 and later | Supports SMP. Since v 3.0 supports x64, but Windows 2000 is dropped. Some slower than Pixomatic. Shaders support. Problems with FFP rendering. |
Mesa3D | open-source | OpenGL | Windows9x/NT4 and later | Newer versions supports Windows XP and later. |
Visit VOGONS Vintage Driver Library for Mesa3D, SwiftShader drivers.
Here is an older wrappers, renderers which are tested: Realtech VR DXGL Wrapper, AltOpenGL, TechLand Soft OpenGL, mesaFX OpenGL, SciTech Software GLDirect.
Tested video cards/chipsets
- VBE 3.00 INTERNAL Intel G43 Graphics
- VBE 3.00 INTERNAL Intel Q963 (GMA 3000) Graphics
- VBE 3.00 INTERNAL Intel 946GZ Graphics
- VBE 3.00 INTERNAL Intel 945G Graphics
- VBE 3.00 INTERNAL Intel 915G Graphics
- VBE 3.00 INTERNAL Intel 82865G Graphics
- VBE 3.00 INTERNAL Intel 82845G Graphics
- VBE 2.00 AGP 8Mb ATI Rage 3D Pro AGP 2x (BGA Package)
- VBE 2.00 AGP 8Mb ATI Rage P/M Mobility AGP 2x
- VBE 2.00 AGP 32Mb ATI Rage128 PF/Pro AGP 4x (TMDS)
- VBE 2.00 AGP 64Mb ATI Radeon 9000 Series (RV250)
- VBE 2.00 INTERNAL ATI Radeon Xpress 200M Series
- VBE 3.00 16Mb? ATI Radeon X1650 Series (RV530 LE)
- VBE 3.00 16Mb? ATI Radeon X1950 GT [RV570]
- VBE 3.00 AGP 16Mb 3Dfx Interactive Voodoo3 2000
- VBE 3.00 PCI 4Mb nVidia RIVA 128 2D/3D Gui Accelerator
- VBE 3.00 AGP 4Mb nVidia RIVA 128 2D/3D Gui Accelerator
- VBE 3.00 AGP 16Mb nVidia RIVA TNT GUI+3D Accelerator [NV4]
- VBE 3.00 AGP 16Mb nVidia RIVA TNT2 Model 64 [NVM64]
- VBE 3.00 AGP 32Mb nVidia GeForce2 MX/MX400 [NV11]
- VBE 3.00 AGP 64Mb nVidia GeForce2 GTS/PRO [NV15]
- VBE 3.00 AGP 64Mb nVidia Geforce3 Ti 200 [NV20]
- VBE 3.00 AGP 128Mb nVidia GeForce FX 5200 [NV34.3]
- VBE 3.00 INTERNAL nVidia GeForce 6100 nForce 430
- VBE 3.00 nVidia GeForce 7600GS
- VBE 2.00 PCI 4Mb Matrox MGA-2164W Millenium II PCI
- VBE 2.00 AGP 4Mb Matrox MGA-G100 AGP
- VBE 2.00 PCI 4Mb TSENG LABS Inc ET6000
- VBE 2.00 PCI 2Mb S3 Inc 86C375 ViRGE/DX
- VBE 2.00 AGP 4Mb S3 Inc 86C368 Trio3D/2X
- VBE 2.00 INTERNAL Trident CyberBlade i7
- VBE 2.00 PCI 8Mb? VirtualBox VBE Adapter (Innotek VirtualBox)
- VBE 2.00 PCI 16Mb VMware SVGA II (VMware)
- VBE 2.00 PCI 4Mb Cirrus Logic CL-GD5446 PCI (QEMU)
- VBE 2.00 PCI 4Mb IBM Plex86/Bochs VBE Adapter (QEMU/Bochs)
- VBE 1.02 INTERNAL 1Mb Cirrus Logic CL-GD5428
- VBE 1.02 VLB 1Mb Cirrus Logic CL-GD5428
- VBE 1.02 INTERNAL 512Kb Cirrus Logic CL-GD5424
Driver troubleshooting
When you have problems with VBEMP, there are two basics scenarios:
- Computer starts, but driver is not working properly.
- Computer not starts, i.e. crashes, having BSOD or 'hang'.
Cirrus Logic Sound Cards Review
Before debugging try these actions, provided below:
- Physically remove memory chips (note that with more than 512 Mb RAM Windows 9x may not work correctly without special preparation): 512 -> 256 -> 128 -> 64 -> 32 -> 16 -> 8.
- Or enter this line MaxPhysPage=20000 into section [386enh] of system.ini file, limiting accessible RAM to 512 Mb.
- Upgrade motherboard's BIOS to the latest version.
- Clear CMOS settings to default or safe.
- Decrease AGP Aperture in BIOS to lowest value as it is unused by VBEMP.
- Temporarily remove or disable in BIOS any devices, external controllers such as: usb, sound, hdd, lan or others.
- Try a videocard with another bus: AGP, PCIe, PCI, onboard.
- Windows 98/ME only: Try to enable/disable ACPI BIOS support, see ACPIOption registry value. After changing it you must delete (by removing HKEY_LOCAL_MACHINEENUM subtree) and redetect all system devices.
To start debugging process you MUST request a DEBUG-version of driver from me by e-mail. Here are the solutions in brief:
- Method #1 (using logged version): Manually create c:vbelog.txt. Install logged version. When it runs, logging is made to c:vbelog.txt. Please send me this log after you system is loaded or crashed.
- Method #2 (using Debugger/WDeb386): Use Microsoft Windows 9x x86 32-bit Debugging Tools to trace debug logging information from the driver via serial port:
- For Windows 95: search Internet for Win95ddk
- For Windows 98: search Internet for Win98ddk.exe (19987736 bytes)
- For Windows 98SE: search Internet for Win98ddk.exe (26377712 bytes)
- For Windows Me: http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx, winmeddk.exe (1469056 bytes)
OR Install debugging components only from here: [?],[?],[?] (Win9x/ME only).
Additional PC with installed Windows 9x/ME is reqired for debugging process. Connect two PC's using this nullmodem serial cable:- For Windows 95/98/98SE/ME:
On target PC - Copy debugger.exe to Windows root directory (as usual it is - C:WINDOWS) and make sure that system.ini resides also there contains these lines:
Firstly, connect two PC's via serial cable.
Secondly, start host PC and execute rterm.exe.
Then start target PC. It will be started in debugmode. If target PC hangs, exit from rterm.exe on debugger PC and send vbe.log to me.
After you produce logs from driver you can give me additional information about your system and video adapter. This step is optional!!! Without driver logs this information is meaningless for me!!!
Collect VESA BIOS and system information :
- Download NEW 2in1INFOVBE.EXE ([?],[?],[?]) tool. This archive also contains 1.44 Mb bootable floppy image with this tool for users who don't have DOS or Windows9x already installed.You must run it under pure MS-DOS (Real Mode) like:
- Download Craig Hart's PCI.EXE, pci104vka tool(s) and PCI devices list (place them in one directory overwriting existing version of pcidevs.txt). You must run it under DOS/Windows 9x like: Please send me vbe.txt, devpci.txt, devpci.htm in compressed view (rar, zip, 7z...) by e-mail.
For ISA/VLB card owners: There are new tools - lfb_det.exe/lfb.exe, which can automatically detect linear frame buffer address of your card in system address space. They are distributed only by request via e-mail. Read pp.3 ('Collect system information'), make logs and I will send you these tools.
VBE FAQ: VESA BIOS Extensions standard deviation list
Cards (chips) affected | Description |
Intel 845G, 855G, 865G, 915G and later | PRB: Cannot set native resolutions i.e. 1024x600, 800x480, 1280x800, mostly on notebooks with Intel integrated graphics. |
Intel 845G, 855G, 865G, 915G and later | PRB: Cannot set resolution higher than 800x600x8bits and 640x480x16bits. |
Intel 810E, 815E series | PRB: Cannot use linear frame buffer, but card identifies itself as VBE 3.0 compatible. |
ATI Radeon Xkkkk series (starting with X700) | PRB: Cannot use custom screen refresh rates, but card identifies itself as VBE 3.0 compatible. |
nVidia GeForce 5xxx/6xxx/7xxx (and newer ones) | PRB: Cannot use custom screen refresh rates, but card identifies itself as VBE 3.0 compatible. |
nVidia GeForce 5xxx/6xxx/7xxx (and newer ones) | PRB: Cannot set any resolution higher than 800x600. |
VESA 1.x cards | PRB: When accessing fullscreen textmode, computer 'hangs'. |
Different VESA cards | PRB: When calling VBE functions, highword bits of EAX register and may be others (i.e. 0x????0000) may contain garbage. |
Project history
- DEC 06, 2007: initial 'semi-automatic' version is made.
- DEC 08, 2007: fixes and some cleanup in code is made.
- DEC 13, 2007: first public release of VBEMP 9x web page.
- DEC 23, 2007: TEMPORARILY announced ability to make a 'Manual' version of VBEMP by request.
- DEC 26, 2007: VBEMP minor changes.
- MAR 08, 2008: new MANUAL experimental version made for Intel chips.
- MAR 15-16, 2008: new UNIVERSAL version is finally made.
- MAR 22-23, 2008: UNIVERSAL version updated.
- OCT 21, 2008: new UNIVERSAL version with TSR VBIOS and ASUS EEE PC support.
- JUN 01, 2010: UNIVERSAL version updated.
- JAN 31, 2014: new UNIVERSAL version with Intel(r) TSR VBIOS kit.
- FEB 14, 2014: UNIVERSAL version updated.
Changelog
License
* term abbreviated to VBEMP below.
- The authors - Bearwindows and AnaPa Corporation, exclusively own all copyrights to VBEMP.
- Anyone may use this software free for noncommercial use only.
- For commercial use, send a email request for pricing.
- The VBEMP, may be freely distributed, with exceptions noted below, provided the distribution package is not modified. No person or company may charge a fee for the distribution of VBEMP without written permission from the copyright holder. The VBEMP may not be bundled or distributed with any other package without written permission of the copyright holder. Distribution of any VBEMP version before 10/19/2007 or unauthorized site content mirroring is strictly prohibited.
- VBEMP IS DISTRIBUTED 'AS IS'. NO WARRANTY OF ANY KIND IS EXPRESSED OR IMPLIED. YOU USE AT YOUR OWN RISK. THE AUTHOR WILL NOT BE LIABLE FOR DATA LOSS, DAMAGES, LOSS OF PROFITS OR ANY OTHER KIND OF LOSS WHILE USING OR MISUSING THIS SOFTWARE. THE LICENSE TERMS CONTAINED IN THIS DOCUMENT ARE SUBJECT TO BEING CHANGED, WITHOUT NOTICE, IN FUTURE EDITIONS.
- You may not use, copy, emulate, clone, rent, lease, sell, modify, decompile, disassemble, otherwise reverse engineer, or transfer the licensed program, or any subset of the licensed program, except as provided for in this agreement. Any such unauthorized use shall result in immediate and automatic termination of this license and may result in criminal and/or civil prosecution.
- Bearwindows and AnaPa Corporation reserve all rights not expressly granted here.
- Installing and using VBEMP signifies acceptance of these terms and conditions of the license.
- If you do not agree with the terms of this license you must remove VBEMP files from your storage devices and cease to use the product.
Thank you for using VBEMP.
Bearwindows and AnaPa Corporation
Cirrus Logic Sound Cards Download
I've been working on a reworked driver, based on Linux kernel 4.9,that doesn't require out-of-tree patches to the upstream kernel modules.This driver also adds a lot of new features and bugfixes like fixedmicbias setting on LineIn, exposing of WM8804 status and AES bitsas ALSA controls and configurable minimum/maximum samplerate limits.
Installation
The driver is included in official RPi and Raspbian kernels since early 2017.Make sure your system is up to date and you are running RPi kernel 4.9.12 or newer.
Source code is available from the usual placehttps://github.com/raspberrypi/linux.
Please note: If you've been compiling from source please switch to theofficial RPi kernel source. I'm no longer maintaining the code in my developmenttreecirrus-ng-4.9.y
Configuration for kernel 4.9 and newer
Enable the driver
Add the following line to /boot/config.txt
to enablethe Cirrus Logic card driver
Note: MMAP support is already enabled by default in kernel 4.9, you nolonger need to add the i2s-mmap
overlay.
Setup module dependencies
The cirrus driver requires some manually defined module dependencies,if you fail to add them the driver won't load properly.
Create a file /etc/modprobe.d/cirrus.conf
with thefollowing content:
Download and install 'usecase' mixer scripts
Download cirrus-ng-scripts.tgzand extract it for example in /home/pi/bin
.
Note: If you had installed the older usecase scripts for kernel 4.4 you needto remove them.
You have to start the appropriate scripts before you can usethe card. For example:
Additional configuration steps
Disable RPi on-board audio device snd-bcm2835
On Raspbian the RPi on-board audio device snd-bcm2835
isenabled by default. When you run aplay -l
you'll seetwo cards, the Cirrus card sndrpiwsp
and the on-boardcard bcm2835
.
If you don't need on-board audio you can disable it by removing(or commenting out) the dtparam=audio=on
line from /boot/config.txt
.
Optionally: use fixed card number
If you don't want to disable snd-bcm2835 or if you also havean USB audio device connected you might notice thatthe card numbers under which the drivers register will change.Sometimes the Cirrus card will card 0, sometimes on-board audio.The card number depends on which driver is registered first, whichis purely random.
You can manually assign fixed card (slot/index) numbers usingthe slot
option of the snd
module. Forexample, if you want the Cirrus card always to be the first andon-board audio the second one, add the following line to your/etc/modprobe.d/cirrus.conf
file:
For kernel 4.9 add this line:
Cirrus Logic Sound Cards Redeem
Troubleshooting
If something doesn't work as expected please post your questions inthis threadon the element14 site.
In order to track down problems follow the steps below andinclude the URLs to the paste files in your post:
Cirrus Logic Sound Cards & Media Devices Driver Download Windows 10
Add the following line to
/boot/config.txt
toenable devicetree debugging, then reboot your RPi.Upload your
/boot/config.txt
file, theGPU firmware version, GPU firmware and linux kernel logsand the outputs oflsmod
andaplay -l
.The easiest way to do this is by using thepastebinit
command which is included in Raspbian. Enter the followingcommands and include the URLs that are output on theterminal in your post: