Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AD35XXR: Add/update support to the AD3541R, AD3542R, AD3551R, Ad3552R #1472

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

caosjr
Copy link
Contributor

@caosjr caosjr commented Sep 26, 2024

PR Description

Developed a single IP for the AD3552R, AD3551R, AD3542R, and AD3541R parts.
This new IP has support for Single SPI (Classic), Dual SPI, and Quad SPI. It supports
changing the SPI mode during execution by setting the multi_io_mode field.

It was tested the interface file with some modifications on the tb.

Created a documentation for this new IP, and the regmap modification on the axi_ad35xxr.

PR Type

  • Bug fix (change that fixes an issue)
  • New feature (change that adds new functionality)
  • Breaking change (has dependencies in other repos or will cause CI to fail)

PR Checklist

  • I have followed the code style guidelines
  • I have performed a self-review of changes
  • I have compiled all hdl projects and libraries affected by this PR
  • I have tested in hardware affected projects, at least on relevant boards
  • I have commented my code, at least hard-to-understand parts
  • I have signed off all commits from this PR
  • I have updated the documentation (wiki pages, ReadMe files, Copyright etc)
  • I have not introduced new Warnings/Critical Warnings on compilation
  • I have added new hdl testbenches or updated existing ones

@sarpadi
Copy link
Contributor

sarpadi commented Oct 3, 2024

The axi_ad35xx AXI Stream input interface is not defined

@caosjr caosjr force-pushed the dev_ad3542r branch 2 times, most recently from 9513a91 to 1908ba5 Compare December 13, 2024 14:22
It is supporting single SPI (Classic), dual SPI, and Quad SPI
(according to the eval limitations) for the DACs AD3541R,
AD3542R, AD3551R, AD3552R.

Changed the regmap, the reg DAC_CUSTOM_CTRL needs to assert
the MULTI_IO_MODE field to choose the SPI mode on the AXI
controller.

Signed-off-by: <[email protected]>
Adapted documentation for the axi_ad35xxr to include
the four DACs: AD3541R, AD3542R, AD3551R, and AD3552R.

Adapted AD355xR_EVB to include information about the
AD3551R and AD3552R.

Inserted information about the QSPI_SEL pin.

Inserted MULTI_IO_MODE reg to the remap of
the ad3552r.

Signed-off-by: <[email protected]>
Removed axi libraries because they were substitute by
axi_ad35xxr

Removed evaluation board projects because they were
substituted by ad35xxr_evb

Signed-off-by: <[email protected]>
@caosjr caosjr marked this pull request as ready for review December 13, 2024 14:35
@caosjr caosjr changed the title Development for the AD35xxR library/axi_ad35xxr: Add support to the AD3541R, AD3542R, AD3551R, Ad3552R Dec 13, 2024
@sarpadi sarpadi changed the title library/axi_ad35xxr: Add support to the AD3541R, AD3542R, AD3551R, Ad3552R AD35XXR: Add/update support to the AD3541R, AD3542R, AD3551R, Ad3552R Jan 17, 2025
@sarpadi
Copy link
Contributor

sarpadi commented Jan 17, 2025

Please recreate commits to have:
-1 documentation commit named "AD35XX: Update documentation" containing only documentation updates
-1 library update commit "AD35XX: Update library" containing only library (IP) updates including deletes, renames etc
-1 project commit "AD35XX: Update project" - you can add specific details in the commit description, containing only project updates including deletes, renames etc.


initial begin

#100 reset_in = 1'b0;

// Write 8 bit SDR
// Classic SPI
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove commented code

ad_connect axi_ad35xxr_dac/qspi_sel dac_qspi_sel

ad_connect axi_ad35xxr_dac/s_axis axi_dac_dma/m_axis
#ad_connect axi_ad35xxr_dac/dma_data axi_dac_dma/m_axis_data
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove commented code

@@ -66,7 +66,8 @@ module axi_ad3552r #(
output dac_csn,
input [ 3:0] sdio_i,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

excessive use of whitespaces

@@ -67,6 +67,7 @@ module axi_ad3552r_core #(
input if_busy,
input [23:0] data_read,
output [23:0] data_write,
output [ 1:0] multi_io_mode,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

excessive use of whitespaces

@@ -46,6 +46,7 @@ module axi_ad3552r_if (

input [ 7:0] address,
input [23:0] data_write,
input [ 1:0] multi_io_mode,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

excessive use of whitespaces

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants