41#define AD552XR_R1B (1ul << 16)
42#define AD552XR_R2B (2ul << 16)
43#define AD552XR_LEN(x) ((x) >> 16)
44#define AD552XR_ADDR(x) ((x) & 0xFFFF)
45#define AD552XR_REG_CH_OFFSET(x) ((x) * 2)
47#define AD552XR_READ_BIT NO_OS_BIT(7)
48#define AD552XR_ADDR_MASK (~AD552XR_READ_BIT)
49#define AD552XR_WRITE_BIT_LONG_INSTR 0x00
50#define AD552XR_SCRATCH_PAD_TEST_VAL 0xAB
52#define AD552XR_MULTIBYTE_REG_START 0x14
53#define AD552XR_MULTIBYTE_REG_END 0x71
58#define AD552XR_REG_INTERFACE_CONFIG_A (AD552XR_R1B | 0x00)
59#define AD552XR_REG_INTERFACE_CONFIG_B (AD552XR_R1B | 0x01)
60#define AD552XR_REG_DEVICE_CONFIG (AD552XR_R1B | 0x02)
61#define AD552XR_REG_CHIP_TYPE (AD552XR_R1B | 0x03)
62#define AD552XR_REG_PRODUCT_ID_L (AD552XR_R1B | 0x04)
63#define AD552XR_REG_PRODUCT_ID_H (AD552XR_R1B | 0x05)
64#define AD552XR_REG_CHIP_GRADE (AD552XR_R1B | 0x06)
65#define AD552XR_REG_SCRATCH_PAD (AD552XR_R1B | 0x0A)
66#define AD552XR_REG_SPI_REVISION (AD552XR_R1B | 0x0B)
67#define AD552XR_REG_VENDOR_L (AD552XR_R1B | 0x0C)
68#define AD552XR_REG_VENDOR_H (AD552XR_R1B | 0x0D)
69#define AD552XR_REG_STREAM_MODE (AD552XR_R1B | 0x0E)
70#define AD552XR_REG_TRANSFER_CONFIG (AD552XR_R1B | 0x0F)
71#define AD552XR_REG_INTERFACE_CONFIG_C (AD552XR_R1B | 0x10)
72#define AD552XR_REG_INTERFACE_STATUS_A (AD552XR_R1B | 0x11)
77#define AD552XR_REG_MULTI_INPUT_SEL (AD552XR_R2B | 0x14)
78#define AD552XR_REG_LDAC_SYNC_ASYNC (AD552XR_R2B | 0x16)
79#define AD552XR_REG_LDAC_HW_SW (AD552XR_R2B | 0x18)
80#define AD552XR_REG_LDAC_HW_SRC_CH(x) (AD552XR_R2B | (0x1A + AD552XR_REG_CH_OFFSET(x)))
81#define AD552XR_REG_OUT_EN (AD552XR_R2B | 0x3A)
82#define AD552XR_REG_OUT_RANGE_CH(x) (AD552XR_R2B | (0x3C + AD552XR_REG_CH_OFFSET(x)))
83#define AD552XR_REG_CAL_GAIN_CH(x) (AD552XR_R2B | (0x5C + AD552XR_REG_CH_OFFSET(x)))
84#define AD552XR_REG_CAL_OFFSET_CH(x) (AD552XR_R2B | (0x7C + AD552XR_REG_CH_OFFSET(x)))
85#define AD552XR_REG_FUNC_EN (AD552XR_R2B | 0x9C)
86#define AD552XR_REG_FUNC_MODE_SEL_CH(x) (AD552XR_R2B | (0x9E + AD552XR_REG_CH_OFFSET(x)))
87#define AD552XR_REG_FUNC_DAC_INPUT_B_CH(x) (AD552XR_R2B | (0xBE + AD552XR_REG_CH_OFFSET(x)))
88#define AD552XR_REG_FUNC_DITHER_PERIOD_CH(x)(AD552XR_R2B | (0xDE + AD552XR_REG_CH_OFFSET(x)))
89#define AD552XR_REG_FUNC_DITHER_PHASE_CH(x) (AD552XR_R2B | (0xFE + AD552XR_REG_CH_OFFSET(x)))
90#define AD552XR_REG_FUNC_RAMP_STEP_CH(x) (AD552XR_R2B | (0x11E + AD552XR_REG_CH_OFFSET(x)))
91#define AD552XR_REG_FUNC_INT_EN(x) (AD552XR_R2B | 0x13E)
92#define AD552XR_REG_MUX_OUT_SEL (AD552XR_R2B | 0x140)
93#define AD552XR_REG_MULTI_SW_LDAC (AD552XR_R2B | 0x142)
94#define AD552XR_REG_MULTI_INPUT (AD552XR_R2B | 0x144)
95#define AD552XR_REG_SW_LDAC (AD552XR_R2B | 0x146)
96#define AD552XR_REG_DAC_INPUT_A_CH(x) (AD552XR_R2B | (0x148 + AD552XR_REG_CH_OFFSET(x)))
97#define AD552XR_REG_FUNC_INT_STAT (AD552XR_R2B | 0x168)
98#define AD552XR_REG_DAC_DATA_READBACK_CH(x) (AD552XR_R2B | (0x16A + AD552XR_REG_CH_OFFSET(x)))
103#define AD552XR_REG_TSENS_EN (AD552XR_R2B | 0x18A)
104#define AD552XR_REG_TSENS_ALERT_FLAG (AD552XR_R2B | 0x18C)
105#define AD552XR_REG_TSENS_SHTD_FLAG (AD552XR_R2B | 0x18E)
106#define AD552XR_REG_TSENS_ALERT_STAT (AD552XR_R2B | 0x190)
107#define AD552XR_REG_TSENS_SHTD_STAT (AD552XR_R2B | 0x192)
108#define AD552XR_REG_ALARMB_TSENS_EN (AD552XR_R2B | 0x194)
109#define AD552XR_REG_ALARMB_TSENS_SEL (AD552XR_R2B | 0x196)
110#define AD552XR_REG_TSENS_SHTD_EN_CH (AD552XR_R2B | 0x198)
111#define AD552XR_REG_DAC_DIS_DEGLITCH_CH (AD552XR_R2B | 0x19A)
112#define AD552XR_REG_DAC_INT_EN (AD552XR_R2B | 0x19C)
113#define AD552XR_REG_ALL_FUNC_INT_STAT (AD552XR_R2B | 0x19E)
114#define AD552XR_REG_FUNC_BUSY (AD552XR_R2B | 0x1A0)
115#define AD552XR_REG_REF_SEL (AD552XR_R2B | 0x1A2)
116#define AD552XR_REG_INIT_CRC_ERR_STAT (AD552XR_R2B | 0x1A4)
121#define AD552XR_INT_CONFIG_A_SW_RESET_MASK (NO_OS_BIT(7) | NO_OS_BIT(0))
122#define AD552XR_INT_CONFIG_A_ADDR_ASC_MASK NO_OS_BIT(5)
123#define AD552XR_INT_CONFIG_A_SDO_EN_MASK NO_OS_BIT(4)
128#define AD552XR_INT_CONFIG_B_SINGLE_INSTR_MASK NO_OS_BIT(7)
133#define AD552XR_DEVICE_CONFIG_OPERATING_MODE NO_OS_GENMASK(1, 0)
138#define AD552XR_CHIP_TYPE_MASK NO_OS_GENMASK(3, 0)
139#define AD552XR_CHIP_TYPE 0x4
144#define AD552XR_PRODUCT_ID_H 0x41
146#define AD552XR_PRODUCT_ID(x) ((AD552XR_PRODUCT_ID_H << 8) | (x))
147#define AD5529R_PID_16BIT_16CH_WLCSP AD552XR_PRODUCT_ID(0x4A)
152#define AD552XR_CHIP_GRADE_MASK NO_OS_GENMASK(7, 4)
153#define AD552XR_CHIP_GRADE 0x0
154#define AD552XR_DEVICE_REV_MASK NO_OS_GENMASK(3, 0)
155#define AD552XR_DEVICE_REV 0x0
160#define AD552XR_SPI_TYPE_MASK NO_OS_GENMASK(7, 6)
161#define AD552XR_SPI_TYPE 0x2
162#define AD552XR_SPI_VER_MASK NO_OS_GENMASK(5, 0)
163#define AD552XR_SPI_VER 0x5
168#define AD552XR_VENDOR_ID_L 0x56
169#define AD552XR_VENDOR_ID_H 0x04
174#define AD552XR_TRANSFER_CONFIG_MASK NO_OS_BIT(2)
179#define AD552XR_INT_CONFIG_C_STRICT_REGISTER_A_ACCESS_MASK NO_OS_BIT(5)
184#define AD552XR_NOT_READY_ERR_MASK NO_OS_BIT(7)
185#define AD552XR_CLK_COUNT_ERR_MASK NO_OS_BIT(4)
186#define AD552XR_CRC_ERR_MASK NO_OS_BIT(3)
187#define AD552XR_WRITE_TO_READ_ONLY_REG_ERR_MASK NO_OS_BIT(2)
188#define AD552XR_REG_PARTIAL_ACC_ERR_MASK NO_OS_BIT(1)
189#define AD552XR_ADDR_INV_ERR_MASK NO_OS_BIT(0)
194#define AD552XR_LDAC_HW_SEL_CH_MASK NO_OS_GENMASK(9, 8)
195#define AD552XR_LDAC_HW_EDGE_SEL_CH_MASK NO_OS_GENMASK(1, 0)
200#define AD552XR_OUT_RANGE_CHn_MASK NO_OS_GENMASK(2, 0)
205#define AD552XR_CAL_GAIN_CHn_MASK NO_OS_GENMASK(7, 0)
210#define AD552XR_FUNC_MODE_SEL_CHn NO_OS_GENMASK(1, 0)
215#define AD552XR_FUNC_DITHER_PERIOD_CHn_MASK NO_OS_GENMASK(2, 0)
220#define AD552XR_FUNC_DITHER_PHASE_CHn_MASK NO_OS_GENMASK(1, 0)
225#define AD552XR_FUNC_RAMP_STEP_CHn_MASK NO_OS_GENMASK(7, 0)
230#define AD552XR_MUX_OUT_EN NO_OS_BIT(7)
231#define AD552XR_MUX_PARAM_SEL_MASK NO_OS_GENMASK(5, 0)
236#define AD552XR_MULTI_DAC_SW_LDAC_TRIG NO_OS_BIT(0)
241#define AD552XR_VREF_SEL_MASK NO_OS_BIT(0)
244#define AD552XR_MAX_NUM_CH 16
245#define AD552XR_CHANNEL_SEL(ch) NO_OS_BIT(ch)
246#define AD552XR_NUM_MD_ADDR_LINES 2
247#define AD552XR_INTF_CFG_A_DEFAULT 0x10
248#define AD552XR_NUM_REGS 51
609 uint32_t mask, uint16_t data);
#define AD552XR_NUM_MD_ADDR_LINES
Definition ad552xr.h:246
int ad552xr_sw_reset(struct ad552xr_dev *dev)
Perform soft reset.
Definition ad552xr.c:883
ad552xr_type
AD552XR list of supported device types.
Definition ad552xr.h:254
@ ID_AD5529R
Definition ad552xr.h:255
@ AD552XR_NUM_TYPES
Definition ad552xr.h:256
ad552xr_num_channels
AD552XR list of supported number of channels.
Definition ad552xr.h:271
@ AD552XR_NUM_CHANNELS_16
Definition ad552xr.h:272
int ad552xr_set_hw_ldac_toggle_pin(struct ad552xr_dev *dev, uint8_t ch, enum ad552xr_ldac_toggle_sel ldac_hw_sel)
Set LDAC/TGP source pin.
Definition ad552xr.c:707
int ad552xr_set_dac_a_value(struct ad552xr_dev *dev, uint8_t ch, uint16_t dac_value)
Definition ad552xr.c:737
ad552xr_hw_sw_ldac
AD552XR HW or SW LDAC mode.
Definition ad552xr.h:387
@ AD552XR_HW_LDAC
Definition ad552xr.h:389
@ AD552XR_SW_LDAC
Definition ad552xr.h:391
int ad552xr_set_hw_edge_trigger(struct ad552xr_dev *dev, uint8_t chn, enum ad552xr_ldac_edge_trig trig_edge)
Set LDAC/TGP edge trigger.
Definition ad552xr.c:675
int ad552xr_init(struct ad552xr_dev **device, struct ad552xr_init_param *init_param)
Initialize the device.
Definition ad552xr.c:943
int ad552xr_set_mux_out_select(struct ad552xr_dev *dev, enum ad552xr_mux_out_select mux_output_sel)
Definition ad552xr.c:825
int ad552xr_spi_write_mask(struct ad552xr_dev *dev, uint32_t reg_addr, uint32_t mask, uint16_t data)
SPI write to device using a mask.
Definition ad552xr.c:338
ad552xr_dac_resolution
AD552XR list of supported data resolution.
Definition ad552xr.h:263
@ AD552XR_RESOLUTION_16_BIT
Definition ad552xr.h:264
int ad552xr_set_device_spi(struct ad552xr_dev *dev, struct ad552xr_device_spi_settings *spi_settings)
Set device spi settings.
Definition ad552xr.c:858
int ad552xr_set_dither_period(struct ad552xr_dev *dev, uint8_t ch, enum ad552xr_dither_period period)
Definition ad552xr.c:528
int ad552xr_set_dither_phase(struct ad552xr_dev *dev, uint8_t ch, enum ad552xr_dither_phase phase)
Definition ad552xr.c:559
int ad552xr_channel_output_en(struct ad552xr_dev *dev, uint8_t ch, bool en)
Definition ad552xr.c:435
ad552xr_ldac_toggle_sel
LDAC Toggle pin select.
Definition ad552xr.h:413
@ AD552XR_LDAC_TGP_2
Definition ad552xr.h:416
@ AD552XR_NUM_LDAC_TGP_PINS
Definition ad552xr.h:418
@ AD552XR_LDAC_TGP_3
Definition ad552xr.h:417
@ AD552XR_LDAC_TGP_1
Definition ad552xr.h:415
@ AD552XR_LDAC_TGP_0
Definition ad552xr.h:414
int ad552xr_set_dac_b_value(struct ad552xr_dev *dev, uint8_t ch, uint16_t dac_value)
Definition ad552xr.c:756
int ad552xr_func_en(struct ad552xr_dev *dev, uint8_t ch, bool en)
Definition ad552xr.c:462
ad552xr_ldac_edge_trig
AD552XR hardware LDAC edge select options.
Definition ad552xr.h:290
@ FALLING_EDGE_TRIG
Definition ad552xr.h:294
@ ANY_EDGE_TRIG
Definition ad552xr.h:296
@ RISING_EDGE_TRIG
Definition ad552xr.h:292
ad552xr_mux_out_select
Signals to monitor on MUX_OUT pin.
Definition ad552xr.h:339
@ AD552XR_MUX_OUT_VMON
Definition ad552xr.h:378
@ AD552XR_MUX_OUT_VOUT14
Definition ad552xr.h:355
@ AD552XR_MUX_OUT_IOUT2
Definition ad552xr.h:359
@ AD552XR_MUX_OUT_IOUT1
Definition ad552xr.h:358
@ AD552XR_MUX_OUT_VOUT10
Definition ad552xr.h:351
@ AD552XR_MUX_OUT_VOUT3
Definition ad552xr.h:344
@ AD552XR_MUX_OUT_IMON
Definition ad552xr.h:379
@ AD552XR_MUX_OUT_IOUT15
Definition ad552xr.h:372
@ AD552XR_MUX_OUT_IOUT10
Definition ad552xr.h:367
@ AD552XR_MUX_OUT_IOUT12
Definition ad552xr.h:369
@ AD552XR_MUX_OUT_PVDD3
Definition ad552xr.h:373
@ AD552XR_MUX_OUT_VOUT1
Definition ad552xr.h:342
@ AD552XR_MUX_OUT_AGND
Definition ad552xr.h:340
@ AD552XR_MUX_OUT_VOUT15
Definition ad552xr.h:356
@ AD552XR_MUX_OUT_IOUT6
Definition ad552xr.h:363
@ AD552XR_MUX_OUT_TEMPSENS2
Definition ad552xr.h:376
@ AD552XR_MUX_OUT_TEMPSENS0
Definition ad552xr.h:374
@ AD552XR_MUX_OUT_IOUT7
Definition ad552xr.h:364
@ AD552XR_MUX_OUT_VOUT9
Definition ad552xr.h:350
@ AD552XR_MUX_OUT_IOUT11
Definition ad552xr.h:368
@ AD552XR_MUX_OUT_VOUT4
Definition ad552xr.h:345
@ AD552XR_MUX_OUT_VOUT0
Definition ad552xr.h:341
@ AD552XR_MUX_OUT_IOUT0
Definition ad552xr.h:357
@ AD552XR_MUX_OUT_VOUT8
Definition ad552xr.h:349
@ AD552XR_MUX_OUT_IOUT8
Definition ad552xr.h:365
@ AD552XR_MUX_OUT_IOUT13
Definition ad552xr.h:370
@ AD552XR_MUX_OUT_IOUT5
Definition ad552xr.h:362
@ AD552XR_MUX_OUT_VOUT2
Definition ad552xr.h:343
@ AD552XR_MUX_OUT_IOUT4
Definition ad552xr.h:361
@ AD552XR_MUX_OUT_VOUT6
Definition ad552xr.h:347
@ AD552XR_MUX_OUT_VOUT13
Definition ad552xr.h:354
@ AD552XR_MUX_OUT_HZ
Definition ad552xr.h:380
@ AD552XR_MUX_OUT_TEMPSENS3
Definition ad552xr.h:377
@ AD552XR_MUX_OUT_IOUT3
Definition ad552xr.h:360
@ AD552XR_MUX_OUT_VOUT12
Definition ad552xr.h:353
@ AD552XR_MUX_OUT_VOUT7
Definition ad552xr.h:348
@ AD552XR_MUX_OUT_IOUT14
Definition ad552xr.h:371
@ AD552XR_MUX_OUT_IOUT9
Definition ad552xr.h:366
@ AD552XR_MUX_OUT_VOUT11
Definition ad552xr.h:352
@ AD552XR_MUX_OUT_TEMPSENS1
Definition ad552xr.h:375
@ AD552XR_MUX_OUT_VOUT5
Definition ad552xr.h:346
ad552xr_function_mode
DAC Function modes.
Definition ad552xr.h:398
@ AD552XR_FUNCTION_MODE_TRIANGULAR
Definition ad552xr.h:406
@ AD552XR_FUNCTION_MODE_DITHER
Definition ad552xr.h:402
@ AD552XR_FUNCTION_MODE_SAWTOOTH
Definition ad552xr.h:404
@ AD552XR_FUNCTION_MODE_TOGGLE
Definition ad552xr.h:400
int ad552xr_hw_ldac_trigger(struct ad552xr_dev *dev, enum ad552xr_ldac_toggle_sel ldac_hw_sel, uint32_t delay_us)
Trigger the LDAC using hardware.
Definition ad552xr.c:779
ad552xr_dither_period
AD552XR list of dither function period settings.
Definition ad552xr.h:425
@ SAMPLES_32
Definition ad552xr.h:431
@ SAMPLES_2
Definition ad552xr.h:439
@ SAMPLES_16
Definition ad552xr.h:433
@ SAMPLES_64
Definition ad552xr.h:429
@ SAMPLES_4
Definition ad552xr.h:437
@ SAMPLES_8
Definition ad552xr.h:435
@ SAMPLES_128
Definition ad552xr.h:427
int ad552xr_spi_reg_write(struct ad552xr_dev *dev, uint32_t reg_addr, uint16_t reg_data)
Write to device.
Definition ad552xr.c:284
int ad552xr_set_reference(struct ad552xr_dev *dev, enum ad552xr_vref_select ref_sel)
Definition ad552xr.c:372
int ad552xr_func_mode_select(struct ad552xr_dev *dev, uint8_t ch, enum ad552xr_function_mode func_mode_sel)
Definition ad552xr.c:493
ad552xr_operating_mode
AD552XR hardware-software LDAC select options.
Definition ad552xr.h:303
@ NORMAL_HW
Definition ad552xr.h:309
@ SHUTDOWN_HW_W_GND
Definition ad552xr.h:308
@ NORMAL_SW
Definition ad552xr.h:306
@ SHUTDOWN_HW
Definition ad552xr.h:307
@ SHUTDOWN_SW_W_GND
Definition ad552xr.h:305
@ SHUTDOWN_SW
Definition ad552xr.h:304
int ad552xr_sw_ldac_trigger(struct ad552xr_dev *dev)
Trigger the LDAC using software.
Definition ad552xr.c:809
int ad552xr_spi_reg_read(struct ad552xr_dev *dev, uint32_t reg_addr, uint16_t *reg_data)
Read from device.
Definition ad552xr.c:225
int ad552xr_set_hw_sw_ldac(struct ad552xr_dev *dev, uint8_t ch, enum ad552xr_hw_sw_ldac ldac_mode_sel)
Definition ad552xr.c:614
ad552xr_dither_phase
AD552XR list of dither function phase settings.
Definition ad552xr.h:446
@ DEGREES_270
Definition ad552xr.h:454
@ DEGREES_90
Definition ad552xr.h:450
@ DEGREES_180
Definition ad552xr.h:452
@ DEGREES_0
Definition ad552xr.h:448
ad552xr_output_range
AD552XR list of output range.
Definition ad552xr.h:316
@ AD552XR_UNIPOLAR_10V
Definition ad552xr.h:320
@ AD552XR_BIPOLAR_5V
Definition ad552xr.h:326
@ AD552XR_UNIPOLAR_40V
Definition ad552xr.h:324
@ AD552XR_UNIPOLAR_5V
Definition ad552xr.h:318
@ AD552XR_BIPOLAR_10V
Definition ad552xr.h:328
@ AD552XR_UNIPOLAR_20V
Definition ad552xr.h:322
@ AD552XR_BIPOLAR_15V
Definition ad552xr.h:330
@ AD552XR_BIPOLAR_20V
Definition ad552xr.h:332
#define AD552XR_MAX_NUM_CH
Definition ad552xr.h:244
int ad552xr_remove(struct ad552xr_dev *dev)
Free the resources allocated by ad552xr_init().
Definition ad552xr.c:1078
ad552xr_vref_select
Voltage reference options.
Definition ad552xr.h:279
@ AD552XR_INTERNAL_VREF
Definition ad552xr.h:283
@ AD552XR_EXTERNAL_VREF
Definition ad552xr.h:281
int ad552xr_set_ramp_step_size(struct ad552xr_dev *dev, uint8_t ch, uint8_t step_size)
Definition ad552xr.c:586
int ad552xr_set_sync_async_ldac(struct ad552xr_dev *dev, uint8_t ch, bool is_sync)
Definition ad552xr.c:643
int ad552xr_hw_reset(struct ad552xr_dev *dev)
Perform hard reset.
Definition ad552xr.c:915
int ad552xr_set_ch_output_range(struct ad552xr_dev *dev, uint8_t ch, enum ad552xr_output_range range_sel)
Definition ad552xr.c:407
struct ad7616_init_param init_param
Definition ad7616_sdz.c:106
void delay_us(unsigned int usec)
Definition maxim_usb_uart.c:86
Header file of GPIO Interface.
Header file of SPI Interface.
AD552XR active device info.
Definition ad552xr.h:520
enum ad552xr_dac_resolution resolution
Definition ad552xr.h:524
enum ad552xr_num_channels num_channels
Definition ad552xr.h:526
enum ad552xr_type type
Definition ad552xr.h:522
AD552XR device descriptor.
Definition ad552xr.h:533
struct ad552xr_ldac_settings ldac_cfg
Definition ad552xr.h:555
uint8_t dev_addr
Definition ad552xr.h:557
struct no_os_gpio_desc * gpio_ldac_tgp[AD552XR_NUM_LDAC_TGP_PINS]
Definition ad552xr.h:545
struct no_os_gpio_desc * gpio_alarmb
Definition ad552xr.h:541
struct ad552xr_dev_info dev_info
Definition ad552xr.h:559
struct ad552xr_device_spi_settings spi_cfg
Definition ad552xr.h:553
enum ad552xr_vref_select vref
Definition ad552xr.h:551
struct no_os_spi_desc * spi_desc
Definition ad552xr.h:535
enum ad552xr_mux_out_select mux_out_sel
Definition ad552xr.h:561
struct no_os_gpio_desc * gpio_resetb
Definition ad552xr.h:537
struct no_os_gpio_desc * gpio_clearb
Definition ad552xr.h:539
struct no_os_gpio_desc * gpio_md_addr[AD552XR_NUM_MD_ADDR_LINES]
Definition ad552xr.h:543
enum ad552xr_operating_mode op_mode[AD552XR_MAX_NUM_CH]
Definition ad552xr.h:547
enum ad552xr_output_range range[AD552XR_MAX_NUM_CH]
Definition ad552xr.h:549
AD552XR device SPI settings.
Definition ad552xr.h:461
bool short_instr
Definition ad552xr.h:463
bool addr_asc
Definition ad552xr.h:462
uint8_t stream_mode_length
Definition ad552xr.h:466
bool single_instr
Definition ad552xr.h:464
bool stream_length_keep_value
Definition ad552xr.h:465
Structure holding the initialization parameters for AD552XR.
Definition ad552xr.h:568
struct ad552xr_ldac_settings ldac_cfg
Definition ad552xr.h:590
enum ad552xr_type type
Definition ad552xr.h:594
struct no_os_gpio_init_param * gpio_clearb
Definition ad552xr.h:574
enum ad552xr_operating_mode op_mode[AD552XR_MAX_NUM_CH]
Definition ad552xr.h:582
enum ad552xr_vref_select vref
Definition ad552xr.h:586
struct no_os_gpio_init_param * gpio_ldac_tgp[AD552XR_NUM_LDAC_TGP_PINS]
Definition ad552xr.h:580
struct no_os_gpio_init_param * gpio_alarmb
Definition ad552xr.h:576
enum ad552xr_mux_out_select mux_out_sel
Definition ad552xr.h:596
struct ad552xr_device_spi_settings spi_cfg
Definition ad552xr.h:588
struct no_os_gpio_init_param * gpio_md_addr[AD552XR_NUM_MD_ADDR_LINES]
Definition ad552xr.h:578
struct no_os_spi_init_param * spi_init_prm
Definition ad552xr.h:570
enum ad552xr_output_range range[AD552XR_MAX_NUM_CH]
Definition ad552xr.h:584
uint8_t dev_addr
Definition ad552xr.h:592
struct no_os_gpio_init_param * gpio_resetb
Definition ad552xr.h:572
AD552XR device LDAC settings.
Definition ad552xr.h:473
uint16_t func_en_mask
Definition ad552xr.h:475
enum ad552xr_ldac_toggle_sel toggle_sel[AD552XR_MAX_NUM_CH]
Definition ad552xr.h:487
uint16_t multi_dac_ch_mask
Definition ad552xr.h:495
enum ad552xr_dither_phase dither_phase[AD552XR_MAX_NUM_CH]
Definition ad552xr.h:491
uint16_t output_en_mask
Definition ad552xr.h:477
uint16_t ldac_sync_async_mask
Definition ad552xr.h:481
uint16_t ldac_hw_sw_mask
Definition ad552xr.h:483
uint8_t ramp_step[AD552XR_MAX_NUM_CH]
Definition ad552xr.h:493
enum ad552xr_dither_period dither_period[AD552XR_MAX_NUM_CH]
Definition ad552xr.h:489
enum ad552xr_function_mode func_mode[AD552XR_MAX_NUM_CH]
Definition ad552xr.h:479
enum ad552xr_ldac_edge_trig edge_trig[AD552XR_MAX_NUM_CH]
Definition ad552xr.h:485
AD552XR transfer data structure.
Definition ad552xr.h:502
bool is_read
Definition ad552xr.h:510
uint8_t addr
Definition ad552xr.h:504
uint8_t * data
Definition ad552xr.h:506
uint32_t len
Definition ad552xr.h:508
struct ad552xr_device_spi_settings * spi_cfg
Definition ad552xr.h:512
Definition ad9361_util.h:63
Structure holding the GPIO descriptor.
Definition no_os_gpio.h:84
Structure holding the parameters for GPIO initialization.
Definition no_os_gpio.h:67
Structure holding SPI descriptor.
Definition no_os_spi.h:180
Structure holding the parameters for SPI initialization.
Definition no_os_spi.h:128