AXI I2S on Ultrascale


I want to upgrade from zynq 7 to zynq ultrascale. The axi_i2s_adi core was connected on the zynq 7 to the pl330 dma the same way as on the zed board. For ultrascale I have not found an example how to connect and configure it and the pl330 is also not available. Can you please describe me how to connect and cofigure the blocks? Do I need to add a axi_dmac for it or is there a pl330 equivalent? Thanks!


  • 0
    •  Analog Employees 
    on Dec 19, 2019 11:47 AM 11 months ago


    You can use this project as an example for i2s.


  • Hi Sergiu

    I can not build the project with vivado 2018.2

    ### ad_ip_instance axi_i2s_adi axi_i2s_adi
    ERROR: [BD 5-390] IP definition not found for VLNV:
    ERROR: [Common 17-39] 'create_bd_cell' failed due to earlier errors.

    however; I tried to read out the connection from the adrv2crr_fmc_bd.tcl without success, there I am missing the data connection from i2s_tx_dma to axi_i2s_adi, only the rx connection is present. so i connect ready, valid, data on tx.

    I am also missing the zed board sound support in my kernel config (2018.2), see attached picture..

    according to wiki:

    Device Drivers  --->
    <*> Sound card support  --->
    <*>   Advanced Linux Sound Architecture  --->
    <*>     ALSA for SoC audio support  --->
    <*>       Audio support for Analog Devices reference designs
    <*>         ZED board sound support

  • 0
    •  Analog Employees 
    on Jan 10, 2020 10:27 AM 10 months ago in reply to zutta1


    The error you encountered usually appears when the ip is not packaged in the library. I managed to build the project just fine (using linux) with 2018.2 so i don't think there is a compatibility issue there. Maybe this link will help.

    As for the connections described in the tcl, this file is almost entirely used for i2s. The only other thing that it does is to place a fan control IP which you can ignore. The TX DMA - I2S connection you are referring to is here.

    Here is a screenshot with the i2s ip connected to the DMAs:

    As for the kernel config question I will have to forward this to my colleagues.

    Let me know if you are still having trouble with the hdl part.


  • 0
    •  Analog Employees 
    on Jan 10, 2020 1:26 PM 10 months ago in reply to zutta1


    Related to Linux, you're right, the Audio support for Analog DEvices reference designs was limited to Microblaze and ARM (32 bit) architectures. Now we enabled also for ARM64.

    So please just pull latest changes from Linux repository and you should be able to enable ADI reference designs on menuconfig.

    Also you can use the ADI Ultrascale defconfig and that should enable I2S and AXI_DMAC drivers.

    make adi_zynqmp_defconfig



  • is it possible to move the drivers to the 2018 release? I only have vivado 2018.2. And the 4.19 does not run with 2018 uboot, only the 4.14. Which ones do I need to copy for the Adau1761?