Post Go back to editing

Cancelling out the Analog Input Line and Adding More TDM8 Outputs to ADSP-21569

Hi all, 

Let's start with my tools:

My hardware and software:

SigmaStudio for SHARC 4.6.0

CrossCore Embedded Studio 2.10.0




I have an application where I aim to use only two optical SPDIF inputs and get 32-TDM8 outputs (over three SPORTs) which we are going to feed to our external powerr ICs.

My starting point is slightly modified SS_App_Core1 example, and I am taking further from that... I have changed the soft switch configuration "adi_ss_sys.c" for optical SPDIF input and it works flawlessly. 

I tried several steps to get close to my target application: 

1. Cancelling analog inputs, generating a new Framework config and re-built SS_App_Core1.dxe

First, I have changed the number of input channels to two (kept the the output channels as 8 to begin with)

Then I have decreased the number of audio sources to 1 (Cancel out the SPORT4A, i.e. analog inputs). Nothing else is changed. 

Then I generated the “adi_ss_fw_config_2156x.h” file and replaced the one in the ..\Framework\Include folder. 

I have rebuilt the application with new framework config and booted the board with new *.dxe... Then Sigma Studio / Link-Compile-Download. When I download the code to board, I receive no errors but also no sound...

I did not do any changes in SRU, or in any source files. When I checked the “adi_ss_fw_config_2156x.h” config file, I see that the SPDIF input channels are now assigned to PIN0, probably this is why I do not hear any sound at all. But I couldn't find anything to change in the framework or source files in CCES project too... There is a macro in "adi_ss_arm_fw_internal.c" as below:

#define PIN_SPDIF   (1)       /*!< Pin used for SPDIF data */

But this is not called anywhere in the project as far as i can see and the change this to (0) is not effective.

2. Only adding 8 TDM8 outputs to SS_App_Core1 demo, generating a new Framework config and re-built SS_App_Core1.dxe

After failing the first attempt, I have decided to check if I could do increase TDM8 outputs by adding another SPORT to the hardware configuration. After the necessary corrections, I regenerated *.dxe and run the application. No errors and i can listen the the outputs (although I havent checked the TDM8 data from the new SPORT)

The fact that this application works points out that the PIN numbers assigned to input channels matter, and needs to be modified somewhere that I couldn't find. 


So my questions are: 

1. To begin with, is it possible too get three TDM8 outputs (24 channels) from the dev. board, if we manage the do the connections ourselves? 

2. What steps I am missing when cancelling analog inputs and using only SPDIF optical inputs? Is there any need for SRU or framework code modification? If so, can you please point out what should be done? 

(The next step will be cancelling out ADC too but maybe is it too early to ask that)

Thanks for the support.