Driver for the Analog Devices AXI-ADC-CORE module.
struct no_os_gpio_desc * gpio_en[AD796X_NUM_GPIOS]
Definition: ad796x.h:91
Structure holding the parameters for GPIO initialization.
Definition: no_os_gpio.h:79
@ AD796X_MODE10_SNOOZE2
Definition: ad796x.h:59
Structure containing the init parameters needed by the PWM generator.
Definition: no_os_pwm.h:66
ad796x_mode
Definition: ad796x.h:48
int ad796x_remove(struct ad796x_dev *dev)
Remove the device and release resources.
Definition: ad796x.c:223
#define AD796X_NUM_GPIOS
Definition: ad796x.h:62
struct axi_adc_init * ad796x_core_ip
Definition: ad796x.h:72
struct axi_dmac_init * dmac_ip
Definition: ad796x.h:74
Definition: axi_dmac.h:127
@ AD796X_MODE5_TEST
Definition: ad796x.h:54
int32_t no_os_pwm_remove(struct no_os_pwm_desc *desc)
Free the resources allocated by no_os_pwm_init().
Definition: no_os_pwm.c:79
AXI ADC Initialization Parameters structure.
Definition: axi_adc_core.h:143
Driver for the Analog Devices AXI CLKGEN.
int32_t axi_dmac_transfer_wait_completion(struct axi_dmac *dmac, uint32_t timeout_ms)
Definition: axi_dmac.c:525
#define pr_err(fmt, args...)
Definition: no_os_print_log.h:88
int ad796x_remove(struct ad796x_dev *dev)
Remove the device and release resources.
Definition: ad796x.c:223
Definition: clk_axi_clkgen.h:50
struct axi_adc * ad796x_core
Definition: ad796x.h:86
AXI ADC Device Descriptor.
Definition: axi_adc_core.h:122
int32_t axi_clkgen_set_rate(struct axi_clkgen *clkgen, uint32_t rate)
axi_clkgen_set_rate
Definition: clk_axi_clkgen.c:414
Definition: ad9361_util.h:69
enum ad796x_mode mode
Definition: ad796x.h:78
int32_t axi_clkgen_init(struct axi_clkgen **clk, const struct axi_clkgen_init *init)
axi_clkgen_init
Definition: clk_axi_clkgen.c:520
Definition: clk_axi_clkgen.h:44
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
enum ad7616_mode mode
Definition: ad7616.h:226
@ AD796X_MODE1_EXT_REF_5P0
Definition: ad796x.h:50
@ AD796X_MODE0_POWER_DOWN
Definition: ad796x.h:49
Definition: axi_dmac.h:102
int32_t ad796x_read_data(struct ad796x_dev *dev, uint32_t *buf, uint16_t samples)
Read data samples from adc.
Definition: ad796x.c:74
@ AD796X_MODE7_EXT_REF_5P0_9MHZ
Definition: ad796x.h:56
struct no_os_pwm_init_param * axi_pwm_1_ip
Definition: ad796x.h:76
struct no_os_gpio_init_param * gpio_ip[AD796X_NUM_GPIOS]
Definition: ad796x.h:77
Driver for the Analog Devices AXI-DMAC core.
@ AD796X_MODE9_EXT_REF_4P0_9MHZ
Definition: ad796x.h:58
struct no_os_pwm_desc * axi_pwm_0
Definition: ad796x.h:89
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:104
Structure holding the GPIO descriptor.
Definition: no_os_gpio.h:96
Structure representing an PWM generator device.
Definition: no_os_pwm.h:93
struct axi_dmac * axi_dmac
Definition: ad796x.h:88
int ad796x_init(struct ad796x_dev **device, struct ad796x_init_param *init_param)
Initialize the device.
Definition: ad796x.c:159
int32_t no_os_pwm_init(struct no_os_pwm_desc **desc, const struct no_os_pwm_init_param *param)
Initialize the PWM peripheral.
Definition: no_os_pwm.c:51
@ AD796X_MODE6_INVALID
Definition: ad796x.h:55
struct axi_clkgen_init * clkgen_ip
Definition: ad796x.h:73
Header file of PWM Interface.
int ad796x_init(struct ad796x_dev **device, struct ad796x_init_param *init_param)
Initialize the device.
Definition: ad796x.c:159
struct no_os_pwm_desc * axi_pwm_1
Definition: ad796x.h:90
@ NO
Definition: axi_dmac.h:98
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
int32_t axi_adc_init(struct axi_adc **adc_core, const struct axi_adc_init *init)
AXI ADC Main Initialization.
Definition: axi_adc_core.c:641
int32_t axi_dmac_init(struct axi_dmac **dmac_core, const struct axi_dmac_init *init)
Definition: axi_dmac.c:334
@ AD796X_MODE4_SNOOZE
Definition: ad796x.h:53
struct ad7616_init_param init_param
Definition: ad7616_sdz.c:113
AD796X Device structure.
Definition: ad796x.h:85
int32_t axi_adc_remove(struct axi_adc *adc)
AXI ADC Resources deallocation.
Definition: axi_adc_core.c:681
struct no_os_pwm_init_param * axi_pwm_0_ip
Definition: ad796x.h:75
#define AD796X_BYTES_PER_SAMPLE
Definition: ad796x.c:47
@ AD796X_MODE2_INT_REF_4P0
Definition: ad796x.h:51
Header file of GPIO Interface.
Header file of AD796X Driver.
int32_t axi_dmac_transfer_start(struct axi_dmac *dmac, struct axi_dma_transfer *dma_transfer)
Definition: axi_dmac.c:385
int32_t ad796x_read_data(struct ad796x_dev *dev, uint32_t *buf, uint16_t samples)
Read data samples from adc.
Definition: ad796x.c:74
int32_t axi_clkgen_remove(struct axi_clkgen *clkgen)
axi_clkgen_remove
Definition: clk_axi_clkgen.c:541
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:147
uint32_t size
Definition: axi_dmac.h:103
@ AD796X_MODE3_EXT_REF_4P0
Definition: ad796x.h:52
@ AD796X_MODE8_INT_REF_4P0_9MHZ
Definition: ad796x.h:57
Error macro definition for ARM Compiler.
struct axi_clkgen * clkgen
Definition: ad796x.h:87
Definition: axi_dmac.h:110
AD796X Device initialization parameters.
Definition: ad796x.h:71
int32_t no_os_gpio_get_optional(struct no_os_gpio_desc **desc, const struct no_os_gpio_init_param *param)
Get the value of an optional GPIO.
Definition: no_os_gpio.c:75