no-OS
All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
api_def.h
Go to the documentation of this file.
1
13#ifndef __API_DEF_H__
14#define __API_DEF_H__
15#include <stdint.h>
16#define ADI_POW2_48 ((uint64_t)1u<<48)
17#define ADI_MAXUINT48 (ADI_POW2_48 - 1)
18
19#define ADI_POW2_32 ((uint64_t)1u<<32)
20#define ADI_MAXUINT32 (ADI_POW2_32 - 1)
21#define ADI_MAXUINT24 (0xFFFFFF)
22#define ADI_GET_BYTE(w, p) (uint8_t)(((w) >> (p)) & 0xFF)
23#define ALL -1
24
25#define U64MSB 0x8000000000000000ull
26
40typedef int32_t(*spi_xfer_t)(void *user_data, uint8_t *indata, uint8_t *outdata,
41 int32_t size_bytes);
42
55typedef int32_t(*delay_us_t)(void *user_data, uint32_t us);
56
73typedef int(*hw_open_t)(void *user_data);
74
91typedef int(*hw_close_t)(void *user_data);
106typedef int(*event_handler_t)(uint16_t event, uint8_t ref, void *data);
107
126typedef int(*tx_en_pin_ctrl_t)(void *user_data, uint8_t enable);
127
145typedef int(*reset_pin_ctrl_t)(void *user_data, uint8_t enable);
146
148struct adi_reg_data {
150 uint16_t reg;
152 uint8_t val;
153};
154
156typedef struct {
158 uint8_t chip_type;
160 uint16_t prod_id;
162 uint8_t prod_grade;
164 uint8_t dev_revision;
166
167
169typedef enum {
170 /* Keep this invalid value as 0, so the API can test for wrong setting.*/
172 /* Set SPI SDO (Serial Data Output) pin as active.
173 * This is in case the 4-wire SPI is needed.*/
175 /* Set SPI SDIO (Serial Data Input-Output) pin as active.
176 * This is in case the 3-wire SPI is needed.*/
178 /* Keep it last. */
181
188
195
197typedef enum {
202
204typedef enum {
209
218
220typedef struct {
221 uint8_t jesd_L;
222 uint8_t jesd_F;
223 uint8_t jesd_M;
224 uint8_t jesd_S;
225
226
227 uint8_t jesd_HD;
228 uint8_t jesd_K;
229 uint8_t jesd_N;
230 uint8_t jesd_NP;
231 uint8_t jesd_CF;
232 uint8_t jesd_CS;
233
234 uint8_t jesd_DID;
235 uint8_t jesd_BID;
236 uint8_t jesd_LID0;
237 uint8_t jesd_JESDV;
239
248
249#endif /* !__API_DEF_H__ */
signal_type_t
Definition api_def.h:193
@ SIGNAL_LVDS
Definition api_def.h:195
@ SIGNAL_CMOS
Definition api_def.h:194
@ SIGNAL_UNKNOWN
Definition api_def.h:196
int(* delay_us_t)(void *user_data, unsigned int us)
Delay for specified number of microseconds. Platform Dependant.
Definition api_def.h:62
signal_coupling_t
Definition api_def.h:200
@ COUPLING_AC
Definition api_def.h:201
@ COUPLING_UNKNOWN
Definition api_def.h:203
@ COUPLING_DC
Definition api_def.h:202
spi_sdo_config_t
Definition api_def.h:175
@ SPI_NONE
Definition api_def.h:177
@ SPI_SDIO
Definition api_def.h:187
@ SPI_SDO
Definition api_def.h:182
@ SPI_CONFIG_MAX
Definition api_def.h:189
jesd_link_t
Definition api_def.h:207
@ JESD_LINK_0
Definition api_def.h:208
@ JESD_LINK_1
Definition api_def.h:209
@ JESD_LINK_ALL
Definition api_def.h:210
int(* hw_open_t)(void *user_data)
Platform hardware initialisation for the AD9164 Device.
Definition api_def.h:80
jesd_syncoutb_t
Definition api_def.h:214
@ SYNCOUTB_1
Definition api_def.h:216
@ SYNCOUTB_ALL
Definition api_def.h:217
@ SYNCOUTB_0
Definition api_def.h:215
int(* tx_en_pin_ctrl_t)(void *user_data, uint8_t enable)
TX_ENABLE PIN CONTROL FUNCTION.
Definition api_def.h:133
int(* hw_close_t)(void *user_data)
Closes any platform hardware resources for the AD9164 Device.
Definition api_def.h:98
int(* event_handler_t)(uint16_t event, uint8_t ref, void *data)
Client Event Handler.
Definition api_def.h:113
jesd_prbs_pattern_t
Definition api_def.h:257
@ PRBS31
Definition api_def.h:261
@ PRBS15
Definition api_def.h:260
@ PRBS_NONE
Definition api_def.h:258
@ PRBS7
Definition api_def.h:259
@ PRBS_MAX
Definition api_def.h:262
int(* reset_pin_ctrl_t)(void *user_data, uint8_t enable)
RESETB PIN CONTROL FUNCTION.
Definition api_def.h:152
int(* spi_xfer_t)(void *user_data, uint8_t *indata, uint8_t *outdata, int size_bytes)
Platform dependent SPI access functions.
Definition api_def.h:47
jesd_sysref_mode_t
Definition api_def.h:221
@ SYSREF_MON
Definition api_def.h:225
@ SYSREF_NONE
Definition api_def.h:222
@ SYSREF_ONESHOT
Definition api_def.h:223
@ SYSREF_CONT
Definition api_def.h:224
@ SYSREF_MODE_INVLD
Definition api_def.h:226
Definition api_def.h:163
Definition api_def.h:155
uint8_t val
Definition api_def.h:159
uint16_t reg
Definition api_def.h:157
Definition api_def.h:230