ΣSigmaStudio Ask AI Русский Log in

Using ADAU1452 with embedded linux system over SPI / I2C

SigmaDSP & SigmaStudio chriho Nov 14, 2014 00:00 4 replies Original on forum ↗
Subscribe
chriho Question
Nov 14, 2014 00:00

Dear Ladies and Gentleman,

we have a project where we want to use the ADAU1452 as a DSP in a power amplifier. Currently we use ADAU1442.

I found the kernel module https://wiki.analog.com/resources/tools-software/linux-software/sigmadsp_genfirmware which is not valid for the ADAU1452. Do you have some similar method of booting the DSP from a linux. We will use a Baytrail CPU with MCP2210 USB to SPI chip where we would connect the ADAU1452 directly.

Do you have any hints that we need to do to make this work? Do you have a Kernel module ready (Kernel 3.16.x or higher)? It is hard to figure out how the process from a SigmaStudio Project to an embedded system should work.

A second question. The DSP has TDM inputs, the Baytrail has HDA outputs that need a Codec on the baseboard. Do you have a HDA to TDM codec? Do you have experience in connecting Intel HDA Audio to the DSP?

Best Regards,

Christian

Audio Signal Processors

adau1452

adau1442

SigmaDSP Audio Processors

linux

embedded_software

Show More

JohnTo Reply
Nov 14, 2014 00:00

Hi Christian,

Perhaps this question should be asked int eh Linux Software forum? This kernel module was not developed by the SigmaStudio SW team so I can't comment on what the issue is.

However, looking at the generated/exported XML files (attached) and the Capture Window results of the ADAU1761 and ADAU1452, they look to be a similar host byte-wide download format with 16-bit address. Some differences: the ADAU452 download performs 16-bit data writes to all on-chip registers and adds a few delays to bring the part under hibernate mode and wait for the PLL to lock on the ADAU1452. Also, if you are peforming a SPI download there should be 3 dummy writes to toggle the slave select line to enable the slave SPI port out of reset.

Regarding the HD audio format, the SigmaDSPs support a TDM protocol, but the integrated SigmaDSP channel suport and audio framework do not support the HD audio protocol (i.e. programming or reading HD audio codec registers through the TDM interface). It "could" work if the audio data is valid every frame and the timeslot data aligned with the DSP TDM channels correctly. But we have never tested HDA connection to see if it works.

-JT

6648.950576e61a55aaf0476670051ebde6bb.png
6648.950576e61a55aaf0476670051ebde6bb.png
6648.950576e61a55aaf0476670051ebde6bb.png-620x215.png
6648.950576e61a55aaf0476670051ebde6bb.png-620x215.png
chriho Reply
Nov 25, 2014 00:00

Hi JT,

we successfully spoke with the ADAU1452 over SPI (just sending simple commands). I will ask the question about the Linux implementation (if an API exists to load SigmaStudio files via SPI onto the DSP) in the Linux Software Forum.

Thank you.

Intel gives a great flexibility for the data format. I am awaiting an Intel driver to test this.

See chapter 7.5 and 7.6 at http://www.intel.com/content/dam/www/public/us/en/documents/datasheets/atom-z36xxx-z37xxx-datasheet-vol-1.pdf

if it is of interest.

Best Regards,

Christian

holoadri Reply
May 22, 2015 00:00

Hi chriho,

we are using an ADAU1452 as well, which we program with an intel processor board (MinnowMax) and we are researching as well how to integrate the audio device (intel HDA) and the DSP so that we can send/receive I2S signals.

Do you have any update on this topic?

Thanks,

Kind Regards,

Adrian

chriho Reply
Oct 20, 2015 00:00

Hi Adrian,

we had to implement an HDA to I2C Codec on a CPLD.

Best Regards,

Christian