@ SYNCOUTB_0
Definition: api_def.h:216
int32_t ad9172_remove(ad9172_dev *device)
Definition: ad9172.c:383
@ SPI_SDO
Definition: api_def.h:183
Structure holding the parameters for GPIO initialization.
Definition: no_os_gpio.h:85
uint32_t jesd_dual_link_mode
Definition: ad9172.h:76
@ CHIPID_AD9174
Definition: ad9172.h:61
int32_t ad9172_remove(ad9172_dev *device)
Definition: ad9172.c:383
int32_t ad917x_jesd_set_sysref_enable(ad917x_handle_t *h, uint8_t en)
Enable SysRef Input.
Definition: ad917x_jesd_api.c:246
@ CHIPID_AD9175
Definition: ad9172.h:62
int32_t ad917x_init(ad917x_handle_t *h)
Initialize AD917X Device This API must be called first before any other API calls....
Definition: ad917x_api.c:168
#define NO_OS_GENMASK(h, l)
Definition: no_os_util.h:86
signal_type_t
Definition: api_def.h:194
int32_t no_os_spi_write_and_read(struct no_os_spi_desc *desc, uint8_t *data, uint16_t bytes_number)
Write and read data to/from SPI.
Definition: no_os_spi.c:165
signal_type_t syncoutb_type
Definition: ad9172.h:99
Header file of SPI Interface.
int32_t ad917x_reset(ad917x_handle_t *h, uint8_t hw_reset)
Reset the AD917X.
Definition: ad917x_api.c:246
uint8_t jesd_L
Definition: api_def.h:232
uint8_t nco_main_enable
Definition: ad9172.h:81
int32_t ad917x_jesd_get_cfg_param(ad917x_handle_t *h, jesd_param_t *jesd_param)
Read back all current JESD parameter settings.
Definition: ad917x_jesd_api.c:211
Header file of Delay functions.
AD917X API interface header file.
Definition: ad9361_util.h:75
@ NO_OS_GPIO_HIGH
Definition: no_os_gpio.h:123
@ JESD_LINK_0
Definition: api_def.h:209
struct no_os_spi_desc * spi_desc
Definition: ad9172.h:49
int32_t ad917x_get_dac_clk_status(ad917x_handle_t *h, uint8_t *pll_lock_stat, uint8_t *dll_lock_stat)
Get DAC CLK Status.
Definition: ad917x_api.c:473
void * no_os_calloc(size_t nitems, size_t size)
Allocate memory and return a pointer to it, set memory to 0.
Definition: chibios_alloc.c:60
struct no_os_gpio_desc * gpio_txen1
Definition: ad9172.h:53
uint32_t dac_interpolation
Definition: ad9172.h:72
int32_t ad917x_jesd_set_scrambler_enable(ad917x_handle_t *h, uint8_t en)
Enable the de-scrambler for the JESD Interface.
Definition: ad917x_jesd_api.c:307
delay_us_t delay_us
Definition: AD917x.h:92
struct ad9172_dev ad9172_dev
struct no_os_spi_init_param * spi_init
Definition: ad9172.h:87
signal_coupling_t
Definition: api_def.h:201
uint64_t no_os_do_div(uint64_t *n, uint64_t base)
signal_coupling_t sysref
Definition: AD917x.h:89
void no_os_mdelay(uint32_t msecs)
Wait until msecs milliseconds passed.
Definition: aducm3029_delay.c:132
uint64_t dac_clkin_Hz
Definition: ad9172.h:71
uint8_t dev_revision
Definition: api_def.h:172
@ CHIPID_AD9173
Definition: ad9172.h:60
uint8_t init_lane_sync_stat
Definition: AD917x.h:73
Definition: api_def.h:231
@ AD917X_DAC1
Definition: AD917x.h:43
ad917x_handle_t dac_h
Definition: ad9172.h:68
struct no_os_gpio_desc * gpio_reset
Definition: ad9172.h:51
struct no_os_gpio_init_param gpio_txen0
Definition: ad9172.h:89
@ CHIPID_AD9172
Definition: ad9172.h:59
int32_t ad917x_jesd_set_syncoutb_enable(ad917x_handle_t *h, jesd_syncoutb_t syncoutb, uint8_t en)
Enable the SYNCOUTB Output Signal.
Definition: ad917x_jesd_api.c:436
uint8_t nco_channel_enable
Definition: ad9172.h:82
int32_t ad917x_set_page_idx(ad917x_handle_t *h, const uint32_t dac, const uint32_t channel)
Select Page.
Definition: ad917x_api.c:611
int32_t ad917x_set_clkout_config(ad917x_handle_t *h, uint8_t l_div)
Set CLKOUT configuration.
Definition: ad917x_api.c:498
struct no_os_gpio_desc * gpio_txen0
Definition: ad9172.h:52
uint32_t jesd_link_mode
Definition: ad9172.h:75
struct ad9172_state * st
Definition: ad9172.h:54
uint32_t interpolation
Definition: ad9172.h:74
int32_t no_os_gpio_remove(struct no_os_gpio_desc *desc)
Free the resources allocated by no_os_gpio_get().
Definition: no_os_gpio.c:110
Structure holding SPI descriptor.
Definition: no_os_spi.h:177
int32_t ad917x_set_dac_clk(ad917x_handle_t *h, uint64_t dac_clk_freq_hz, uint8_t dac_pll_en, uint64_t ref_clk_freq_hz)
Configure the DAC Clock Input path based on a the desired dac clock frequency, the applied reference ...
Definition: ad917x_api.c:519
struct no_os_gpio_init_param gpio_txen1
Definition: ad9172.h:90
uint32_t dac_interpolation
Definition: ad9172.h:96
uint32_t channel_interpolation
Definition: ad9172.h:73
int32_t ad917x_get_revision(ad917x_handle_t *h, uint8_t *rev_major, uint8_t *rev_minor, uint8_t *rev_rc)
Get API Revision Data.
Definition: ad917x_api.c:304
Structure holding the GPIO descriptor.
Definition: no_os_gpio.h:102
Header file of ad9172 Driver.
int32_t ad917x_jesd_get_pll_status(ad917x_handle_t *h, uint8_t *pll_status)
Get SERDES PLL Status.
Definition: ad917x_jesd_api.c:472
jesd_param_t appJesdConfig
Definition: ad9172.h:69
int32_t ad917x_jesd_enable_datapath(ad917x_handle_t *h, uint8_t lanes_msk, uint8_t run_cal, uint8_t en)
Enable the JESD Interface.
Definition: ad917x_jesd_api.c:341
uint32_t dac_rate_khz
Definition: ad9172.h:70
struct ad9172_init_param ad9172_init_param
@ CHIPID_AD9176
Definition: ad9172.h:63
uint32_t jesd_subclass
Definition: ad9172.h:95
int32_t no_os_gpio_get(struct no_os_gpio_desc **desc, const struct no_os_gpio_init_param *param)
Obtain the GPIO decriptor.
Definition: no_os_gpio.c:55
int32_t ad917x_jesd_get_link_status(ad917x_handle_t *h, jesd_link_t link, ad917x_jesd_link_stat_t *link_status)
Get JESD Link Status.
Definition: ad917x_jesd_api.c:598
void * no_os_malloc(size_t size)
Allocate memory and return a pointer to it.
Definition: chibios_alloc.c:49
tx_en_pin_ctrl_t tx_en_pin_ctrl
Definition: AD917x.h:94
signal_coupling_t sysref_coupling
Definition: ad9172.h:100
spi_sdo_config_t sdo
Definition: AD917x.h:87
int32_t ad917x_set_channel_gain(ad917x_handle_t *h, const uint16_t gain)
Set Channel gain.
Definition: ad917x_nco_api.c:577
uint8_t frame_sync_stat
Definition: AD917x.h:69
void no_os_free(void *ptr)
Deallocate memory previously allocated by a call to no_os_calloc or no_os_malloc.
Definition: chibios_alloc.c:75
uint8_t code_grp_sync_stat
Definition: AD917x.h:67
uint8_t chip_type
Definition: api_def.h:166
uint32_t dac_rate_khz
Definition: ad9172.h:92
signal_coupling_t sysref_coupling
Definition: ad9172.h:80
void no_os_udelay(uint32_t usecs)
Wait until usecs microseconds passed.
Definition: aducm3029_delay.c:120
enum chip_id id
Definition: ad9172.h:67
int32_t ad917x_get_chip_id(ad917x_handle_t *h, adi_chip_id_t *chip_id)
Get Chip Identification Data.
Definition: ad917x_api.c:213
#define NULL
Definition: wrapper.h:64
@ JESD_LINK_ALL
Definition: api_def.h:211
int32_t no_os_gpio_set_value(struct no_os_gpio_desc *desc, uint8_t value)
Set the value of the specified GPIO.
Definition: no_os_gpio.c:203
struct ad7616_init_param init_param
Definition: ad7616_sdz.c:119
spi_xfer_t dev_xfer
Definition: AD917x.h:91
@ AD917X_DAC0
Definition: AD917x.h:41
struct no_os_gpio_init_param gpio_reset
Definition: ad9172.h:91
Definition: api_def.h:164
int32_t ad917x_get_dac_clk_freq(ad917x_handle_t *h, uint64_t *dac_clk_freq_hz)
Get the DAC CLK Frequency.
Definition: ad917x_api.c:462
@ AD917X_CH_NONE
Definition: AD917x.h:49
int32_t no_os_spi_remove(struct no_os_spi_desc *desc)
Free the resources allocated by no_os_spi_init().
Definition: no_os_spi.c:122
uint32_t dac_clkin_Hz
Definition: ad9172.h:93
uint8_t jesd_M
Definition: api_def.h:234
Header file of GPIO Interface.
reset_pin_ctrl_t reset_pin_ctrl
Definition: AD917x.h:96
void * user_data
Definition: AD917x.h:86
uint32_t jesd_link_mode
Definition: ad9172.h:94
uint32_t clock_output_config
Definition: ad9172.h:98
signal_type_t syncoutb
Definition: AD917x.h:88
int32_t no_os_spi_init(struct no_os_spi_desc **desc, const struct no_os_spi_init_param *param)
Initialize the SPI communication peripheral.
Definition: no_os_spi.c:58
int32_t ad917x_nco_enable(ad917x_handle_t *h, const ad917x_dac_select_t dacs, const ad917x_channel_select_t channels)
NCO Enable.
Definition: ad917x_nco_api.c:625
@ AD917X_DAC_NONE
Definition: AD917x.h:39
struct no_os_spi_desc * spi
Definition: main.c:78
uint8_t prod_grade
Definition: api_def.h:170
uint32_t clock_output_config
Definition: ad9172.h:78
int32_t ad9172_init(ad9172_dev **device, ad9172_init_param *init_param)
Definition: ad9172.c:299
uint32_t channel_interpolation
Definition: ad9172.h:97
int32_t no_os_gpio_direction_output(struct no_os_gpio_desc *desc, uint8_t value)
Enable the output direction of the specified GPIO.
Definition: no_os_gpio.c:153
int32_t ad917x_register_write(ad917x_handle_t *h, const uint16_t address, const uint8_t data)
Perform SPI register write access to AD917X Device.
Definition: ad917x_reg.c:23
uint16_t prod_id
Definition: api_def.h:168
uint8_t good_checksum_stat
Definition: AD917x.h:71
uint32_t jesd_subclass
Definition: ad9172.h:77
Error macro definition for ARM Compiler.
int32_t ad917x_jesd_enable_link(ad917x_handle_t *h, jesd_link_t link, uint8_t en)
Enable JESD Link.
Definition: ad917x_jesd_api.c:572
int32_t ad9172_init(ad9172_dev **device, ad9172_init_param *init_param)
Definition: ad9172.c:299
@ CHIPID_AD9171
Definition: ad9172.h:58
#define NO_OS_DIV_ROUND_CLOSEST(x, y)
Definition: no_os_util.h:58
int32_t ad917x_jesd_config_datapath(ad917x_handle_t *h, uint8_t dual_en, uint8_t jesd_mode, uint8_t ch_intpl, uint8_t dp_intpl)
Configure the JESD Datapath for AD917X.
Definition: ad917x_jesd_api.c:135
signal_type_t syncoutb_type
Definition: ad9172.h:79
chip_id
Definition: ad9172.h:57
Structure holding the parameters for SPI initialization.
Definition: no_os_spi.h:131