element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Raspberry Pi
  • Products
  • More
Raspberry Pi
Raspberry Pi Forum Cirrus Logic Audio Card and Raspberry Pi 3
  • Blog
  • Forum
  • Documents
  • Quiz
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Raspberry Pi to participate - click to join for free!
Featured Articles
Announcing Pi
Technical Specifications
Raspberry Pi FAQs
Win a Pi
Raspberry Pi Wishlist
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • Replies 37 replies
  • Subscribers 669 subscribers
  • Views 4420 views
  • Users 0 members are here
  • rpi3
  • raspberry_pi
  • raspeberry_pi_accessories
  • raspberry pi 3
  • local build
Related

Cirrus Logic Audio Card and Raspberry Pi 3

boga
boga over 9 years ago

Hi!

 

Main idea of starting this discussion is that if anyone has a working setup with Raspberry Pi 3 then it would be nice if you could share the image. Or the instructions to get the Cirrus Logic Audio card working with Raspberry Pi 3.

 

I tried 2 different methods and no luck so far. I must say that I am a hardware guy and do not know too much about programming and linux. Trying to educate myself though.

 

Here is what I have tried.

 

1. I downloaded the ready made all-in-one package from element14 Cirrus Logic Audio Card page and installed the image using Win32DiskImager. When I tried to boot the Raspberry Pi 3 was just showing the Rainbow Screen and nothing was happening. Therefore the system was stuck and not booting at all. I did not investigate it further thinking that probably the ready made image doesn't work for RPi3.

 

2.  The second time I installed the latest Raspbian image. Tested that it was working on RPi 3. Then followed the official instruction on CirrusLogic wiki page https://github.com/CirrusLogic/rpi-linux/wiki/Building-the-code .  I used local build as I don't have Linux installed on my PC (yet!). Thought that maybe these will work for RPi3 also if I compile the kernel in the machine itself.

Unfortunately no luck. The RPi3 starts to boot but then hangs at a line which says: random: nonblocking pool is initialized. Which can basically mean anything according to my research. Of course I didn't give up so fast. I tried all kinds of different things according to the hints that I found by Googling. But I do not think they are worth mentioning here.

 

So. I would be really happy if someone who knows more about linux and programming could look into it and share the information if he / she gets Cirrus Logic Audio Card working with RPi3.

Of course all kind of suggestions about the described situation are also welcome.

 

All the best

  • Sign in to reply
  • Cancel
  • bulcan10
    bulcan10 over 9 years ago

    Hello Juri,

     

    I experienced the same problem with Pi 3, step 1. I did not try step 2. Even though, I noticed that the Download file on this website has been recently updated, the UI looks different. The Cirrus Logic Audio card and this software works on Pi 1 Model A+ board. I also tested the previous ver of the OS on Pi 2 Model B and also worked great.

     

    Hopefully, the manufacturer will release a new embedded OS that works with Pi 3.

     

    Best

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 9 years ago in reply to bulcan10

    It works just fine with the Pi3. Just load raspbian jessie, run rpi-update to make sure you have up-to-date firmware, and follow the instructions on how to build your own kernel: https://www.raspberrypi.org/documentation/linux/kernel/building.md 

    The repo with the cirrus drivers is https://github.com/HiassofT/rpi-linux.

    Here is proof that it works:

     

    pi@one:~ $ uname -a
    Linux one 4.4.6-v7+ #1 SMP Wed Apr 13 04:39:03 UTC 2016 armv7l GNU/Linux
    pi@one:~ $ arecord -l
    **** List of CAPTURE Hardware Devices ****
    card 1: sndrpiwsp [snd_rpi_wsp], device 0: WM5102 AiFi wm5102-aif1-0 []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    pi@one:~ $ aplay -l
    **** List of PLAYBACK Hardware Devices ****
    card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]
      Subdevices: 8/8
      Subdevice #0: subdevice #0
      Subdevice #1: subdevice #1
      Subdevice #2: subdevice #2
      Subdevice #3: subdevice #3
      Subdevice #4: subdevice #4
      Subdevice #5: subdevice #5
      Subdevice #6: subdevice #6
      Subdevice #7: subdevice #7
    card 0: ALSA [bcm2835 ALSA], device 1: bcm2835 ALSA [bcm2835 IEC958/HDMI]
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    card 1: sndrpiwsp [snd_rpi_wsp], device 0: WM5102 AiFi wm5102-aif1-0 []
      Subdevices: 1/1
      Subdevice #0: subdevice #0

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 9 years ago in reply to Former Member

    John,

     

    Many thanks for this. I'm going to attempt this now on a RPi 3 with 4.1.18-v7+. Although I have a reasonable knowledge of Linux and have successfully built executables from C language sources, I've never compiled a kernel before.

     

    You gave a link to the git repository for the Cirrus Logic drivers, however I don't know how to include these in the sources for build. 

     

    Any advice, or a step by step walkthrough of the process would be most welcome.

     

    Kind regards

    Alan

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 9 years ago in reply to Former Member

    Hey John,

     

    I'm in the same boat as Alan, trying to get a kernel going. I've tried a few versions of the steps in this thread: Driver fixes and updates to kernel 3.18.16 and 4.0.5  but still can't see the cirrus card after rebooting the pi 3.

     

    Any help would be greatly appreciated.

     

    Thanks,

     

    Eric

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 9 years ago in reply to Former Member

    Hi Eric,

     

    Glad I'm not alone!

     

    Let's try and crack this- I'm sure that if we go at it scientifically and document on here what we do, we should be able to make some progress.

     

    I'm working with the NOOBS distro although I don't have a problem with using any other if that's what it takes. That said, reading the thread in your link (thanks for that btw, I'd not seen that one before) people are getting it going with NOOBS using the pre-compiled kernels, once they get the config files correctly configured so it seems that this would be the logical way to go.

     

    I don't have a huge amount of time at the moment but will have a go; if I succeed I will happily send you an image!

     

     

    Cheers

    Alan

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 9 years ago in reply to Former Member

    Hi Alan!

     

    I got my card to show up finally. Hitting the hay for now but check out this entire thread and my posts: Re: Driver fixes and updates to kernel 3.18.16 and 4.0.5

    it might get you on the right track. I didn't use NOOBS, just imaged an SD card with rasbian jessie 3.18.16 I think, the latest one. Yeah, I think really accurately documenting everything I did to get it to work in layman's terms will help a lot. I will chime in more tomorrow.

     

    Cheers,

     

    Eric

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 9 years ago in reply to Former Member

    Hi Eric / Alan,

     

    Following along here.  I'm working through this process as well.  Alan, I've gone the NOOBS way and followed the tutorial on GitHub (https://github.com/CirrusLogic/rpi-linux/wiki/Building-the-code, but my first run hasn't yet been successful.

     

    Eric, congrats on getting the device working!  I see you went with a diff OS version than what NOOBS installs.    I'm now reading through your Driver fixes link, however, the gaps of my knowledge are many, so I'm tagging along and hoping I can piece together a functioning system. 

     

    Happy to post a complete tutorial as well, should I get this working.  Current state of being:

     

    pi@raspberrypi:~/bin/raspberrypi/tools $ arecord -l

    **** List of CAPTURE Hardware Devices ****

     

    pi@raspberrypi:~/bin/raspberrypi/tools $ aplay -l

    **** List of PLAYBACK Hardware Devices ****

    card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]

      Subdevices: 8/8

      Subdevice #0: subdevice #0

      Subdevice #1: subdevice #1

      Subdevice #2: subdevice #2

      Subdevice #3: subdevice #3

      Subdevice #4: subdevice #4

      Subdevice #5: subdevice #5

      Subdevice #6: subdevice #6

      Subdevice #7: subdevice #7

    card 0: ALSA [bcm2835 ALSA], device 1: bcm2835 ALSA [bcm2835 IEC958/HDMI]

      Subdevices: 1/1

      Subdevice #0: subdevice #0

     

    Thanks for getting this conversation going.  Very helpful.

    Jeff

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 9 years ago in reply to Former Member

    Actually, I think I've got it working by following the instructions here RPi Linux driver for Wolfson / Cirrus Logic Audio Card

     

    I started at "Pre-compiled kernels' w/ a wget for the latest and seems like we're cooking. image

     

    pi@raspberrypi:~ $ arecord -l

    **** List of CAPTURE Hardware Devices ****

    card 1: sndrpiwsp [snd_rpi_wsp], device 0: WM5102 AiFi wm5102-aif1-0 []

      Subdevices: 1/1

      Subdevice #0: subdevice #0

    pi@raspberrypi:~ $ aplay -l

    **** List of PLAYBACK Hardware Devices ****

    card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]

      Subdevices: 8/8

      Subdevice #0: subdevice #0

      Subdevice #1: subdevice #1

      Subdevice #2: subdevice #2

      Subdevice #3: subdevice #3

      Subdevice #4: subdevice #4

      Subdevice #5: subdevice #5

      Subdevice #6: subdevice #6

      Subdevice #7: subdevice #7

    card 0: ALSA [bcm2835 ALSA], device 1: bcm2835 ALSA [bcm2835 IEC958/HDMI]

      Subdevices: 1/1

      Subdevice #0: subdevice #0

    card 1: sndrpiwsp [snd_rpi_wsp], device 0: WM5102 AiFi wm5102-aif1-0 []

      Subdevices: 1/1

      Subdevice #0: subdevice #0

    pi@raspberrypi:~ $

     

     

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 9 years ago in reply to Former Member

    Jeff that's brilliant!

     

    Which kernel did you go with- the 4.1.x or the 4.4.x?

     

    Kind regards

    Alan

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 9 years ago in reply to Former Member

    Okay so where I am now:

     

    I have the new kernel in and running; uname -a reports 4.1.19-v7+ with the correct date of 11th March 2016

    I've added the 2 lines  in /boot/config.txt

    I created the module dependencies file /etc/modprobe.d/cirrus.conf with the 3 softdep lines in

    I created the directory bin in home/pi and wget'd and extracted the usecase scripts to there

     

    on reboot,

     

    I have no audio capture devices and only the default on board play device,

    Attempting to run one of the usecase scripts results in:

    mixer: Control hw:sndrpiwsp open error: no such device

     

    I've checked the config file entries and they look okay, I looked in /var/log/syslog and can't see anything there that seems relevant... :/

     

    any suggestions?

     

    Kind regards,

    Alan

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube