int adf4368_iio_remove(struct adf4368_iio_dev *dev)
Free the resources allocated by adf4368_iio_init().
Definition: iio_adf4368.c:671
#define END_ATTRIBUTES_ARRAY
Definition: iio_types.h:116
@ ADF4368_IIO_DEV_ATTR_SYNC_SETUP
Definition: iio_adf4368.h:62
@ IIO_VAL_INT
Definition: iio_types.h:50
Struct describing the scan type.
Definition: iio_types.h:168
struct adf4368_init_param * adf4368_dev_init
Definition: iio_adf4368.h:44
int adf4368_set_en_chan(struct adf4368_dev *dev, uint8_t ch, bool en)
Set the output channel to enable or disable based on the passed parameter. If the parameter is differ...
Definition: adf4368.c:637
int adf4368_set_sw_sync(struct adf4368_dev *dev, uint8_t sw_sync)
Set Software SYNC Request. Setting SW_SYNC resets the RF block. Clearing SW_SYNC makes ready for a ne...
Definition: adf4368.c:1214
@ IIO_SHARED_BY_TYPE
Definition: iio_types.h:120
int adf4368_iio_init(struct adf4368_iio_dev **iio_dev, struct adf4368_iio_dev_init_param *init_param)
Initializes the ADF4368 IIO driver.
Definition: iio_adf4368.c:641
@ IIO_SEPARATE
Definition: iio_types.h:119
int adf4368_set_out_power(struct adf4368_dev *dev, uint8_t ch, int32_t pwr)
Set the output power register value of a channel and reset everything over to maximum supported value...
Definition: adf4368.c:580
int adf4368_set_sync_setup(struct adf4368_dev *dev, bool en)
Set EZSYNC and Timed SYNC features' initial state. Waits for SW_SYNC toggle or SYNC pin.
Definition: adf4368.c:1118
Definition: iio_adf4368.h:38
int adf4368_get_cp_i(struct adf4368_dev *dev, int32_t *reg_val)
Gets the charge pump value from the register. The value will be between 0 and 15 on 8 bits....
Definition: adf4368.c:880
Structure holding channel attributess.
Definition: iio_types.h:103
@ IIO_VAL_INT_PLUS_MICRO
Definition: iio_types.h:51
Header file of Delay functions.
int adf4368_get_rfout(struct adf4368_dev *dev, uint64_t *val)
Gets the user proposed output frequency.
Definition: adf4368.c:1017
@ ADF4368_IIO_DEV_ATTR_CP_AVAIL
Definition: iio_adf4368.h:57
@ IIO_ALTVOLTAGE
Definition: iio_types.h:67
enum iio_chan_type ch_type
Definition: iio_types.h:172
uint64_t freq
Definition: adf4368.h:461
int adf4368_spi_write(struct adf4368_dev *dev, uint16_t reg_addr, uint8_t data)
Writes data to ADF4368 over SPI.
Definition: adf4368.c:152
struct adf4368_dev * adf4368_dev
Definition: iio_adf4368.h:39
@ ADF4368_IIO_DEV_ATTR_DEF_REG
Definition: iio_adf4368.h:58
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:54
#define NO_OS_ARRAY_SIZE(x)
Definition: no_os_util.h:49
@ ADF4368_IIO_DEV_ATTR_SW_SYNC
Definition: iio_adf4368.h:63
int adf4368_get_sync_setup(struct adf4368_dev *dev, bool *en)
Gets the value of the SYNC features' powerdown bit.
Definition: adf4368.c:1188
@ ADF4368_IIO_CH_ATTR_OPWR
Definition: iio_adf4368.h:50
int adf4368_init(struct adf4368_dev **dev, struct adf4368_init_param *init_param)
Initializes the adf4368.
Definition: adf4368.c:1893
int adf4368_set_temperature(struct adf4368_dev *dev, bool en)
Set Temperature Readback feature's initial state. This feature should be disabled after reading tempe...
Definition: adf4368.c:1254
adf4368_iio_dev_attr_id
Definition: iio_adf4368.h:54
@ ADF4368_IIO_DEV_ATTR_REF_DIV
Definition: iio_adf4368.h:59
@ IIO_SHARED_BY_ALL
Definition: iio_types.h:122
ADF4368 Device Descriptor.
Definition: adf4368.h:442
int adf4368_iio_remove(struct adf4368_iio_dev *desc)
Free the resources allocated by adf4368_iio_init().
Definition: iio_adf4368.c:671
uint8_t cp_i
Definition: adf4368.h:450
int adf4368_remove(struct adf4368_dev *dev)
Free resources allocated for ADF4368.
Definition: adf4368.c:1983
const char * name
Definition: iio_types.h:131
Definition: iio_adf4368.h:43
@ ADF4368_IIO_CH_ATTR_FREQ
Definition: iio_adf4368.h:49
int adf4368_get_en_ref_doubler(struct adf4368_dev *dev, bool *en)
Gets the value the doubler if it is enabled or disable and stores it it the dev structure.
Definition: adf4368.c:751
int adf4368_set_en_ref_doubler(struct adf4368_dev *dev, bool en)
Set the reference doubler to enable or disable based on the passed parameter. If the parameter is dif...
Definition: adf4368.c:734
int adf4368_set_cp_i(struct adf4368_dev *dev, int32_t reg_val)
Set the charge pump value which will be written to the register. The value will be between 0 and 15 o...
Definition: adf4368.c:821
int adf4368_spi_read(struct adf4368_dev *dev, uint16_t reg_addr, uint8_t *data)
Reads data from ADF4368 over SPI.
Definition: adf4368.c:182
Structure holding pointers to show and store functions.
Definition: iio_types.h:129
int adf4368_set_rfout(struct adf4368_dev *dev, uint64_t val)
Set the desired output frequency and reset everything over to maximum supported value of 12....
Definition: adf4368.c:995
int adf4368_get_temperature(struct adf4368_dev *dev, int32_t *temp)
Gets the value of the approximate die temperature.
Definition: adf4368.c:1293
int32_t iio_parse_value(char *buf, enum iio_val fmt, int32_t *val, int32_t *val2)
Definition: iio.c:630
int adf4368_iio_init(struct adf4368_iio_dev **iio_dev, struct adf4368_iio_dev_init_param *init_param)
Initializes the ADF4368 IIO driver.
Definition: iio_adf4368.c:641
int adf4368_get_en_chan(struct adf4368_dev *dev, uint8_t ch, bool *en)
Gets the value the output channel if it is enabled or disable.
Definition: adf4368.c:663
int adf4368_get_bleed_word(struct adf4368_dev *dev, int32_t *word)
Gets the value of the bleed word.
Definition: adf4368.c:962
int adf4368_set_ref_div(struct adf4368_dev *dev, int32_t div)
Set the reference divider value and reset everything over to maximum supported value of 63 to the max...
Definition: adf4368.c:776
int iio_format_value(char *buf, uint32_t len, enum iio_val fmt, int32_t size, int32_t *vals)
Definition: iio.c:686
int adf4368_get_sw_sync(struct adf4368_dev *dev, uint8_t *sw_sync)
Gets the value of the SW_SYNC bit.
Definition: adf4368.c:1231
Implementation of ADF4368 Driver.
struct iio_attribute * attributes
Definition: iio_types.h:186
adf4368_iio_ch_attr_id
Definition: iio_adf4368.h:47
bool phase_pol
Definition: adf4368.h:447
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:69
int adf4368_set_bleed_word(struct adf4368_dev *dev, int32_t word)
Set the bleed word, which represents the value of the bleed current written to the register space.
Definition: adf4368.c:905
@ ADF4368_IIO_DEV_ATTR_TEMP
Definition: iio_adf4368.h:64
#define NULL
Definition: wrapper.h:64
ADF4368 Initialization Parameters structure.
Definition: adf4368.h:425
struct ad7616_init_param init_param
Definition: ad7616_sdz.c:113
int16_t ch_num
Definition: iio_types.h:105
Structure holding channels and attributes of a device.
Definition: iio_types.h:247
@ ADF4368_IIO_CH_ATTR_PHASE
Definition: iio_adf4368.h:51
@ ADF4368_IIO_DEV_ATTR_REF_FREQ
Definition: iio_adf4368.h:61
int adf4368_set_ref_clk(struct adf4368_dev *dev, uint64_t val)
Set the desired reference frequency and reset everything over to maximum supported value of 4GHz to t...
Definition: adf4368.c:694
@ ADF4368_IIO_DEV_ATTR_BLEED
Definition: iio_adf4368.h:55
@ true
Definition: ad5446.h:57
int adf4368_get_default_regs(struct adf4368_dev *dev, bool *check)
Reads and Checks the registers values equal to default values.
Definition: adf4368.c:1600
@ ADF4368_IIO_CH_ATTR_ENABLE
Definition: iio_adf4368.h:48
int adf4368_set_phase(struct adf4368_dev *dev, uint32_t phase_fs, bool phase_pol)
Set the phase adjustment in femto-seconds. Function choose the phase adjustment method according to I...
Definition: adf4368.c:1488
Header file of utility functions.
int adf4368_get_phase(struct adf4368_dev *dev, uint32_t *phase_fs, bool *phase_pol)
Get the phase adjustment in femto-seconds. Function choose the phase adjustment method according to I...
Definition: adf4368.c:1526
struct iio_device * iio_dev
Definition: iio_adf4368.h:40
@ ADF4368_IIO_DEV_ATTR_REF_DB
Definition: iio_adf4368.h:60
int adf4368_get_out_power(struct adf4368_dev *dev, uint8_t ch, int32_t *pwr)
Gets the output power register value.
Definition: adf4368.c:607
int adf4368_get_ref_clk(struct adf4368_dev *dev, uint64_t *val)
Gets the user proposed reference frequency.
Definition: adf4368.c:716
@ ADF4368_IIO_DEV_ATTR_CP
Definition: iio_adf4368.h:56
int adf4368_set_default_regs(struct adf4368_dev *dev, bool spi_4wire)
Applys a softreset, sets the SPI 4 wire mode and writes the default registers.
Definition: adf4368.c:1563
int adf4368_get_ref_div(struct adf4368_dev *dev, int32_t *div)
Gets the value the reference divider.
Definition: adf4368.c:795
Implementation of IIO ADF4368 Driver.