Go to the documentation of this file.
13 #ifndef __AD9208_REGISTERS_H__
14 #define __AD9208_REGISTERS_H__
22 const uint16_t address, uint8_t *data,
29 #define AD9208_JESD_NOF_LANES 8
30 #define AD9208_JESD_NOF_LINKS 2
31 #define AD9208_JESD_NOF_SYNCOUTB 2
32 #define AD9208_ADC_NOF_CH 2
33 #define AD9208_ADC_CH_INDEX(x) (NO_OS_BIT(x)>>1)
35 #define AD9208_IF_CFG_A_REG 0x000
36 #define AD9208_IF_CFG_B_REG 0x001
37 #define AD9208_DEV_CFG_REG 0x002
38 #define AD9208_PDN_MODE(x) (((x)&0x3)<<0)
40 #define AD9208_CHIP_TYPE_REG 0x003
41 #define AD9208_PROD_ID_LSB_REG 0x004
42 #define AD9208_PROD_ID_MSB_REG 0x005
43 #define AD9208_CHIP_GRADE_REG 0x006
44 #define AD9208_CH_INDEX_REG 0x008
45 #define AD9208_CH_INDEX_SEL(x) (((x)&0x3)<<0)
46 #define AD9208_CHANNEL_PAGE_0 NO_OS_BIT(0)
47 #define AD9208_CHANNEL_PAGE_1 NO_OS_BIT(1)
48 #define AD9208_CHANNEL_PAGE_2 NO_OS_BIT(2)
49 #define AD9208_CHANNEL_PAGE_3 NO_OS_BIT(3)
50 #define AD9208_CHANNEL_PAGE_4 NO_OS_BIT(4)
51 #define AD9208_CHANNEL_PAGE_5 NO_OS_BIT(5)
52 #define AD9208_MAINDAC_PAGE_0 NO_OS_BIT(6)
53 #define AD9208_MAINDAC_PAGE_1 NO_OS_BIT(7)
55 #define AD9208_CHIP_SPI_XFER_REG 0x000F
56 #define AD9208_CHIP_TRIGGER_SPI_XFER NO_OS_BIT(0)
58 #define AD9208_CHIP_PIN_CTRL0_REG 0x03F
59 #define AD9208_CHIP_PDN_PIN_DISABLE NO_OS_BIT(7)
60 #define AD9208_CHIP_PIN_CTRL1_REG 0x040
61 #define AD9208_CHIP_PDN_MODE(x) (((x)&0xC0)<<6)
62 #define AD9208_CHIP_PIN_CTRL_MASK(x) (0x07 << (3 * (x)))
64 #define AD9208_IP_CLK_CFG_REG 0x0108
65 #define AD9208_IP_CLK_DIV(x) (((x)&0x3)<<0)
66 #define AD9208_IP_CLK_PHASE_ADJ_REG 0x0109
67 #define AD9208_IP_CLK_PHASE_ADJ(x) (((x)&0xF)<<0)
69 #define AD9208_IP_CLK_STAT_REG 0x011B
70 #define AD9208_IP_CLK_DCS1_REG 0x011C
71 #define AD9208_IP_CLK_DCS2_REG 0x011E
73 #define AD9208_SYSREF_CTRL_0_REG 0x0120
74 #define AD9208_SYSREF_MODE_SEL(x) (((x)&0x3)<<1)
75 #define AD9208_SYSREF_CTRL_1_REG 0x0121
76 #define AD9208_SYSREF_TRANSITION_SEL(x) (((x)&0x1)<<4)
77 #define AD9208_SYSREF_CLK_EDGE_SEL(x) (((x)&0x1)<<3)
78 #define AD9208_SYSREF_NSHOT_IGNORE(x) (((x)&0xF)<<0)
79 #define AD9208_SYSREF_CTRL_2_REG 0x0122
80 #define AD9208_SYSREF_WIN_NEG(x) (((x)&0x3)<<2)
81 #define AD9208_SYSREF_WIN_POS(x) (((x)&0x3)<<0)
82 #define AD9208_SYSREF_CTRL_3_REG 0x0123
83 #define AD9208_SYSREF_TS_DELAY(x) (((x)&0x7F)<<0)
85 #define AD9208_SYSREF_STAT_0_REG 0x0128
86 #define AD9208_SYSREF_STAT_1_REG 0x0129
87 #define AD9208_SYSREF_STAT_2_REG 0x012A
89 #define AD9208_BUFF_CFG_P_REG 0x1A4C
90 #define AD9208_BUFF_CTRL_P(x) (((x)&0x3F)<<0)
91 #define AD9208_BUFF_CFG_N_REG 0x1A4D
92 #define AD9208_BUFF_CTRL_N(x) (((x)&0x3F)<<0)
94 #define AD9208_CHIP_SYNC_MODE_REG 0x01FF
95 #define AD9208_SYNC_TS_ENABLE NO_OS_BIT(0)
97 #define AD9208_ADC_MODE_REG 0x0200
98 #define AD9208_ADC_MODE(x) (((x)&0x3)<<0)
99 #define AD9208_ADC_Q_IGNORE NO_OS_BIT(5)
101 #define AD9208_ADC_DCM_REG 0x0201
102 #define AD9208_ADC_DCM_RATE(x) (((x)&0xF)<<0)
103 #define AD9208_DCM_NONE 0x0
104 #define AD9208_DCM2_EN NO_OS_BIT(0)
105 #define AD9208_DCM4_EN NO_OS_BIT(1)
106 #define AD9208_DCM16_EN NO_OS_BIT(2)
107 #define AD9208_DCM3_EN NO_OS_BIT(3)
109 #define AD9208_FD_UT_LSB_REG 0x0247
110 #define AD9208_FD_UT_LSB(x) (((x)&0xFF)<<0)
111 #define AD9208_FD_UT_MSB_REG 0x0248
112 #define AD9208_FD_UT_MSB(x) (((x>>8)&0x1F)<<0)
113 #define AD9208_FD_LT_LSB_REG 0x0249
114 #define AD9208_FD_LT_LSB(x) (((x)&0xFF)<<0)
115 #define AD9208_FD_LT_MSB_REG 0x024A
116 #define AD9208_FD_LT_MSB(x) (((x>>8)&0x1F)<<0)
118 #define AD9208_FD_DWELL_LSB_REG 0x024B
119 #define AD9208_FD_DWELL_LSB(x) (((x)&0xFF)<<0)
120 #define AD9208_FD_DWELL_MSB_REG 0x024C
121 #define AD9208_FD_DWELL_MSB(x) (((x>>8)&0xFF)<<0)
123 #define AD9208_DDC_SYNC_CTRL_REG 0x0300
124 #define AD9208_DDC_UPDATE_MODE NO_OS_BIT(7)
125 #define AD9208_NCO_SOFT_RESET NO_OS_BIT(4)
126 #define AD9208_NCO_SYSREF_N_SHOT_MODE NO_OS_BIT(1)
127 #define AD9208_NCO_SYSREF_SYNC_EN NO_OS_BIT(0)
129 #define AD9208_DDCX_REG_OFFSET 0x20
130 #define AD9208_DDCX_CTRL0_REG 0x0310
131 #define AD9208_DDCX_MIXER_SEL NO_OS_BIT(7)
132 #define AD9208_DDCX_GAIN_SEL NO_OS_BIT(6)
133 #define AD9208_DDCX_NCO_IF_MODE(x) (((x)&0x3)<<4)
134 #define AD9208_DDCX_COMPLEX_TO_REAL NO_OS_BIT(3)
135 #define AD9208_DDCX_DCM_FILT_SEL_0(x) (((x)&0x7)<<0)
137 #define AD9208_DDCX_DATA_SEL_REG 0x0311
138 #define AD9208_DDCX_DCM_FILT_SEL_1(x) (((x)&0xF)<<4)
139 #define AD9208_DDCX_Q_IP_CHB_SEL NO_OS_BIT(2)
140 #define AD9208_DDCX_I_IP_CHB_SEL NO_OS_BIT(0)
142 #define AD9208_DDCX_FTW0_REG 0x0316
143 #define AD9208_DDCX_FTW1_REG 0x0317
144 #define AD9208_DDCX_FTW2_REG 0x0318
145 #define AD9208_DDCX_FTW3_REG 0x0319
146 #define AD9208_DDCX_FTW4_REG 0x031A
147 #define AD9208_DDCX_FTW5_REG 0x031B
149 #define AD9208_DDCX_PO0_REG 0x031D
150 #define AD9208_DDCX_PO1_REG 0x031E
151 #define AD9208_DDCX_PO2_REG 0x031F
152 #define AD9208_DDCX_PO3_REG 0x0320
153 #define AD9208_DDCX_PO4_REG 0x0321
154 #define AD9208_DDCX_PO5_REG 0x0322
156 #define AD9208_DDCX_FRAC_REG_OFFSET 0x10
157 #define AD9208_DDCX_MAW0_REG 0x0390
158 #define AD9208_DDCX_MAW1_REG 0x0391
159 #define AD9208_DDCX_MAW2_REG 0x0392
160 #define AD9208_DDCX_MAW3_REG 0x0393
161 #define AD9208_DDCX_MAW4_REG 0x0394
162 #define AD9208_DDCX_MAW5_REG 0x0395
164 #define AD9208_DDCX_MBW0_REG 0x0398
165 #define AD9208_DDCX_MBW1_REG 0x0399
166 #define AD9208_DDCX_MBW2_REG 0x039A
167 #define AD9208_DDCX_MBW3_REG 0x039B
168 #define AD9208_DDCX_MBW4_REG 0x039C
169 #define AD9208_DDCX_MBW5_REG 0x039D
171 #define AD9208_REG_TEST_MODE 0x0550
173 #define AD9208_TESTMODE_OFF 0x0
174 #define AD9208_TESTMODE_MIDSCALE_SHORT 0x1
175 #define AD9208_TESTMODE_POS_FULLSCALE 0x2
176 #define AD9208_TESTMODE_NEG_FULLSCALE 0x3
177 #define AD9208_TESTMODE_ALT_CHECKERBOARD 0x4
178 #define AD9208_TESTMODE_PN23_SEQ 0x5
179 #define AD9208_TESTMODE_PN9_SEQ 0x6
180 #define AD9208_TESTMODE_ONE_ZERO_TOGGLE 0x7
181 #define AD9208_TESTMODE_USER 0x8
182 #define AD9208_TESTMODE_RAMP 0xF
184 #define AD9208_REG_OUTPUT_MODE 0x0561
185 #define AD9208_OUTPUT_MODE_OFFSET_BINARY 0x0
186 #define AD9208_OUTPUT_MODE_TWOS_COMPLEMENT 0x1
188 #define AD9208_OP_MODE_CTRL_1_REG 0x0559
189 #define AD9208_OP_MODE_CTRL_2_REG 0x055A
190 #define AD9208_OP_CONV_CTRL_BIT_SEL(x) (((x)&0xF)>>0)
191 #define AD9208_OP_OVERANGE_CLR_REG 0x0562
192 #define AD9208_OP_OVERANGE_STAT_REG 0x0563
194 #define AD9208_JESD_LMFC_OFFSET_REG 0x0578
195 #define AD9208_JESD_LMFC_OFFSET(x) (((x)&0x1F)>>0)
197 #define AD9208_JESD_SERDES_PLL_CFG_REG 0x056E
198 #define AD9208_JESD_SLR_CTRL(x) (((x)&0xF)<<4)
200 #define AD9208_JESD_SERDES_PLL_REG 0x056F
201 #define AD9208_JESD_PLL_LOCK_STAT NO_OS_BIT(7)
203 #define AD9208_JESD_LINK_CTRL1_REG 0x0571
204 #define AD9208_JESD_LINK_PDN NO_OS_BIT(0)
206 #define AD9208_JESD_ID_CFG_REG_OFFSET 0x3
207 #define AD9208_JESD_DID_CFG_REG 0x0580
208 #define AD9208_JESD_BID_CFG_REG 0x0581
209 #define AD9208_JESD_BID(x) (((x)&0xF)<<0)
210 #define AD9208_JESD_LID0_CFG_REG 0x0583
211 #define AD9208_JESD_LID0(x) (((x)&0x1F)<<0)
213 #define AD9208_JESD_CFG_REG_OFFSET 0x8
214 #define AD9208_JESD_L_SCR_CFG_REG 0x058B
215 #define AD9208_JESD_SCR_EN NO_OS_BIT(7)
216 #define AD9208_JESD_LANES(x) (((x)&0x1F)<<0)
218 #define AD9208_JESD_F_CFG_REG 0x058C
219 #define AD9208_JESD_F(x) (((x)&0xF)<<0)
221 #define AD9208_JESD_K_CFG_REG 0x058D
222 #define AD9208_JESD_K(x) (((x)&0x1F)<<0)
224 #define AD9208_JESD_M_CFG_REG 0x058E
225 #define AD9208_JESD_M(x) (((x)&0x7)<<0)
227 #define AD9208_JESD_CS_N_CFG_REG 0x058F
228 #define AD9208_JESD_CS(x) (((x)&0x3)<<6)
229 #define AD9208_JESD_N(x) (((x)&0x1F)<<0)
231 #define AD9208_JESD_SCV_NP_CFG_REG 0x0590
232 #define AD9208_JESD_SUBCLASS(x) (((x)&0x7)<<5)
233 #define AD9208_JESD_NP(x) (((x)&0x1F)<<0)
234 #define AD9208_JESD_S_CFG_REG 0x0591
235 #define AD9208_JESD_S(x) (((x)&0x1F)<<0)
237 #define AD9208_JESD_HD_CF_CFG_REG 0x0592
238 #define AD9208_JESD_HD NO_OS_BIT(7)
239 #define AD9208_JESD_CF(x) (((x)&0x1F)<<0)
241 #define AD9208_JESD_XBAR_CFG_REG_OFFSET 0x5
242 #define AD9208_JESD_XBAR_CFG_REG 0x05B2
243 #define AD9208_JESD_XBAR_LN_EVEN(x) (((x)&0x7) << 0)
244 #define AD9208_JESD_XBAR_LN_ODD(x) (((x)&0x7) << 4)
246 #define AD9208_DC_OFFSET_CAL_CTRL 0x0701
247 #define AD9208_DC_OFFSET_CAL_EN NO_OS_BIT(7)
249 #define AD9208_VREF_CTRL_REG 0x18A6
250 #define AD9208_EXT_VREF_MODE NO_OS_BIT(0)
252 #define AD9208_EXT_VCM_CTRL_REG 0x18E3
253 #define AD9208_EXT_VCM_BUFF NO_OS_BIT(6)
254 #define AD9208_EXT_VCM_BUFF_CURR(x) (((x)&0x3F) << 0)
256 #define AD9208_TEMP_DIODE_CTRL_REG 0x18E6
257 #define AD9208_CENTRAL_DIODE_1X_EN NO_OS_BIT(0)
258 #define AD9208_CENTRAL_DIODE_20X_EN NO_OS_BIT(1)
260 #define AD9208_ANALOG_CFG_REG 0x1908
261 #define AD9208_DC_COUPLE_EN(x) (((x)&0x1)<<2)
263 #define AD9208_FULL_SCALE_CFG_REG 0x1910
264 #define AD9208_TRM_VREF(x) (((x)&0xF)<<0)
#define AD9208_JESD_HD
Definition: ad9208_reg.h:238
#define AD9208_JESD_N(x)
Definition: ad9208_reg.h:229
#define AD9208_SYSREF_WIN_NEG(x)
Definition: ad9208_reg.h:80
#define LANE_RATE_MIN_MBPS
Definition: ad9208_jesd_api.c:26
#define AD9208_JESD_M_CFG_REG
Definition: ad9208_reg.h:224
int ad9208_register_write(ad9208_handle_t *h, const uint16_t address, const uint8_t data)
Perform SPI register write access to AD9208 Device.
Definition: ad9208_reg.c:20
#define API_ERROR_INVALID_HANDLE_PTR
Definition: api_errors.h:29
Definition: api_def.h:155
uint8_t jesd_CS
Definition: api_def.h:241
#define N_MIN
Definition: ad9208_jesd_api.c:23
#define API_ERROR_INVALID_XFER_PTR
Definition: api_errors.h:31
#define AD9208_OP_MODE_CTRL_1_REG
Definition: ad9208_reg.h:188
#define AD9208_CHIP_SPI_XFER_REG
Definition: ad9208_reg.h:55
#define AD9208_JESD_DID_CFG_REG
Definition: ad9208_reg.h:207
#define N_MAX
Definition: ad9208_jesd_api.c:24
#define LANE_RATE_MAX_MBPS
Definition: ad9208_jesd_api.c:27
#define AD9208_JESD_BID(x)
Definition: ad9208_reg.h:209
#define AD9208_SYSREF_TS_DELAY(x)
Definition: ad9208_reg.h:83
#define AD9208_CHIP_SYNC_MODE_REG
Definition: ad9208_reg.h:94
@ AD9208_CB_SIGNAL_MON
Definition: ad9208_jesd_api.c:32
uint8_t jesd_L
Definition: api_def.h:231
#define AD9208_JESD_CF(x)
Definition: ad9208_reg.h:239
int ad9208_jesd_syref_lmfc_offset_set(ad9208_handle_t *h, uint8_t offset)
Set JESD LMFC Offset.
Definition: ad9208_jesd_api.c:647
Definition: ad9208_api.h:78
uint8_t jesd_N
Definition: api_def.h:238
void * user_data
Definition: ad9208_api.h:79
#define AD9208_DDC_SYNC_CTRL_REG
Definition: ad9208_reg.h:123
int ad9208_register_read(ad9208_handle_t *h, const uint16_t address, uint8_t *data)
Perform SPI register read access to AD9208 Device.
Definition: ad9208_reg.c:40
#define AD9208_JESD_SUBCLASS(x)
Definition: ad9208_reg.h:232
#define AD9208_JESD_LID0(x)
Definition: ad9208_reg.h:211
int ad9208_register_chip_transfer(ad9208_handle_t *h)
Definition: ad9208_reg.c:112
#define AD9208_JESD_SERDES_PLL_CFG_REG
Definition: ad9208_reg.h:197
uint64_t adc_clk_freq_hz
Definition: ad9208_api.h:86
int ad9208_jesd_get_pll_status(ad9208_handle_t *h, uint8_t *pll_status)
Get SERDES PLL Status Flags.
Definition: ad9208_jesd_api.c:417
#define AD9208_JESD_CS_N_CFG_REG
Definition: ad9208_reg.h:227
int ad9208_register_write_tbl(ad9208_handle_t *h, struct adi_reg_data *tbl, uint32_t count)
Definition: ad9208_reg.c:78
#define AD9208_JESD_XBAR_LN_ODD(x)
Definition: ad9208_reg.h:244
#define CF_DEFAULT
Definition: ad9208_jesd_api.c:25
#define AD9208_JESD_XBAR_LN_EVEN(x)
Definition: ad9208_reg.h:243
#define AD9208_JESD_LINK_CTRL1_REG
Definition: ad9208_reg.h:203
#define NO_OS_ARRAY_SIZE(x)
Definition: no_os_util.h:49
Definition: ad9208_jesd_api.c:48
@ JESD_SUBCLASS_INVALID
Definition: api_def.h:253
#define API_ERROR_SPI_XFER
Definition: api_errors.h:49
int ad9208_is_sync_spi_update_enabled(ad9208_handle_t *h, uint8_t *enabled)
Definition: ad9208_reg.c:96
#define AD9208_JESD_XBAR_CFG_REG
Definition: ad9208_reg.h:242
#define AD9208_JESD_ID_CFG_REG_OFFSET
Definition: ad9208_reg.h:206
#define AD9208_SYSREF_CTRL_1_REG
Definition: ad9208_reg.h:75
#define AD9208_SYSREF_CTRL_2_REG
Definition: ad9208_reg.h:79
int ad9208_get_decimation(ad9208_handle_t *h, uint8_t *dcm)
Definition: ad9208_adc_api.c:81
uint8_t jesd_S
Definition: api_def.h:234
#define K_MAX
Definition: ad9208_jesd_api.c:19
spi_xfer_t dev_xfer
Definition: ad9208_api.h:80
int ad9208_is_sync_spi_update_enabled(ad9208_handle_t *h, uint8_t *enabled)
Definition: ad9208_reg.c:96
#define AD9208_SYSREF_MODE_SEL(x)
Definition: ad9208_reg.h:74
int ad9208_register_read_block(ad9208_handle_t *h, const uint16_t address, uint8_t *data, uint32_t count)
Definition: ad9208_reg.c:62
uint64_t slr_lwr_thres
Definition: ad9208_jesd_api.c:49
int ad9208_register_write_tbl(ad9208_handle_t *h, struct adi_reg_data *tbl, uint32_t count)
Definition: ad9208_reg.c:78
uint8_t jesd_NP
Definition: api_def.h:239
#define AD9208_SYSREF_STAT_1_REG
Definition: ad9208_reg.h:86
Definition: api_def.h:230
#define AD9208_CHIP_TRIGGER_SPI_XFER
Definition: ad9208_reg.h:56
@ AD9208_CB_FAST_DETECT
Definition: ad9208_jesd_api.c:33
ad9208_control_bit_sel
Definition: ad9208_jesd_api.c:29
int ad9208_adc_select_ch(ad9208_handle_t *h, uint8_t ch)
uint8_t jesd_LID0
Definition: api_def.h:245
jesd_sysref_mode_t
Definition: api_def.h:221
int ad9208_jesd_syref_status_get(ad9208_handle_t *h, uint8_t *hold_status, uint8_t *setup_status, uint8_t *phase_status)
Get SYSREF status for sysref monitoring.
Definition: ad9208_jesd_api.c:546
#define AD9208_SYSREF_CTRL_0_REG
Definition: ad9208_reg.h:73
int ad9208_jesd_set_if_config(ad9208_handle_t *h, jesd_param_t jesd_param, uint64_t *lane_rate_kbps)
Configure the JESD Interface for AD9208.
Definition: ad9208_jesd_api.c:162
#define AD9208_JESD_CS(x)
Definition: ad9208_reg.h:228
uint8_t jesd_F
Definition: api_def.h:232
#define NO_OS_DIV_U64(x, y)
Definition: no_os_util.h:115
#define AD9208_JESD_K_CFG_REG
Definition: ad9208_reg.h:221
#define AD9208_JESD_CFG_REG_OFFSET
Definition: ad9208_reg.h:213
#define AD9208_JESD_SCR_EN
Definition: ad9208_reg.h:215
@ AD9208_CB_SYSREF
Definition: ad9208_jesd_api.c:34
int ad9208_register_read_block(ad9208_handle_t *h, const uint16_t address, uint8_t *data, uint32_t count)
Definition: ad9208_reg.c:62
int ad9208_register_read(ad9208_handle_t *h, const uint16_t address, uint8_t *data)
Perform SPI register read access to AD9208 Device.
Definition: ad9208_reg.c:40
#define ALL
Definition: api_def.h:26
#define AD9208_JESD_SERDES_PLL_REG
Definition: ad9208_reg.h:200
#define AD9208_SYSREF_CTRL_3_REG
Definition: ad9208_reg.h:82
uint8_t jesd_HD
Definition: api_def.h:236
uint64_t slr_upr_thres
Definition: ad9208_jesd_api.c:50
#define IN_OUT_BUFF_SZ
Definition: ad9208_reg.c:18
@ AD9208_CB_OVR_RANGE
Definition: ad9208_jesd_api.c:31
API error codes header file.
#define AD9208_JESD_L_SCR_CFG_REG
Definition: ad9208_reg.h:214
uint8_t jesd_BID
Definition: api_def.h:244
#define AD9208_JESD_LMFC_OFFSET(x)
Definition: ad9208_reg.h:195
#define AD9208_OP_CONV_CTRL_BIT_SEL(x)
Definition: ad9208_reg.h:190
#define AD9208_OP_MODE_CTRL_2_REG
Definition: ad9208_reg.h:189
#define AD9208_SYSREF_NSHOT_IGNORE(x)
Definition: ad9208_reg.h:78
int ad9208_jesd_set_lane_xbar(ad9208_handle_t *h, uint8_t logical_lane, uint8_t physical_lane)
Configure the Lane Cross Bar in the JESD datalink layer.
Definition: ad9208_jesd_api.c:334
#define AD9208_JESD_F(x)
Definition: ad9208_reg.h:219
#define AD9208_SYSREF_WIN_POS(x)
Definition: ad9208_reg.h:81
@ SYSREF_MON
Definition: api_def.h:225
AD9208 SPI Register Definition Header File.
int ad9208_jesd_subclass_set(ad9208_handle_t *h, uint8_t subclass)
Set JESD SYNCHRONIZATION Mode.
Definition: ad9208_jesd_api.c:435
#define K_MIN
Definition: ad9208_jesd_api.c:18
int ad9208_jesd_get_cfg_param(ad9208_handle_t *h, jesd_param_t *jesd_param)
Read back all current JESD parameter settings.
Definition: ad9208_jesd_api.c:262
int ad9208_jesd_get_lane_xbar(ad9208_handle_t *h, uint8_t *phy_log_map)
Get current Lane Cross Bar configuration for the JESD datalink layer.
Definition: ad9208_jesd_api.c:388
#define AD9208_JESD_SCV_NP_CFG_REG
Definition: ad9208_reg.h:231
#define API_ERROR_INVALID_PARAM
Definition: api_errors.h:35
API definitions header file.
#define AD9208_JESD_K(x)
Definition: ad9208_reg.h:222
int ad9208_jesd_sysref_timestamp_set(ad9208_handle_t *h, uint8_t timestamp_en, uint8_t control_bit, uint8_t delay)
Set JESD SYNCHRONIZATION Time Stamp Mode.
Definition: ad9208_jesd_api.c:572
#define LANE_MAX
Definition: ad9208_jesd_api.c:21
#define AD9208_JESD_S(x)
Definition: ad9208_reg.h:235
uint8_t jesd_K
Definition: api_def.h:237
#define AD9208_DDC_UPDATE_MODE
Definition: ad9208_reg.h:124
int ad9208_jesd_enable_link(ad9208_handle_t *h, uint8_t en)
Enable JESD Link.
Definition: ad9208_jesd_api.c:131
#define NULL
Definition: wrapper.h:64
#define AD9208_SYSREF_TRANSITION_SEL(x)
Definition: ad9208_reg.h:76
int ad9208_jesd_syref_config_set(ad9208_handle_t *h, uint8_t sysref_edge_sel, uint8_t clk_edge_sel, uint8_t neg_window_skew, uint8_t pos_window_skew)
Set SYSREF Signal Capture settings.
Definition: ad9208_jesd_api.c:511
uint8_t vco_cfg
Definition: ad9208_jesd_api.c:51
#define AD9208_SYSREF_STAT_0_REG
Definition: ad9208_reg.h:85
@ AD9208_CB_LOW
Definition: ad9208_jesd_api.c:30
#define AD9208_SYNC_TS_ENABLE
Definition: ad9208_reg.h:95
#define AD9208_JESD_XBAR_CFG_REG_OFFSET
Definition: ad9208_reg.h:241
#define AD9208_SYSREF_CLK_EDGE_SEL(x)
Definition: ad9208_reg.h:77
#define AD9208_JESD_NP(x)
Definition: ad9208_reg.h:233
uint8_t jesd_M
Definition: api_def.h:233
int ad9208_jesd_syref_mode_set(ad9208_handle_t *h, jesd_sysref_mode_t mode, uint8_t sysref_count)
Set JESD SYNCHRONIZATION Mode.
Definition: ad9208_jesd_api.c:456
#define API_ERROR_OK
Definition: api_errors.h:25
#define AD9208_JESD_M(x)
Definition: ad9208_reg.h:225
uint8_t jesd_CF
Definition: api_def.h:240
#define AD9208_JESD_LANES(x)
Definition: ad9208_reg.h:216
#define CS_MAX
Definition: ad9208_jesd_api.c:22
int ad9208_jesd_enable_scrambler(ad9208_handle_t *h, uint8_t en)
Enable the scrambler for the JESD Link.
Definition: ad9208_jesd_api.c:310
#define AD9208_JESD_LMFC_OFFSET_REG
Definition: ad9208_reg.h:194
uint8_t jesd_DID
Definition: api_def.h:243
#define AD9208_JESD_LINK_PDN
Definition: ad9208_reg.h:204
@ SYSREF_ONESHOT
Definition: api_def.h:223
#define AD9208_JESD_SLR_CTRL(x)
Definition: ad9208_reg.h:198
#define AD9208_JESD_F_CFG_REG
Definition: ad9208_reg.h:218
int ad9208_register_chip_transfer(ad9208_handle_t *h)
Definition: ad9208_reg.c:112
int ad9208_register_write(ad9208_handle_t *h, const uint16_t address, const uint8_t data)
Perform SPI register write access to AD9208 Device.
Definition: ad9208_reg.c:20